376 IMS Connectivity in an On Demand Environment: A Practical Guide to IMS Connectivity
Issue a /DIS PGM (psbname) and /DIS DB (dbname) to check the status of the IMS
resources you need.
Check to see if there have been any recent changes to the DBDs, PSBs, ACBs, or the IMS
system maintenance.
If you have a problem is in this area, you might need to talk to a DBA or IMS system
personnel (or the equivalent specialist at your installation) to help with the problem.
19.6.3 Running errors
If you do not have any IMS initialization errors, check the following areas in your program:
The output from the compiler. Make sure that all error messages have been resolved.
The output from the linkage editor:
– Are all external references resolved?
– Have all necessary modules been included?
– Was the language interface module correctly included?
Your JCL: Is the information that described the files that contain the databases correct? If
not, check with your DBA.
If the program stalls and must be cancelled, check that there are CMIT/DPSB calls prior to
a new APSB for the same databases.
19.6.4 The application interface block
For an explanation of the application interface block (AIB), refer to 19.4.3, “The application
interface block (AIB)” on page 368. Always check the IMS status code, the reason code, and
the return code after an IMS call. The reason code is contained in the AIBREASN field, and
the return code is contained in the AIBRETRN field. Check for non-zero values for the reason
and return codes, and unexpected non-blank spaces for the status code (for example, GE and
GB might be valid status codes indicating no more segment found, or end of database
reached).
19.7 IBM-supplied ODBA infrastructures
You do not have to code an ODBA application by yourself, because IBM provides several
ODBA applications to meet your requirements. These ODBA applications work as
infrastructure to execute your business logic that access to IMS databases. You can code the
business logic by using various API such as DL/I or SQL through ODBC and JDBC interfaces,
and you can run it on any platforms. In this section, we introduce the following IBM-supplied
ODBA infrastructures.
19.7.1 DB2 stored procedure
The ODBA interface allows a DB2 stored procedure to directly connect to an system and
issue DL/I calls to access IMS databases. A stored procedure can issue database DL/I
requests through an ODBA callable interface. You need to update the startup procedure for
the WLM-established stored procedure address space to add the ODBA data set names to
the STEPLIB and DFSRESLB concatenations. Figure 19-5 on page 364 shows the general
structure of ODBA from a DB2 stored procedure. After you have coded your stored procedure
containing the logic for IMS database access, you can call this stored procedure from any
platform that can access DB2 for z/OS stored procedure environment.