Understanding workflow data capture and integration
Who is this article for?
Users who want to learn more about the available integration options.
IT Administrator and System Administrator permissions are required for some steps.
Organizations often need to integrate external systems to automate workflows. A common query is how workflow data is stored, particularly in the WI_WorkflowInstance.WorkflowXMLContent table, and how external systems can input data into Quality Management.
This article explains the data flow, integration options, and best practices for data integrity.
1. Understanding data capture and integration
When a workflow is initiated in Quality Management, the system captures and stores data across several key tables.
1.1. Primary table
Th WI_WorkflowInstance table holds the core metadata of a workflow instance.
| Metadata | Description |
|---|---|
| Id | Unique identifier for the workflow instance. |
| Initiator | User identifier of the person who started the workflow. |
| StartDate | Timestamp of initiation. |
| WorkflowDefinitionId | Links to the workflow definition in WF_Workflows. |
| WorkflowXMLContent | Stores all field data in a single XML structure. |
| CurrentState | Tracks workflow status and history. |
| Active | |
| OriginalInitiatorId | |
| LastModifiedDate |
1.2. XML data structure
The WorkflowXMLContent column contains an XML document that encapsulates all field values.
For example:
<workflow>
<field id="726" fieldtype="Text">Test Workflow Instance 1</field>
<field id="727" fieldtype="DateTime">15/04/2025 12:00:00</field>
<field id="728" fieldtype="Text">step3 field value</field>
<field id="729" fieldtype="Document">
<value id="3653" revision="1">HomePage</value>
</field>
</workflow>1.3. Supporting tables
There are additional supporting tables:
WF_StateFields: Maps fields to workflow states.WF_States: Defines workflow steps.CF_CustomFields: Defines custom field metadata.
2. Integration options
2.1. API integration
Quality Management provides a Workflow API for any integration. However, full CRUD operations are not currently supported.
The API is suitable for general integration but not for specific workflows like procurement without further development.
2.2. Custom integration
For workflows like procurement, custom API development may be required.
This involves enhancement of existing controllers and should be coordinated with our Product Team.
3. Integration recommendations
Below are a few best practices to keep you on the right track:
- Use APIs where possible to ensure data integrity and system compatibility.
- Avoid direct DB manipulation unless explicitly approved and guided by Ideagen.
- Engage with Ideagen support early in the integration planning process.
- Schedule a technical call with the vendor and Ideagen teams to align on integration strategy.