SAIF.Services.Printing overview¶
Documentation context: Embedded Library Component Documented via: LegalMaintenance (LegalMaintenance/LegalMaintenance.vbproj)
SAIF.Services.Printing is the document output/rendering service layer for the application. It wraps the
EMC/Dell xPression document-composition web service (xpresso.clsGenerate) and the SQL Server Reporting
Services ReportExecution2005 web service, adds an asynchronous MSMQ distribution channel that carries an
OnBase imaging index payload (clsImageImport from SAIF.Services.Imaging.Import), and provides a small
Reporting framework (IReport / ReportBase / XDesignXDocument / XDesignXElement) for building
xPression-format XML data documents and driving them through preview, print, distribute, and save flows. The
library performs no database access of its own.
Purpose¶
- Provide print/preview/distribute clients for the xPression document-composition service and the SSRS
ReportExecution2005reporting service - Provide a reusable report lifecycle framework (
IReport/ReportBase) that consuming libraries subclass to build, render, print, distribute, and save concrete reports - Serialize xPression-aware XML data documents (
XDesignXDocument/XDesignXElement) with key propagation for nested repeating sections (BR-PRT-016) - Resolve all environment-specific configuration (service endpoints, MSMQ path, imaging drop path) exclusively
through the SAIF Environment API (
EnvironmentServiceBase)
Responsibilities¶
clsPrint: xPression protocol/transport gateway — endpoint resolution, request assembly, synchronous-versus- queued dispatch, and MSMQ transaction lifecycleclsRSPrint: SSRS protocol gateway — report path, parameters, format/extension mapping, renderingReporting.*(IReport,ReportBase,XDesignXDocument,XDesignXElement,ErrorDetail): report lifecycle orchestration, xPression XML document construction, and non-throwing error accumulation- Delegating imaging-index payload construction to
SAIF.Services.Imaging.Import.clsImageImport
Key components¶
clsPrint: xPression client — preview, print, and (synchronous or MSMQ-queued) distribute operationsclsRSPrint: SSRSReportExecution2005client — parameterised report renderingIReport/ReportBase: report lifecycle contract and abstract implementation (Create→Render→Print/Distribute/Save)XDesignXDocument/XDesignXElement: xPression-awareXDocument/XElementsubclasses that serialize to the xPression XML dialectErrorDetail: non-throwing error record collected byReportBaseduring render/distribute failures
Related documentation¶
Sources¶
SAIF.Services.Printing/clsPrint.vbSAIF.Services.Printing/clsRSPrint.vbSAIF.Services.Printing/Reporting/IReport.vbSAIF.Services.Printing/Reporting/ReportBase.vbSAIF.Services.Printing/Reporting/XDesignXDocument.vbSAIF.Services.Printing/Reporting/XDesignXElement.vb- SAIF.Services.Printing/clsPrint.vb
- SAIF.Services.Printing/clsRSPrint.vb
- SAIF.Services.Printing/Reporting/ReportBase.vb
- SAIF.Services.Printing/Reporting/IReport.vb