Expression Recordset Object
The ExpressionStore object represents expressions and their dependencies using an ADO shaped hierarchical Recordset object. The structure of this Recordset object consists of a parent Recordset object with pointers to two child Recordset objects.
An empty Recordset object with the prescribed structure is created by calling the NewExpression method of the ExpressionStore object. Once the fields of the Recordset object have been filled in, the SaveExpression method is used to commit the expression to the expression store. In a similar fashion, those methods of the ExpressionStore object that return expressions from the store, such as GetExpression and GetAllExprs, return the expression data in this hierarchical Recordset object structure.
Parent Recordset
The fields in the parent Recordset object are shown in the following table.
Field |
Type |
Requirement |
Description |
---|---|---|---|
ExprID |
Integer |
Generated by the SaveExpression method of the ExpressionStore object when a new expression is saved. |
Unique identifier for the expression. This is a positive integer. |
ExprName |
String |
Required field supplied by the user. |
Unique name of the expression. The following characters are not allowed: ', ", &, \, /, <, > |
Category |
String |
Optional field supplied by the user. |
Category of the expression. May be used as a filter. The following characters are not allowed: ', ", &, \, /, <, > |
ExprDesc |
String |
Optional field supplied by the user. |
Description of the expression. Maximum length is 200 characters. The following characters are not allowed: &, <, > |
ExprBody |
String |
Required field supplied by the user. |
Extensible Markup Language (XML) body of the recordset. The evaluable expression. Maximum length is 3400 characters. |
DateCreated |
Date |
Generated by the system. |
Date the recordset was created. |
DateModified |
Date |
Generated by the system. |
Date the recordset was last modified. |
rsExprDeps |
Recordset pointer |
Generated by the system. |
A pointer to the child Recordset object listing the expression dependencies of this expression. |
rsProfDeps |
Recordset pointer |
Generated by the system. |
A pointer to the child Recordset object listing the profile type dependencies of this expression. |
Expression Dependencies Child Recordset
This Recordset object contains a record for each expression that the parent expression is immediately dependent on. The information does not include nested dependencies. If the parent expression does not depend on any expressions, this recordset may be empty.
The fields in the expression dependencies child Recordset object are shown in the following table.
Field |
Type |
Description |
---|---|---|
ExprID |
Integer |
Identifier of the parent expression. |
ExprDep |
Integer |
Identifier of the dependent expression. |
Profile Dependencies Child Recordset
This Recordset object contains a record for each profile this expression is dependent on. The user must populate at least one record when creating a new expression.
The fields in the profile dependencies Recordset object are shown in the following table.
Field |
Type |
Description |
---|---|---|
ExprID |
Integer |
Identifier of the parent expression. |
ProfDep |
String |
Name of the dependent profile. |
Remarks
The ExprId fields of the two child Recordset objects contain the same value as the ExprID field of the parent Recordset object that is generated when a new expression is saved.