Define the MSI Input Routine
An MSI has no input format routine to code. In fact, most FDAs using MSI require no additional coding beyond the fdaGENIN member.
micsrm140
An MSI has no input format routine to code. In fact, most FDAs using MSI require no additional coding beyond the fdaGENIN member.
However, FDAs using MSI can be modified. MSI provides many user exits that allow for customization.
Original Sysid Assignment Exit (cccSYSID)
The data element ORGSYSID is used by
MICS
to identify the originating system of the data. The cccSYSID exit is used for specialized assignment of the ORGSYSID over and above the ORGSYSID statement. As an example, many data sources contain ORGSYSIDs up to 256 characters. Since MICS
requires a four-byte ORGSYSID, this exit can be used by the installation to recode extra-long ORGSYSIDs to four bytes. Another use of cccSYSID is to assign an ORGSYSID when the input data does not provide one.cccSYSID is located in prefix.MICS.PARMS and is automatically copied as part of the installation of the FDA.
MSI File User Exits
MSI provides user exits for each file to allow for custom processing, without modification to MSI code. These exits are automatically generated as part of the normal MCG generation process (GEN GENFILES) and are implemented using the FXIT facility. Those marked with an asterisk (*) are Open Code Exits that are not implemented in a data step.
Exit names with descriptions follow:
USRXfff
Exit before outputting detail to timespan. If the detail timespan is not active, then this exit is not invoked.
USRTfff
Detail tape processing file (this exit is currently inactive).
fffFMT2
Exits before Common (SYSID, ZONE, and so on) and CKRTN2 processing. This exit can be used to set the ENDTS, STARTTS, and ORGSYSID variables.
fffFMT3
Exit after CKRTN2. This exit can be used to perform more processing of the input SAS data sets.
fffFMT4
Exit at End-of-File.
*fffFMT5
Exit after the input SAS data has been processed.
*fffFMT6
Exit after all processing for fff has been completed.
MSI File User Exits
(*) Open code exits
Notes:
- For any file that specifies the CREATEWITH option, the fffFMT3 exit must be used to populate this file. At a minimum, the fffFMT3 example must contain:LINK OUTfff; *where:fffFile ID;
- Do not output any observations in fffFMT2. Duplicate data checking is performed by CKRTN2, AFTER fffFMT2 is invoked on any observation.
- Presently, exits fffFMT2, fffFMT4, and fffFMT6 are not taken for files specifying the CREATEWITH option.
MSI User Exits
MSI provides user exits for each file to allow for custom processing, without modification to MSI code. These exits are automatically generated as part of the normal
MICS Component Generator
(MCG) generation process (GEN GENFILES), and are implemented using the FXIT facility. Those marked with an asterisk (*) are Open Code Exits that are not implemented in a data step.*cccFMT6
Exit after the processing of all input files for product ccc.
*MSIFMT1
Exit before processing of any input files.
*MSIFMT6
Exit after the processing of all input files.