COBOL programmer's summary sheet


In order to correctly incorporate QUICKSTART into the COBOL application program, such that the application program is restartable, the programmer must:

  1. Identify those files which are to be repositioned by QUICKSTART during a restart.
  2. Convert those repositionable files from COBOL supported to use QUICKSTART's COBOL FD Interception by replacing COBOL OPEN and CLOSE verbs with QSOPENI, QSOPENO, and QSCLOSE COPYBOOKS. See Sequential-I-O-considerations for details on implementing this.
    OR
    Use the QUICKSAM API, as follows (see also Sequential-I-O-considerations):
    1. Remove the associated “FD” and “SELECT” Statements.
    2. Relocate the file record layout to Working Storage.
    3. Create SAMn-DEFINITIONs for each repositionable file.
    4. Initialize the value of NBR-OF-SAMS.
    5. Remove all COBOL OPEN and CLOSE verbs.
    6. Convert all usages of COBOL READ and WRITE verbs for those files to CALLs to the QUICKSAM program.
  3. Copy into the application program the Checkpoint Area copybooks QSWSLIT, QSWSBEG, and QSWSEND.
  4. Identify any other application program Working Storage data areas which need to be included in the Checkpoint Area and place them immediately following QSWSBEG, or after the last SAM-DEFINITION if the QUICKSAM API is being used. Ensure that these data areas appear before QSWSEND.
  5. Copy into the application program the appropriate version of CKPT-RTN.
  6. Create a “Start-Up” CALL to CKPT-RTN to initialize QUICKSTART and check for a restart in-progress (see also Procedure-division).
  7. Create an “End” CALL to CKPT-RTN to terminate QUICKSTART processing and register the “normal” completion of the application program (see also Procedure-division).
  8. Design the application program to incorporate the Logical Unit of Work methodology (see also Application-requirements-for-restartability) and to strategically issue a CALL to CKPT-RTN, such that checkpoint activity can occur. Follow with application program code to manage any post-checkpoint activities, as necessitated by the Host DBMS(s) (see also Procedure-division).




 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*