Processes Table

General structure

Processes are stored in SF_SYSProcess table. Each row of this table contains a complete definition of the Process, including the executable object of the Process in an archived form.

The table has the following structure:

Column Generalized data type Use
SF_ProcessName VARCHAR(20) Name of the user-defined Process
SF_DescriptionText BLOB Archived text of the Process's description
SF_ProcessVisual BLOB Archived graphical flowchart of the Process
SF_Parameters BLOB Archived array of the Parameter objects
SF_ReturnType INT Data type of the return variable
SF_ReturnVariable VARCHAR(255) Name of the return variable
SF_ProcessExec BLOB Archived executable object
SF_ProcessType CHAR(1) Type of Process (full process or component)
SF_ProcessIsValid LOGICAL Flag to track readiness of the Process
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 Process used by STEPforward.

SF_DescriptionText is an archived NSString object extracted from NSText that displays the Process's legend.

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

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

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

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

SF_ProcessType is a flag that marks the Process 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).

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