Report Writer Class

The 'jFormTK' Report Writer Class [jReportWriter] is responsible for generating all of the 'jFormTK' Application Reports. Each report added to the 'jFormTK' Report Writer is assigned a Report Name and a Report Type.

The 'jFormTK' Report Writer instance is designed to encapsulate and manage all the reports of a 'jFormTK' Application. Each Application report is assigned a unique "Report Name" when it is added to the Report Writer instance. Each Report Writer item [report] has the following Properties

Property Description
Type Presently the available type are as follows:
0 – None, 1 - Printer, 2 – HTML, 3 – Printer & HTML, 4 – XML
NOTE 1: Mask Bits – 0 = Printer, 1 = HTML, 2 = XML
Title The Report Title, e.g. "Net Worth Report"
Date / Time Presently the available Date / Time modes are as follows:
0 – None, 1 – Date Only, 2 – Date & Time
Header Header String, no Header if Header = "" [Default]
Elements String Array – each Element represent a "formatted Report item". Each "formatted Report item" may contain multiple ‘dataQueryEngine’ References and multiple Line Feed [LF] controls.

SPECIAL CASE: HTML w/ Embedded ‘dataQueryEngine’ References.

- If the first entry of the String Array contains the following String the indicated file shall be processed in lieu of the String of Elements described above:

"<EmbeddedHTML=File_Name>"

Footer Footer String, no Footer if Footer = "" [Default]
AccessControl Control String linked to the "Read_Only" password. This field is used to identify what 'jFormTK' Reports may be accessed as a function of the ‘Read_Only’ password that was entered when the Privileged User "Secure Interface".

Given the specific ‘Read_Only’ password, only Application Reports with the matching ‘AccessControl’ shall be presented to the 2nd Party Individual’s Internet Browser.

Note 2:
The actual Report Processing is a function of the ‘Type’ property and the 'jFormTK' Application Execution Mode, e.g. Standalone Application Execution Mode or Client / Server Execution Mode.

Note 3:

If a HTML File or a XML file is requested, then the generated files shall be stored in the "Reports" Folder under the 'jFormTK' Application Folder. The file names shall be constructed by concatenating the "Report Name" with the respective ".html" or ".xml" extensions.

Note 4:

If the XML bit is on in the Report ‘Type’, the only properties that apply shall be the Elements property. The given Elements shall be used to indicate what fields of the ‘userAccount’ shall be written to the XML file. The element String must contain only the ‘dataQueryEngine’ "get" reference’s since the output file is designed to be "pure" XML.

Constructor:

public jReportWriter()

Methods Table:

add(String reportName, int Type)
Defaults: Title = ""; dateControl=0; Header = ""; Footer = "";
formattedItems = null; LF/TAB = jFormTKDB values.
add(String reportName, int Type, String Title)
Defaults: dateControl=0; Header = ""; Footer = "";
formattedItems = null; LF/TAB = jFormTKDB values.
add(String reportName, int Type, String Title, int dateControl)
Defaults: Header = ""; Footer = "";formattedItems = null; LF/TAB = jFormTKDB values.
add(String reportName, int Type, String Title, int dateControl, String Header)
Defaults:Footer = "";formattedItems = null; LF/TAB = jFormTKDB values.
add(String reportName, int Type, String Title, int dateControl, String Header,
String Footer)
Defaults: formattedItems = null; LF/TAB = jFormTKDB values.
add(String reportName, int Type, String Title, int dateControl, String formattedItems)
Defaults: Header = ""; Footer = "";LF/TAB = jFormTKDB values.
add(String reportName, int Type, String Title, int dateControl, String Header, String formattedItems)
Defaults: Footer = "";LF/TAB = jFormTKDB values.
add(String reportName, int Type, String Title, int dateControl, String Header,
String Footer, String formattedItems)
Defaults: LF/TAB = jFormTKDB values.
setTitle(String reportName, String Title);
setDate(String reportName, int dateControl)
setHeader(String reportName, String Header)
setElements(String reportName, String[] formattedItems)
setFooter(String reportName, String Footer)
setControls(String LF, String TAB)