Different types of input format are produced by the application for the NOF program. The sixth character of the transaction indicates the input format. The types of format are described in the following table:
Value | Transaction |
---|---|
A | Data sent by external Automatic Entry (HUB) |
T | Ispec screen (transaction) |
& | End of transaction |
S | Error, status line, system command, report reply, or teach screen |
B | Listbox |
0 | Hub header |
Automatic Entry Messages
If the sixth character is A, the transaction has resulted in an external automatic entry from the application in the following format:
ispec A screendata
Here ispec is the five-character Alternate Name defined for the ispec in Developer. Refer to Data Format Sent to an Application from a Sending NOF Program for more information about the format of the ispec screen data value screendata.
This reply is unusual in that it does not signal the end of a transaction sent by the NOF program. It can only occur if GLB.DestNoForm is set to spaces in the application.
To handle this reply, the NOF program must:
Process the data, and return a response to the application, the same code is used for both receiving and sending NOF programs.
Wait for a reply to the original transaction (that initiated the automatic entry).
Ispec Screen
If the sixth character is T, the response is an ispec selection, in the following format:
ispec T screendata status
Eighty bytes are sent for the status line status. Refer to Data Format Sent to an Application from a Sending NOF Program for more information about the format of the ispec screen data value screendata. You should use the value of TranNo returned from the application as the value for TranNo for the next transaction you send to the application.
End of Message
If the sixth character is an ampersand (&), the response is end-of-transaction, in the format, &&&&&&.
Hub Header
If the sixth character is a zero (0), the response is a universal HUB header, which precedes all automatic entries. It is provided for information purposes only. The HUB header includes information on the source and associated attributes of the request. Refer to NOF sample program for more information about the HUB-HEADER format.
Listbox
If the sixth character is B, the response is listbox data:
For static listboxes, the format is:
SLISTBOOlistboxfile
The listbox name listbox is 23 characters, while the listbox file name file is 256 characters.
For dynamic listboxes, the format is:
DLISTBnndata
Where, nn is the number of listbox data definitions, and data is:
sequencedefinition
Where, sequence is a single character indicating which data buffer is being processed, as outlined in the following table:
Sequence | Meaning |
---|---|
S | Start (first) buffer |
E | End (first) buffer |
O | Only buffer |
0 | Middle buffer |
Each definition is in the following form:
namenumberrecords
Where, name is the listbox name, number is the number of records, and records is a number of listbox values, each in the following form:
sizedelimitervaluedelimiterdescription
Other Messages
If the sixth character is S, the response may be one of the following:
Application termination message:
BYE S01status
Eighty bytes are sent for the status line status.
Response to an administration command:
COLONSnnlines
Eighty bytes are sent for each of up to 24 status lines lines, with nn giving the number of lines (in the range 01 through 24).
Error messages or multiple Message commands:
ERRORSnnlines
Eighty bytes are sent for each of up to 19 status lines lines, with nn giving the number of lines (in the range 01 through 19).
Reply from a Report:
REPLYS01message
Eighty bytes are sent for the message.
Request for input from a Report (run with the administration command :RUN):
REPLYS01>
Status line message:
STATUS01status
Eighty bytes are sent for the status line.
Switch to a new application:
SWTCHSnnSystem
Returns the name of the application switched to ROC (for the Report Output Control system).
Response to request for a Teach screen:
TEACHSnnlines
Eighty bytes are sent for each of up to twenty-four status lines lines, with nn giving the number of lines (in the range 01 through 24).