Re:IDMS / COBOL Debugging Tools

  • 1.  Re:IDMS / COBOL Debugging Tools

    Posted 06-24-2009 07:11 AM
    Hello Everyone,

    One of our programmers contacted me asking about debugging a COBOL IDMS/DC program. We have ADS-Alive and On-Line Bugger for dialogs and IDMS/COBOL batch programs we have IDMS Trace. Is there any tools or methods for debugging this type of program. Thanks for your help.

    John N. Baloga
    IDMS DBA, Global I & O
    Volvo Information Technology
    7825 National Service Road, Greensboro, NC 27409
    United States of America

    Telephone: 336-393-3425
    Telefax: 336-393-4080
    IDMS Public Discussion Forum


    Re: IDMS / COBOL Debugging Tools
    "I apologize for my earlier reply. I misread the query. To debug an IDMS DC program, you can use the standard debugger (it is cumbersome but it works).
    Here are the basics of the online debugger:

    1. Determine the offset(s) in the program that you wish to
    stop the program at. You can determine this from either the condensed
    listing or if you use the LIST option in COBOL II you will get a
    complete pseudo assembler listing. Write down the/these offset(s).
    Write down the offset of the base locators and/or base link locators
    from the listing.

    2. Sign on to the debugger by typing DEBUG DEBUG PROGRAM xxxxxxxx
    where xxxxxxxx is your program name.

    3. Type AT $+@offset(s) for each offset that you what to stop

    4. TYPE EXIT.

    5. Execute your program.

    6. Your program will stop at the breakpoint(s) you requested.

    At each breakpoint, you can determine any field value(s) that
    you want. Here is how to do it:

    a. Type LIST :R13. Record the value displayed (we will call
    this value x).

    b. Type LIST @x + offset into TGT for base locators.

    c. Find the base locator desired (each base locator occupies
    4 bytes). Remember that COBOL II base locators start at zero
    and that the base locator values are in HEX. We will call
    our value y.

    d. Type LIST @y + offset of field you want. The value displayed
    is the value you want.

    Dan Miley
    Lockheed Martin