Sprint
Project Summary
For
SystemVision Implementation
Submitted by Peter Martin
Version 2
March 2000
1. Overview
1.1. Objective of this Report
1.2. The Audience
1.3. Other Supporting Documentation
2. Product Verification
2.1. Version being run
2.2. Product Setup
3. Process Development
3.1. Inventory Runs
4. Batch Processes
4.1. Setting up Batch
5. Finding a Data Field
5.1. The Scan Data Member
5.2. The Libraries
5.3. The Commands
5.4. SCANLIST
5.5. The Resulting Report
6. Data Name Tracing
6.1. Batch Processes
7. Data Field to I/O Area Report
7.1. Setup
7.2. Find all Procedural datanames
7.3. Select only Datanames which involve Transfers
7.4. Verify that we are using correct SCANLIST
7.5. Find Data Transfers which involve SCANLIST Fields
7.6. First Level Aliases
7.7. Unique list of Data Transfers
7.8. Programs which involve Data Transfers of Interest
7.9. Field attributes of Impacted Items
7.10. I/O areas of Impacted Data Fields
7.11. Unique list of I/O areas
7.12. I/O areas which use dataname of Interest
7.13. Drop Duplicates
7.14. I/O areas associated with Impacted Data
8. Maintenance Difficulty Ratings
8.1. The Process
8.2. The Program Difficulty Report
9. Product Issues
This report has been compiled to document the processes that have been implemented for the use of SVCommands at Sprint.
Hopefully, this document will provide answers and, more importantly, eliminate questions about what was accomplished during my 5-week contract.
This document is process oriented and is not intended to be a tutorial on SVCommands.
The intended audience for this document is trained MVS technicians.
Other information can be found in the actual job streams that I have placed on the Product libraries under my userid.
Additional reports of individual runs have been built with explanations of each process. These will be turned over to the other team members.
The following message shows which version of the SVCommands Product is being run.
* VERSION - C305M2C *
* Executing 'SYS1.SPRINT.CLIST.CNTL(SVCMDS)' *
To the best of my knowledge, there is only one version of SVCommands installed at this site. The following selection from a SVCommands report shows that the version being executed is C304M2C and that it came from ADPAC on tape number ADA293.
SV RELEASE: C305M2C FUNCTION: WHERE
VBASE: O : TEST.PMLIB DATE: 02/15/2000
SYSLIB: O : PFM.X.SOURCE TIME: 10:58
ALTLIB: O : PFM.X.DSECT EXEC: BACKGROUND
COPYLIB: O : PFM.X.COPY TAPE: ADA293
C2COPY: A : DPD.LIBRIAN.MASTER USERID: ACU347AS
This information is very important when contacting ADPAC customer support.
There does not appear to be a version of this Product running on the Production system.
The first step is to set up a PMLIB that contains all of the:
The PMLIB was set up as &logonid.TEST.PMLIB.
The next step is to set up a report output file. We used a partitioned dataset for this purpose. Each of the SVCommand Runs puts out report that becomes a member of this PDS>
The purpose of this is to keep all information about a particular application together. A second benefit is that it does not require allocating and de-allocating print files.
This dataset was set up as &LOGONID.@REPORTS.
The following Commands were added to assist in building and processing SVCommand jobs
Klean |
Will erase the contents of a member and/or a print dataset. |
Build |
Will build a new batch job using standard job card, file names, and SVCommands procedure parameters. |
PM |
Will clear a lot of what might be judged to be extraneous data in the printed reports. |
These macros can be found in the private TSO CLIST dataset which was set up under my logonid.
The following runs were done using the SVCommands foreground execution panel.
When I ran that same command against the source file, the system seemed to be hung. It turns out that the Librarian file has 50,468 members.
The Product will not handle more than 15,000 members at one time.
We have not been able to get the inventory of the librarian file due to known SVCommands Product limitations.These are the source files for the application on which I am working:
The following list shows which files have been allocated to the Product. Note that the names on the left of the list are used in SVCommands - much like a DD name is used in a program.
VBASE: O : TEST.PMLIB DATE: 02/15/2000
SYSLIB: O : PFM.X.SOURCE TIME: 10:58
ALTLIB: O : PFM.X.DSECT EXEC: BACKGROUND
COPYLIB: O : PFM.X.COPY TAPE: ADA293
C2COPY: A : DPD.LIBRIAN.MASTER USERID: ACU347AS
P1PROC: N : * NOT ALLOCATED *
P2PROC: N : * NOT ALLOCATED *
JOBCNTL: N : * NOT ALLOCATED *
OUTLIB: N : * NOT ALLOCATED *
PMHELP: O : ADPAC.SVCMDS.PMHELP
S1SCEN: O : ADPAC.SVCMDS.SCENARIO
S2SCEN: N : * NOT ALLOCATED *
L1LOAD: N : * NOT ALLOCATED *
L2LOAD: N : * NOT ALLOCATED *
In the above example, the Librarian Master was used as a second copy file. This is not the same a concatenation. The file types are different.
Once we pointed the Product to the proper files this is the inventory which we obtained.
INVENTORY COUNTS
LIBRARY:PFM.X.SOURCE
MEMBERS RECORDS
------- ----------
COBOL 2,354 3,131,680
CICSMAC 3 153
UNKNOWN 1 2
-------------------------
TOTAL 2,358 3,131,835
LIBRARY:PFM.X.DSECT
MEMBERS RECORDS
------- ----------
COBOL 1,832 469,577
UNKNOWN 1 2
-------------------------
TOTAL 1,833 469,579
LIBRARY:PFM.X.COPY
MEMBERS RECORDS
------- ----------
SQL 11 1,328
COBOL 1,295 111,062
UNKNOWN 2 92
-------------------------
TOTAL 1,308 112,482
TOTAL RECORDS OF ALL LIBRARIES PROCESSED
MEMBERS RECORDS
------- ----------
COBOL 5,481 3,712,319
CICSMAC 3 153
UNKNOWN 4 96
UNKNOWN 4 96
SQL 11 1,328
-------------------------
TOTAL 5,499 3,713,896
Batch Processes Setting up BatchTo demonstrate the capabilities of the Product, I have set up the following generic runs in
TEST.PMLIB |
Name of Jobstream |
Purpose of Run |
@INVENT |
Inventory of Libraries |
@PROGRAMS |
Member selection |
@COPY |
Copies |
@CALL |
Calls |
@WHOCALL |
After entering a program name, this run will show which programs call a particular program. |
@RECORD |
A after entering a member name and an 01 level record, this run will document the record(s) layout(s). |
@RATE |
Ratings for selected programs |
@ATTRIB |
|
@CALL |
|
@CALLS |
|
@CICS |
|
@CICSCSD |
|
@CICSRUN |
|
@COPY |
|
@DATAFLD |
|
@DIRECT |
|
@DNAMES |
|
@DTRANS |
|
@FINDIT |
|
@IEBGENR |
|
@INVENT |
|
@JCLJOB |
|
@JEFF2 |
|
@JOB |
|
@LIBDIR |
|
@LIBRARY |
|
@MEMBER |
|
@MEMBERS |
|
@RATE |
|
@RATEONE |
|
@RECORD |
|
@SBRATE |
|
@SBWASIS |
|
@SCAN |
|
@SCREEN |
|
@SYSTSIN |
|
@TRANS |
|
@WASIS |
|
@WHOCALL |
|
|
|
Basic batch runs can be built by copying the following modules into a new member of a PMLIB:
Module Name |
Description |
JOBCARD |
User and account information on a Job Card |
CLEAN |
A utility to clean up files |
SVPROC |
The SystemVision Procedure |
Using the BUILD macro can do this. The macro is in my CLIST library.
The following member was adapted to include the datanames for which we are searching:
EDIT TEST.PMLIB(SCANLIST) - 01.05 Columns 00001 00072
Command ===> Scroll ===> CSR
*** ************** Top of Data ***************
1
ORDENTY-ORIG-ACTIVITY-CODE/*** ************** Bottom of Data **************
The following libraries were processed:
SV RELEASE: C305M2C FUNCTION: WHERE
VBASE: O : TEST.PMLIB DATE: 02/15/2000
SYSLIB: O : PFM.X.SOURCE TIME: 10:58
ALTLIB: O : PFM.X.DSECT EXEC: BACKGROUND
COPYLIB: O : PFM.X.COPY TAPE: ADA293
C2COPY: A : DPD.LIBRIAN.MASTER USERID: ACU347AS
P1PROC: N : * NOT ALLOCATED *
P2PROC: N : * NOT ALLOCATED *
JOBCNTL: N : * NOT ALLOCATED *
OUTLIB: N : * NOT ALLOCATED *
PMHELP: O : ADPAC.SVCMDS.PMHELP
S1SCEN: O : ADPAC.SVCMDS.SCENARIO
S2SCEN: N : * NOT ALLOCATED *
L1LOAD: N : * NOT ALLOCATED *
L2LOAD: N : * NOT ALLOCATED *
@SV TITLE='FINDIT FOR CHARACTERS.'
@SV LANGUAGE=TEXT,KWIC=(5,5)
@SV COPY=NO,INCLUDE=NO
@SV MONITOR=NO
NOPRINT,ERROR=GO@SV CAT=(#FOUND,MLIST)
ORDENTY-ORIG-ACTIVITY-CODE
/ NO @LIST RECORD
WAS IS MEMBER MODE
------------------------------ ------------------------------ ---------- ----
1 ORDENTY-ORIG-ACTIVITY-CODE/
>KEYWORD IN CONTEXT FINDIT FOR CHARACTERS. ADPAC, USE BY AGREEMENT ONLY 02/24/2000 PAGE 1
>>>RPT STRING
>>LINE
>1...5...10...15...20...25...30...35...40...45...50...55...60...65...70...75...80 ---KEYWORD--- --MEMBER-- -LINE-
152000 SUBTRACT 1 FROM ORDENTY-LAST-CIRCUIT - 5
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001520152100RMS CHANGE 12/1 - 4
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001521152200O MOVE 'INST-RMS' TO ORDENTY-ACTIVITY-CODE - 3
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001522152300 MOVE 'NEW-INST' TO ORDENTY-ACTIVITY-CODE 12/1 - 2
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001523152400END RMS CHANGE 12/1 - 1
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001524152500 MOVE 'NEW-INST' TO
ORDENTY-ORIG-ACTIVITY-CODE <=== ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001525152600RMS CHANGE 12/1 + 1
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001526152700O MOVE 72 TO ORDENTY-STATUS-CODE + 2
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001527152800 MOVE 10 TO ORDENTY-STATUS-CODE 12/1 + 3
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001528152900END RMS CHANGE 12/1 + 4
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001529153000 MOVE 10 TO ORDENTY-ORIG-STATUS-CODE + 5
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001530001552-----------------------
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001552155200 MOVE SAVE-RTRUNK TO WS-TRUNK - 5
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001552155300 PERFORM 6010-READ-RORDENTY-CIRCUIT - 4
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001553155400 MOVE ORDENTY-CUST-WANT-DATE - 3
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001554155500 TO ORDENTY-ORIG-CUST-WANT-DATE - 2
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001555155600 MOVE ORDENTY-ACTIVITY-CODE - 1
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001556155700 TO
ORDENTY-ORIG-ACTIVITY-CODE <=== ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001557155800 MOVE ZEROS TO ORDENTY-SIDD-CALCULATED-DATE + 1
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001558155900 ORDENTY-LATEST-FIRM-DATE + 2
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001559156000 ORDENTY-RID-ACTUAL-DATE + 3
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001560156100 ORDENTY-ASR-ISSUE-DATE + 4
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001561156200 ORDENTY-CONSENT-DATE + 5
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 001562003263-----------------------
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 003263326300 PERFORM 6010-READ-RORDENTY-CIRCUIT - 5
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 003263326400 IF RORDENTY-NORMAL - 4
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 003264326500 MOVE 60 TO ORDENTY-STATUS-CODE - 3
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 003265326600 MOVE ZEROS TO ORDENTY-TERMINATION-DATE - 2
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 003266326700 ORDENTY-PROJECT-NUMBER - 1
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 003267326800 MOVE
ORDENTY-ORIG-ACTIVITY-CODE <=== ORDENTY-ORIG-ACTIVITY-CODE FHC80P 003268326900 TO ORDENTY-ACTIVITY-CODE + 1
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 003269327000 MOVE ORDENTY-ORIG-CUST-WANT-DATE + 2
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 003270327100 TO ORDENTY-CUST-WANT-DATE + 3
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 003271327200 MOVE ORDENTY-ORIG-STATUS-CODE + 4
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 003272327300 TO ORDENTY-STATUS-CODE + 5
ORDENTY-ORIG-ACTIVITY-CODE FHC80P 003273The following runs have been set up to find all procedural uses of a particular data field. The first case given was a field, the contents of which are being corrupted. This will show every procedural use of the datafield and its first level of alias.
The process is primed by putting the datafield in the SCANLIST member of the TEST.PMLIB.
Batch ProcessesTo solve this problem, I have built the following runs:
Process |
Job to be Submitted |
Update SCANLIST |
Using editor change TEST.PMLIB member SCANLIST by replacing the current dataname with the dataname(s) that you want to find. |
Scan to find the dataname in all of the programs that use it. |
Submit job - @FINDIT |
To determine the scope of the maintenance difficulty in this subset of programs. |
Submit job - @RATE |
A DNAMES Run to show all of the DTRANS and Aliases. |
Submit job - @DATAFLD |
An IO run to show all of the I/O areas. |
Submit job - @JOBRUN |
These need to be run in the above sequence.
-------*-*-*-*-*-*-*-*-*-*
SV RELEASE: C305M2C FUNCTION: WHERE
VBASE: O : TEST.PMLIB DATE: 02/29/2000
SYSLIB: O : PFM.X.SOURCE TIME: 12:45
ALTLIB: O : PFM.X.DSECT EXEC: BACKGROUND
COPYLIB: O : PFM.X.COPY TAPE: ADA293
PMHELP: O : ADPAC.SVCMDS.PMHELP
----------------
-----------*-*-*-*-*-*
@SV TITLE='FIND ALL PROCEDURAL DATANAMES'
SV WHICH ARE IN THE SELECTED PROGRAMS
@SV.DNAMES MLIST=#FOUND
@SV DIVISION=PROCEDURE
@SV CATAL=#IMPDNL1,
NOPRINT-------------------------------------------------
@LIST #FOUND MLIST C305M2C 2000/02/25 09:54 ACU347AF
This is a listing of all procedural datanames in the programs which have already been determined to contain the item in question.
DNLIST: DATA NAMES FIND ALL PROCEDURAL DATANAMES ADPAC, USE BY AGREEMENT ONLY 02/29/2000 PAGE 1
RPT USER MEMBER PROGRAM OR DATA XREF =RESULT
LINE CODES NAME IDENT NO NAME DTRANS=T LINE DIV GROUP
1--------- 11-------- 21------ -- 31----------------------------61------- 71 ------
SV RELEASE: C305M2C FUNCTION: WHERE
VBASE: O : TEST.PMLIB DATE: 02/29/2000
SYSLIB: O : PFM.X.SOURCE TIME: 12:49
ALTLIB: O : PFM.X.DSECT EXEC: BACKGROUND
COPYLIB: O : PFM.X.COPY TAPE: ADA293
PMHELP: O : ADPAC.SVCMDS.PMHELP
@SV TITLE='IMPDNM2 FOR CHARACTERS.'
SELECT ONLY THOSE ITEMS IN THE DATANAME LIST
WHICH REFLECT TRANSFER ITEMS IE, MOVES
@SV.LIST DNLIST=IMPDNL1
@SV SELECT=(61,E,T)
@SV CATAL=IMPDTR,
NOPRINT-------------------------------------------------
@LIST IMPDNL1 DNLIST C305M2C 2000/02/11 15:06 ACU347A
This narrows the procedural dataname list to only those which involve moves.
DNLIST IMPDTR IMPDNM2 FOR CHARACTERS. ADPAC, USE BY AGREEMENT ONLY 02/29/2000 PAGE 1
RPT USER MEMBER PROGRAM OR DATA XREF =RESULT
LINE CODES NAME IDENT NO NAME DTRANS=T LINE DIV GROUP
1--------- 11-------- 21------ -- 31----------------------------61------- 71 ------
PM@LIS-M04 IMPDTR REPLACED IN PMLIB AS: DNLIST SEE IMPDTR
---------------
MEMBER ADDED TO PMLIB
---------------
SV RELEASE: C305M2C FUNCTION: WHERE
VBASE: O : TEST.PMLIB DATE: 02/29/2000
SYSLIB: O : PFM.X.SOURCE TIME: 12:49
ALTLIB: O : PFM.X.DSECT EXEC: BACKGROUND
COPYLIB: O : PFM.X.COPY TAPE: ADA293
PMHELP: O : ADPAC.SVCMDS.PMHELP
@SV TITLE=' CHECK SCANLIST '
@SV.DISPLAY SOURCE=PMLIB,MEMBER=SCANLIST
DISPLAY CHECK SCANLIST ADPAC, USE BY AGREEMENT ONLY 02/29/2000 PAGE 1
SEQ DISPLAY OF SCANLIST FROM LIBRARY:TEST.PMLIB SOURCE COPY
NUMBER 1...5...10...15...20...25...30...35...40...45...50...55...60...65...70...75...80 LINENO MEMBER
1
ORDENTY-ORIG-ACTIVITY-CODE/ 1DISPLAY END: SCANLIST
This narrows the output of 1.3 to the field in question.
SV RELEASE: C305M2C FUNCTION: WHERE
VBASE: O : TEST.PMLIB DATE: 02/29/2000
SYSLIB: O : PFM.X.SOURCE TIME: 12:49
ALTLIB: O : PFM.X.DSECT EXEC: BACKGROUND
COPYLIB: O : PFM.X.COPY TAPE: ADA293
PMHELP: O : ADPAC.SVCMDS.PMHELP
@SV SOURCE=PMLIB,KWIC
@SV CATAL=(IMPDN,KWIC)
ORDENTY-ORIG-ACTIVITY-CODE
/ NO @LIST RECORDWAS IS MEMBER MODE
------------------------------ ------------------------------ ---------- ----
1
ORDENTY-ORIG-ACTIVITY-CODE/KEYWORD IN CONTEXT ADPAC, USE BY AGREEMENT ONLY 02/29/2000 PAGE 1
RPT STRING
LINE
1...5...10...15...20...25...30...35...40...45...50...55...60...65...70...75...80 ---KEYWORD--- --MEMBER-- -LINE-
C FHG10P FHG10P
ORDENTY-ORIG-ACTIVITY-CODE T010107 P ORDENTY-ORIG-ACTIVITY-CODE IMPDTR 000273C FHTB0P FHTB0P
ORDENTY-ORIG-ACTIVITY-CODE T024508 P ORDENTY-ORIG-ACTIVITY-CODE IMPDTR 006701C FHTB0P FHTB0P
ORDENTY-ORIG-ACTIVITY-CODE T025741 P ORDENTY-ORIG-ACTIVITY-CODE IMPDTR 007011C FMVT0P FMVT0P
ORDENTY-ORIG-ACTIVITY-CODE T005054 P ORDENTY-ORIG-ACTIVITY-CODE IMPDTR 019046C FMVT0P FMVT0P
ORDENTY-ORIG-ACTIVITY-CODE T005506 P ORDENTY-ORIG-ACTIVITY-CODE IMPDTR 019271PM@CTX-M04 IMPDN REPLACED IN PMLIB AS: KWIC
This will involve all field from which and to which the field is moved.
SV RELEASE: C305M2C FUNCTION: WHERE
VBASE: O : TEST.PMLIB DATE: 02/29/2000
SYSLIB: O : PFM.X.SOURCE TIME: 12:49
ALTLIB: O : PFM.X.DSECT EXEC: BACKGROUND
COPYLIB: O : PFM.X.COPY TAPE: ADA293
PMHELP: O : ADPAC.SVCMDS.PMHELP
@SV TITLE=/GET ALL FIRST LEVEL ALIASES/
(RELATED BY DATA TRANSFER NOT CALCULATION)
@SV.LIST DNLIST=(IMPDTR,IMPDN)
@SV SORT=(MEMBER,XREF)
@SV MATCH=1,DLOC=NO,LLOC=NO
@SV CAT=IMPDN2 ,
NOPRINT@LIST IMPDTR DNLIST C305M2C 2000/02/29 12:49 ACU347AD
@LIST IMPDN KWIC C305M2C 2000/02/29 12:49 ACU347AD
DNLIST IMPDN2 GET ALL FIRST LEVEL ALIASES ADPAC, USE BY AGREEMENT ONLY 02/29/2000 PAGE 1
RPT USER MEMBER PROGRAM OR DATA XREF =RESULT
LINE CODES NAME IDENT NO NAME DTRANS=T LINE DIV GROUP
1--------- 11-------- 21------ -- 31----------------------------61------- 71 ------
1 C FHG10P FHG10P
ORDENTY-ORIG-ACTIVITY-CODE T010107 P2 C FHG10P FHG10P S-ORIG-ACTIVITY-CODE T010107 P
3 C FHTB0P FHTB0P ORDENTY-ACTIVITY-CODE T024508 P
4 C FHTB0P FHTB0P
ORDENTY-ORIG-ACTIVITY-CODE T024508 P5 C FHTB0P FHTB0P ORDENTY-ACTIVITY-CODE T025741 P
6 C FHTB0P FHTB0P
ORDENTY-ORIG-ACTIVITY-CODE T025741 P7 C FMVT0P FMVT0P
ORDENTY-ORIG-ACTIVITY-CODE T005054 P8 C FMVT0P FMVT0P WS-ORIG-ACTIVITY-CODE T005054 P
9 C FMVT0P FMVT0P WS-ORIG-ACTIVITY-CODE T005506 P
10 C FMVT0P FMVT0P
ORDENTY-ORIG-ACTIVITY-CODE T005506 PPM@LIS-M04 IMPDN2 REPLACED IN PMLIB AS: DNLIST SEE IMPDN2
This simply makes a unique list of the above.
SV RELEASE: C305M2C FUNCTION: WHERE
VBASE: O : TEST.PMLIB DATE: 02/29/2000
SYSLIB: O : PFM.X.SOURCE TIME: 12:49
ALTLIB: O : PFM.X.DSECT EXEC: BACKGROUND
COPYLIB: O : PFM.X.COPY TAPE: ADA293
PMHELP: O : ADPAC.SVCMDS.PMHELP
-------------------------------------------------
@SV.LIST DNLIST=IMPDN2
@SV SORT=(MEMBER,DNAME)
@SV DUPLICATES=DROP,DLOC=NO
@SV CATAL=IMPDN3 ,
NOPRINT-------------------------------------------------
@LIST IMPDN2 DNLIST C305M2C 2000/02/29 12:49 ACU347AD
DNLIST IMPDN3 ADPAC, USE BY AGREEMENT ONLY 02/29/2000 PAGE 1
RPT USER MEMBER PROGRAM OR DATA XREF =RESULT
LINE CODES NAME IDENT NO NAME DTRANS=T LINE DIV GROUP
1--------- 11-------- 21------ -- 31----------------------------61------- 71 ------
1 C FHG10P FHG10P
ORDENTY-ORIG-ACTIVITY-CODE T010107 P2 C FHG10P FHG10P S-ORIG-ACTIVITY-CODE T010107 P
3 C FHTB0P FHTB0P ORDENTY-ACTIVITY-CODE T024508 P
4 C FHTB0P FHTB0P
ORDENTY-ORIG-ACTIVITY-CODE T024508 P5 C FMVT0P FMVT0P
ORDENTY-ORIG-ACTIVITY-CODE T005054 P6 C FMVT0P FMVT0P WS-ORIG-ACTIVITY-CODE T005054 P
PM@LIS-M04 IMPDN3 REPLACED IN PMLIB AS: DNLIST SEE IMPDN3
This is simply a list of the programs which appear in the previous list.
SV RELEASE: C305M2C FUNCTION: WHERE
VBASE: O : TEST.PMLIB DATE: 02/29/2000
SYSLIB: O : PFM.X.SOURCE TIME: 12:50
ALTLIB: O : PFM.X.DSECT EXEC: BACKGROUND
COPYLIB: O : PFM.X.COPY TAPE: ADA293
PMHELP: O : ADPAC.SVCMDS.PMHELP
@SV.LIST DNLIST=IMPDN3
@SV CATAL=(IMPMLI,MLIST)
-------------------------------------------------
@LIST IMPDN3 DNLIST C305M2C 2000/02/29 12:50 ACU347AD
MEMBER NAMES IMPMLI ADPAC, USE BY AGREEMENT ONLY 02/29/2000 PAGE 1
RPT USER MEMBER
LINE CODES NAME
1--------- 11--------
1 C FHG10P
2 C FHTB0P
3 C FMVT0P
PM@LIS-M04 IMPMLI REPLACED IN PMLIB AS: MLIST SEE IMPMLI
SV RELEASE: C305M2C FUNCTION: WHERE
VBASE: O : TEST.PMLIB DATE: 02/29/2000
SYSLIB: O : PFM.X.SOURCE TIME: 12:50
ALTLIB: O : PFM.X.DSECT EXEC: BACKGROUND
COPYLIB: O : PFM.X.COPY TAPE: ADA293
PMHELP: O : ADPAC.SVCMDS.PMHELP
@SV TITLE=/ATTRIBUTE RUN/
OBTAIN THE ATTRIBUTES OF DATANAMEOFINTEREST
AND ITS FIRST LEVEL OF ALIASES
@SV.ATTRIBUTES MLIST=IMPMLI
@SV DNLIST=(IMPDN3,MEMBER)
@SV CATAL=IMPATL
NOPRINT-------------------------------------------------
@LIST IMPMLI MLIST C305M2C 2000/02/29 12:50 ACU347AD
@LIST IMPDN3 DNLIST C305M2C 2000/02/29 12:50 ACU347AD
MAXIMUM DATA-NAMES PER RECORD WITH THIS CORESIZE IS 07699
PM@PDX-C02 FHTB0M ON COPYLIB NOT FOUND OR IS EMPTY SEE FHTB0P 015952
ATTRIBUTE MESSAGES ATTRIBUTE RUN ADPAC, USE BY AGREEMENT ONLY 02/29/2000 PAGE 1
009100 'NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN'
009300 'YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY'
009500 'UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU'
FHTB0P-COPYBOOKS
This shows field attributes of the field in question and all first level aliases.
DNLIST:IMPDN3 ATTRIBUTE RUN ADPAC, USE BY AGREEMENT ONLY 02/29/2000 PAGE 1
USER MEMBER PROGRAM LV DATA LOGICAL PICTURE/REDEFINES
CODES NAME IDENT NO NAME LENGTH FROM-TO FORMAT VALUE NUMBER
C FHG10P FHG10P 10 S-ORIG-ACTIVITY-CODE 8 180-187 ALPNUM X(08) 000342
C FHG10P FHG10P 15
ORDENTY-ORIG-ACTIVITY-CODE 8 1222-1229 ALPNUM X(08) C000804C FHTB0P FHTB0P 15 ORDENTY-ACTIVITY-CODE 8 509-516 ALPNUM X(08) C004632
C FHTB0P FHTB0P 15
ORDENTY-ORIG-ACTIVITY-CODE 8 1622-1629 ALPNUM X(08) C004738C FMVT0P FMVT0P 15
ORDENTY-ORIG-ACTIVITY-CODE 8 1222-1229 ALPNUM X(08) C001005C FMVT0P FMVT0P 05 WS-ORIG-ACTIVITY-CODE 8 143-150 ALPNUM X(08) C003358
PM@ATT-M04 IMPATL REPLACED IN PMLIB AS: ATLIST
This will show all Input / Output areas of the impacted datafields.
SV RELEASE: C305M2C FUNCTION: WHERE
VBASE: O : TEST.PMLIB DATE: 02/29/2000
SYSLIB: O : PFM.X.SOURCE TIME: 12:50
ALTLIB: O : PFM.X.DSECT EXEC: BACKGROUND
COPYLIB: O : PFM.X.COPY TAPE: ADA293
PMHELP: O : ADPAC.SVCMDS.PMHELP
@SV TITLE=/FIND 01 LEVELS OF DATANAMES/
@SV.LIST DNLIST=IMPATL
@SV SELECT=(8,E,2)
@SV CATAL=IMPRNL
NOPRINT-------------------------------------------------
@SV TITLE=/FIND 01 LEVELS OF DATANAMES/
IMPATL - AN ATLIST OF ALL IMPACTED DATANAMES
IMPRNL - THE 01 LEVEL RECORDS OF THE DATANAME
AND ITS FIRST LEVEL ALIAS
-------------------------------------------------
@LIST IMPATL ATLIST C305M2C 2000/02/29 12:50 ACU347AD 6
DNLIST IMPRNL FIND 01 LEVELS OF DATANAMES ADPAC, USE BY AGREEMENT ONLY 02/29/2000 PAGE 1
RPT USER MEMBER PROGRAM OR DATA XREF =RESULT
LINE CODES NAME IDENT NO NAME DTRANS=T LINE DIV GROUP
1--------- 11-------- 21------ -- 31----------------------------61------- 71 ------
1 2C FHG10P FHG10P 01 WORKFIELDS 000302 X
2 2C FHG10P FHG10P 01 COPYBOOKS 000434 X
3 2C FHTB0P FHTB0P 01 FHTB0P-COPYBOOKS 004165 X
4 2C FHTB0P FHTB0P 01 FHTB0P-COPYBOOKS 004165 X
5 2C FMVT0P FMVT0P 01 RORDENTY 000636 X
6 2C FMVT0P FMVT0P 01 WS-RORDENTY 003331 X
PM@LIS-M04 IMPRNL REPLACED IN PMLIB AS: DNLIST SEE IMPRNL
This step simply eliminates duplicates from the above listing.
SV RELEASE: C305M2C FUNCTION: WHERE
VBASE: O : TEST.PMLIB DATE: 02/29/2000
SYSLIB: O : PFM.X.SOURCE TIME: 12:50
ALTLIB: O : PFM.X.DSECT EXEC: BACKGROUND
COPYLIB: O : PFM.X.COPY TAPE: ADA293
PMHELP: O : ADPAC.SVCMDS.PMHELP
@SV TITLE=/DROP DUPLICATE RECORD NAMES WITH A PROGRAM/
@SV.LIST DNLIST=IMPRNL
@SV SORT=(MEMBER,DNAMES)
@SV DUPLICATES=DROP,DLOC=NO
@SV CATAL=IMPRNL2
NOPRINT-------------------------------------------------
@LIST IMPRNL DNLIST C305M2C 2000/02/29 12:50 ACU347AD
DNLIST IMPRNL2 DROP DUPLICATE RECORD NAMES WITH A PROGR ADPAC, USE BY AGREEMENT ONLY 02/29/2000 PAGE 1
RPT USER MEMBER PROGRAM OR DATA XREF =RESULT
LINE CODES NAME IDENT NO NAME DTRANS=T LINE DIV GROUP
1--------- 11-------- 21------ -- 31----------------------------61------- 71 ------
1 2C FHG10P FHG10P 01 COPYBOOKS 000434 X
2 2C FHG10P FHG10P 01 WORKFIELDS 000302 X
3 2C FHTB0P FHTB0P 01 FHTB0P-COPYBOOKS 004165 X
4 2C FMVT0P FMVT0P 01 RORDENTY 000636 X
5 2C FMVT0P FMVT0P 01 WS-RORDENTY 003331 X
PM@LIS-M04 IMPRNL2 REPLACED IN PMLIB AS: DNLIST SEE IMPRNL2
SV RELEASE: C305M2C FUNCTION: WHERE
VBASE: O : TEST.PMLIB DATE: 02/29/2000
SYSLIB: O : PFM.X.SOURCE TIME: 12:50
ALTLIB: O : PFM.X.DSECT EXEC: BACKGROUND
COPYLIB: O : PFM.X.COPY TAPE: ADA293
PMHELP: O : ADPAC.SVCMDS.PMHELP
@SV TITLE=/I/O RECORDS IN THE IMPACTED PROGRAMS/
OBTAIN ALL OF THE I.O RECORDS IN THE IMPACTED PROGRAMS
IMPRNL2 - THE RNLIST, IS USED AS AN MLIST HERE.
IMPIOL CONTAINS ALL OF THE IONAMES WITHIN THE
PROGRAMS THAT USE DATANAME-OF-INTERREST AND/OR ANY
ALIASES OF DATANAME-OF-INTEREST.
@SV.IONAME MLIST=IMPRNL2
@SV CATAL=IMPIOL
NOPRINT---------------------------------Y---------------
@LIST IMPRNL2 DNLIST C305M2C 2000/02/29 12:50 ACU347AD
PM@PDX-C02 FHTB0M ON COPYLIB NOT FOUND OR IS EMPTY SEE FHTB0P 015952
I/O NAME LIST I ADPAC, USE BY AGREEMENT ONLY 02/29/2000 PAGE 1
RPT USER MEMBER PROGRAM DATA NAME I/O IMS
LINE CODES NAME IDENT I/O AREA DDNAME TYPE FD FILE NAME
1--------- 11-------- 21------ 31---------------------------- 61------ 70 71 --------------------
1 WFC FHG10P FHG10P CKTNUM-RECORDS FFIBSITE I/O CKTNUM-RECORDS 008552
2 WFC FHG10P FHG10P CKTNUM-RECORDS FFIBSITE I/O CKTNUM-RECORDS 008653
3 WFC FHTB0P FHTB0P USECURTY-RECORDS USECURTY IN USECURTY-RECORDS 020882
4 WFC FHTB0P FHTB0P CHGSEED-RECORD FMS069 I/O CHGSEED-RECORD 023186
5 WFC FHTB0P FHTB0P CHGSEED-RECORD FMS069 I/O CHGSEED-RECORD 023218
6 WFC FHTB0P FHTB0P CHGSEED-RECORD FMS069 I/O CHGSEED-RECORD 023403
7 WFC FHTB0P FHTB0P CHGSEED-RECORD FMS069 I/O CHGSEED-RECORD 023433
8 WFC FHTB0P FHTB0P CHGSEED-RECORD FMS069 I/O CHGSEED-RECORD 023539
9 WFC FHTB0P FHTB0P CHGSEED-RECORD FMS069 I/O CHGSEED-RECORD 023569
10 WFC FHTB0P FHTB0P CHGSEED-RECORD FMS069 I/O CHGSEED-RECORD 023898
11 WFC FHTB0P FHTB0P CHGSEED-RECORD FMS069 I/O CHGSEED-RECORD 023928
12 WFC FMVT0P FMVT0P RFRBKUP FMS276 C OUT RFRBKUP 006601
PM@IOL-M04 IMPIOL REPLACED IN PMLIB AS: IOLIST
SV RELEASE: C305M2C FUNCTION: WHERE
VBASE: O : TEST.PMLIB DATE: 02/29/2000
SYSLIB: O : PFM.X.SOURCE TIME: 12:50
ALTLIB: O : PFM.X.DSECT EXEC: BACKGROUND
COPYLIB: O : PFM.X.COPY TAPE: ADA293
PMHELP: O : ADPAC.SVCMDS.PMHELP
@SV TITLE=/DROP DUPLICATE I/O RECORD WITHIN A PROGRAM/
@SV.LIST IOLIST=IMPIOL
@SV SORT=(MEMBER,DNAMES)
@SV DUPLICATES=DROP,DLOC=NO
@SV CATAL=IMPIOL2,ERROR=GO
NOPRINT-------------------------------------------------
@LIST IMPIOL IOLIST C305M2C 2000/02/29 12:50 ACU347AD
I/O NAME LIST IMPIOL2 DROP DUPLICATE I ADPAC, USE BY AGREEMENT ONLY 02/29/2000 PAGE 1
RPT USER MEMBER PROGRAM OR DATA NAME DDNAME/ I/O IMS XREF
LINE CODES NAME IDENT NO I/O AREA SEGM ID TYPE S LINE
1--------- 11-------- 21------ -- 31---------------------------- 61------ 70 71 73----
1 WFC FHG10P FHG10P CKTNUM-RECORDS FFIBSITE I/O 008552
2 WFC FHTB0P FHTB0P CHGSEED-RECORD FMS069 I/O 023186
3 WFC FHTB0P FHTB0P USECURTY-RECORDS USECURTY IN 020882
4 WFC FMVT0P FMVT0P RFRBKUP FMS276 C OUT 006601
PM@LIS-M04 IMPIOL2 REPLACED IN PMLIB AS: IOLIST SEE IMPIOL2
SV RELEASE: C305M2C FUNCTION: WHERE
VBASE: O : TEST.PMLIB DATE: 02/29/2000
SYSLIB: O : PFM.X.SOURCE TIME: 12:50
ALTLIB: O : PFM.X.DSECT EXEC: BACKGROUND
COPYLIB: O : PFM.X.COPY TAPE: ADA293
PMHELP: O : ADPAC.SVCMDS.PMHELP
@SV TITLE=/ALL I/O RECORDS ASSOCIATED WITH IMPACTED DATA/
@SV.LIST DNLIST=(IMPIOL2,IMPRNL2)
@SV SORT=(MEMBER,DNAMES)
@SV DUPLICATES=DROP,DLOC=NO
@SV CATAL=IMPIOL3,ERROR=GO
NOPRINT-------------------------------------------------
@LIST IMPIOL2 IOLIST C305M2C 2000/02/29 12:50 ACU347AD
@LIST IMPRNL2 DNLIST C305M2C 2000/02/29 12:50 ACU347AD
DNLIST IMPIOL3 ALL I ADPAC, USE BY AGREEMENT ONLY 02/29/2000 PAGE 1
RPT USER MEMBER PROGRAM OR DATA XREF RECORD
LINE CODES NAME IDENT NO NAME DTRANS=T LINE DIV GROUP
1--------- 11-------- 21------ -- 31----------------------------61------- 71 ------
1 1WFC FHG10P FHG10P CKTNUM-RECORDS FFIBSITE U 008552
2 2 2C FHG10P FHG10P 01 COPYBOOKS 000434 X
3 2 2C FHG10P FHG10P 01 WORKFIELDS 000302 X
4 1WFC FHTB0P FHTB0P CHGSEED-RECORD FMS069 U 023186
5 2 2C FHTB0P FHTB0P 01 FHTB0P-COPYBOOKS 004165 X
6 1WFC FHTB0P FHTB0P USECURTY-RECORDS USECURTY I 020882
7 1WFC FMVT0P FMVT0P RFRBKUP FMS276 CO 006601
8 2 2C FMVT0P FMVT0P 01 RORDENTY 000636 X
9 2 2C FMVT0P FMVT0P 01 WS-RORDENTY 003331 X
PM@LIS-M04 IMPIOL3 REPLACED IN PMLIB AS: DNLIST SEE IMPIOL3
@FUNC SS80
@SV.RATE MLIST=IMPXXX
@SV RPT=DIFF
@SV CATAL=#RATE
The Program Maintenance Difficulty report on the next page has been run for each set of programs identified by the @FINDIT process. This answers the question - "What level of complexity is there in the subset of programs which contain the dataname(s) in question?"
The ratings are like grade school marks, i.e., the higher the better - the higher the grade the simpler the program.
I have taken time to color, in red, those programs that are most difficult to maintain.
@LIST IMPXXX MLIST C305M2C 2000/02/24 15:58 ACU347AR
PROGRAM DIFFICULTY ADPAC, USE BY AGREEMENT ONLY 02/24/2000 PAGE 1
RPT MEMBER DIFF -STRUCTURE- TOTAL DATA 01 TOTAL NO DATA % NTWK
LINE NAME RATE MAX AVG PCT LINES DEFN REC INSTR ABS PARG USED CNTL PRFM IF GOTO CALL IN OUT ALT
1 FHG10P 75 6 3 90 10881 3884 14 1123 47 69 1858 32 71 153 4 15 1 0 0
2 FHJN0P 45 12 8 90 9340 3515 43 1517 85 106 1801 46 242 318 1 28 3 0 0
3 FHP80P 68 6 4 80 5906 2547 19 503 9 44 642 46 34 78 1 18 1 0 0
4 FHRG0P 57 7 4 40 9920 2715 25 1696 65 90 2255 44 111 312 9 26 1 1 0
5 FHSX0P 53 6 4 90 14662 3452 25 3094 86 229 4041 42 441 656 6 4 0 0 0
6 FHTB0P 36 9 6 60 30817 7498 32 8166 217 277 10323 41 676 1346 10 235 5 4 0
7 FMFG0P 55 10 5 90 13748 4621 41 2109 98 121 3841 42 242 403 4 16 0 0 0
8 FMIL0P 58 7 5 90 13790 4930 27 1836 10 75 2540 35 282 276 1 21 3 0 0
9 FMKO0P 43 11 5 90 17899 4236 12 4455 4 225 5885 44 527 939 5 40 0 0 0
10 FMKP0P 52 7 4 90 16726 3970 35 4487 9 174 7537 48 755 920 4 16 0 0 0
11 FMRK0P 61 5 3 90 14415 4918 41 2146 101 124 4221 43 252 455 4 16 0 0 0
12 FMSCBMP1 46 14 10 90 9405 3274 79 1639 76 98 1906 45 209 358 0 2 24 1 0
13 FMVT0P 70 0 0 0 7097 2439 24 991 1 46 1417 32 84 146 0 29 2 1 0
14 FMZY0P 37 11 6 90 13664 4049 55 2907 83 135 3607 43 487 436 1 58 1 0 0
15 FMZ30P 54 7 4 90 8345 2936 23 1540 36 68 1853 46 272 215 1 39 1 0 0
16 FM5E0P 57 7 4 80 9491 3609 47 1345 23 49 1753 40 110 247 4 36 0 0 0
17 FM650P 74 9 5 90 7437 2579 18 727 1 63 1613 30 76 83 1 12 0 0 0
18 FM7U0P 58 10 5 90 11251 3941 38 1605 78 101 2893 44 208 333 4 16 0 0 0
19 FM8U0P 46 16 8 90 8732 3367 37 1519 0 102 1933 44 230 291 1 24 2 0 0
20 VQ120P 42 10 5 90 17864 4676 19 3793 1 211 5981 49 257 861 19 43 0 0 0
21 VQ130P 58 9 5 90 7097 2019 5 1575 0 66 2196 50 104 319 9 16 0 0 0
22 VR020P 37 11 6 90 23760 5309 30 6749 179 245 9003 44 373 1373 43 55 1 1 0
23 VV070P 33 14 9 90 23799 7178 18 4797 133 319 6976 37 502 807 2 73 2 0 0
24 VV080P 33 14 9 90 23795 7178 18 4797 133 319 6976 37 502 807 2 73 2 0 0
25 VV370P 62 9 5 80 7760 2807 7 1011 24 52 1608 46 58 215 10 16 0 0 0
26 VZ150P 68 6 3 80 7013 2584 26 1097 12 47 1613 43 59 220 5 16 0 0 0
27 V8090P 56 6 3 70 11017 3085 79 1646 42 91 2322 41 94 304 3 39 1 0 0
--------------------------------------------------------------------------------------------------------
27 AVG: 53 9 5 81 13172 3975 31 2551 58 131 3652 42 269 477 6 36 2 0 0
This is an example of how the data can be imported into Excel and sorted for reporting purposes. The number of lines of code sorts this report. Please not that this count is for expanded code.
FHTB0P |
36 |
9 |
6 |
60 |
30,817 |
7,498 |
32 |
8,166 |
217 |
277 |
10,323 |
41 |
676 |
1,346 |
10 |
235 |
5 |
4 |
0 |
VV070P |
33 |
14 |
9 |
90 |
23,799 |
7,178 |
18 |
4,797 |
133 |
319 |
6,976 |
37 |
502 |
807 |
2 |
73 |
2 |
0 |
0 |
VV080P |
33 |
14 |
9 |
90 |
23,795 |
7,178 |
18 |
4,797 |
133 |
319 |
6,976 |
37 |
502 |
807 |
2 |
73 |
2 |
0 |
0 |
VR020P |
37 |
11 |
6 |
90 |
23,760 |
5,309 |
30 |
6,749 |
179 |
245 |
9,003 |
44 |
373 |
1,373 |
43 |
55 |
1 |
1 |
0 |
FMKO0P |
43 |
11 |
5 |
90 |
17,899 |
4,236 |
12 |
4,455 |
4 |
225 |
5,885 |
44 |
527 |
939 |
5 |
40 |
0 |
0 |
0 |
VQ120P |
42 |
10 |
5 |
90 |
17,864 |
4,676 |
19 |
3,793 |
1 |
211 |
5,981 |
49 |
257 |
861 |
19 |
43 |
0 |
0 |
0 |
FMKP0P |
52 |
7 |
4 |
90 |
16,726 |
3,970 |
35 |
4,487 |
9 |
174 |
7,537 |
48 |
755 |
920 |
4 |
16 |
0 |
0 |
0 |
FHSX0P |
53 |
6 |
4 |
90 |
14,662 |
3,452 |
25 |
3,094 |
86 |
229 |
4,041 |
42 |
441 |
656 |
6 |
4 |
0 |
0 |
0 |
FMRK0P |
61 |
5 |
3 |
90 |
14,415 |
4,918 |
41 |
2,146 |
101 |
124 |
4,221 |
43 |
252 |
455 |
4 |
16 |
0 |
0 |
0 |
FMIL0P |
58 |
7 |
5 |
90 |
13,790 |
4,930 |
27 |
1,836 |
10 |
75 |
2,540 |
35 |
282 |
276 |
1 |
21 |
3 |
0 |
0 |
FMFG0P |
55 |
10 |
5 |
90 |
13,748 |
4,621 |
41 |
2,109 |
98 |
121 |
3,841 |
42 |
242 |
403 |
4 |
16 |
0 |
0 |
0 |
FMZY0P |
37 |
11 |
6 |
90 |
13,664 |
4,049 |
55 |
2,907 |
83 |
135 |
3,607 |
43 |
487 |
436 |
1 |
58 |
1 |
0 |
0 |
FM7U0P |
58 |
10 |
5 |
90 |
11,251 |
3,941 |
38 |
1,605 |
78 |
101 |
2,893 |
44 |
208 |
333 |
4 |
16 |
0 |
0 |
0 |
V8090P |
56 |
6 |
3 |
70 |
11,017 |
3,085 |
79 |
1,646 |
42 |
91 |
2,322 |
41 |
94 |
304 |
3 |
39 |
1 |
0 |
0 |
FHG10P |
75 |
6 |
3 |
90 |
10,881 |
3,884 |
14 |
1,123 |
47 |
69 |
1,858 |
32 |
71 |
153 |
4 |
15 |
1 |
0 |
0 |
FHRG0P |
57 |
7 |
4 |
40 |
9,920 |
2,715 |
25 |
1,696 |
65 |
90 |
2,255 |
44 |
111 |
312 |
9 |
26 |
1 |
1 |
0 |
FM5E0P |
57 |
7 |
4 |
80 |
9,491 |
3,609 |
47 |
1,345 |
23 |
49 |
1,753 |
40 |
110 |
247 |
4 |
36 |
0 |
0 |
0 |
FMSCBMP1 |
46 |
14 |
10 |
90 |
9,405 |
3,274 |
79 |
1,639 |
76 |
98 |
1,906 |
45 |
209 |
358 |
0 |
2 |
24 |
1 |
0 |
FHJN0P |
45 |
12 |
8 |
90 |
9,340 |
3,515 |
43 |
1,517 |
85 |
106 |
1,801 |
46 |
242 |
318 |
1 |
28 |
3 |
0 |
0 |
FM8U0P |
46 |
16 |
8 |
90 |
8,732 |
3,367 |
37 |
1,519 |
0 |
102 |
1,933 |
44 |
230 |
291 |
1 |
24 |
2 |
0 |
0 |
FMZ30P |
54 |
7 |
4 |
90 |
8,345 |
2,936 |
23 |
1,540 |
36 |
68 |
1,853 |
46 |
272 |
215 |
1 |
39 |
1 |
0 |
0 |
VV370P |
62 |
9 |
5 |
80 |
7,760 |
2,807 |
7 |
1,011 |
24 |
52 |
1,608 |
46 |
58 |
215 |
10 |
16 |
0 |
0 |
0 |
FM650P |
74 |
9 |
5 |
90 |
7,437 |
2,579 |
18 |
727 |
1 |
63 |
1,613 |
30 |
76 |
83 |
1 |
12 |
0 |
0 |
0 |
FMVT0P |
70 |
0 |
0 |
0 |
7,097 |
2,439 |
24 |
991 |
1 |
46 |
1,417 |
32 |
84 |
146 |
0 |
29 |
2 |
1 |
0 |
VQ130P |
58 |
9 |
5 |
90 |
7,097 |
2,019 |
5 |
1,575 |
0 |
66 |
2,196 |
50 |
104 |
319 |
9 |
16 |
0 |
0 |
0 |
VZ150P |
68 |
6 |
3 |
80 |
7,013 |
2,584 |
26 |
1,097 |
12 |
47 |
1,613 |
43 |
59 |
220 |
5 |
16 |
0 |
0 |
0 |
FHP80P |
68 |
6 |
4 |
80 |
5,906 |
2,547 |
19 |
503 |
9 |
44 |
642 |
46 |
34 |
78 |
1 |
18 |
1 |
0 |
0 |
Total |
355,631 |
107,316 |
837 |
68,870 |
1,553 |
3,546 |
98,594 |
1,134 |
7,258 |
||||||||||
Avg |
53 |
13,172 |
3,975 |
This report is sorted by the difficulty rating. Please note that this is not directly related to only the number of lines of code. For more information on this topic, refer to Lesson 14 in the SVCommands Training Manual.
FHG10P |
75 |
6 |
3 |
90 |
10,881 |
3,884 |
14 |
1,123 |
47 |
69 |
1,858 |
32 |
71 |
153 |
4 |
15 |
1 |
0 |
0 |
FM650P |
74 |
9 |
5 |
90 |
7,437 |
2,579 |
18 |
727 |
1 |
63 |
1,613 |
30 |
76 |
83 |
1 |
12 |
0 |
0 |
0 |
FMVT0P |
70 |
0 |
0 |
0 |
7,097 |
2,439 |
24 |
991 |
1 |
46 |
1,417 |
32 |
84 |
146 |
0 |
29 |
2 |
1 |
0 |
VZ150P |
68 |
6 |
3 |
80 |
7,013 |
2,584 |
26 |
1,097 |
12 |
47 |
1,613 |
43 |
59 |
220 |
5 |
16 |
0 |
0 |
0 |
FHP80P |
68 |
6 |
4 |
80 |
5,906 |
2,547 |
19 |
503 |
9 |
44 |
642 |
46 |
34 |
78 |
1 |
18 |
1 |
0 |
0 |
VV370P |
62 |
9 |
5 |
80 |
7,760 |
2,807 |
7 |
1,011 |
24 |
52 |
1,608 |
46 |
58 |
215 |
10 |
16 |
0 |
0 |
0 |
FMRK0P |
61 |
5 |
3 |
90 |
14,415 |
4,918 |
41 |
2,146 |
101 |
124 |
4,221 |
43 |
252 |
455 |
4 |
16 |
0 |
0 |
0 |
FMIL0P |
58 |
7 |
5 |
90 |
13,790 |
4,930 |
27 |
1,836 |
10 |
75 |
2,540 |
35 |
282 |
276 |
1 |
21 |
3 |
0 |
0 |
FM7U0P |
58 |
10 |
5 |
90 |
11,251 |
3,941 |
38 |
1,605 |
78 |
101 |
2,893 |
44 |
208 |
333 |
4 |
16 |
0 |
0 |
0 |
VQ130P |
58 |
9 |
5 |
90 |
7,097 |
2,019 |
5 |
1,575 |
0 |
66 |
2,196 |
50 |
104 |
319 |
9 |
16 |
0 |
0 |
0 |
FHRG0P |
57 |
7 |
4 |
40 |
9,920 |
2,715 |
25 |
1,696 |
65 |
90 |
2,255 |
44 |
111 |
312 |
9 |
26 |
1 |
1 |
0 |
FM5E0P |
57 |
7 |
4 |
80 |
9,491 |
3,609 |
47 |
1,345 |
23 |
49 |
1,753 |
40 |
110 |
247 |
4 |
36 |
0 |
0 |
0 |
V8090P |
56 |
6 |
3 |
70 |
11,017 |
3,085 |
79 |
1,646 |
42 |
91 |
2,322 |
41 |
94 |
304 |
3 |
39 |
1 |
0 |
0 |
FMFG0P |
55 |
10 |
5 |
90 |
13,748 |
4,621 |
41 |
2,109 |
98 |
121 |
3,841 |
42 |
242 |
403 |
4 |
16 |
0 |
0 |
0 |
FMZ30P |
54 |
7 |
4 |
90 |
8,345 |
2,936 |
23 |
1,540 |
36 |
68 |
1,853 |
46 |
272 |
215 |
1 |
39 |
1 |
0 |
0 |
FHSX0P |
53 |
6 |
4 |
90 |
14,662 |
3,452 |
25 |
3,094 |
86 |
229 |
4,041 |
42 |
441 |
656 |
6 |
4 |
0 |
0 |
0 |
FMKP0P |
52 |
7 |
4 |
90 |
16,726 |
3,970 |
35 |
4,487 |
9 |
174 |
7,537 |
48 |
755 |
920 |
4 |
16 |
0 |
0 |
0 |
FMSCBMP1 |
46 |
14 |
10 |
90 |
9,405 |
3,274 |
79 |
1,639 |
76 |
98 |
1,906 |
45 |
209 |
358 |
0 |
2 |
24 |
1 |
0 |
FM8U0P |
46 |
16 |
8 |
90 |
8,732 |
3,367 |
37 |
1,519 |
0 |
102 |
1,933 |
44 |
230 |
291 |
1 |
24 |
2 |
0 |
0 |
FHJN0P |
45 |
12 |
8 |
90 |
9,340 |
3,515 |
43 |
1,517 |
85 |
106 |
1,801 |
46 |
242 |
318 |
1 |
28 |
3 |
0 |
0 |
FMKO0P |
43 |
11 |
5 |
90 |
17,899 |
4,236 |
12 |
4,455 |
4 |
225 |
5,885 |
44 |
527 |
939 |
5 |
40 |
0 |
0 |
0 |
VQ120P |
42 |
10 |
5 |
90 |
17,864 |
4,676 |
19 |
3,793 |
1 |
211 |
5,981 |
49 |
257 |
861 |
19 |
43 |
0 |
0 |
0 |
VR020P |
37 |
11 |
6 |
90 |
23,760 |
5,309 |
30 |
6,749 |
179 |
245 |
9,003 |
44 |
373 |
1,373 |
43 |
55 |
1 |
1 |
0 |
FMZY0P |
37 |
11 |
6 |
90 |
13,664 |
4,049 |
55 |
2,907 |
83 |
135 |
3,607 |
43 |
487 |
436 |
1 |
58 |
1 |
0 |
0 |
FHTB0P |
36 |
9 |
6 |
60 |
30,817 |
7,498 |
32 |
8,166 |
217 |
277 |
10,323 |
41 |
676 |
1,346 |
10 |
235 |
5 |
4 |
0 |
VV070P |
33 |
14 |
9 |
90 |
23,799 |
7,178 |
18 |
4,797 |
133 |
319 |
6,976 |
37 |
502 |
807 |
2 |
73 |
2 |
0 |
0 |
VV080P |
33 |
14 |
9 |
90 |
23,795 |
7,178 |
18 |
4,797 |
133 |
319 |
6,976 |
37 |
502 |
807 |
2 |
73 |
2 |
0 |
0 |
Total |
355,631 |
107,316 |
837 |
68,870 |
1,553 |
3,546 |
98,594 |
1,134 |
7,258 |
||||||||||
Avg |
53 |
13,172 |
3,975 |
As of this afternoon, we think that we have found a problem that has caused the B37 abends. These come from running out of file space. This has been happening on runs which think would not generate such large files.
The solution was to change the way that the SVCommands work files were being set-up and to take them out of the 'managed' dataset pool. This is the reason that the SVPROC module has overrides in it for the SVCommands work files.
The Product will not process more than 15,000 members in one Librarian file. ADPAC provided a suggested solution that has not yet been successful. It is in the member @LIBRIAN.
There was some confusion trying to run the RATE command using a Member List [MLIST].
INDEX