Debugging non-Language Environment IMS BTS programs

If you want to debug a non-Language Environment® program that runs in IMS BTS, you can use the EQANIAFE application front-end program, along with the EQASET transaction, to start the debug session.

See the following example and steps to enable EQANIAFE and run EQASET:
//BTSITOC5 JOB ,'SYSADM',
//             CLASS=A,TIME=(3,14),MSGLEVEL=(1,1),REGION=128M,
//             NOTIFY=&SYSUID.,MSGCLASS=H
//G         EXEC PGM=BTSRC000,
//   PARM=(DLI,,0000,,0,,N,0,T,IMS1,,N,N,,N,,,'',,,,,,,'','')
//DFSRESLB  DD DISP=SHR,DSN=IMSBLD.I15RTSMM.SDFSRESL
//STEPLIB   DD DISP=SHR,DSN=USER.TEST.LOAD
//          DD DISP=SHR,DSN=EQAW.SEQAMOD
//          DD DISP=SHR,DSN=CEEV2R3Z.SCEERUN
//          DD DISP=SHR,DSN=CEEV2R3Z.SCEERUN2
//          DD DISP=SHR,DSN=IMSTOOL.BTS41.SBTSLMD0
//          DD DISP=SHR,DSN=IMSBLD.I15RTSMM.SDFSRESL
//*
//BTSIN   DD *
./E  APPLFE=EQANIAFE                                           1 
./*  TC=BTSTERM MDL=P2
./D  LTERM=BTSTERM TYPE=3270-A2 SIZE=(24,80) LIMIT=0
./T  TC=EQASET MBR=EQANISET PSB=ITOC05 LANG=CBL TYPE=MSG       2 
./T  TC=ITOC05 MBR=ITOC05 PSB=ITOC05 LANG=CBL TYPE=MSG
./* ESTABLISH A DEBUG ASSOCIATION FOR THIS TERMINAL
EQASET TCP=ON $                                                3 
./* CLEAR THE TERMINAL SCREEN BEFORE YOUR TRAN
CLEAR                                                          4 
ITOC05 ITOC05 $                                                5 
./* REMOVE THE DEBUG ASSOCIATION
EQASET TCP= $                                                  6 
/*
//EQANMDBG  DD *
ITOC05,TEST(ERROR,CMDS,PROMPT,TCPIP&9.85.213.175%8002:*)       7 
/*
  1. Identify an application front end for the BTS environment via the ./E APPLFE command.
  2. Add a transaction definition for EQASET.
    Note: EQANISET is normally defined as a GPSB application, so you must substitute one of your PSBs for the PSB value in the ./T command.
  3. Invoke EQASET to associate the BTS terminal with a debug preference. In the example above, the preference merely states that debugging is turned on. The actual debug preferences are supplied via the EQANMDBG DD card ( 7 ). This allows greater flexibility with the TEST runtime option, such as supplying an initial commands file (CMDS). In a simpler case, you can use the full syntax of EQASET to set up the destination for the debug session (TCP, VTAM, MFI) and let the rest of the TEST runtime options use the default values. For more information about the EQASET transaction, see Syntax of the EQASET transaction for non-Language Environment MPPs.
  4. Clear the virtual screen by using the CLEAR BTS command.
  5. Invoke your transaction. Debugging starts by using the TEST runtime options that you specified in the EQANMDBG DD card ( 7 ).
  6. After debugging is complete, invoke EQASET to remove the debug association.