Data model
The Sign-Off Module is delivered with a default data model for all the data required to support the approvals workflow. These components share the same foundations but each use different datastore configurations and a separate cube.
Sign-Off Module components
The Sign-Off Module comprises several component databases. The following table lists these databases and provides links to their associated schemas, and datastore definitions, where applicable.
Component | Description | Database definition | Cube schema |
---|---|---|---|
Application | The Application database comprises the sign-off process definition and instance objects. This database may be shared with the application. |
Sign-Off ProcessDefinition Cube | A flexible set of attributes and dimensions (hierarchies, dimensions, levels of the cube structure) is supplied for each of the Sign-off cubes. See Sign-off dimensions |
Sign-off Process Instance Cube |
|||
Audit Log | The Audit-Log contains a record of all user actions within the Activiti workflows. The Audit-Log database comprises two tables * USERRECORD * PROCESSRECORD |
See Audit-Log. | |
Activiti | The Activiti workflow state is maintained in the Activiti database. This includes copies of objects that are waiting for approval before being saved to the Application database. This database is managed by the Activiti process engine. See the Activiti documentation for more information about this database schema. https://www.activiti.org/documentation |
For details, see the Sign-Off Module Developer Guide.
Database definitions
Application Database
Table name: ADJUSTMENTDEFINITION
A record of an adjustment definition.
Column | Type | Description |
---|---|---|
ID | BIGINT | The database ID for the object version |
LIVEFROM | TIMESTAMP | The beginning of live range for the object version |
LIVETO | TIMESTAMP | The end of live range for object version (null if range has no end) |
VALIDFROM | DATE | Beginning date (inclusive) for which this definition object applies. |
VALIDTO | DATE | Ending date (exclusive) for which this definition object applies (may be null) |
COMMENT | VARCHAR | The comment associated to the definition of the adjustment |
DEFINITIONID | VARCHAR | The definition ID |
FILTERS | VARCHAR | The filters defined for the adjustment |
INPUT | VARCHAR | The input defined for the adjustment |
MEASURES | VARCHAR | The measures defined for the adjustment |
PROCESSINSTANCEID | VARCHAR | The process instance ID linked to the adjustment |
REASON | VARCHAR | The reason defined for the adjustment |
SERVERNAME | VARCHAR | The name of the application server to which the process instance is related. Used to generate the URLs for calls to RESTful services in the application server |
STATUS | VARCHAR | The status of the adjustment execution |
TASK | VARCHAR | The task name associated to the adjustment |
TYPE | VARCHAR | The type of adjustment |
USER | VARCHAR | The ID of the user who created the adjustment |
Table name: ADJUSTMENTEXECUTION
A record of an adjustment execution.
Column | Type | Description |
---|---|---|
ID | BIGINT | The database ID for the object version |
LIVEFROM | TIMESTAMP | The beginning of live range for the object version |
LIVETO | TIMESTAMP | The end of live range for object version (null if range has no end) |
ASOFDATE | DATE | The as-of date for the adjustment execution |
COMMENT | VARCHAR | The comment associated to the definition of the adjustment |
DEFINITIONID | VARCHAR | The definition ID |
EXECUTIONID | VARCHAR | The execution ID |
FILTERS | VARCHAR | The filters defined for the adjustment |
INPUT | VARCHAR | The input defined for the adjustment |
MEASURES | VARCHAR | The measures defined for the adjustment |
PROCESSINSTANCEID | VARCHAR | The process instance ID linked to the adjustment |
REASON | VARCHAR | The reason defined for the adjustment |
SERVERNAME | VARCHAR | The name of the application server to which the process instance is related. Used to generate the URLs for calls to RESTful services in the application server |
STATUS | VARCHAR | The status of the adjustment execution |
TASK | VARCHAR | The task name associated to the adjustment |
TYPE | VARCHAR | The type of adjustment |
USER | VARCHAR | The ID of the user who created the adjustment |
Table name: PROCESSDEFINITION
A record of a process definition.
Column | Type | Description |
---|---|---|
ID | BIGINT | The database ID for the object version. |
LIVEFROM | TIMESTAMP | The beginning of live range for the object version. |
LIVETO | TIMESTAMP | The end of live range for object version (null if range has no end). |
VALIDFROM | DATE | Beginning date (inclusive) for which this definition object applies. |
VALIDTO | DATE | Ending date (exclusive) for which this definition object applies (may be null). |
CATEGORY | VARCHAR | The category of the sign-off process |
DESCRIPTION | VARCHAR | A free form description of the sign-off process definition. |
DOMAIN | VARCHAR | The cube name associated to the sign-off process definition |
FILTERS | VARCHAR | The list of filters that specify the data being signed-off. |
KPIS | VARCHAR | The KPIs defined in the sign-off process definition |
MEASURES | VARCHAR | The measures defined in the sign-off process definition |
NAME | VARCHAR | The name of the sign-off process definition |
SERVERNAME | VARCHAR | The name of the application server to which the process definition is related. Used to generate the URLs for calls to RESTful services in the application server. |
WORKFLOWPROPERTIES | VARCHAR | The list of configuration properties that can be used in the workflow process. These are available as variables to the process definition. Each property has the format name:value. |
WORKFLOWTYPE | VARCHAR | The alias for the Activiti workflow process definition that is used to manage the sign-off process. |
Table name: PROCESSINSTANCE
A record of a process instance.
Column | Type | Description |
---|---|---|
ID | BIGINT | The database ID for the object version. |
LIVEFROM | TIMESTAMP | The beginning of live range for the object version. |
LIVETO | TIMESTAMP | The end of live range for object version (null if range has no end). |
ASOFDATE | DATE | The as-of date for the sign-off process instance. |
COMMENT | VARCHAR | The comment entered by the user |
NAME | VARCHAR | The name of the process instance |
EXPORTSTATUSDETAILS | VARCHAR | The details of the export status, sent by the application server |
SERVERNAME | VARCHAR | The name of the application server to which the process definition is related. Used to generate the URLs for calls to RESTful services in the application server. |
STATUS | VARCHAR | The status of the process instance |
Audit-Log
Common fields
These fields are used for each type of audit-log entry
Column | Type | Description |
---|---|---|
ID | long | Database ID for audit log entry |
TIMESTAMP | timestamp | The timestamp of when the action took place |
KEY | timestamp | The key of the object being managed by the Activiti workflow process: * For sign-off process instance: name::as-of-date * For sign-off process definition:name::valid-from |
STATUS | date | The new status of the object within the workflow |
TYPE | date | The fully qualified java classname of the object |
USER | string | The user who performed the action |
PROCESSINSTANCEID | string | The Activiti process instance ID |
OBJECT | string | The JSON serialisation of the object |
COMMENT | string | An optional comment the user supplied alongside the action. |
Table name: USERRECORD
A record of a user completing a task within the Activiti workflow.
In addition to the columns listed in the common fields above:
Column | Type | Description |
---|---|---|
TASKID | string | The Activiti task ID (within the Activiti process instance) |
TASKNAME | string | The name of the task (within the Activiti process definition) |
ACTION | string | The action taken by the user (e.g. “Approve”, “Reject”) |
Table name: PROCESSRECORD
A record of a user starting an Activiti workflow process instance.
In addition to the columns listed in the common fields above:
Column | Type | Description |
---|---|---|
PROCESSDEFINITIONNAME | string | The Activiti process definition name |
Table name: ADJUSTMENTDEFINITIONENTITY
Contains the audit information for adjustment definitions.
In addition to the columns listed in the common fields above:
Column | Type | Description |
---|---|---|
KEY | VARCHAR | Key of the record |
TIMESTAMP | TIMESTAMP | Timestamp at which the record was created |
COMMENT | VARCHAR | Comment associated to the adjustment request |
OBJECT | CLOB | JSON representation of the audited object |
PROCESSINSTANCEID | VARCHAR | The process instance id to which the audit record is associated (set to “N/A” in this version of the Sign-Off Module) |
STATUS | VARCHAR | The status of the audited entry |
TYPE | VARCHAR | The String representing the Java class of the audit entry. For this table, the type is: “com.activeviam.signoff.core.model.adjustment.definition.dto.AuditableAdjustmentRequestDTO” |
USER | VARCHAR | The user performing the audited action |
DEFINITIONID | VARCHAR | The definition ID of the associated adjustment definition |
TASK | VARCHAR | The name of the associated sign-off process |
Table name: ADJUSTMENTREQUESTENTITY
Contains the audit information for adjustment requests.
In addition to the columns listed in the common fields above:
Column | Type | Description |
---|---|---|
KEY | VARCHAR | Key of the record |
TIMESTAMP | TIMESTAMP | Timestamp at which the record was created |
COMMENT | VARCHAR | Comment associated to the adjustment request |
OBJECT | CLOB | JSON representation of the audited object |
PROCESSINSTANCEID | VARCHAR | The process instance id to which the audit record is associated (set to “N/A” in this version of the Sign-Off Module) |
STATUS | VARCHAR | The status of the audited entry |
TYPE | VARCHAR | The String representing the Java class of the audit entry. For this table, the type is: “com.activeviam.signoff.core.model.adjustment.definition.dto.AuditableAdjustmentRequestDTO” |
USER | VARCHAR | The user performing the audited action |
DEFINITIONID | VARCHAR | The definition ID of the associated adjustment definition |
EXECUTIONID | VARCHAR | The execution ID of the adjustment request. This ID is generated on the application server side. |
TASK | VARCHAR | The name of the associated sign-off process definition |
TASKID | VARCHAR | The ID of the associated sign-off process instance |
Activiti
See the Activiti documentation for more information about this database schema.
https://www.activiti.org/documentation