Skip to content

SAIF.Services.Printing.Remote overview

Documentation context: Packaged Component (NuGet)

SAIF.Services.Printing.Remote is a BOF (Business Object Framework) class library that orchestrates deferred and batch print processing against Oracle-backed print-control tables. It exposes three parallel families of business objects — print control batches, documents, and deferred print items — each following the standard SAIF BOF pattern (business object + collection, each with a nested Criteria implementing IBusinessCriteria). The library is consumed by other applications and services as a NuGet package (SAIF.BOF.Services.Printing.Remote).

Purpose

  • Provides business object representations and Oracle data-access logic for deferred and batch print orchestration, covering print-control batch headers, individual print job documents, and queued deferred print items.
  • Consumed by downstream applications and services that need to enqueue, retrieve, sequence, and purge print jobs through Oracle tables (XPRINT_CONTROL, XDOCUMENT, XDEFERRED_PRINT, XPRINTER_BIN, XPRINTER).

Responsibilities

  • Represent and persist print-control batch headers (clsXPrintControl / clsXPrintControlCollection) with directory, duplex mode, processed date, XML file name, and MD5 hash.
  • Represent and persist individual print job documents (clsXDocument / clsXDocumentCollection) linked to a print-control batch, with bin/printer routing and sort-value-driven sequencing.
  • Represent and persist deferred (queued) print requests (clsXDeferredPrint / clsXDeferredPrintCollection) retrievable by print date or document description.
  • Provide Oracle data access for the above via IBusinessCriteria-based SQL, with joins to XPRINTER_BIN and XPRINTER for routing resolution at read time.
  • Enforce optimistic-concurrency/contention checks on every insert, update, and delete across all six business objects.

Key components

  • clsXPrintControl / clsXPrintControlCollection: print-control batch header and its collection.
  • clsXDocument / clsXDocumentCollection: individual print job document and its collection; collection drives batch/group printing logic via the PrintType enum (ByDocSeq, ByPrintGroup).
  • clsXDeferredPrint / clsXDeferredPrintCollection: deferred print item and its collection, supporting byDate and byDocDescr retrieval modes.
  • DuplexModes (enum): controlled vocabulary for duplex printing modes (SIMPLEX, VERTICAL, HORIZONTAL, DEFLT).
  • BinType (enum): controlled vocabulary for printer bin routing (AutoSelect, BulkInputTray, EnvelopeFeeder, Tray1–Tray4).
  • Institutions (typed DataSet): generated bank/institution lookup data shape; no consuming code was found within this library's source files.*

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.

Sources

  • Services\SAIF.Services.Printing.Remote\SAIF.BOF.Services.Printing.Remote.vbproj
  • Services\SAIF.Services.Printing.Remote\clsXPrintControl.vb
  • Services\SAIF.Services.Printing.Remote\clsXPrintControlCollection.vb
  • Services\SAIF.Services.Printing.Remote\clsXDocument.vb
  • Services\SAIF.Services.Printing.Remote\clsXDocumentCollection.vb
  • Services\SAIF.Services.Printing.Remote\clsXDeferredPrint.vb
  • Services\SAIF.Services.Printing.Remote\clsXDeferredPrintCollection.vb
  • Services\SAIF.Services.Printing.Remote\Enums.vb
  • Services\SAIF.Services.Printing.Remote\Institutions.Designer.vb