Introduction
When introducing new functions from the CA Datacom DBUTLTY program, or when making changes to existing jobs that use this program, a typographical error – a pair of translated letter, a missing comma, or even the wrong value for a parameter – can cause the job to fail, and could result in a callout to a support programmer in the middle of the night.
There is a function built into the DBUTLTY program to perform a syntax check of the commands you want to use, to be sure that the commands will pass the basic edits for the function you wish to perform.
Instructions:
To use this syntax-checking feature, add the EDIT function into your set of DBUTLTY commands, and from that point forward, each command will be validated but will not be processed (with the exception of some “SET” commands). With this function, DBUTLTY edits all of the subsequent commands and their keywords/parameters for missing or invalid input. DBUTLTY displays all of the input processed, along with messages indicating any errors.
Note that this function does not attempt to verify that any database, area, or table specified in the input actually exists, and does not validate references to other external files (like backup file DD statements). Also, the edits will check most conditions, but cannot validate every possible scenario.
Here are a couple examples of input sets with the left-side partial output of the program. The errors in the input are highlighted with bold and underline when possible.
//SYSIN DD *
EDIT
SET OPTION1=DUMPPGM=DBMSTLST (Good command)
RETIX DBDI=161
ACCESS DBID=601,STATUS=OFF,USERS=FIAL
Date: 10/26/2015 ***************************************************************
* CA Datacom/DB
Time: 14.18.05 * General Utility
* Copyright . 2009 CA. All rights reserved.
***************************************************************
CONTROL CARD(S)
.........1.........2.........3.........4.........5.........6...
EDIT
FUNCTION=EDIT
DB10016I - EDIT ONLY, NO FUNCTION(S) PROCESSED
Date: 10/26/2015 ***************************************************************
* CA Datacom/DB
Time: 14.18.05 * General Utility
* Copyright . 2009 CA. All rights reserved.
***************************************************************
CONTROL CARD(S)
.........1.........2.........3.........4.........5.........6...
SET OPTION1=DUMPPGM=DBMSTLST
Date: 10/26/2015 ***************************************************************
* CA Datacom/DB
Time: 14.18.05 * General Utility
* Copyright . 2009 CA. All rights reserved.
***************************************************************
000000 D4C1E2E3 C5D940D3 C9E2E340 0004000C 00000000 00000020 00000000 00000000
000020 00000100 00000000 00000000 00000100 00000000 00007FFF 00000000 00000000
. . .
. . .
Date: 10/26/2015 ******************************************************************
* CA Datacom/DB
Time: 14.18.05 * General Utility
* Copyright . 2009 CA. All rights reserved.
******************************************************************
CONTROL CARD(S)
.........1.........2.........3.........4.........5.........6......
RETIX DBDI=161
FUNCTION=RETIX
*****- ERROR -***** AREA=--- DB10046E - REQUIRED BECAUSE - SORT=
*****- ERROR -***** DBID=----- DB10013E - REQUIRED KEYWORD MISSING
*****- ERROR -***** SORT=----------- DB10046E - REQUIRED BECAUSE - AREA=
*** INVALID KEYWORD - DBDI
DB10016I - EDIT ONLY, NO FUNCTION(S) PROCESSED
Date: 10/26/2015 ******************************************************************
* CA Datacom/DB
Time: 14.18.05 * General Utility
* Copyright . 2009 CA. All rights reserved.
******************************************************************
CONTROL CARD(S)
.........1.........2.........3.........4.........5.........6......
ACCESS DBID=601,STATUS=OFF,USERS=FIAL
FUNCTION=ACCESS
DBID=00601
STATUS=OFF
*****- ERROR -***** USERS=FIAL DB10010E - INCORRECT VALUE FOR KEYWORD
DB10016I - EDIT ONLY, NO FUNCTION(S) PROCESSED
//SYSIN DD *
EDIT
LOAD DBID=601,FORMAT=BACKUP,DDNAME=DB601BK (Comma missing)
KBYTES=98,SORT=999999999,OPTIMIZE=YES,OPTION1='(I)'
LOAD DBID=602,FORMAT=BACKUP,DDNAME=DB602BK,
KBYTES=98,SORT=999999999,OPTIMIZE=YES,OPTION1='(I)' (Good function)
Date: 10/26/2015 ***************************************************************
* CA Datacom/DB
Time: 14.18.06 * General Utility
* Copyright . 2009 CA. All rights reserved.
***************************************************************
CONTROL CARD(S)
.........1.........2.........3.........4.........5.........6...
EDIT
FUNCTION=EDIT
DB10016I - EDIT ONLY, NO FUNCTION(S) PROCESSED
Date: 10/26/2015 ***************************************************************
* CA Datacom/DB
Time: 14.18.06 * General Utility
* Copyright . 2009 CA. All rights reserved.
***************************************************************
CONTROL CARD(S)
.........1.........2.........3.........4.........5.........6...
LOAD DBID=601,FORMAT=BACKUP,DDNAME=DB601BK
FUNCTION=LOAD
*****- ERROR -***** AREA=--- DB10046E - REQUIRED BECAUSE - SORT=
DBID=00601
DDNAME=DB601BK
FORMAT=BACKUP
*****- ERROR -***** SORT=----------- DB10046E - REQUIRED BECAUSE - AREA= AND/OR
DB10016I - EDIT ONLY, NO FUNCTION(S) PROCESSED
Date: 10/26/2015 ***************************************************************
* CA Datacom/DB
Time: 14.18.06 * General Utility
* Copyright . 2009 CA. All rights reserved.
***************************************************************
CONTROL CARD(S)
.........1.........2.........3.........4.........5.........6...
KBYTES=98,SORT=999999999,OPTIMIZE=YES,OPTION1='(I)'
FUNCTION=
DB10007E - INVALID FUNCTION
DB10016I - EDIT ONLY, NO FUNCTION(S) PROCESSED
Date: 10/26/2015 ***************************************************************
* CA Datacom/DB
Time: 14.18.06 * General Utility
* Copyright . 2009 CA. All rights reserved.
***************************************************************
CONTROL CARD(S)
.........1.........2.........3.........4.........5.........6...
LOAD DBID=602,FORMAT=BACKUP,DDNAME=DB602BK,
KBYTES=98,SORT=999999999,OPTIMIZE=YES,OPTION1='(I)'
FUNCTION=LOAD
DBID=00602
DDNAME=DB602BK
FORMAT=BACKUP
KBYTES=0098
OPTIMIZE=YES
OPTION1=(I)
SORT=00999999999
DB10016I - EDIT ONLY, NO FUNCTION(S) PROCESSED
Additional Information:
For more information about the DBUTLTY program, please see the CA Datacom/DB DBUTLTY Reference Guide.
As always, please contact CA Technologies support for CA Datacom if you have further questions.