Previous Topic: Sample Online Debugger SessionNext Topic: Batch Access to DC Queues and Printers


Assembler Considerations

This appendix explains the following Assembler topics, which differ from the COBOL environment:

For more information related to using Assembler with DC, see CA IDMS DML Reference Guide for Assembler.

Checking the Status of Calls to DB

Assembler programs do not use the IDMS-STATUS block; you must explicitly code your own error-checking routines. You should check the ERRSTAT field after every DB DML call; if the DBMS returns an unexpected nonzero value, you should:

  1. Display the following IDMS communications block fields:

    You should also display any other relevant variable-storage fields.

  2. Issue the @ROLLBAK command.
  3. Terminate the program.

Checking the Status of Calls to DC

Assembler DC programs do not need to use the IDMS-DC communications block. You explicitly check the value returned to register 15 to determine the result of a DC call. If the call to DC included database access, you must check:

If DC returns an unexpected nonzero status, you should:

  1. Save the register 15 value
  2. Write a memory dump of the IDMS communications block and any other relevant variable-storage fields by using the #SNAP command
  3. Terminate the program by using the #ABEND command

Testing for the return code in register 15 is not usually necessary because most Assembler DML commands have options that take action based on the return code value.