When a CICS region is started, CMF should generate a set of data dictionary records. These records should appear at the beginning of the SMF dump that is taken for this region. If the MICS DAY040 step reads these data dictionary records before the "regular" type 110 records, then you will not even see any messages about missing data dictionary records. It appears that sometimes your SMF dumps do have this first run of data dictionary records and sometimes they do not.
The CIC06024E message in the MICS LOG indicates that MICS cannot find any data dictionary records for the particular f.e.SYSID=ABCD and CICSID=EFGH. When CMF type 110 records are the input data source for MICS/CICS, MICS needs to identify individual fields on these records by means of data dictionary information that must be input to MICS before MICS can interpret the type 110 records that actually contain the data. When MICS reads data dictionary records, it stores the information on the DETAIL.CICCDC01 file. Since this file will be available every time that the DAY040 step is run, the problem should not occur after the data dictionary information has been stored in it. Thus the data dictionary records should be input at least once for any CICS system.
Here are possible solutions to the problem.
// jobcard //STEP1 EXEC MICSDBx //TESTDET DD DISP=SHR,DSN= (DETAIL timespan from test unit) //SYSIN DD * DATA TSTCDC; SET TESTDET.CICCDC01; IF CICSID='EFGH'; DATA PRODCDC; SET DETAIL.CICCDC01; DATA BOTHCDC; SET TSTCDC PRODCDC; PROC SORT DATA=BOTHCDC OUT=DETAIL.CICCDC01; BY %CDCSEQ(TS=DETAIL); RUN; /*Note that the temporary SAS dataset called TSTCDC will have just the data dictionary observations for CICSID='EFGH'. You could change the value of CICSID to some other value as TSTCDC is being created if a new value of CICSID is appropriate.
MICS needs a new set of data dictionary records for a particular region only when the CICS release changes. Thus it would be a good practice to run the DFHMNDUP utility for all CICS regions after a CICS upgrade.