SAKMAN UTILITIES

 

MAINFRAME TOOLSET

 

PADEST

 

PANEL APPLICATIONS & DATA ENTRY SYSTEMS TOOLSET

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Copyright © 2002 Sabahattin Sakman

 

 


 

 

WHAT IS PANEL APPLICATIONS AND DATA ENTRY SYSTEMS TOOL (PADEST)

 

A DESCRIPTION THROUGH THREE SAMPLE APPLICATIONS:

 

 

 

1. Sample PADEST Application (I)

     Create a TSO/ISPF Panel Application to collect valid information, and create a

     file in a layout defined by the user, each record of which file represents the

     entries entered on the panel.

 

2. Sample PADEST Application (II)

     Create a TSO/ISPF Panel Application to collect valid information,  and issue

     commands in order to submit a JCL for processing SQL statements.

 

 

3. Sample PADEST Application (III)

     Create a TSO/ISPF Panel Application to collect valid information,  and issue

     commands in order to submit JCLs for DB2 Binds

 

 


 

 

 

 

 

A SAMPLE PADEST APPLICATION (I)

 

CREATE A PANEL APPLICATION TO COLLECT VALID INFORMATION, AND CREATE A FILE IN A LAYOUT DEFINED BY THE USER, EACH RECORD OF WHICH FILE REPRESENTS THE ENTRIES ENTERED ON THE PANEL

 


 

PANEL APPLICATIONS & DATA ENTRY SYSTEMS TOOLSET (PADEST) PRIMARY MENU:

 

1: A new panel is to be created                  2: An existing panel is to be updated (usually followed by Option 5)

3: Colors on the panel will be changed      4: Default values will be placed on the data entry fields

5: CLISTs for a panel will be created        6: Attributes for fields will be defined.

7: A panel is to be called for data entry

Normally, Option 1 does all of the following options: Option 1, 4, 5, and 6. 

Option 1 brings the following screen:

 

 

Title Line is line 1, and is used for a description of the panel.

Panel Body is line 2 thru line 21, and is used for data entry.

Function Line is line 23, and is used to define function keys. (PF1, PF3, and PF4 are predefined. User may add PF5 thru PF8.)

 

A sample panel creation: Unprotected (entry)  fields are delimited by < and >. An edit code may be entered at the first position of the field. Here, additional function key PF5 is defined by the user.

 

 

PF3 here brings the following screen:

 

 

These attributes are created by the utility.

The user may want to change them on this screen.

 

 

 

 

 

Panel thus created is named “CLAIMS”, and may be called by “TSO CLAIMS” or the Option 7 of Primary Menu.

 

 

 

 

 

 

 

The user may enter default values and press PF4:

 

 

 

 

 

 

In order to change colors on the panel:

 

 

 

 

 

 

 

Which brings:

 

 

The user may use color code characters to change description fields’ colors .

 

 

Here are some changes made:

 

 

 

 

 

 

Option 5 is used to recreate CLISTs after a panel is regenerated:

 

 

 

 

 

 

Following is a list of CLIST members created:

 

 

 

 

 

 

 

The contents of CLAIMSF5 member, which will be run if PF5 is pressed on the panel. The user is most likely expected to update this CLIST.

 

 

 

 

Field properties may be updated using OPTION 6:

 

 

 

 

 

Blank OUTEND fields are assumed to be (OUTBEG + FIELD LENGTH – 1).

A sample modification of attributes:

 

 

 

 

 

 

Right Side of the attributes screen:

 

 

 

 

 

 

Invocation of panel “CLAIMS” for data entry (Default Values defined before come here):

 

 

 

 

 

 

An entry with invalid information:

 

 

 

 

 

 

Displaying all error fields in RED:

 

 

 

 

 

 

Correction of errors and pressing ENTER key:

 

 

 

 

 

 

Making another entry:

 

 

Pressing of PF3 brings the following screen

 

 

 

In absence of a user update of CLAIMSF3 CLIST created by the utility, the following is displayed as a default:

 

 

 

 

 

 

Following is how the output dataset created by this sample Data Entry session looks:

Positions 1-72:

 

 

 

 

 

Positions 73-144 of the output:

 

 

 

 

 

 

 

 

Positions 145-216 of the output

(Observe position 192-195 to be BINARY, and 197-206 and 207-216 to be PACKED according to definitions):

 

 

 

 

 

 

Positions 217-288 of the output:

 

 

 

 


 

 

 

 

A SAMPLE PADEST APPLICATION (II)

 

CREATE A TSO/ISPF PANEL APPLICATION TO COLLECT VALID INFORMATION,  AND ISSUE COMMANDS IN ORDER TO SUBMIT A JCL FOR PROCESSING SQL STATEMENTS.

 

 

PREMISE:

 

                   The user already  has a CLIST, named “SPUFICL”, for processing SQL statements, that works on 2 parameters: 1. DB2 Subsystem Name, 2. Input Dataset Name that contains SQL statements.

 

 

TASK:

 

                 Develop an ISPF Panel application that will enable the user to enter valid fields,  (to be utilized as driving parameters by “SPUFICL”), and that will be able to trigger “SPUFICL”. 


TARGET SCREEN:  “TSO SQLP” brings a Panel for ”SQL Processing”.  ”SQL Processing” is an application developed through PADEST.

