Workflow Step Evaluation Process

Managing Workflows 4-5

4.1.2.2.1 Companion File The companion file is a text file that maintains information

about the state of a revision in a workflow. It is only active for the life of the workflow. ■ The companion file keeps track of the steps that the revision has been through and maintains the current values of workflow variables. ■ Each revision in a workflow has a companion file, which exists as long as the revision remains in the workflow. When a revision is released from a workflow, the corresponding companion file is deleted. ■ Companion files are located in the DomainHomeucmcsdataworkflowstates directory. These files are in the HDA file format, and are named by Content ID for example, HR_004.hda. ■ Each companion file contains two sets of data: – The LocalData Properties section defines the Parent List and other workflow variables. – The WorkflowActionHistory ResultSet section contains a record of the steps, workflow actions, and users that have been involved in the revisions workflow history. Companion files are deleted when the content item is released from the workflow. To retain a companion file, add the IsSaveWfCompanionFiles configuration variable to yourconfigconfig.cfg file and set the parameter to TRUE. For more details, see the Oracle Fusion Middleware Idoc Script Reference Guide.

4.1.2.2.2 Keys The companion file uses keys to keep track of workflow variables. For

example, the following keys define the value of the EntryCount and Last Entry variables for an Editor step in a workflow called Marketing Brochures: EditorMarketing Brochures.entryCount=1 EditorMarketing Brochures.lastEntryTs={ts 2001-05-02 16:57:00}

4.1.2.2.3 Parent List The companion file maintains a parent list, which lists the sequence

of steps that the revision has been to, starting with the current step and working backward. The parent list is used to determine which step to return to when a file is rejected, when the last step of a workflow is finished, or when an error occurs. For example, the following parent list shows the Marketing Team, Editor, and Graphic Artist steps of the Marketing Brochures workflow: WfParentList=Marketing TeamMarketing BrochuresEditorMarketing BrochuresGraphic ArtistMarketing BrochurescontributionMarketing Brochures An asterisk in front of a step name in the parent list indicates a jump step.

4.1.3 Workflow Step Evaluation Process

When a revision enters a workflow step, it goes through the following process: 1. The entry script is evaluated. ■ The default entry script that keeps track of the entry count and last entry is updated. ■ Actions such as additional user notification are executed. ■ If the jump condition is met and a target step is defined, the revision jumps to another step. ■ If the jump condition is not met, reviewers for the current step are notified that the revision is ready for approval. 4-6 Application Administrators Guide for Content Server ■ To avoid infinite loops, the entry script of a previously visited step is ignored. The only exception to this is when the step has been restarted using the wfCurrentStep0 symbolic step. 2. When the required number of reviewers have approved the revision, the exit script is evaluated. ■ If there is no exit script, the revision goes to the next step in the workflow. ■ If an exit script jump condition is met and a target step is defined, the revision jumps to another step. 3. After the exit script is evaluated, the current action state the wfAction workflow variable is set. The following are the possible actions: ■ APPROVE ■ REJECT ■ CHECKIN ■ CONVERSION ■ META_UPDATE ■ TIMED_UPDATE ■ RESUBMIT 4. As a revision moves through the steps of a workflow, each step is added to the parent list. If the revision revisits a step, the parent list unwinds, or returns to the state it was in when the revision first visited that step. For example: 5. If a revision is rejected, the parent list is checked for the most recent ReviewerContributor step, and the revision goes to that step in the workflow. 6. When a revision completes the last step in a workflow, the parent list is checked for the most recent jump step with a defined return step. If a return step is found, the revision goes to that step. If there are no jump steps in the parent list, or none of the jump steps have a return step defined, the revision exits the workflow.

4.1.3.1 Status of Items in Workflows

Content items that are in a workflow can have the following statuses: Revision goes to: Parent list Step1 Step1 Step2 Step1Step2 Step3 Step1Step2Step3 Step2 Step1Step2 Status Criteria Workflow Basic Workflow EDIT The content item has been rejected and returned to the initial contribution step. The content item is in the initial contribution step, or the content item has been rejected and returned to the initial contribution step. REVIEW The content item is in the review process. The content item is in the review process. Managing Workflows 4-7

4.1.4 Workflow Participation