Fast/Reload DBCS support

From m204wiki
Jump to navigation Jump to search

Fast/Reload provides support for mixed and pure DBCS (Double Byte Character Set) fields. This includes support of the X'0080', X'0040', X'0020', and X'0010' FLOD mode bits. For more information on these bits, see the Rocket Model 204 DBCS Support Summary.

In addition, Fast/Reload performs certain DBCS conversions automatically when loading data in UAI/LAI format. These conversions are performed automatically when a field's DBCS definition has changed. The possible DBCS conversions are:

Pure DBCS to mixed DBCS No conversion is performed.
Pure DBCS to mixed DBCS Data is wrapped in shift/out and shift/in.
Pure DBCS to non-DBCS The data is stored as a string with no modification.
Mixed DBCS to pure DBCS The data must be wrapped in shift/out and shift/in with no intervening shift/out or shift/in. If this is the case, the shift/out and shift/in are stripped. If not, an error message is issued and the field is not loaded.
Mixed DBCS to mixed DBCS No conversion is performed.
Mixed DBCS to non-DBCS The data is stored as a string with no modification.
Non-DBCS to pure DBCS This conversion is invalid so an error message is issued and the field is not loaded in this case.
Non-DBCS to mixed DBCS The data is stored as a string with no modification other than conversion of non-string types to string.

If DBCS data is stored in a field that was not defined as a DBCS field, it is possible to tell Fast/Reload to treat the field as if it had been a DBCS field. This is done with the PURE and MIXED statements. The PURE statement tells Fast/Reload to treat the unloaded data for a field as if it were pure DBCS data, regardless of its actual definition. The MIXED statement tells Fast/Reload to treat the unloaded data for a field as if it were mixed DBCS data, regardless of its actual definition. Both the PURE and the MIXED statements must come after the LAI statement, and they are invalid in non-LAI FLOD programs.

For example, this statement treats data for field DBCS_STRING as pure DBCS data, and it treats data for field OTHER_STRING as mixed DBCS data:

FILELOAD -1,-1,0,1000000,10000,10000,,68 LAI PURE DBCS_STRING MIXED OTHER_STRING END

See also