EXTFIELDATTR [ SNA IMF Programmer's Reference Manual ] MPE/iX 5.0 Documentation
SNA IMF Programmer's Reference Manual
EXTFIELDATTR
For Asian users. EXTFIELDATTRreturns information about the attributes of
a specified field. The EXTFIELDATTR intrinsic is equivalent to the
FIELDATTR intrinsic, except that it returns the Double-Byte Character Set
(DBCS) attribute.
Syntax
____________________________________________________________________
| |
| I I I I |
| EXTFIELDATTR (terminalid, fieldnum, fieldrow, fieldcolumn, |
| |
| I I I I |
| protectedattr, numericattr, displayattr, mdt, |
| |
| I I I I |
| dbcsattr, currentfieldlen, maxfieldlen, result)|
| |
____________________________________________________________________
Parameters
terminalid (input)
Integer identifying the terminal. The terminalid is returned in a call
to the OPEN3270 intrinsic.
fieldnum (input)
Integer specifying the number of the field whose attributes you are
requesting. Put a zero in fieldnum if the screen is unformatted (there
are no attribute characters).
fieldrow (output)
Integer indicating the row that is the location of the first data
character in the field. Possible values are as follows:
0 through 11 (480-character screen)
0 through 23 (1920-character screen)
0 through 42 (3440-character screen)
fieldcolumn (output)
Integer indicating the column that is the location of the first data
character in the field. Possible values are as follows:
0 through 39 (480-character screen)
0 through 79 (1920-character screen)
0 through 79 (3440-character screen)
protectedattr (output)
Integer indicating whether the field specified by fieldnum is protected
or unprotected. The protectedattr parameter returns 0 if the screen is
unformatted.
0 = Unprotected
1 = Protected
numericattr (output)
Integer indicating whether the field specified by fieldnum is
alphanumeric or numeric. The numericattr parameter returns 0 if the
screen is unformatted.
0 = Alphanumeric
1 = Numeric
displayattr (output)
Integer indicating how the field specified by fieldnum is displayed on
the terminal screen. The displayattr parameter returns 0 if the screen
is unformatted.
0 = Normal display, light pen not detectable
1 = Normal display, light pen detectable
2 = Intensified display
3 = No display and no print
HP terminals do not support light pens.
mdt (output)
Integer indicating whether the Modified Data Tag is set for the field
specified by fieldnum. The mdt parameter returns 0 if the screen is
unformatted.
0 = Modified Data Tag not set
1 = Modified Data Tag set
dbcsattr (output)
Double-Byte Character Set attribute. Integer indicating whether 8-bit
data, 16-bit data, or a mixture of 8-bit and 16-bit data is allowed in
the field specified by fieldnum. The dbcsattr parameter returns 0 if
the screen is unformatted.
0 = Only 16-bit characters are allowed in the field.
1 = Only 8-bit characters are allowed in the field.
2 = Mixed 8-bit and 16-bit data are allowed. SO/SI control
characters may be entered to shift between 8-bit and
16-bit character modes.
3 = Mixed 8-bit and 16-bit data allowed. 16-bit characters
must be entered between existing SO/SI pairs. No new
SO/SI pairs may be entered.
currentfieldlen (output)
Integer indicating the current length of the field in the internal
buffer. Length includes all characters plus embedded and leading nulls;
trailing nulls are not included.
maxfieldlen (output)
Integer indicating the maximum number of characters the field can
contain. This is the number of character positions between the current
field attribute character and the next field attribute character.
result (output)
The following values can be generated by the EXTFIELDATTR intrinsic:
0 = Successful completion.
1 = Device not open.
9 = Host modified screen since the last receive
request. (MPE V only)
11 = Non-existent field number specified.
22 = BASIC calling sequence error has occurred.
25 = Intrinsic call made while in split stack mode.
26 = Intrinsic call made with the parameter value
out of bounds.
29 = Called intrinsic with a request already outstanding.
(No-wait I/O only)
30 = Internal error occurred in IMF intrinsic.
53 = Invalid intrinsic called for data stream mode
device.
99 = Invalid intrinsic called while DBCS option is
not set.
Description
The EXTFIELDATTR intrinsic returns information about a specified field of
the internal screen image. Your program passes the terminal ID and the
field number. The intrinsic returns the row and column address of the
field in the buffer, the attributes of the field, the maximum number of
characters in the field, the current number of characters in the field,
and a result parameter indicating success or the reason for failure.
TheEXTFIELDATTR intrinsic is identical to the FIELDATTR intrinsic except
for one parameter: the dbcsattr parameter, which tells your program
whether 8-bit data, 16-bit data, or a mixture of 8-bit and 16-bit data is
allowed in the specified field. It also indicates whether SO/SI control
characters may be entered into the field, or whether DBCS data must be
entered between existing SO/SI pairs.
Use the EXTFIELDATTR intrinsic in non-transparent mode.
COBOL Calling Sequence
CALL "CEXTFIELDATTR" USING TERMINALID FIELDNUM FIELDROW FIELDCOLUMN
PROTECTEDATTR NUMERICATTR DISPLAYATTR MDT DBCSATTR CURRENTFIELDLEN
MAXFIELDLEN RESULT. (on MPE V and in compatibility mode on MPE XL)
CALL INTRINSIC "EXTFIELDATTR" USING TERMINALID FIELDNUM FIELDROW
FIELDCOLUMN PROTECTEDATTR NUMERICATTR DISPLAYATTR MDT DBCSATTR
CURRENTFIELDLEN MAXFIELDLEN RESULT. (in native mode on MPE XL)
All parameters are numeric data items.
FORTRAN Calling Sequence
CALL EXTFIELDATTR (TERMINALID, FIELDNUM, FIELDROW, FIELDCOLUMN,
PROTECTEDATTR, NUMERICATTR, DISLAYATTR, MDT, DBCSATTR, CURRENTFIELDLEN,
MAXFIELDLEN, RESULT)
All parameters are integer variables.
BASIC Calling Sequence
CALL BEXTFIELDATTR (T, N, R0, C0, A1, A2, A3, A4, A5, L5, L6, R) (on MPE
V and in compatibility mode on MPE XL)
CALL EXTFIELDATTR (T, N, R0, C0, A1, A2, A3, A4, A5, L5, L6, R) (in
native mode on MPE XL)
All parameters are integer variables.
SPL Calling Sequence
EXTFIELDATTR (TERMINALID, FIELDNUM, FIELDROW, FIELDCOLUMN, PROTECTEDATTR,
NUMERICATTR, DISPLAYATTR, MDT, DBCSATTR, CURRENTFIELDLEN, MAXFIELDLEN,
RESULT)
All parameters are integer variables.
Pascal Calling Sequence
EXTFIELDATTR (TERMINALID, FIELDNUM, FIELDROW, FIELDCOLUMN, PROTECTEDATTR,
NUMERICATTR, DISPLAYATTR, MDT, DBCSATTR, CURRENTFIELDLEN, MAXFIELDLEN,
RESULT);
All parameters are short integer variables.
C/XL Calling Sequence
EXTFIELDATTR (&TERMINALID, &FIELDNUM, &FIELDROW, &FIELDCOLUMN,
&PROTECTEDATTR, &NUMERICATTR, &DISPLAYATTR, &MDT, &DBCSATTR,
&CURRENTFIELDLEN, &MAXFIELDLEN, &RESULT);
All parameters are of type short.
Pascal Program Excerpts
Following are excerpts from a Pascal program that calls SNA IMF
intrinsics. For examples of complete Pascal programs in non-transparent
and transparent modes, see appendix F, "Sample Programs."
{************************** Global Declarations **************************}
type
shortint = -32768..32767; { global type, two bytes (half word) }
.
.
.
var
terminalid : shortint; { value returned by OPEN3270 intrinsic }
result : shortint;
.
.
.
procedure EXTFIELDATTR; intrinsic;
.
.
.
{************************** Local Declarations **************************}
var
fieldnum : shortint; { All EXTFIELDATTR variables }
fieldrow : shortint; { except terminalid and result }
fieldcolumn : shortint; { are local. }
protectedattr : shortint;
numericattr : shortint;
displayattr : shortint;
mdt : shortint;
dbcsattr : shortint;
currentfieldlen : shortint;
maxfieldlen : shortint;
.
.
.
{************** Variable Initialization and Intrinsic Call **************}
fieldnum := 2;
EXTFIELDATTR (terminalid, fieldnum, fieldrow, fieldcolumn, protectedattr,
numericattr, displayattr, mdt, dbcsattr, currentfieldlen,
maxfieldlen, result);
MPE/iX 5.0 Documentation