Before OpenEdge displays a multi-byte character, if the next byte in the format specification is a formatting character, such as a dash, OpenEdge inserts a space, then the dash, then searches the format specification for the next two available contiguous columns.

For example, consider the following format, which consists of three bytes, a hyphen formatting character, and four bytes:

FORMAT "xxx-xxxx"

You want to display the following string, which consists of four double-byte characters:



The result is the following string, which consists of the first double-byte character, a blank, the hyphen formatting symbol, the second double-byte character, and third double-byte character:



To build the resulting string, the AVM:

  1. Displays the first double-byte character
  2. Notices that only one column remains before the hyphen formatting character
  3. Inserts a blank in that column
  4. Displays the hyphen formatting character
  5. Displays the second double-byte character
  6. Displays the third double-byte character
  7. Notices that no more space remains
  8. Decides not to display the fourth double-byte character