Before analyzing IMS applications in Enterprise Analyzer, you need to be aware of the following generic restrictions on IMS support.
The AIB interface is not supported.
Manual resolution of IMS-related decisions (PSB module decisions and the like) do not affect the results of IMS call analysis.
The SYSSERVE parameter of the SCHD call does not affect analysis. The number of PCB blocks in the PSB is determined statically during PSB verification. IO PCBs are added automatically as needed. That might affect PCB numbering.
The active PSB name is not traced between programs if CALL without parameters is used.
The active PSB name is not detected if it is calculated in a called subroutine. Only “forward” passing of parameters is supported from calling to called module.
Impact analysis and interprogram data flows are not supported.
There may be extra dependencies between variables in IMS calls (in intraprogram analysis, computational components, and so forth) because all CALL arguments except function-code are considered as being used in INOUT mode while in fact some CALLs have input-only and output-only parameters. This also may cause decisions to appear not to have been resolved, when in fact they have been.
PCB content is considered to be altered only by CBLTDLI(PLITDLI) calls or via a group MOVE of the whole PCB structure to another structure. Presence of MOVEs to subfields of a PCB may lead to incorrect analysis results. GU call is not considered as nullifying alternate PCBs.
For unqualified IMS database calls (without SSAs), port analysis uses only PCB information and does not analyze preceding IMS calls (for example, GNP after GU). Similarly, dependencies between any other IMS calls are not traced except the CHNG – ISRT pair.
For qualified database calls, only the unqualified portion of SSA is analyzed. Command codes are not supported (for example, a path call will be interpreted as a call reading only the last segment in a path).
The PARMCOUNT parameter is accepted but not analyzed. All CALL parameters are considered as valid.
All CHNG calls are treated as setting transaction code destinations because, with no indicators of destination type, it is impossible to distinguish between transaction and terminal names. System tables with transactions and terminal names are needed to check type.
ISRT calls to IO-PCB without MOD name are ignored. Most likely they represent the construction of multi-segment messages.
PSB/DBD parsers do not perform full semantic checks of corresponding macro statements. Moreover, the PSB parser does not check that all referenced segments and fields are defined in corresponding DBDs.
Online CICS applications using IMS do no need System Definition files. They need only native CICS PCT files.
Limited support is available for SET ADDRESS OF <variable> to <PCB> and scheduling of PSBs (calls to PCB functions in CICS programs).