Creating a NOF Program

NOF Skeleton Program

To set up a programmatic NOF interface, you must write your own NOF program. You can base your program on the skeleton COBOL NOF program provided with your Agile Business Suite Software, and named:

 NGEN28/SAMPLE/NOF

You might add logic to this skeleton program to perform the following functions:

Figure Flow Diagram for the NOF Skeleton Program gives a flow diagram of the main routines in the NOF skeleton program, and details of all routines in the program. Study this in conjunction with the program listing, which itself contains some explanatory comments, to gain an understanding of this program.

In addition, a skeleton NOFORM Library is included with your Agile Business Suite Software. This library procedure provides a complex wait routine that is used by the skeleton NOF program. It is named:

*NGEN28/SAMPLE/NOF/LIBRARY

During the Configure process, these software files are copied to the DICTIONARY pack under the usercode specified for Runtime.

COMS Requirements

Your NOF program requires a COMS Agenda and a COMS window. By default, the Agenda is named NOF and the window is named systemNOF. A default COMS Configuration file is created automatically by the generation process, and you must manually load this into COMS, by using COMS UTILITY. Refer to Compiling and Configuring the NOF Program and Library under Setting Up a NOF Interface for NOF-Initiated Transactions for more information.

Input to the NOF Program

The NOF skeleton program is set up to accept input of the following types:

You can modify the NOF skeleton to accept other types of input, as shown in the following examples:

Output from the NOF Program

The NOF skeleton is set up to send the following types of output:

You can modify the NOF skeleton to send other types of output. Some suggested methods are:

NOF Offline Operations

The NOF program is controlled by COMS, not by the application, thus it can be running even when your application is offline. This offers a number of possibilities. For example, you could include logic in your NOF program to tank transactions whenever the application is unavailable.

If a message is sent to the application, and COMS replied with an error stating that the application is unavailable or disabled, offline input logic could be invoked in your NOF program.