Skip to content

DuplexModes

DuplexModes is a public enumeration defining the controlled vocabulary for duplex printing modes used by clsXPrintControl.DuplexMode. Each member maps to a fixed 5-character database code stored in XPRINT_CONTROL.DUPLEX_CODE and related columns. See BR-004.

Purpose

  • Provide a type-safe vocabulary for duplex printing mode selection.
  • Translated to/from fixed database codes by clsXPrintControl.DuplexMode.

Context

  • Namespace: SAIF.Services.Printing.Remote
  • Assembly/package: SAIF.BOF.Services.Printing.Remote
  • Defined in: Enums.vb

Public members

Member Signature Purpose
SIMPLEX SIMPLEX = 0 Single-sided printing; maps to database code SIMPL. Default enum value (ordinal 0).
VERTICAL VERTICAL Vertical duplex printing; maps to database code VERTL.
HORIZONTAL HORIZONTAL Horizontal duplex printing; maps to database code HORIZ.
DEFLT DEFLT Default system duplex setting; maps to database code DEFLT.

Behavioral notes

  • clsXPrintControl.DuplexMode getter maps the stored 5-character code to the enum value; unrecognized codes fall through Select Case with no explicit Return, implicitly yielding SIMPLEX (ordinal 0).**
  • The setter maps the enum value to the 5-character code for DuplexCode storage.
  • The same 5-character codes appear in XDOCUMENT.DUPLEX_CODE and XDEFERRED_PRINT.DUPLEX_CODE, but those columns are stored as raw strings without explicit translation in their respective classes.*

Constraints and usage notes

  • Only the four defined members have reliable round-trip storage; any other code stored in the database will not map to a named member.**
  • All four valid codes are exactly 5 characters (SIMPL, VERTL, HORIZ, DEFLT).

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.

Sources

  • Services\SAIF.Services.Printing.Remote\Enums.vb
  • Services\SAIF.Services.Printing.Remote\clsXPrintControl.vb