gtpg2m2zGeneral Macros

ITPNT-Transaction Program Name Table Macro

Use this general macro to:

Format




label
is a label for the ITPNT macro. The label is not used and is ignored if it is specified.

MF
specifies the macro form, which can be one of the following:

L
generates a TPNT entry.

E
generates the instructions necessary to search the TPNT for a specified TPF transaction name. This is the executable form of the ITPNT macro.

F
generates the final TPNT entry for this segment.

TYPE
specifies the type of transaction program name being defined. The type determines how the transaction program can be activated. Specify one of the following:

ATTACH
When an ATTACH FMH5 containing the transaction program name specified on the TPN parameter is received from a remote LU, TPF/APPC support uses the SWISC macro to activate the program specified on the PGM parameter. The program that is activated must be designed to accept the TPF ATTACH interface.

AOR
When a transaction program issues the TPF/APPC ACTIVATE_ON_RECEIPT or ACTIVATE_ON_CONFIRMATION verb, TPF/APPC support uses the SWISC macro to activate the TPF real-time entry control block (ECB) segment specified on the PGM parameter.

If you specify TYPE=AOR, the values specified for both the PGM and TPN parameters must be identical and must name an allocated TPF E-type program name.

Note:
See the TPPCC-TPF/APPC Conversation Verb Macro for more information about the ACTIVATE_ON_RECEIPT and ACTIVATE_ON_CONFIRMATION verbs.

TPN=tpname
specifies the local transaction program name known to the TPF system.

Notes:

  1. If you specify TYPE=ATTACH, this entry defines the transaction program name carried in an ATTACH FMH5 record received from a remote transaction program. In this case, the length of tpname can be from 1 to 64 characters.

  2. If you specify TYPE=AOR, this entry defines a transaction program segment name used with the TPF/APPC ACTIVATE_ON_RECEIPT and ACTIVATE_ON_CONFIRMATION verbs. In this case, tpname must be identical to the value specified for the PGM parameter.

  3. If you specify TYPE=AOR and do not specify a value for this parameter, tpname defaults to the value specified for the PGM parameter.

PGM=tpgm
specifies the name of the TPF E-type program associated with the transaction program name specified for the TPN parameter.

Notes:

  1. If you specify TYPE=ATTACH, this is the name of the TPF program that is activated when an ATTACH FMH5 is received from a remote LU.

  2. If you specify TYPE=AOR, this is the name of the TPF program that is activated when a message or other information is available to satisfy the TPF/APPC ACTIVATE_ON_RECEIPT and ACTIVATE_ON_CONFIRMATION verbs.

  3. If you specify TYPE=AOR and do not specify a value for this parameter, tpgm defaults to the value specified for the TPN parameter.

IS
specifies the I-stream on which the activate transaction program is executed. Specify one of the following:

ANY
specifies that the transaction program can run on any available I-stream. A SWISC macro is generated and the TPF system chooses any of the available I-streams. The SWISC load balancing decision is made at execution time and, therefore, a transaction program defined as IS=ANY can cause the defined transaction program to run on multiple I-streams concurrently.

MAIN
specifies that the transaction program can run on only the main I-stream. Specify this parameter when the TPF system is generated to run in a single I-stream environment.

isnum
specifies that the transaction program can run only on a particular I-stream, where isnum is the I-stream.

sprog
is the TPF E-type program to be activated next to continue the search of TPNT entries if the transaction program name is not found in this part of the TPNT.

RETURN
specifies that this is the last segment of the TPNT to be searched. If the requested transaction program is not found, control is returned to the caller with a not found indication.

Entry Requirements

Return Conditions

Programming Considerations

Examples

The following example shows a TPNT that is split across 2 real-time segments, CHQ0 and CHQ1. The first ITPNT macro call in CHQ0 specifies that the table is continued in segment CHQ1; if the TPF transaction name is not found in the entries defined in CHQ0, the application will continue looking in segment CHQ1. The first ITPNT macro call in CHQ1 specifies that this is the end of the table.

      BEGIN   NAME=CHQ0
 *
 * Generate the table lookup code for this segment
 *
      ITPNT   MF=(E,CHQ1)   Continue table in CHQ1
 *
 * Generate the TPNT entries for this segment
 *
      ITPNT   MF=L,                                   X
              TPN=FAREQUOTE,                          X
              PGM=FQFQ,                               X
              IS=ANY
 *
 * Define Program to handle ACTIVATE_ON_RECEIPT
 *
      ITPNT   MF=L,                                   X
              TYPE=AOR,                               X
              TPN=CONT,                               X
              PGM=CONT,                               X
              IS=ANY
      ITPNT   MF=L,                                   X
              TPN=BAGGAGE,                            X
              PGM=BAGS,                               X
              IS=ANY
      ITPNT   MF=L,                                   X
              TPN=E_MAIL,                             X
              PGM=MAIL,                               X
              IS=ANY
      ITPNT   MF=L,                                   X
              TPN=FILETRANSFER,                       X
              PGM=XFER,                               X
              IS=ANY
      ITPNT   MF=F
      LTORG
      FINIS
      END
 
 *------------------------------------------------------------*
      BEGIN   NAME=CHQ1
 *
 * Generate the table lookup code for this segment
 *
      ITPNT   MF=(E,RETURN) Last segment of TPNT
 *
 * Generate the TPNT entries for this segment
 *
      ITPNT   MF=L,                                   X
              TPN=HOTEL_RESERVATIONS,                 X
              PGM=HOTL,                               X
              IS=MAIN
      ITPNT   MF=L,                                   X
              TPN=TEST_ECHO_PROGRAM,                  X
              PGM=TEST,                               X
              IS=ANY
      ITPNT   MF=L,                                   X
              TPN=TC_ISTREAM3_TEST,                   X
              PGM=TCT3,                               X
              IS=3
      ITPNT   MF=L,                                   X
              TPN=REPORT_TRANSFER,                    X
              PGM=RPT0,                               X
              IS=ANY
      ITPNT   MF=F
      LTORG
      FINIS
      END