IReport¶
IReport defines the public contract implemented by report objects in this library. The interface standardizes how callers create report XML, render output, print, distribute, save files, and inspect any collected errors.
Purpose¶
- Expose a consistent report-processing workflow to consumers of the printing library.
- Surface both report content state and transport helpers needed by implementations.
Context¶
- Namespace:
SAIF.Services.Printing.Reporting - Assembly/package:
SAIF.Services.Printing
Public members¶
| Member | Signature | Purpose |
|---|---|---|
Errors |
ReadOnly Property Errors() As IList(Of ErrorDetail) |
Returns the collection of processing errors recorded by the implementation. |
xPrint |
ReadOnly Property xPrint() As clsPrint |
Returns the clsPrint helper used for xPression transport operations. |
DestinationFileName |
Property DestinationFileName() As String |
Gets or sets the output file path used by Save. |
OutputProfile |
Property OutputProfile() As String |
Gets or sets the xPression output profile. |
ReportPackage |
Property ReportPackage() As String |
Gets or sets the xPression report package name. |
ReportFile |
ReadOnly Property ReportFile() As Byte() |
Returns the rendered report bytes cached by the implementation. |
ReportXml |
ReadOnly Property ReportXml() As XDesignXDocument |
Returns the current report XML document. |
Create |
Function Create(Optional overwrite As Boolean = False) As XDesignXDocument |
Creates or refreshes the report XML document. |
Render |
Function Render(Optional overwrite As Boolean = False) As Boolean |
Renders the report into bytes. |
Print |
Function Print(printer As String, Optional overwrite As Boolean = False) As Boolean |
Prints the report to a supplied printer. |
Distribute |
Function Distribute(Optional overwrite As Boolean = False) As Boolean |
Distributes the report through the underlying transport implementation. |
Save |
Function Save(Optional overwrite As Boolean = False) As Boolean |
Saves rendered report bytes to the configured destination file. |
SetDefaultProfile |
Sub SetDefaultProfile() |
Selects the standard PDF output profile. |
SetDraftProfile |
Sub SetDraftProfile() |
Selects the draft watermark PDF output profile. |
Behavioral notes¶
- Implementations separate XML creation (
Create) from rendering (Render) so callers can prepare report data before transport operations. SetDefaultProfileandSetDraftProfilealign with BR-005.
Constraints and usage notes¶
- Implementations must supply a report package name and report XML for render or distribution operations to succeed.
ReportFileandErrorsexpose implementation state and may change after each workflow step.
Sources¶
Services\SAIF.Services.Printing\Reporting\IReport.vb