PRESSING THE PF6 KEY AFTER THE NECESSARY FIELDS ARE  POPULATED, A JCL is ISSUED. (PF5 AND ENTER KEYS WILL ALSO HAVE THEIR FUNCTIONS, AS WILL BE DESCRIBED LATER.)

 


 

         1         2         3         4         5         6         7         8   

12345678901234567890123456789012345678901234567890123456789012345678901234567890

 

 1

 2

 3

 4

 5

 6

 7

 8

 9

10

11

12

13

14

15

16

17

18

19

21

21

22

23

24

 

 PADEST     PANEL APPLICATIONS AND DATA ENTRY SYSTEMS TOOLSET     09/26/06 12:29

                             P A D E S T                                       

                                                                              

             PANEL NAME  : sqlp                                             

             PANEL TYPE  : s         "S"INGLE OR "M"ULTI ENTRY                

             OPTION      : 1                                                  

                                                                              

                     OPTION MENU                                              

                                                                               

             1. GENERATE PANEL                                                

             2. REGENERATE PANEL                                              

             3. CHANGE FIELD COLORS                                           

             4. SET DEFAULT VALUES                                            

             5. CREATE CLISTS FOR THE PANEL APPLICATION                       

             6. SPECIFY OUTPUT PROPERTIES                                      

             7. DATA ENTRY MODE                                               

                                                                              

                                                                               

                                                                              

         COPYRIGHT (C) 2002 SAKMAN SOFTWARE CORPORATION                       

                                                                              

                                                                              

F1=HELP  F3=EXIT  F4=SAVE AS DEFAULTS                                         

STARTING THE DEVELOPMENT PROCESS:  In order to develop ”SQL Processing” application, PADEST is called from your TSO/ISPF Session.   “TSO PADEST” brings the following Panel; and Panel Name, Panel Type, and Option is entered.

 

         1         2         3         4         5         6         7         8   

12345678901234567890123456789012345678901234567890123456789012345678901234567890

 

 1

 2

 3

 4

 5

 6

 7

 8

 9

10

11

12

13

14

15

16

17

18

19

21

21

22

23

24

 

 SQLP   _________________________________________________________ 09/26/06 12:32

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

                                                                              

F1=HELP  F3=EXIT  F4=SAVE AS DEFAULT  _________________________________________

ENTER key on the PADEST Primary Menu brings the following Blank Screen.

 

         1         2         3         4         5         6         7         8   

12345678901234567890123456789012345678901234567890123456789012345678901234567890

 

 1

 2

 3

 4

 5

 6

 7

 8

 9

10

11

12

13

14

15

16

17

18

19

21

21

22

23

24

 

 SQLP        MULTI DB2 SUBSYSTEM SQL PROCESSOR (BATCH)            07/07/06 15:24

 

 

 DB2 SUBSYSTEM: <B   >

 

 INPUT DATASET: <B                                                     >

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 F1=HELP  F3=EXIT  F4=SAVE AS DEFAULT  F5=EDIT INPUT  F6=SUBMIT

 

 

Protected and Unprotected Fields (Data Fields) are entered. First column of an unprotected field

may have an Edit Code (“B” in MODULE NAME indicates that it is a mandatory alphanumeric field.)


 

 

 

         1         2         3         4         5         6         7         8   

12345678901234567890123456789012345678901234567890123456789012345678901234567890


 

 

         1         2         3         4         5         6         7         8   

12345678901234567890123456789012345678901234567890123456789012345678901234567890

 

 1

 2

 3

 4

 5

 6

 7

 8

 9

10

11

12

13

14

15

16

17

18

19

21

21

22

23

24

 

DSN:TSO.&SYSUID..SQLP.DATA                                                     

LEN:  58                                                                       

                                                                                

V LINE BEG END TYP DESCRIPTION/VALUE              OUTBEG OUTEND OUTTYP:A,N,P,B 

- ---- --- --- --- ------------------------------ ------ ------ ------         

   4   18  21  B   DB2 SUBSYSTEM:                    1                         

   6   18  71  B   INPUT DATASET:                    5                         

 

Enter key on the previous screen brings the following Edit Screen, where Validation Values may be entered; Output Begin&End positions, Output Type (alpha, num, packed, binary) may be changed.


 

The sample problem requires changes as follows to validate data entered on a certain field:

 

         1         2         3         4         5         6         7         8    

12345678901234567890123456789012345678901234567890123456789012345678901234567890

 

 1

 2

 3

 4

 5

 6

 

 

 

 

 

 

 

 

 7

 

 

 

 

 

 

  24

 

 DSN:TSO.&SYSUID..SQLP.DATA                                                     

LEN:  58                                                                        

                                                                               

V LINE BEG END TYP DESCRIPTION/VALUE              OUTBEG OUTEND OUTTYP:A,N,P,B 

- ---- --- --- --- ------------------------------ ------ ------ ------         

   4   18  21  A   DB2 SUBSYSTEM:                    1                         

V                  T301                                                        

V                  T302                                                         

V                  T303                                                        

V                  P201                                                        

V                  t301                                                         

V                  t302                                                        

V                  t303                                                        

V                  p201                                                        

   6   18  71  A   INPUT DATASET:                    5                         

 

 

 

“V” lines entered after line #6 indicates the valid values for the “DB2 SUBSYSTEM” field.


A PF3 ON THE PREVIOUS SCREEN CAUSES THE APPLICATION TO BE  GENERATED.

AS A RESULT,  CLISTs, “BNDRFE”, “BNDRF5”,  and “BNDRF6”, ARE CREATED (EACH AS SHOWN BELOW). 

