Milestone 9: Configuring IMS/DC support
Complete this milestone if you are licensed for IMS/DC support.
If your site is not licensed for IMS/DC support, go to Milestone-10-Configuring-Db2-Stored-Procedure-support.
Roles Involved
The following people are required for this milestone:
Tasks
Complete the following task to enable IMS/DC support.
Task 9.1 IMS Control Blocks Gen
The following people are required for this task:
Define the Code Debug IMS databases, programs, and transactions to IMS by including the following definitions in the appropriate sections of your IMS STAGE 1 SYSGEN input stream
To define the Code Debug IMS database, add the following:
DATABASE DBD=XPIMSDBTAdd the following to define the Code Debug IMS programs:
RACF:
APPLCTN PSB=ADSIM001,SCHDTYP=PARALLEL,PGMTYPE=BATCH
TRANSACT CODE=XPEDTX1,MODE=SNGL,AOI=TRAN APPLCTN PSB=XPSTOP,SCHDTYP=PARALLEL,PGMTYPE=BATCH
TRANSACT CODE=XPSTOP,MODE=SNGL,AOI=TRAN APPLCTN PSB=ADSIM013,SCHDTYP=PARALLEL,PGMTYPE=BATCH
TRANSACT CODE=XPEDTX13,MODE=SNGL,AOI=TRAN APPLCTN PSB=ADSIM016,SCHDTYP=PARALLEL,PGMTYPE=(TP,,X)
TRANSACT CODE=XPST,PARLIM=0,MODE=SNGL,AOI=TRANOne of the transaction definitions listed above, ADSIM016, is the Code Debug Stop Region MPP program. The PGMTYPE of X should be replaced with the class of a message processing region which is normally up during Code Debug testing.
There are several transactions that are used for testing, verification, and training. They are programming language-specific. If you are not licensed for the specified language, you can skip that set of definitions. Use the following to define the Code Debug IMS associated transactions:
APPLCTN PSB=TRIMPP,SCHDTYP=PARALLEL, (COBOL Sample)
PGMTYPE=(TP,,1)
TRANSACT CODE=TRIMPP,PARLIM=3,MODE=SNGL APPLCTN PSB=XPEDTRAN,SCHDTYP=PARALLEL, (COBOL Sample)
PGMTYPE=(TP,,1)
TRANSACT CODE=XPEDTRAN,PARLIM=0,MODE=SNGL APPLCTN PSB=TRIPMPP,SCHDTYP=PARALLEL, (PL/I Sample)
PGMTYPE=(TP,,1)
TRANSACT CODE=TRIPMPP,PARLIM=0,MODE=SNGL APPLCTN PSB=XPEDTRNP,SCHDTYP=PARALLEL, (PL/I Sample)
PGMTYPE=(TP,,1)
TRANSACT CODE=XPEDTRNP,PARLIM=0,MODE=SNGL APPLCTN PSB=XPEDTRNA,SCHDTYP=PARALLEL, (ASM Sample)
PGMTYPE=(TP,,1)
TRANSACT CODE=XPEDTRNA,PARLIM=0,MODE=SNGL APPLCTN PSB=TRICMPP,SCHDTYP=PARALLEL, (C Sample)
PGMTYPE=(TP,,1)
TRANSACT CODE=TRICMPP,PARLIM=0,MODE=SNGL APPLCTN PSB=XPEDTRNC,SCHDTYP=PARALLEL, (C Sample)
PGMTYPE=(TP,,1)
TRANSACT CODE=XPEDTRNC,PARLIM=0,MODE=SNGLThe programs referenced above are installation verification programs which run in a class dynamically assigned from the Code Debug class pool. These definitions above specify class 1, but may be changed if that class is proven inappropriate or unreliable.
If you have IMS Fast Path genned in your system there are Fast Path sample IVP programs. They are programming language specific. If you are not licensed for the specified language, you can skip that set of definitions. Use the following to define the Code Debug IMS associated transactions:
APPLCTN PSB=TRIIFP,FPATH=YES,SCHDTYP=PARALLEL (COBOL Sample)
TRANSACT CODE=TRIIFP APPLCTN PSB=TRIPIFP,FPATH=YES,SCHDTYP=PARALLEL (PL/I Sample)
TRANSACT CODE=TRIPIFP APPLCTN PSB=XPEDAIFP,FPATH=YES,SCHDTYP=PARALLEL(ASM Sample)
TRANSACT CODE=XPEDAIFP APPLCTN PSB=TRICIFP,FPATH=YES,SCHDTYP=PARALLEL (C Sample)
TRANSACT CODE=TRICIFP- After the above steps, perform the IMS CTLBLKS gen.
Task 9.2 Reservation of Transaction Class Code Numbers
The following person is required for this task:
You must reserve a set of transaction class code numbers for testing Message Processing Programs (MPPs) under Code Debug IMS. It is required that Message Processing Regions (MPRs) brought up independently of Code Debug IMS do not use these class numbers. These class numbers are a subset of the numbers 001 through 999. You specify these numbers in the Code Debug TSO PARMLIB member, and they resemble the following:
XPEDITER_IMS_CLASS_CODE_2=nnn
XPEDITER_IMS_CLASS_CODE_3=nnn
.
.
.
XPEDITER_IMS_CLASS_CODE_48=nnn
XPEDITER_IMS_CLASS_CODE_49=nnn
XPEDITER_IMS_CLASS_CODE_50=nnn
Specify the class code numbers you have reserved for Code Debug IMS. The valid numbers are 001 through 999. These class codes were reserved prior to the installation of Code Debug IMS. They are to be used exclusively for testing MPPs under Code Debug IMS. You only need to specify the entries for the specific classes reserved. For example, if you reserved 10 class number for Code Debug IMS, you would only specify PARMLIB entries XPEDITER_IMS_CLASS_CODE_1 through XPEDITER_IMS_CLASS_CODE_10.
The number of classes reserved also implicitly sets a maximum limit on the number of concurrent MPP tests under Code Debug IMS. For example, if you want to allow up to 10 users testing MPPs concurrently, reserve 10 class codes. At install time, you can set an explicit limit to the number of concurrent MPP tests. This limit, however, should not be greater than the number of classes reserved.The Maximum Users and Class Codes keywords used to specify the maximum number of concurrent test sessions to be allowed. This specification of these values is in the Code Debug TSO PARMLIB member.
IMS_TOTAL_MAXIMUM_NUMBER_OF_USERS=nnn
IMS_MPP_MAXIMUM_NUMBER_OF_USERS=nn
IMS_BMP_MAXIMUM_NUMBER_OF_USERS=nnn
IMS_IFP_MAXIMUM_NUMBER_OF_USERS=nnnSpecify the maximum number of concurrent test sessions allowed for each region type—MPP, BMP, and IFP—and the maximum number of total concurrent test sessions allowed
You can also set the maximum number of concurrent Batch Message Processing (BMP) and IMS Fast Path (IFP) test sessions individually. However, these programs do not require a Code Debug IMS reserved class.
The maximum number of concurrent test sessions is 255. There are no defaults.
For IMS_MPP_MAXIMUM_NUMBER_OF_USERS, do not specify a number greater than the number of class codes reserved. You can, however, reserve a certain number of class codes and, depending on the load on the system, dynamically limit the number of MPP concurrent users through this specification without having to reduce the number of class codes reserved.
Task 9.3 IMS Security Gen
The following person is required for this task:
RACF
The transactions XPEDTX1 and XPEDTX13 require the authority to issue ASSIGN, START, DISPLAY, RSTART, and STOP commands. The ASSIGN command lets Code Debug IMS reassign the class code of a transaction as genned in IMS to one of the classes reserved for Code Debug IMS. The START command lets Code Debug IMS restart the transaction in case a user stops a transaction by quitting a BMP or IFP region. The DISPLAY and RSTART commands let Code Debug IMS restart the terminal in case the terminal is locked. The STOP command will terminate a Code Debug IMS region to end the Code Debug MPP task.
PERMIT ASS CLASS(CIMS) ID(XPEDTX1) ACCESS(UPDATE)
PERMIT DIS CLASS(CIMS) ID(XPEDTX1) ACCESS(UPDATE)
PERMIT RST CLASS(CIMS) ID(XPEDTX1) ACCESS(UPDATE)
PERMIT STA CLASS(CIMS) ID(XPEDTX1) ACCESS(UPDATE)
PERMIT STO CLASS(CIMS) ID(XPEDTX1) ACCESS(UPDATE)
The transaction XPEDTX13 requires the authority to issue ASSIGN, START, DISPLAY, RSTART, and STOP commands:
PERMIT ASS CLASS(CIMS) ID(XPEDTX13) ACCESS(UPDATE)
PERMIT DIS CLASS(CIMS) ID(XPEDTX13) ACCESS(UPDATE)
PERMIT RST CLASS(CIMS) ID(XPEDTX13) ACCESS(UPDATE)
PERMIT STA CLASS(CIMS) ID(XPEDTX13) ACCESS(UPDATE)
PERMIT STO CLASS(CIMS) ID(XPEDTX13) ACCESS(UPDATE)
Transactions XPST and XPSTOP require the authority to issue the DISPLAY and STOP Commands:
ADDUSER XPSTOP NOPASSWORD DFLTGRP(SYS1)
PERMIT DIS CLASS(CIMS) ID(XPSTOP) ACCESS(UPDATE)
PERMIT STO CLASS(CIMS) ID(XPSTOP) ACCESS(UPDATE)
Task 9.4 Additional IMS Gens
The following person is required for this task:
DBDGEN
Perform a DBDGEN for the sample program database XPIMSDBT. Include the control statements from sample library SLXTSAMP member IMS002V as input to your site’s DBD gen procedure. Do not make any changes to the source.
PSBGEN
Perform PSBGENs for the Code Debug IMS programs using your site’s standard PSBGEN utility JCL with the corresponding sample library SLXTSAMP members as input.
SLXTSAMP Members for PSBGENs
PSBGENs
PSB Source
SLXTSAMP MemberADSIM001
IMS003I1
ADSIM013
IMS003I2
XPSTOP
IMS003I3
ADSIM016
IMS003I4
Perform the PSBGENs applicable to the Code Debug TSO options for which your site is licensed.
PSBGENs for Licensed Options
Language
PSBGENs
PSB Source
SLXTSAMP MemberCOBOL
TRIMPP
TRIIFP
XPEDTRANIMS003V1
IMS003V2
PSBDTRANPL/I
TRIPMPP
TRIPIFP
XPEDTRNPIMS003V3
IMS003V4
PSBDTRNPC
TRICMPP
TRICIFP
XPEDTRNCIMS003V5
IMS003V6
PSBDTRNCAssembler
XPEDTRNA
XPEDAIFPPSBDTRNA
PSBDAIFP
ACBGEN
Perform an ACBGEN for the database XPIMSDBT and the PSBs. Sample library SLXTSAMP member IMS004I contains the input control statements for the ACBGEN.
Depending on your licensed product options, you may need to delete certain statements listed in the following table before performing the ACBGEN.
ACBGEN Entries for Language Options
Language | Delete the BUILD PSB |
---|---|
COBOL | TRIMPP |
PL/I | TRIPMPP |
C | TRICMPP |
Assembler | XPEDTRNA |
MFSGEN
- The MFS source shipped in sample library SLXTSAMP members XPEDMFS, IMS006, IMS007, IMS008, IMS009, IMS010, and IMS011, contains TYPE=(3270,2) on the DEV macro. Some shops require TYPE=3270-A02. Change the TYPE operand of the DEV macro to a value appropriate for your site.
- Generate the MFS control blocks for the sample verification programs as follows:
- Include SLXTSAMP(XPEDMFS) as input to your site’s MFS gen procedure for sample programs TRIMPP, TRIPMPP, TRICMPP, TRIIFP, TRIPIFP, and TRICIFP.
- Include SLXTSAMP(XPST) as input to your site’s MFS gen procedure for the Stop Region MPP program.
If your site has these Code Debug language options, include the applicable member listed in the following table.
SLXTSAMP Members for MFSGEN
Language
MFSGENs
MFSGEN Input
SLXTSAMP MemberCOBOL
TRIMPP
TRIIFPIMS006
IMS007PL/I
TRIPMPP
TRIPIFPIMS008
IMS009C
TRICMPP
TRICIFPIMS010
IMS011
Task 9.5 Activate Code Debug IMS
- Reload the XPIMSDBT database. Edit the member IMS005V from the sample library SLXTSAMP, making the following corrections:
- Correct the JOB card to your site’s standards.
- Correct the data set name segment CPWR.XT to the data set name segment chosen for your site.
- Provide a valid DASD VOLSER to replace VVVVVV.
- Do not make any other changes to the cluster parameters.
- Provide the data set names of your IMS RESLIB and IMS DBDLIB in the RELOADS step.
Submit the job.
- Define the reloaded databases to IMS/DC. Add the reloaded Code Debug XPIMSDBT databases to the IMS control region allocations, either as dynamic allocations or as JCL.
- Make sure that programs ADSIM016, ADSIM015, and ADSRA093 available by putting the Code Debug load library SLXTLOAD in the STEPLIB or the JOBLIB concatenation of the chosen MPR.
- Run the IMS online change utility to load the control blocks you have generated into the inactive IMS system libraries. These control blocks are ACBLIB, MODBLKS, FMTLIB, and MATRIX members.
- Check the buffer size. Make sure your DFSVSMxx IMS startup member in the IMS PROCLIB has a VSAM buffer definition for a minimum size of 4K. If not, add the following statement to it:
4096,3 - Activate the control blocks. Recycle the IMS system and perform the necessary /MODIFY PREPARE and /MODIFY COMMIT commands to activate your new control blocks. To ensure the activation of the security matrix, add the TRANCMDS parameter to the /MODIFY PREPARE command.
Task 9.6 Transaction Code Lockout
IMS UserID/Data Value Intercept Support
Code Debug IMS provides the ability to trap transactions based on IMS userID and/or up to 30 bytes of transaction data. A user can intercept transactions based solely on transaction data by entering an asterisk (*) in the IMS userID field on the MPP (2.8) test screen. A transaction will then be intercepted if any user enters the specified data in the transaction. If a userID and transaction data are both specified, only transactions meeting both criteria will be intercepted.
In addition to enabling multiple users to debug the same transaction, IMS UserID/Data Value Intercept Support provides additional transaction code lockout relief. It also enables intercept data to be specified by IMS sites that do not require users to sign on, as well as those utilizing a common ID for all users.
The IMS UserID/Data Value Intercept Support requires the use of IMS exit DFSMSCE0.
IMS UserID/Data Value Intercept Support requires that the Code Debug TSO PARMLIB member contain the KEYWORD=value pair CTLIMSUS=YES.
Task 9.7 IMS Requirements for DFSMSCE0
IMS TM and MSC Message Routing and Control User Exit, DFSMSCE0
The Code Debug-supplied IMS TM and MSC Message Routing and Control exit, DFSMSCE0, must be installed in all IMS control regions in which UserID/Data Value Intercept Support is to be implemented. If your installation already has a DFSMSCE0 exit, your version of the exit should be renamed to XPIMSCE0. The Code Debug IMS version will locate and invoke XPIMSCE0 (if present) after determining that a transaction is not to be routed to a Code Debug region.
For IMS 14.1 and Older Releases:
- Member DFSMSCE0 can simply be copied from the SLXTLOAD library to either the IMS RESLIB or a library concatenated to the RESLIB in the IMS control region JCL.
- Shut down and restart the IMS control region to finish implementation.
For IMS 15.1 and Newer Releases:
- Copy the member JCLMSCE0 from the SLXTINST library to a library of your choice.
- Follow the instructions in the JCLMSCE0 member to customize the JCL.
- Make sure the SYSLMOD library is authorized. It can be either the IMS RESLIB or a library concatenated to the RESLIB in the IMS control region JCL.
- Submit the job. It should complete with a condition code of 0.
Shut down and restart the IMS control region to finish implementation.
APPLCTN Macro
IMS must be able to schedule the application Program Specification Block (PSB) when additional transactions are received, even though the PSB is already scheduled in the user’s Code Debug IMS debugging session. The relevant IMS sysgen parameter is SCHDTYPE. The APPLCTN macro for the application PSB must specify SCHDTYPE=PARALLEL. The IMS gen default is SCHDTYPE=SERIAL. This default does not allow IMS to schedule more than one instance of a particular PSB at a time. An IMS gen is required to change this parameter.
Task 9.8 Create Dummy Code Debug IMS PSBs and Transactions
- Dummy IMS PSBs for Code Debug IMS’s use must be generated. Member XPED0000 in SLXTSAMP contains the sample definitions.
- Dummy IMS Transactions codes for Code Debug IMS’s use must be defined. Member XTAPPLTS in SLXTSAMP contains the sample definitions.
- Create as many 'TRANSACT CODE=XPED****' entries as required; 200 may be a good initial amount if warm starts of IMS are done. The prefix must be XPED so it will match the one specified in the trancode intercept activation JCL (member JCLIMSLR).
- The transactions supplied specify a default class of 999. Change it to a class that is not in use by any IMS region and is not one of the classes reserved for use by Code Debug IMS. The value specified must not exceed the MAXCLAS=value specified or accepted by default on the IMSCTRL macro statement.
Task 9.9 Run the Code Debug IMS UserID Intercept Installation Utility
The Code Debug IMS UserID Intercept Installation Utility must be run to enable Code Debug IMS UserID/Data Value Intercept Support.
- Edit SLXTINST(JCLIMSLR) and use the XTUPDATE command to customize the JCL.
- After the SYSIN DD *, supply the name of the IMS subsystems and dummy transaction names. If the IMS subsystem is part of a Shared Queue environment, specify the LPAR name and four-byte identifier for the Shared Queue.
- Submit the job, it should complete with return code 0.
Task 9.10 Configure z/OS to Start the IMS UserID Intercept After an IPL
The following person is required for this task:
JCLIMSLR must be run after each IPL to re-enable Code Debug IMS UserID Intercept support. It must be run before starting any IMS control region that makes use of its services. If you want JCLIMSLR to run automatically during z/OS startup, perform the following:
- Copy SLXTINST(JCLIMSLR) to one of your installation PROCLIBs and use XTUPDATE to customize the JCL to run as a batch job.
- Modify JCLIMSLR to meet your site’s standards for a z/OS startup procedure, replacing the JOB statement with a PROC statement.
- Verify that the PARM statement’s OPTION parameter is set to ACTIVATE.
- Configure your z/OS system to start JCLIMSLR at IPL time by either:
- Updating your z/OS PARMLIB member COMMNDxx.
- Configuring your automated operations application.
An example of the START command is provided in SLXTINST(COMMNDxx).
Task 9.11 IMS DC MPP Installation Verification
To verify that the IMS/DC MPP support is properly customized, the Code Debug IVP programs listed in the following table are used. The base product has four sets of IVP programs, one set for each programming language supported by Code Debug TSO and Code Debug IMS.
MS/DC IVP Programs
Language | Program/SAMPLIB Member |
---|---|
COBOL | TRIMPP, TRITST, and XPEDTRAN (and if you have Fast-Path, TRIIFP) |
PL/I | TRIPMPP, TRITSTP, and XPEDTRNP (and if you have Fast-Path, TRIPIFP) |
ASSEMBLER | XPEDTRNA (and if you have Fast-Path, XPEDAIFP) |
C | TRICMPP, TRITSTC, and XPEDTRNC (and if you have Fast-Path, TRICIFP) |
Preparations for Testing the IMS/DC MPP IVPs
The programs in above table are contained in the SLXTSAMP library. Use the specific Language Processor (LP) to compile or assemble the sample programs in the listed order (TRITST* followed by TRI*MPP). Some main routines statically link to subroutines higher in the list.
See to the BMC AMI Common Shared Services User/Reference Guide for information on using the correct LP (COBOL, PL/I, Assembler, or C).
Optionally, you can access the online BMC AMI Common Shared Services Compile Facility by selecting option 1 (PREPARE) from the Code Debug TSO Primary Menu.
- The COBOL programs must be link-edited with a specific entry point:
- If you compile using the PREPARE option, use the following for the SYSLIN Control field of the LINKEDIT Step panel of the compile:
SYSLIN Control Statements:
===> ENTRY DLITCBL - If you compile outside of Code Debug, include the following entry statement in the LKED step:
//LKED.SYSLIN DD *
ENTRY DLITCBL
- If you compile using the PREPARE option, use the following for the SYSLIN Control field of the LINKEDIT Step panel of the compile:
- The SYSLMOD output from these compiles should not be directed to the Code Debug TSO LOADLIB library, but to a data set available to your application programmers for training sessions. For example, you could create a data set named CPWR.XT.TRAINLIB.
- To verify that the compile was successful and that a source listing member was created, check the listing under the DDNAME CWPERRM for a message similar to the following:
LISTING pgmname DATED nn/nn/nn AT nn.nn.nn SUCCESSFULLY WRITTEN TO CWPDDIO
Initiating the Verification Test Session
- Select 2 (TSO) from the Code Debug TSO Primary Menu.
- Select 8 (MPP) from the Environments Menu.
- Type SETUP and press Enter.
- Select 1 (LOADLIBS) from the Setup Menu.
- On the Load Module Libraries screen, specify the application load library that contains the language-specific IVP load module. Also specify your Language Environment (LE) run-time library (usually CEE.SCEERUN).
- Press Enter.
- If the IMS libraries you are using to test the program were not established as site-wide defaults, select I (IMS) from the Setup Menu. This lets you override the following DDNAMEs for your test only:
- PSB and DBD libraries
- IMS pre-load list (PROCLIB)
- DFSRESLB
- PARMS.
- After all your IMS data sets are specified, enter END (or press PF3) until you return to the IMS test screen.
- Specify the language-specific program in the Program ===> field and/or the language-specific transaction name in the Trancode ===> field.
- In the IMS USERID ===> field, specify the ID that you use to signon to IMS (usually the same as your TSO UserID).
Press Enter to begin the Code Debug TSO debugging session. If the intercepts are set, the following messages appear on the screen:
*** THE IMS INTERCEPTS ARE BEING SET ***
*** INTERCEPTS SET - STARTING THE subs IMS REGION ***
*** THE TEST TRANSACTION CAN BE ENTERED ***- The terminal is then locked. If an error is encountered, however, the intercept is not set and an appropriate error message appears on the message line or in the session log.
Go to an IMS terminal connected to an associated IMS/DC control region and type:
XPEDTRA* hello worldwhere XPEDTRA* will be XPEDTRAN for COBOL, XPEDTRNP for PL/I, XPEDTRNA for Assembler, and XPEDTRNC for C.
- Press Enter.
- Go to the TSO terminal and wait for the source display of the program.
- Type GO 1 on the COMMAND line and press Enter. The execution arrow will be on the next statement. The execution status message indicates that you are BEFOREprogram-name:line-number.
- Press PF12 (GO). You will receive the message:
TEST COMPLETED. ENTER GO TO CONTINUE OR EXIT TO END. - Press PF4 (EXIT) to exit the test session.
- Go to the IMS terminal screen. The following will be displayed:
NON-CONVERSATIONAL INPUT MESSAGE FOLLOWS- HELLO WORLD
Task 9.12 IMS DC IFP Installation Verification
This installation verification includes two subtasks:
- Initiating the COBOL, PL/I, and C IFP Verification Test Session
- Initiating the Assembler IFP Verification Test Session
Perform the IMS DC IFP verification applicable to your site.
See to Table IMS/DC IVP Programs for a list of language-specific IVP load modules.
Task 9.12.1 Initiating the COBOL, PL/I, and C IFP Verification Test Session
- Select 2 (TSO) from the Code Debug TSO Primary Menu.
- Select 9 (IFP) from the Environments Menu.
- Type SETUP and press Enter.
- Select 1 (LOADLIBS) from the Setup Menu.
- On the Load Module Libraries screen, specify the application load library that contains the language-specific IVP load module. Also specify your Language Environment (LE) run-time library (usually CEE.SCEERUN).
- Press Enter.
- If the IMS libraries you are using to test the program were not established as site-wide defaults, select I (IMS) from the Setup Menu. This lets you override the following DDNAMEs for your test only:
- PSB and DBD libraries
- IMS pre-load list (PROCLIB)
- DFSRESLB
- PARMS.
- After all your IMS data sets are specified, enter END (or press PF3) until you return to the IMS test screen.
- Specify the language-specific program in the Program ===> field.
- Specify the same name in the PSB ===> field.
Press Enter to begin the Code Debug TSO debugging session. If the intercepts are set, the following messages appear on the screen:
*** THE IMS INTERCEPTS ARE BEING SET ***
*** INTERCEPTS SET - STARTING THE subs IMS REGION ***If an error is encountered, the intercept is not set and an appropriate error message appears on the message line or in the session log.
Eventually three asterisks (***) will be displayed.
- Press Enter. The source will be displayed.
- Type BEFORE ALL PARA on the COMMAND line and press Enter.
- 1 Go to an IMS terminal connected to an associated IMS/DC control region and type:
/FOR TRI*IFPwhere TRI*IFP will be TRIIFP for COBOL, TRIPIFP for PL/I, and TRICIFP for C. - Press Enter.
- When a formatted data entry screen is displayed, type the values 9 8 7 for the three sides of the triangle and press Enter.
- Go to the TSO terminal and press PF9 (GO 1) until the session “locks”. The execution arrow will continually move through the code. The execution status message indicates that you are BEFORE program-name:line-number.
- When the session “locks”, go the IMS terminal. The ANALYSIS will display SCALENE TRIANGLE.
- Type 0 0 0 for the three sides of the triangle and press Enter.
- Go to the TSO terminal and press PF4 (EXIT) to exit the test session.
- On the IMS terminal screen, the following will be displayed:
DFS2082I RESPONSE MODE TRANSACTION TERMINATED WITHOUT REPLY.
Task 9.12.2 Initiating the Assembler IFP Verification Test Session
- Select 2 (TSO) from the Code Debug TSO Primary Menu.
- Select 9 (IFP) from the Environments Menu.
- Type SETUP and press Enter.
- Select 1 (LOADLIBS) from the Setup Menu.
- On the Load Module Libraries screen, specify the application load library that contains the language-specific IVP load module. Also specify your Language Environment (LE) run-time library (usually CEE.SCEERUN).
- Press Enter.
- If the IMS libraries you are using to test XPEDAIFP were not established as site-wide defaults, select I (IMS) from the Setup Menu. This lets you override the following DDNAMEs for your test only:
- PSB and DBD libraries
- IMS pre-load list (PROCLIB)
- DFSRESLB
- PARMS.
- After all your IMS data sets are specified, enter END (or press PF3) until you return to the IMS test screen.
- Specify XPEDAIFP in the Program ===> field.
- Specify XPEDAIFP in the PSB ===> field.
Press Enter to begin the Code Debug TSO debugging session. If the intercepts are set, the following messages appear on the screen:
*** THE IMS INTERCEPTS ARE BEING SET ***
*** INTERCEPTS SET - STARTING THE subs IMS REGION ***If an error is encountered, the intercept is not set and an appropriate error message appears on the message line or in the session log.
Eventually three asterisks (***) will be displayed.
- Press Enter. The source will be displayed.
- Type BEFORE ALL PARA on the COMMAND line and press Enter.
- 1 Go to an IMS terminal connected to an associated IMS/DC control region and type:
XPEDIFPA Hello World - Press Enter.
- Go to the TSO terminal and press PF9 (GO 1) until the session “locks”. The execution arrow will continually move through the code. The execution status message indicates that you are BEFORE program-name:line-number
- When the session “locks”, go the IMS terminal. The ANALYSIS will display SCALENE TRIANGLE.
- Type 0 0 0 for the three sides of the triangle and press Enter.
- Go to the TSO terminal and press PF4 (EXIT) to exit the test session.
- On the IMS terminal screen, the following will be displayed:
NON-CONVERSATIONAL INPUT MESSAGE FOLLOWS- HELLO WORLD Clear the screen, type:
XPEDAIFP goodbye
and press Enter.
- Go to the TSO terminal and press PF4 (EXIT) to exit the test session.
- On the IMS terminal screen, the following will be displayed:
DFS2082I RESPONSE MODE TRANSACTION TERMINATED WITHOUT REPLY.