HARIBHARAT
New User
Joined: 05 Jul 2006 Posts: 65 Location: pune
|
|
|
|
XPEDITER
Testing tool that simplifies the task of identifying problems,
applying solutions, and analyzing changes
This Document is intend to teach how we can debug a program in Xpediter.
If you got any problems while trying this, contact me. At ***EMail ID REMOVED... Use CODE tag to include mail id***
Software : XPEDITER
VERSION : 7.0
PROGRAM TYPE : BMP (BATCH PROGRAM)
Before going to debug a program, Let us assume following things
Step1 : Write a Simple Cobol Program.
Step2 : Stage it in CHANGE MAN , make sure its status is ACTIVE
(While compiling select the XPEDITER option to 'Y')
If You does not have CHANGE MAN
Include following steps in the compilation JCL, for getting the DDIO files,
Add these steps before link edit steps.
//XOPTIONS DD DISP=SHR,DSN=XT.XT64B1.XOPTIONS
//CWPDDIO DD DISP=SHR,DSN=FLGFGR1.COBOL.DDIO
//CWPPRMO DD *
COBOL(OUTPUT(PRINT,DDIO))
PROCESSOR(OUTPUT(NOPRINT,NODDIO),TEXT(NONE))
LANGUAGE(VSCOBOL)
DDIO(OUTPUT(NOLIST,NOXREF,FIND,NODMAP,NOOFFSET,COMPRESS))
//*
Step3: Write an JCL which runs the COBOL Program.
Assumptions :
PROGRAM NAME : STRING1
CHANGE MAN PACKAGE NAME : ABC1002519
LOAD MODULE : SSSK.ER000000.ABC1.#002519.BLM
Now we can debug the program in XPEDITER
Enter 'XP' on command line in ISPF panel.
Then, the following screen will be displayed
--------------------------------------------------------------------------------
---------------------- XPEDITER/TSO 7.0 - PRIMARY MENU ----------------------
OPTION ===>
0 DEFAULTS - Specify defaults
1 PREPARE - Prepare programs for debugging
2 TSO - Debug programs interactively under TSO
3 BATCH - Debug programs interactively under batch
4 STORED PROC - Debug DB2 Stored Procedures interactively
5 UTILITIES - Perform utility functions
F FADB2 - Invoke File-AID for DB2
FA FILE-AID - Invoke File-AID for MVS
C CODE COVERAGE - Code Coverage NOT INSTALLED
B BULLETIN - Display summary of changes for this release
T TUTORIAL - Display information about XPEDITER/TSO
X EXIT - Exit primary menu
Profile ===> DEFAULT <<
In order to compile our program we need to change
STEP1 : Profile ===> DEFAULT
to
Profile ===> BMP
STEP2 : goto OPTION =>
TYPE 2
ENTER
The following screen will be displayed
------------------------ XPEDITER/TSO - PROFILE (0.4) ---- Enter Description
COMMAND ===> SCROLL ===> PAGE
LINE COMMANDS: S (Select) D (Delete) C (Copy) R (Rename) U (Use)
PRIMARY COMMANDS: MERGE (copy other users profiles)
PROFILE ID:
Profile ===> BMP > BATCH PROGRAM <
CMD PROFILE NEW NAME DESCRIPTION
-------------------------------------------------------------------------------
_ DEFAULT > *** NO DESCRIPTION *** <
******************************* Bottom of data ********************************
ENTER
Profile will be added to the list.
Come back to the XPEDITER Main List
------ ????
What is the use of this Step?
You are creating your own setting to run an BMP program. All
settings will be stored in BMP profiles. Like this you can create
your own profiles to run different types of programs.
------ ?????
--------------------------------------------------------------------------------
Again goto the Main Screen of Xpediter.
TYPE 2
ENTER
It will show following screen.
(If your xpediter setup is over this next screen will be displayed)
Profile: DEFAULT ------ XPEDITER/TSO - ENVIRONMENTS MENU --------------------
OPTION ===>
XPEDITER/TSO
1 STANDARD - Test a program with no special environment services
2 DIALOG - Test programs that make ISPF dialog manager calls
3 IMS - Test a program that makes IMS/DB calls
4 BTS - Test programs using BTS
XPEDITER/IMS
8 MPP - Test programs in an IMS message region
9 BMP/IFP - Test a program in a BMP or Fast Path region
TYPE 1 OR 3
(select 1 if you want to run a simple program)
(select 3 if you want to run a program which will going to access IMS/DB)
ENTER
The following screen will be displayed
Profile: SIMPLE ------- XPEDITER/TSO - STANDARD (2.1) -----------------------
COMMAND ===>
COMMANDS: SEtup (Display Setup Menu)
PROFile (Display Profile Selection)
TEST SELECTION CRITERIA:
Program ===>
Entry Point ===>
Load Module ===>
Initial Script ===>
Post Script ===>
PARM String ===>
File List/JCL Member ===>
Is This a DB2 Test? ===> NO Plan ===> System ===>
TYPE 'SE' on command line
ENTER
The following screen will be displayed
Profile: BMP -------- XPEDITER/TSO - SETUP MENU --------------------------
OPTION ===>
E EXTENDED - Extended Setup Menu
0 ENVIRONMENT - Execution environments menu
1 LOADLIBS - Application load module libraries
2 DDIO - DDIO files
3 INCLUDES - Test script libraries
4 LOG - Session log dataset disposition
5 SCRIPT - Test script dataset disposition
6 DSNLOAD - DB2 system names and DSNLOAD libraries
A ALL - Display all of the above in succession (except 0)
Press ENTER to process or enter END command to terminate
Using this screen you need to tell XPEDITER ,
Where is your load library is?
What libraries you are using in your program?
Type 1
ENTER
The following screen will be displyed
Profile: BMP -------- XPEDITER/TSO - LOAD MODULE LIBRARIES ------------------
COMMAND ===>
COMMANDS: DOWN (for additional User Libraries)
User Libraries: --->>> Include ALL libraries your program requires <<<---
(Even if the library is in LINKLST, ie. COBOL or LE runtime libraries)
(1) ===> 'SYS2.LE370Z.PGMLIB'
(2) ===> ''
(3) ===>
(4) ===>
(5) ===>
(6) ===>
(7) ===>
(8) ===>
Installation Libraries: (This list contains overrides to installed defaults)
(9) ===>
(10) ===>
(11) ===>
(12) ===>
(13) ===>
(14) ===>
(15) ===>
(16) ===>
Here, we need to give IMS Libraries we are using, You can find them in RUN JCL
ENTER
TYPE '2' ON SETUP MENTU
ENTER
Profile: BMP ------------ XPEDITER/TSO - DDIO FILES -------------------------
COMMAND ===>
User Libraries:
(1) ===> 'SSSK.ER000000.ABC1.#002519.DDIO'
(2) ===>
(3) ===>
(4) ===>
(5) ===>
(6) ===>
Installation Libraries: (Changes made to this list override installed default
(7) ===>
(8) ===>
(9) ===>
ENTER
--------------------------------------------------------------------------------
COME BACK TO XPEDITER MAIN MENU
ALL STANDARD SETTINGS ARE OVER.
THE FOLLOWING STEPS YOU NEED TO DO EVERY TIME YOU WANT TO DEBUG A PROGRAM.
---------------------- XPEDITER/TSO 7.0 - PRIMARY MENU ----------------------
OPTION ===> 1
0 DEFAULTS - Specify defaults
1 PREPARE - Prepare programs for debugging
2 TSO - Debug programs interactively under TSO
3 BATCH - Debug programs interactively under batch
4 STORED PROC - Debug DB2 Stored Procedures interactively
5 UTILITIES - Perform utility functions
F FADB2 - Invoke File-AID for DB2
FA FILE-AID - Invoke File-AID for MVS
C CODE COVERAGE - Code Coverage NOT INSTALLED
B BULLETIN - Display summary of changes for this release
T TUTORIAL - Display information about XPEDITER/TSO
X EXIT - Exit primary menu
Profile ===> BMP - IMS BATCH PROGRAM
TYPE 1
ENTER
The following screen will be displayed
------------------ XPEDITER/TSO - PROGRAAM PREPARATION MENU ------------------
OPTION ===>
1 CONVERT COMPILE JCL - Convert compile JCL for XPEDITER
2 COMPILE FACILITY - Compile programs for XPEDITER
3 BIND FACILITY - Bind application plans for File-AID DB2
4 EDIT ALLOCATION LIST - Edit or Create file allocation lists
TYPE 4
ENTER
Following screen will be displayed
----------------------- XPEDITER/TSO - EEDIT FILE LIST -----------------------
COMMAND ===>
Specify File Allocation List Below:
ISPF Library:
Project ===>
Group ===>
Type ===>
Member ===> (Blank for member selection list)
Other Partitioned or Sequential Dataset:
Dataset Name ===> '< EXISTING PDS >(xped1)'
Volume Serial ===> (If not cataloged)
Copy from JCL, CLIST, or Other File Allocation List
Dataset Name ===> '< RUN JCL >'
Copy Option ===> PROMPT (Replace, Append, Prompt, or Cancel copy)
Automatic Expand ===> YES (Yes/No)
Step Selection ===> (Program name for automatic step selection)
Press ENTER to Process or Enter END Command to Terminate
ENTER
It will prompt you with your run jcl.
Select all SYSIN/SYSOUT/INPUT FILES USED IN PROGRAM/OUTPUT FILES
USED IN PROGRAM by putting 'S' infront of that line and Press ENTER.
TYPE END on command line ENTER
TYPE END on commend line ENTER
------------------------ XPEDITER/TSO - SELECT DDNAME ----------- Row 1 Of 6
COMMAND ===> SCROLL ===> CSR
LINE COMMAND: S (Select) PRIMARY COMMANDS: END (Process selected statements)
BR (Browse dataset) CAN (Quit without processing)
ED (Edit dataset) Edit (Edit JCL using ISPF Editor)
EXP (Expand JCL procedures)
Select the DDNAMEs to be copied to the allocate screen
SEL JCL Data Set: 'VAAE98.DFC2.VAAE98.GLOB.FFB.SOURCE(RUNJCL)'
-------------------------------------------------------------------------------
''''' //ESLE04 JOB (34050F,2331S),'RUNJCL',CLASS=S,MSGCLASS=T,
''''' // NOTIFY=&SYSUID
''''' //STEP1 EXEC PGM=STRING1
''''' //STEPLIB DD DSN= SSSK.ER000000.ABC1.#002519.BLM,DISP=SHR
''S'' //SYSIN DD *
''S'' //SYSOUT DD SYSOUT=*
******************************* Bottom of data ********************************
COME BACK TO XPEDITER MAIN SCREEN.
TYPE 2
ENTER
Profile: BMP ---------- XPEDITER/TSO - STANDARD (2.1) -----------------------
COMMAND ===>
COMMANDS: SEtup (Display Setup Menu)
PROFile (Display Profile Selection)
TEST SELECTION CRITERIA:
Program ===> STRING1
Entry Point ===>
Load Module ===>
Initial Script ===>
Post Script ===>
PARM String ===>
File List/JCL Member ===> 'DFC2.VAAE98.GLOB.FFB.SOURCE(XPED1)'
Is This a DB2 Test? ===> NO Plan ===> System ===>
ENTER
YOU WILL BE PROMPTED WITH YOUR PROGRAM
---------------
COMMANDS
---------------
1. PRESS F9 to debug your programs ( = GO 1)
2. PRESS F12 to execute all statement up to break point (= GO)
3. Break Points
B (before execution) / A (After execution)
put 'B' on line where you want to stop execution.
Ex. 00B046 READ INFILE INTO WORK-REC
PRESS ENTER, line will displayed in following way
000046 B READ INFILE INTO WORK-REC
now, If you press F12 , all statements executed and control
will stop at this line
4. KEEP / K
If you want to see a variable value while excuting, use KEEP
syntax - KEEP < VARIABLE NAME >
It shows the variable name and changing value while you debugging in
the top part of screen
5. PEEK < VARIABLE NAME >
P (PEEK) < VARIABLE NAME > and press Enter. The screen
automatically scrolls to the DATA DIVISION statement
where the VARIABLE defined, inserts a P in column 9,
and displays the occurrence and value of that variable
6. SKIP
To skip execution of a particular line
Serial No. 3, 4, 5, 6 command are line commands we can use
them on line
ex. 00S089 MOVE WS-SYS-VAR TO WS-ANM-VAR.
Following are command line commands. means you need to use them
at command line.
7. GOTO
It is used to pass control to particular line/paragraph
syntax : GOTO < LINE NUMBER >
GOTO < PARA NAME >
8. WHEN
WHEN is used to pause the execution of the program at certain
point when the set condition arises
EX. WHEN WS-SYS-VAR = 4587384
Xpediter stops the execution whenever it satisfies the condition.
9. QUIT to come out of Debugging session.
P |
|