“BNDRFE” RUNS WHEN ENTER KEYS IS PRESSED ON THE PANEL; “BNDRF5E”, WHEN PF5; AND “BNDRFE” WHEN PF6.

 

         1         2         3         4         5         6         7         8    

12345678901234567890123456789012345678901234567890123456789012345678901234567890

 

 1

 2

 3

 4

 5

 6

 7

 8

 9

10

11

12

13

14

15

16

17

18

19

21

21

22

23

24

 

PROC 1 INPDSN                               

WRITE VALUES COLLECTED FROM YOUR SESSION:   

ISPEXEC VGET (+              

                  FL0418,+    

                  FL0618,+    

               )              

WRITE FL0418:&FL0418                        

WRITE FL0618:&FL0618                        

END

                                                     


FOR THE SPECIFIC FUNCTION (EDITING THE INPUT DATASET) TO BE PERFORMED WHEN THE PF5 IS PRESSED, THE USER NEEDS TO MODIFY “SQLPF5” AS FOLLOWS:

 

PROC 1 INPDSN                                                                  

ISPEXEC VGET (+                                                                

                 FL0418,+                                                      

                 FL0618,+                                                      

              )                                                                 

/*

SET LEFTPAR = &STR((                                                           

LISTDSI '&SUBSTR(1:&SYSINDEX(&STR( ),&FL0618) - 1,&FL0618)'                    

IF &SYSDSORG = &STR(PO) AND +                                                   

   &SYSINDEX(&STR(&LEFTPAR),&FL0618) NG 0 THEN +                               

   DO                                                                          

      ISPEXEC SELECT CMD(%AMEMLSTB &FL0618)                                     

      ISPEXEC VGET (MEMLNAME)                                                  

      IF &MEMLNAME > &STR( ) THEN +                                            

        DO                                                                      

         SET FL0618 = &SUBSTR(1:&SYSINDEX(&STR( ),&FL0618) - 1,&FL0618)+       

                      (&MEMLNAME.)                                             

         ISPEXEC VPUT (FL0618)                                                  

        END                                                                    

   END                                                                         

ELSE +                                                                         

   DO                                                                          

      ISPEXEC EDIT DATASET('&SUBSTR(1:&SYSINDEX(&STR( ),&FL0618) - 1,+         

                      &FL0618)')                                               

   END                                                                          

/*

ISPEXEC SELECT CMD(%SQLPV   SQLP    +                                          

                           RUNMODE(U)      +                                   

                           FL0418(&FL0418) +                                   

                           FL0618(&FL0618) +                                   

                  ) +                                                          

        NEWAPPL(PDST) PASSLIB                                                   

/*

END                                                                            

 

 

 

COMMENTS FOR THE LEFT SIDE:

 

 

 

 

 

GETTING DATASET ATTRIBUTES

IF THE DATASET IS A PO, I.E. PDS

AND DOES NOT HAVE A MEMBER NAME

 

AMEMLSTB IS A CLIST THE USER HAS, TO SELECT/UPDATE MEMBERS IN A PDS

WHICH RETURNS THE MEMBER NAME IN VARIABLE MEMLNAME

 

 

 

 

UPDATE THE VARIABLE POOL TO REFLECT THE INPUT DATASET NAME IN FL0618

 

 

 

 

EDIT THE INPUT DATASET IF IT IS A PS

 

 

 

CALL THE PADEST-GENERATED-CLIST SQLPV, IN ORDER TO MAKE THE NEW VALUES OF “DB2 SUBSYSTEM” (FL0418) AND “INPUT DATASET” (FL0618) DEFAULT VALUES.

 

THE FORMULA OF CALLING THE PADEST-GENERATED-CLIST SQLPV, IS GIVEN IN THE PADEST-GENERATED-CLIST SQLPW.

 


FOR THE SPECIFIC FUNCTION (CALLING THE CLIST, SPUFICL) TO BE PERFORMED WHEN THE PF6 IS PRESSED, THE USER NEEDS TO MODIFY “SQLPF6” AS FOLLOWS: 

 

PROC 1 INPDSN                                                                  

ISPEXEC VGET (+                                                                 

                 FL0418,+                                                      

                 FL0618,+                                                      

              )                                                                 

ISPEXEC SELECT CMD(%SPUFICL &FL0418 &FL0618)                                   

END                                                                            

 

 

 

 

 


THE USER MAY DESIRE TO MODIFY THE ENTER-KEY CLIST “SQLPFE”, AS FOLLOWS, JUST TO VALIDATE THE “DB2 SUBSYSTEM” AND “INPUT DATASET”, AND TO CALL THE PADEST-GENERATED-CLIST SQLPV, IN ORDER TO MAKE THE NEW VALUES OF “DB2 SUBSYSTEM” (FL0418) AND “INPUT DATASET” (FL0618) DEFAULT VALUES.

 

PROC 1 INPDSN                                                                   

CONTROL NOMSG                                                                 

ISPEXEC VGET (+                                                                

                FL0418,+                                                        

                FL0618,+                                                       

             )                                                                 

/*                                                                              

LISTDSI '&SUBSTR(1:&SYSINDEX(&STR( ),&FL0618) - 1,&FL0618)' +                  

                              DIRECTORY SMSINFO                                

IF &LASTCC=16 THEN    +                                                        

  WRITE INPUT DATASET IS NOT FOUND, TAPE, OR INVALID.                          

/*                                                                             

SET CHARLPAR  = &STR((                                                         

IF &SYSDSORG = &STR(PO) AND +                                                  

  &SYSINDEX(&CHARLPAR,&STR(&FL0618)) NG &STR(0) THEN +                         

    WRITE INPUT DATASET IS A PDS; IT NEEDS TO HAVE A MEMBER NAME.              

/*                                                                              

ISPEXEC SELECT CMD(%SQLPV SQLP    +                                            

                          RUNMODE(U)      +                                    

                          FL0418(&FL0418) +                                     

                          FL0618(&FL0618) +                                    

                 ) +                                                           

       NEWAPPL(PDST) PASSLIB                                                    

/*                                                                             

END                                                                            

 

 

 

 

COMMENTS FOR THE LEFT SIDE:

 

 

 

 

 

GETTING DATASET ATTRIBUTES

 

 

 

 

 

 

 

JUST A REMINDER. THE USER NEEDS TO USE PF5 TO EDIT A PDS FOR MEMBERS.

 

CALL THE PADEST-GENERATED-CLIST SQLPV, IN ORDER TO MAKE THE NEW VALUES OF “DB2 SUBSYSTEM” (FL0418) AND “INPUT DATASET” (FL0618) DEFAULT VALUES.

 

THE FORMULA OF CALLING THE PADEST-GENERATED-CLIST SQLPV, IS GIVEN IN THE PADEST-GENERATED-CLIST SQLPW.


User-developed CLIST, SPUFICL FOR SQL PROCESSING THAT WORKS ON 2 PARAMETERS: 1. DB2 SUBSYSTEM NAME, 2. INPUT DATASET NAME.

 

PROC 2 DB2SUBS INPUTDS                                                          

  CONTROL NOMSG                                                                

/*                                                                             

IF &DB2SUBS = &STR(P201) THEN +                                                

   DO                                                                          

      SET JES01 = &STR(/*JOBPARM S=MVS2)                                       

      SET JES02 = &STR(//*)                                                    

      SET LIBDS = &STR(AMFAMSD.DB2.PROD.RUNLIB.LOAD)                           

   END                                                                         

ELSE +                                                                         

IF &DB2SUBS = &STR(T301) +                                                      

OR &DB2SUBS = &STR(T302) +                                                     

OR &DB2SUBS = &STR(T303) THEN +                                                

   DO                                                                           

      SET JES01 = &STR(/*JOBPARM S=MVS3)                                       

      SET JES02 = &STR(//*)                                                    

      SET LIBDS = &STR(AMFAMSD.DB2.TEST.RUNLIB.LOAD)                            

   END                                                                         

ELSE +                                                                         

   DO                                                                           

      WRITE INVALID DB2 SUBSYSTEM :&DB2SUBS. RUN ABORTED                       

      GOTO ABORT                                                               

   END                                                                          

/*                                                                             

SET LEFTPAR  = &STR((                                                          

SET RIGHTPAR = &STR())                                                         

/*                                                                              

SUBMIT *   END($$)                                                             

//&SYSUID.S JOB (9056,Q16P),37752.RUN.QUERY,CLASS=A,MSGCLASS=W,                

//         MSGLEVEL=(1,1),NOTIFY=&SYSUID                                       

&JES01                                                                         

&JES02                                                                         

//SPUFI    EXEC PGM=IKJEFT1B                                                    

//SYSTSIN  DD *                                                                

DSN SYSTEM(&DB2SUBS)                                                           

&STR(RUN PROGRAM&LEFTPAR.DSNTEP2&RIGHTPAR +                                     

     PLAN&LEFTPAR.DSNTEP2&RIGHTPAR LIB&LEFTPAR.'&LIBDS'&RIGHTPAR +)            

&STR(PARM&LEFTPAR.'/ALIGN&LEFTPAR.LHS&RIGHTPAR.'&RIGHTPAR.)                    

END                                                                             

/*                                                                             

//SYSPRINT DD SYSOUT=*                                                         

//SYSTSPRT DD SYSOUT=*                                                          

//SYSABEND DD SYSOUT=*                                                         

//SYSDBOUT DD SYSOUT=*                                                         

//SYSABOUT DD SYSOUT=*                                                         

//SYSOUT   DD SYSOUT=*                                                         

//SYSIN    DD DISP=SHR,DSN=&INPUTDS                                            

$$                                                                             

WRITE JOB &SYSUID.S SUBMITTED FOR "RUN QUERY" REQUEST ON &INPUTDS              

END                                                                            

ABORT:+                                                                        

 END                                                                            

 

 

 

 COMMENTS FOR THE LEFT SIDE:

 

*

*

*    DEPENDING ON THE “DB2 SUBSYSTEM” the /*JOBPARM AND RUN LIBRARY IS

*    DETERMINED

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

 

 

 

 

AND THE JCL FOR SUBMITTING THE SQL STATEMENTS CONTAINED IN THE “INPUT DATASET”


 If the colors on the “SQL Processing” panel is desired to be changed, simply option 3 of the PADEST Menu is selected, which brings the following screen, where you may enter the Color Codes on desired places.

 

 

 

 

 

A SAMPLE PADEST APPLICATION (III)

 

CREATE A PANEL APPLICATION TO COLLECT VALID INFORMATION,  AND ISSUE COMMANDS IN ORDER TO SUBMIT JCLs FOR DB2 BINDS

 

 

 

PREMISE:

 

                   The user already  has a CLIST, named “BNDDBRM”, for DB2 binding that works on 3 parameters: 1. Prog-name, 2. Environment, 3. DBRM-library.  “BNDDBRM” has enough intelligence to derive other parameters of a DB2 Bind, based on the three parameters it receives; and can issue a JCL for the purpose.

 

 

TASK:

 

                 Develop an ISPF Panel application that will enable the user to enter valid fields,  (to be utilized as driving parameters by “BNDDBRM”), and that will be able to trigger “BNDDBRM”. 


TARGET SCREEN:  “TSO BNDR” brings a Panel for ”DB2 Binder”.  ”DB2 Binder” is an application developed through PADEST.

PRESSING THE ENTER KEY AFTER THE NECESSARY FIELDS ARE  POPULATED, ONE OR MORE JCLS ARE  ISSUED.


 

         1         2         3         4         5         6         7         8   

12345678901234567890123456789012345678901234567890123456789012345678901234567890

 

 1

 2

 3

 4

 5

 6

 7

 8

 9

10

11

12

13

14

15

16

17

18

19

21

21

22

23

24

 

 PADEST     PANEL APPLICATIONS AND DATA ENTRY SYSTEMS TOOLSET     09/26/06 12:29

                             P A D E S T                                       

                                                                              

             PANEL NAME  : bndr                                             

             PANEL TYPE  : s         "S"INGLE OR "M"ULTI ENTRY                 

             OPTION      : 1                                                  

                                                                              

                     OPTION MENU                                              

                                                                               

             1. GENERATE PANEL                                                

             2. REGENERATE PANEL                                              

             3. CHANGE FIELD COLORS                                           

             4. SET DEFAULT VALUES                                            

             5. CREATE CLISTS FOR THE PANEL APPLICATION                       

             6. SPECIFY OUTPUT PROPERTIES                                      

             7. DATA ENTRY MODE                                               

                                                                              

                                                                               

                                                                              

         COPYRIGHT (C) 2002 SAKMAN SOFTWARE CORPORATION                       

                                                                               

                                                                              

F1=HELP  F3=EXIT  F4=SAVE AS DEFAULTS                                         

STARTING THE DEVELOPMENT PROCESS:  In order to develop ”DB2 Binder” application, PADEST is called from your TSO/ISPF Session.   “TSO PADEST” brings the following Panel; and Panel Name, Panel Type, and Option is entered.

 

         1         2         3         4         5         6         7         8   

12345678901234567890123456789012345678901234567890123456789012345678901234567890

 

 1

 2

 3

 4

 5

 6

 7

 8

 9

10

11

12

13

14

15

16

17

18

19

21

21

22

23

24

 

 BNDR   _________________________________________________________ 09/26/06 12:32

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

                                                                              

F1=HELP  F3=EXIT  F4=SAVE AS DEFAULT  _________________________________________

ENTER key on the PADEST Primary Menu brings the following Blank Screen.

 

         1         2         3         4         5         6         7         8   

12345678901234567890123456789012345678901234567890123456789012345678901234567890

 

 1

 2

 3

 4

 5

 6

 7

 8

 9

10

11

12

13

14

15

16

17

18

19

21

21

22

23

24

 

BNDR           AMERICAN FAMILY DB2 BINDER                        09/26/06 12:32

                                                                      

              MODULE NAME:<B       >                                  

                                                                       

              ENVIRONMENTS TO BE BOUND INTO:                          

   (Place an 'X' after the Env Name. Multiple Environments may be chose

              U01 < >  U02 < >  U05 < >                               

              I01 < >  I02 < >  I03 < >                               

              A01 < >  PRD < >                                        

                                                                      

              DBRM LIBRARY TO BE USED:                                 

  (Fill in the blanks, or place an 'X' in ONLY ONE of the following opt

                                                                      

   AMFAMDD.CLAIMS.DBRMP < >     AMFAMDD.SHARED.DBRM < >      (X)      

   AMFAMTD.CLAIMS.DBRM < >      AMFAMTD.SHARED.DBRM < >      (X)      

   AMFAMTD.INTG< >.CLAIMS.DBRM  AMFAMTD.INTG< >.SHARED.DBRM  (1, 2, or 3)

   AMFAMTD.UNIT< >.CLAIMS.DBRM  AMFAMTD.UNIT< >.SHARED.DBRM  (1, 2, or 5)

   AMFAMNDV.<   >APPS.DBRM                                   (PRD,A01,I03,I02)

                                                              I01,U05,U02,U01)

   DBRM NAME: <                                            >   

                                                                

                                                                 

 F1=HELP  F3=EXIT  F4=SAVE AS DEFAULT                           

 

Protected and Unprotected Fields (Data Fields) are entered. First column of an unprotected field

may have an Edit Code (“B” in MODULE NAME indicates that it is a mandatory alphanumeric field.)


 

 

 

         1         2         3         4         5         6         7         8   

12345678901234567890123456789012345678901234567890123456789012345678901234567890


 

 

         1         2         3         4         5         6         7         8   

12345678901234567890123456789012345678901234567890123456789012345678901234567890

 

 1

 2

 3

 4

 5

 6

 7

 8

 9

10

11

12

13

14

15

16

17

18

19

21

21

22

23

24

 

 DSN:TSO.&SYSUID..BCKBND.DATA                                                    

LEN:  71                                                                       

                                                                               

V LINE BEG END TYP DESCRIPTION/VALUE              OUTBEG OUTEND OUTTYP:A,N,P,B 

- ---- --- --- --- ------------------------------ ------ ------ ------         

   3   29  36  B   MODULE NAME:                      1                         

   7   21  21  A   U01                               9                         

   7   30  30  A   U02                              10                         

   7   39  39  A   U05                              11                         

   8   21  21  A   I01                              12                         

   8   30  30  A   I02                              13                         

   8   39  39  A   I03                              14                         

   9   21  21  A   A01                              15                         

   9   30  30  A   PRD                              16                         

  14   27  27  A   AMFAMDD.CLAIMS.DBRMP             17                         

  14   55  55  A   AMFAMDD.SHARED.DBRM              18                         

  15   26  26  A   AMFAMTD.CLAIMS.DBRM              19                         

  15   55  55  A   AMFAMTD.SHARED.DBRM              20                         

  16   18  18  A   AMFAMTD.INTG                     21                         

  16   47  47  A   .CLAIMS.DBRM  AMFAMTD.INTG       22                         

  17   18  18  A   AMFAMTD.UNIT                     23                         

  17   47  47  A   .CLAIMS.DBRM  AMFAMTD.UNIT       24                         

  18   15  17  A   AMFAMNDV.                        25                          

  20   17  60  A   DBRM NAME:                       28 

Enter key on the previous screen brings the following Edit Screen, where Validation Values may be entered; Output Begin&End positions, Output Type (alpha, num, packed, binary) may be changed.


 

The sample problem requires changes as follows to validate data entered on certain fields:

 

         1         2         3         4         5         6         7         8   

12345678901234567890123456789012345678901234567890123456789012345678901234567890

 

 1

 2

 3

 4

 5

 6

 7

 

 

 

 

 

22

 

 

23

 

 

 

 

 

 

  24

 

 DSN:TSO.&SYSUID..BCKBND.DATA                                                   

LEN:  71                                                                       

                                                                                

V LINE BEG END TYP DESCRIPTION/VALUE              OUTBEG OUTEND OUTTYP:A,N,P,B 

- ---- --- --- --- ------------------------------ ------ ------ ------         

   3   29  36  B   MODULE NAME:                      1                         

   7   21  21  A   U01                               9 

   …………………………………………………………………………………………………………………………………………

   …………………………………………………………………………………………………………………………………………

   …………………………………………………………………………………………………………………………………………

   ………………………………………………………………………………………………………………………………………… 

   …………………………………………………………………………………………………………………………………………                       

  17   47  47  A   .CLAIMS.DBRM  AMFAMTD.UNIT       24                         

V                  1 thru 2                                                    

V                  5                                                           

  18   15  17  A   AMFAMNDV.                        25                         

V                  PRD                                                          

……………………………………………………………………                                                         

V                  U01                                                         

……………………………………………………………………

V                  A01 

……………………………………………………………………                                                                                                                

V                  I01 thru I03                                                

  20   17  60  A   DBRM NAME:                       28                         

 

 


A PF3 ON THE PREVIOUS SCREEN CAUSES THE APPLICATION TO BE  GENERATE D.  AS A RESULT,  CLIST, “BNDRFE”, IS CREATED. (ALSO, BNDRF5, 6, 7, AND 8, IF PAINTED.)  “BNDRFE” RUNS WHEN ENTER KEYS IS PRESSED ON THE PANEL.

 

         1         2         3         4         5         6         7         8   

12345678901234567890123456789012345678901234567890123456789012345678901234567890

 

 1

 2

 3

 4

 5

 6

 7

 8

 9

10

11

12

13

14

15

16

17

18

19

21

21

22

23

24

 

PROC 1 INPDSN                                                                  

ISPEXEC VGET (+                                                                

                 FL0329,+                                                      

                 FL0721,+                                                      

                 FL0730,+                                                      

                 FL0739,+                                                      

                 FL0821,+                                                      

                 FL0830,+                                                      

                 FL0839,+                                                      

                 FL0921,+                                                       

                 FL0930,+                                                      

                 FL1427,+                                                      

                 FL1455,+                                                       

                 FL1526,+                                                      

                 FL1555,+                                                      

                 FL1618,+                                                       

                 FL1647,+                                                      

                 FL1718,+                                                      

                 FL1747,+                                                       

                 FL1815,+                                                      

                 FL2017,+                                                      

              )                                                                

END   


IN ORDER TO CALL THE DB2 BINDER CLIST, “BNDDBRM”, WHEN THE ENTER IS PRESSED, THE USER NEEDS TO MODIFY “BNDRFE” AS FOLLOWS:

 

PROC 1 INPDSN                                                                  

ISPEXEC VGET (+                                                                 

                 FL0329,+                                                      

                 FL0721,+                                                      

                 FL0730,+                                                       

                 FL0739,+                                                      

                 FL0821,+                                                      

                 FL0830,+                                                       

                 FL0839,+                                                      

                 FL0921,+                                                      

                 FL0930,+                                                      

                 FL1427,+                                                      

                 FL1455,+                                                      

                 FL1526,+                                                      

                 FL1555,+                                                      

                 FL1618,+                                                      

                 FL1647,+                                                      

                 FL1718,+                                                       

                 FL1747,+                                                      

                 FL1815,+                                                      

                 FL2017,+                                                       

              )                                                                

/*                                                                             

IF &FL0721 = &STR(S) +                                                          

OR &FL0730 = &STR(S) +                                                         

OR &FL0739 = &STR(S) +                                                         

OR &FL0821 = &STR(S) +                                                          

OR &FL0830 = &STR(S) +                                                         

OR &FL0839 = &STR(S) +                                                         

OR &FL0921 = &STR(S) +                                                         

OR &FL0930 = &STR(S) THEN                                                      

ELSE +                                                                         

   DO                                                                          

     WRITE AN ENVIRONMENT MUST BE SELECTED.                                    

     GOTO ENDPROG                                                              

   END                                                                         

/*  

IF &FL1427 = &STR(S) THEN SET DBRLIB = &STR(AMFAMDD.CLAIMS.DBRMP)              

ELSE +                                                                         

IF &FL1455 = &STR(S) THEN SET DBRLIB = &STR(AMFAMDD.SHARED.DBRM)               

ELSE +                                                                          

IF &FL1526 = &STR(S) THEN SET DBRLIB = &STR(AMFAMTD.CLAIMS.DBRM)               

ELSE +  

IF &FL1555 = &STR(S) THEN SET DBRLIB = &STR(AMFAMTD.SHARED.DBRM)               

ELSE +                                                                          

IF &FL1618 > &STR(0) THEN SET DBRLIB = &STR(AMFAMTD.INTG&FL1618..CLAIMS+       

                                                                .DBRM)         

ELSE + 

IF &FL1647 > &STR(0) THEN SET DBRLIB = &STR(AMFAMTD.INTG&FL1647..SHARED+       

                                                                .DBRM)         

ELSE +                                                                         

IF &FL1718 > &STR(0) THEN SET DBRLIB = &STR(AMFAMTD.UNIT&FL1718..CLAIMS+       

                                                                .DBRM)         

ELSE +                                                                         

                                                                                                                                               

                             

IF &FL1747 > &STR(0) THEN SET DBRLIB = &STR(AMFAMTD.UNIT&FL1747..SHARED+       

                                                                .DBRM)         

ELSE +                                                                         

IF &FL1815 > &STR(A00) THEN SET DBRLIB = &STR(AMFAMNDV.&FL1815.APPS.DBRM)      

ELSE +                                                                         

IF &FL2017 > &STR(A) THEN SET DBRLIB = &STR(&FL2017)                           

ELSE +                                                                         

   DO                                                                          

     WRITE A DBRM MUST BE SELECTED.                                            

     GOTO ENDPROG                                                              

   END                                                                         

/*                                                                              

IF &FL0721 = &STR(S) THEN +                                                    

   DO                                                                          

      SET ENVIRON = &STR(U01)                                                   

      ISPEXEC SELECT CMD(%BNDDBRM &FL0329 &ENVIRON &DBRLIB)                    

   END                                                                         

IF &FL0730 = &STR(S) THEN +                                                     

   DO                                                                          

      SET ENVIRON = &STR(U02)                                                  

      ISPEXEC SELECT CMD(%BNDDBRM &FL0329 &ENVIRON &DBRLIB)                     

   END                                                                         

IF &FL0739 = &STR(S) THEN +                                                    

   DO                                                                           

      SET ENVIRON = &STR(U05)                                                  

      ISPEXEC SELECT CMD(%BNDDBRM &FL0329 &ENVIRON &DBRLIB)                    

   END                                                                         

IF &FL0821 = &STR(S) THEN +                                                    

   DO                                                                          

      SET ENVIRON = &STR(I01)                                                  

      ISPEXEC SELECT CMD(%BNDDBRM &FL0329 &ENVIRON &DBRLIB)                    

   END                                                                         

IF &FL0830 = &STR(S) THEN +                                                    

   DO                                                                           

      SET ENVIRON = &STR(I02)                                                  

      ISPEXEC SELECT CMD(%BNDDBRM &FL0329 &ENVIRON &DBRLIB)                    

   END                                                                          

IF &FL0839 = &STR(S) THEN +                                                    

   DO                                                                          

      SET ENVIRON = &STR(I03)                                                   

      ISPEXEC SELECT CMD(%BNDDBRM &FL0329 &ENVIRON &DBRLIB)                    

   END                                                                         

IF &FL0921 = &STR(S) THEN +                                                     

   DO                                                                          

      SET ENVIRON = &STR(A01)                                                  

      ISPEXEC SELECT CMD(%BNDDBRM &FL0329 &ENVIRON &DBRLIB)                    

   END                                                                          

IF &FL0930 = &STR(S) THEN +                                                    

   DO                                                                          

      SET ENVIRON = &STR(PRD)                                                  

      ISPEXEC SELECT CMD(%BNDDBRM &FL0329 &ENVIRON &DBRLIB)                    

   END                                                                         

/*                                                                              

ENDPROG:+                                                                      

END                                                                             


User-developed CLIST, BNDDBRM, FOR DB2 BINDING THAT WORKS ON 3 PARAMETERS: 1. PROG-NAME, 2. ENVIRONMENT, 3. DBRM-LIBRARY.

 

PROC 3 PROGNAME ENVIRON DBRLIB                                                 

/*CONTROL LIST CONLIST SYMLIST MSG                                             

  CONTROL NOMSG                                                                

/*                                                                             

SET MVSID   = &STR(MVS3)                                                       

SET OWNERID = &STR(OWNER        (&SYSUID)       -       )                      

CONTROL END(SON)                                                               

IF &SUBSTR(3:4,&PROGNAME) = &STR(CI) THEN SET COLLTYP = &STR(0)                

ELSE                                      SET COLLTYP = &STR(B)                  

/*                                                                              

IF &ENVIRON = &STR(U01) THEN +                                                 

   DO                                                                           

     SET DB2SYS  = &STR(T301)                                                   

     SET CREATOR = &STR(T301DBA)                                               

     SET COLLID  = &STR(CLMS)&COLLTYP.01C                                        

   SON                                                                         

ELSE +                                                                         

IF &ENVIRON = &STR(U02) THEN +                                                  

   DO                                                                          

     SET DB2SYS  = &STR(T301)                                                   

     SET CREATOR = &STR(T321DBA)                                               

     SET COLLID  = &STR(CLMS)&COLLTYP.02C                                       

   SON                                                                         

ELSE +                                                                         

IF &ENVIRON = &STR(U05) THEN +                                                 

   DO                                                                          

     SET DB2SYS  = &STR(T301)                                                   

     SET CREATOR = &STR(T351DBA)                                               

     SET COLLID  = &STR(CLMS)&COLLTYP.05C                                       

   SON                                                                         

ELSE +                                                                          

IF &ENVIRON = &STR(I01) THEN +                                                 

   DO                                                                          

     SET DB2SYS  = &STR(T302)                                                    

     SET CREATOR = &STR(T302DBA)                                               

     SET COLLID = &STR(CLMS)&COLLTYP.01C                                       

   SON                                                                          

ELSE +                                                                         

IF &ENVIRON = &STR(I02) THEN +                                                 

   DO                                                                          

     SET DB2SYS = &STR(T302)                                                   

     SET CREATOR = &STR(T322DBA)                                               

     SET COLLID = &STR(CLMS)&COLLTYP.02C                                       

   SON                                                                          

ELSE +          

IF &ENVIRON = &STR(I03) THEN +                                                 

   DO                                                                          

     SET DB2SYS = &STR(T302)                                                   

     SET CREATOR = &STR(T332DBA)                                               

     SET COLLID = &STR(CLMS)&COLLTYP.03C                                       

   SON                                                                          

ELSE +                                                                                                                                        

 

IF &ENVIRON = &STR(A01) THEN +                                                  

   DO                                                                          

     SET DB2SYS = &STR(T303)                                                   

     SET CREATOR = &STR(T303DBA)                                                

     SET COLLID = &STR(CLMS)&COLLTYP.01C                                       

   SON                                                                         

ELSE +                                                                          

IF &ENVIRON = &STR(PRD) THEN +                                                 

   DO                                                                          

     SET DB2SYS  = &STR(P201)                                                  

     SET CREATOR = &STR(P201DBA)                                               

     SET COLLID  = &STR(GNR2B01C)                                              

     SET MVSID   = &STR(MVS2)                                                  

     SET OWNERID = &STR(OWNER        (GENRCPGR)      -       )                 

   SON                                                                         

ELSE +                                                                         

     DO                                                                         

       WRITE ENVIRONMENT MUST BE U01, U02, U05, I01-I03, AND A01               

       END                                                                     

     SON                                                                        

CONTROL END(END)                                                               

/*                                                                             

SUBMIT *   END($$)                                                              

//&SYSUID.B JOB (9056,Q16P),37752.BIND.DBRM,CLASS=A,MSGCLASS=W,                

//         MSGLEVEL=(1,1),NOTIFY=&SYSUID                                       

&STR(/*JOBPARM S=)&STR(&MVSID)                                                  

//BIND007 EXEC PGM=IKJEFT1B,DYNAMNBR=20                                        

&STR(//DBRMLIB  DD  DISP=SHR,DSN=&DBRLIB                                       

//SYSOUT   DD  SYSOUT=*                                                        

//SYSTSPRT DD  SYSOUT=*                                                        

//SYSIN    DD  DUMMY                                                           

//SYSTSIN  DD  *                                                               

&STR(DSN SYSTEM   (&DB2SYS)               )                                    

&STR(BIND PACKAGE (&COLLID)       -       )                                    

&OWNERID                                                                       

&STR(QUALIFIER    (&CREATOR)      -       )                                    

&STR(MEMBER       (&PROGNAME)     -       )                                    

&STR(ACTION       (REPLACE)       -       )                                    

&STR(CURRENTDATA  (NO)            -       )                                    

&STR(DEGREE       (1)             -       )                                    

&STR(DYNAMICRULES (RUN)           -       )                                    

&STR(ENABLE       (*   )          -       )                                     

&STR(FLAG         (I)             -       )                                    

&STR(VALIDATE     (BIND)          -       )                                    

&STR(ISOLATION    (CS)            -       )                                     

&STR(RELEASE      (COMMIT)        -       )                                    

&STR(SQLERROR     (NOPACKAGE)     -       )                                    

&STR(EXPLAIN      (NO)                    )                                    

$$                                                                             

WRITE JOB &SYSUID.B SUBMITTED FOR "BIND PACKAGE" REQUEST FOR MODULE +          

      &PROGNAME                                                                

WRITE ON &ENVIRON USING &DBRLIB                                                

END                                                                            


 If the colors on the “DB2 Binder” panel is desired to be changed, simply option 3 of the PADEST Menu is selected, which brings the following screen, where you may enter the Color Codes on desired places.