Documentum Workflow Overview
Documentum Workflow Overview
Task details from a user's inbox in Documentum can be retrieved using DQL queries or through the Administrative Method GET_INBOX. A specific query example is: SELECT name, task_name FROM dmi_queue_item INBOX, dmi_package PACKAGE, dm_document DOC WHERE DOC.object_name = 'queries.txt' AND any PACKAGE.r_component_id = DOC.r_object_id AND INBOX.router_id = PACKAGE.r_workflow_id AND INBOX.delete_flag = 0. Additionally, invoking EXECUTE GET_INBOX with a specified user's name will return the respective task details .
In a Documentum Workflow, Manual Activities are performed by a Performer or a User, usually appearing as tasks in their inbox. In contrast, Automatic Activities, known as Auto-Activities, are performed by a program on behalf of a user using the user's session. The programs for Auto-Activities must follow guidelines, specifically implementing IDmMethod or WorkflowMethod interfaces to execute or use doTask methods. These programs are configured as workflow methods with their 'a_special_app' property set to 'Workflow'. They can be created using DAB or DA + DQL. Activities are linked through flows, and Manual activities have packages that can include attached objects .
In Documentum, dm_workflow represents the running instance of a workflow. A dmi_queue_item represents manual activities as tasks within an inbox. The dmi_package is associated with a workflow as the package carrying attachments. The dm_sysobject refers to documents that are attached to workflows. Their relationship is structured such that the document (dm_sysobject) is attached to a package (dmi_package), which is then associated with a flow in the workflow process (dm_workflow). The workflow-related activity (dmi_queue_item) facilitates linking these components through object IDs and routing information .
A Reject Flow in a Documentum Workflow is utilized in scenarios where a part of the process needs to allow for conditional recourse or rejection of tasks, creating an alternative path if the regular criteria are not met. Represented by a red line in a Workflow Template, it automatically generates a Reject button in tasks assigned to users' inboxes, enabling users to reject the workflow item and trigger associated Reject Flow actions .
Packages in a Documentum Workflow specify object types whose objects can be attached as attachments within the package. These are mandatory for Flows, as they must have at least one associated Package. The role of Packages is significant in linking activities within a workflow since they serve as a form of content carrier across different activities. While normal Flows require packages, the ending flow is an exception and does not have any associated package .
Documentum ensures compliance in the execution of Auto-Activities by requiring that the programs performing these activities implement standard interfaces such as IDmMethod or WorkflowMethod. This requirement mandates the implementation of specific methods like execute or doTask, which define and standardize how automatic tasks are carried out. Furthermore, these programs must be appropriately configured with the 'a_special_app' property set to 'Workflow', ensuring they are recognized and managed correctly within the Documentum framework .
Linking activities through flows in Documentum Workflows is essential because flows provide the operational path that sequences and connects various activities within the process. This linkage ensures that the workflow executes in a structured manner, allowing for conditional branching, like Reject Flows, and the orderly transition of tasks through user and automated activities. Properly linked activities through flows ensure comprehensive process coverage, maintaining process integrity and synchronization across the workflow's execution stages .
The idm_method and WorkflowMethod interfaces are crucial for executing Automatic Activities within Documentum Workflows, as they provide the necessary framework for implementing programs that perform automated tasks in workflows. These interfaces ensure standardization and proper execution by mandating the implementation of execute or doTask methods, which are essential for carrying out tasks programmatically within a workflow process. Programs adhering to these interfaces can be configured using the workflow method setup, supporting seamless integration and execution of automatic tasks .
In Documentum, dm_process plays the role of defining the workflow template or definition, outlining the overall workflow structure and its objectives. dm_activity represents the individual activities that constitute the workflow template, detailing the tasks, whether manual or automatic, that must be performed as part of the business process. Together, dm_process and dm_activity provide a framework for creating and managing workflows .
The query to find out which documents are attached to a user's inbox as part of a workflow is: SELECT DOC.r_object_id, DOC.object_name FROM dm_document DOC, dmi_package PACKAGE, dmi_queue_item INBOX WHERE INBOX.name = 'Uttkarsh' AND INBOX.router_id = PACKAGE.r_workflow_id AND any PACKAGE.r_component_id = DOC.r_object_id AND INBOX.delete_flag = 0. This query links documents with packages and user inboxes based on routing IDs .


