Report Tables

Reports are made of Procedures and Print Templates. STEPforward stores Procedures and Templates  separately in two tables.

Report Procedure table

Report procedures are stored in SF_SYSFlowCharts table. Each row of this table contains a complete definition of the Report, including the executable object of the Report in an archived form.

The table has the following structure:

Column Generalized data type Use
ReportName VARCHAR(20) Name of the user-defined Report
DescriptionText BLOB Archived text of the Report's description
ReportVisual BLOB Archived graphical flowchart of the Report
Parameters BLOB Archived array of the Parameter objects
ReturnType INT Data type of the return variable
ReturnVariable VARCHAR(255) Name of the return variable
ReportExec BLOB Archived executable object
ReportType CHAR(1) Type of Report (full report or component)
ReportIsValid LOGICAL Flag to track readiness of the Report
SF_UserId VARCHAR(255) Login account of the user that last updated the row
SF_DateChanged CHAR(8) Date of the last update of the row (CCYYMMDD)
SF_TimeChanged CHAR(6) Time of the last update of the row (HHMMSS)
SF_TimeStamp SMALLINT Version of the row (incremented with each update)

Notes:

The table contains one row for each Report used by STEPforward.

DescriptionText is an archived NSString object extracted from NSText that displays the Report's legend.

ReportVisual is an archived SFVisualTemplate object that encapsulates the contents of the Workspace window when the Report is constructed. When the Report is loaded into the Report Builder, its Workspace, Palette and Inspector windows are populated from this object that is unarchived for this purpose.

Parameters is an archived NSArray object that stores objects carrying information about parameters accepted by the Report.

ReturnType is the integer data type of the returned value. Reports that do not return any value have this field set to -1.

ReportExec is an archived object that stores executable objects that implement the logic of the Report. The objects are linked together in a chain of references and are executed at the run time.

ReportType is a flag that marks the Report as a full-featured report that can be selected from the list at the run time and executed (type R), or a component that can only be used in constructing other report much like a user-defined Function (type C).

ReportIsValid is a logical flag that is set to FALSE if the Report has been saved with syntactical errors. In this case ReportExec field is set to NULL, and the Report cannot be executed.

Print Template table

Print Templates are stored in SF_SYSPrintTemplates table. Each row of this table contains a complete definition of the Template, including the preview image of the Template in an archived form.

The table has the following structure:

Column Generalized data type Use
TemplateName VARCHAR(20) Name of the Print Template
Description VARCHAR(255) Text of the Template's description
TemplateObject BLOB Archived graphical content of the Template
ImageObject BLOB Archived preview image of the Template
SF_UserId VARCHAR(255) Login account of the user that last updated the row
SF_DateChanged CHAR(8) Date of the last update of the row (CCYYMMDD)
SF_TimeChanged CHAR(6) Time of the last update of the row (HHMMSS)
SF_TimeStamp SMALLINT Version of the row (incremented with each update)

Notes:

The table contains one row for each Print Template used by STEPforward.

TemplateObject is an archived SFPrintTemplate object that encapsulates the contents of the Workspace window when the Template is constructed. When the Template is loaded into the Print Template Builder, its Workspace, Palette and Inspector windows are populated from this object that is unarchived for this purpose.

ImageObject is an archived NSImage object that stores the preview of the Template.