MFS Double-byte Character Set (DBCS) Support

In static literals and in input and output fields, Micro Focus IMS MFS supports double-byte character sets (DBCS) on their own, and also mixed data consisting of double- and single-byte characters.

MFS Code

For each literal and field that contains DBCS data only, specify the extended attribute EATTR=EGCS.

For each literal and field that contains mixed data that includes both DBCS and single-byte characters, specify the extended attribute EATTR=MIX.

For example:

FLD0001  DFLD  LTH=0008,POS=(02,02),ATTR=(NUM,PROT,MOD),
               EATTR=EGCS
         DFLD  'Double- and Single-byte Literals',X
               POS=(02,12),ATTR=HI,EATTR=MIX
Important: When editing MFS source containing DBCS data:
  • Use an editor that specifically supports ASCII Shift-JIS DBCS encoding. If you edit your MFS code in UTF-8 editing mode, the editor could automatically replace all Shift-JIS DBCS characters with the ASCII question mark (?) character (default Unicode substitution character). This automatic substitution could cause irrevocable corruption to the MFS file.
  • Do not enclose DBCS data in Shift Out/Shift In (SO/SI) characters as these are inserted as required during MFS generation.

MFS Generation

To generate MFS that contains DBCS data, specify the CBEGCS directive when executing mfims mfsgen. See CBEGCS for details.

Restrictions

MFS DBCS in Enterprise Developer does not support the following:

  • Continuation of DBCS or mixed data MFS literal strings, meaning that these strings cannot span multiple lines in an MFS file.
  • Dynamically changing the extended attribute (EATTR) that specifies the type of data. This means that you cannot dynamically change a double-byte field into single-byte field, and vice versa. This does not apply to any other extended attributes for double-byte or mixed fields, which can be modified as usual.