Join each IMS transaction and job step to the segments behind it
ProprietaryRecord what an IMS estate reaches, from whatever starts a program down to the segment: the transaction code or job step, the PSB, each of its PCBs, the database that PCB opens and the segments the program's calls name through it. A DL/I call names a position and never names a database, so the PSB is what closes it and which PSB a program runs under is written in a third file again. The DBDs and their segment hierarchies are reported alongside, with the field offsets a copybook reading a segment has to agree with, and so is what a field-sensitive PCB hands a program: where a PCB carries SENFLDs the I/O area is that field list and not the segment, so the copybook the program reads it with is a different length. FindImsChain answers the same questions and marks the calls and definitions in the source; this one produces the tables and changes nothing.
io. moderne. mainframe. ims. AnalyzeImsChainmod run . --recipe= io. moderne. mainframe. ims. AnalyzeImsChainInstall it once from Recipe actions, then run it on every repository under the current directory. New to the Moderne CLI? Set it up.