Fetching value

Note: “Field” and “sub-field” are used for HRL/VRL/FRL formats. For HMD formats, replace “field” with “component” and “sub-field” with “subcomponent”.

The retrieval (fetching) value that is based on a field-level address has changed from CIS 5.8 to CIS 6.0 and later versions.

A change has been made in how the engine retrieves values from a field-level address as the source side in a translation action.

When the sub-field-level address is used as a source of a COPY action, the engine now retrieves the whole sub-field content. This includes all sub-sub-fields as a string. By doing this, it does not copy only the first sub-sub-field.

The entire content as a string is assigned to xlateInVals.

The current behavior is where the engine retrieves a value from a field-level address as the source side in a translation action.

Before CIS6.0, when setting a field-level address as the source in a translation action and the field had sub-fields, the engine would expand the field. Then, the engine would retrieve all the sub-field’s content, and put the values in a list.

This led to these issues:

  • If there was only one destination, then only the first sub-field content was copied to that destination.
  • If there are several destinations, then the sub-field’s content was copied to incorrect destinations.

This issue was fixed in CIS 6.0. When the field-level address is set as a source, the engine retrieves the whole field content. This includes all its sub-fields and sub-field separator characters as a string. The entire field content can be copied to the destination.