The utilities subdirectory
The utilities subdirectory contains the data, maps and trees subdirectories.
These subdirectories are described as follows:
- data subdirectory - The data subdirectory contains the following sample input data files and map
results are also stored in this location:
- fix_40.inp - This file is used with the FIX checksum utility maps.
- fix_40_MVS.inp - This version of fix_40.inp is converted to EBCDIC characters, to be used as input when executing an example on z/OS.
- maps subdirectory - The maps subdirectory contains a map source called fix_checksum.mms. It
consists of the utility example maps described as follows:
- fxchksm1_utility - The fxchksm_1_utility map is used to compute the FIX checksum by summing every byte value equivalent of every character that is contained in a FIX message and applying a MODULUS 256. This map requires the FIX message to be formatted in hexadecimal text stream representation.
- fxchksm2_validate - The fxchksm2_validate utility map is used to verify the computed FIX checksum value against the actual FIX message field tag 10 value. The computed FIX checksum is returned by invoking the fxchksm1_utility map. The map returns a value of PASS if the value on field tag 10 matches the computed FIX checksum. If the value on field tag 10 does not match the computed FIX checksum, a value of FAIL is returned. The map requires the FIX message to have tag 10 to be populated as the last field in the message. The fxchksm1_utility map must be compiled before execution of this map and the compiled map must be the same location where the fxchksm2_validate map is being executed. This map can be used for inbound mapping where the field tag 10 value must be verified.
- fxchksm3_compute - The fxchksm3_compute utility map retrieves the computed FIX checksum by calling fxchksm1_utility map. The map requires a FIX message as input. Any field tag 10 is removed before it is passed to the fschksm1_utility map. The first output card contains the computed FIX checksum that results from calling the fxchksm1_utility map. The second output card contains the computed FIX body length. The body length is the number of characters from body length tag 9 up to and including the delimiter immediately preceding the checksum tag 10. The second output card is optional and provided as a convenience. It is configured with a SINK adapter, which can be overridden when needed. The fxchsm1_utility map must be compiled before execution of this map and the compiled map must be in the same location where fxchksm3_compute map is being executed. This map can be used for outbound mapping where the field tag 10 value must be populated.
- trees subdirectory - The trees subdirectory contains fix_checksum.mtt, a general-purpose type tree, which is used in both the input and output cards of the FIX checksum utility maps.