How to monitor Dynamically called program in Endevor ACM

Document ID : KB000115256
Last Modified Date : 17/10/2018
Show Technical Document Details
Question:
We would like to implement the ACMQ feature.
The problem now is that our Cobol routines that are dynamically called are not shown by ACMQ "WHERE used".
While the statics called routines, can be shown by ACMQ "WHERE used".
 
Answer:
Basic ACM as used by monitor=components will only pick up components from libraries that are actually opened within the processor.
Dynamic calls,links will not be monitor, but they can be added to the component list via the processor utility called CONSCAN which is explained in the Processor guide. See CONSCAN Utility 
You can find sample that should match your config in;
CSIQOPTN(SCANCBL) and CSIQOPTN(SCANCBLX)

There are samples for other language from CSIQOPTN:
SCANASM SCANASMX SCANCBL SCANCBLX SCANJCL SCANJCLX

To process your type Batch Cobol, create a CONSCAN member using the element type name (&C1ELTYPE), this is easier to code this in a processor, example:
//PARMSCAN DD DISP=SHR,DSN=UPRFX.UQUAL.CSIQOPTN(&C1ELTYPE)

CONSCAN works as follow:
1 - Read User-defined selection criteria from DDNAME PARMSCAN.
//PARMSCAN DD DISP=SHR,DSN=UPRFX.UQUAL.CSIQOPTN(&C1ELTYPE)
2 - Apply Scan rules against the element source
3 - Generate Control Statements for CONRELE into DDNAME ACMRELE
//ACMRELE DD DISP=(NEW,PASS),DSN=&&RELEIN,SPACE=(TRK,(1,1))

CONRELE works as follow:
1 - Read Control statements from DDNAME NDVRIPT.
//NDVRIPT DD DISP=(OLD,DELETE),DSN=&&RELEIN
2 - Updates the ACM component data for the element.
Additional Information:
CONSCAN Utility -> https://docops.ca.com/ca-endevor-SCM/18-0/en/administrating/processors/processor-utilities#ProcessorUtilities-CONSCANUtility