Example 3 (2 Tasks with DQ checks)

The next example extends the previous example so that the tasks will only be created when the DQ check fails.

Diagram for example 3

images/download/attachments/400049166/SW_Example03.png

Product 360 prerequisites for example 3

Product 360 entity

value

Usergroup

Standardusers

Ui Template

Item approve UI

DQ Channel

Channel 1

DQ Channel

Channel 2

Explanation of the steps example 3

Step

Description

0

Check whether item is already in this workflow.

1

Run DQ check "Channel 1" if fail ==>put the item into the task "My task 1"

2

Run DQ check "Channel 2" if fail ==>put the item into the task "My task 2"

StepWorkflow.xml file for example 3

Example 3
<?xml version="1.0" encoding="UTF-8"?>
<imp:payload xmlns:imp="http://www.informatica.com/schema/ItemMap" contentType="string">
<workflow>
<label>Example Workflow 3</label>
<identifier>Workflow_03</identifier>
<version>1.0</version>
<step>
<id>0</id>
<entity>Article</entity>
<enterStatus>Never</enterStatus>
<batchSize>500</batchSize>
<executeDq>Always</executeDq>
<dqService>ItemsInWorkflowTasks-Process</dqService>
<dqFailStep>STEP:1</dqFailStep>
</step>
<step>
<id>1</id>
<entity>Article</entity>
<workflowStatus>My task 1</workflowStatus>
<description>My task 1</description>
<workflowServiceEndpoint>StepWorkflow-Trigger</workflowServiceEndpoint>
<enterStatus>OnDqResults</enterStatus>
<batchSize>500</batchSize>
<userType>userGroup</userType>
<userName>Standardusers</userName>
<uiTemplate>Item approve UI</uiTemplate>
<executeDq>Always</executeDq>
<dqService>ExecuteDqBatch-Process</dqService>
<dqChannel>Channel 1</dqChannel>
<nextStep>STEP:2</nextStep>
</step>
<step>
<id>2</id>
<entity>Article</entity>
<workflowStatus>My task 2</workflowStatus>
<description>My task 2</description>
<workflowServiceEndpoint>StepWorkflow-Trigger</workflowServiceEndpoint>
<enterStatus>OnDqResults</enterStatus>
<batchSize>500</batchSize>
<userType>userGroup</userType>
<userName>Standardusers</userName>
<uiTemplate>Item approve UI</uiTemplate>
<executeDq>Always</executeDq>
<dqService>ExecuteDqBatch-Process</dqService>
<dqChannel>Channel 2</dqChannel>
</step>
</workflow>
</imp:payload>

Detailed explanation of the steps

Only the differences to the previous example will be explained.

Step 0

Step 0 is an exact copy of the step 0 of the example 2.

Step 1

Step 1 is nearly the same as the step 1 of example 2. Only the differences are shown in the next table.

Key

Value

Description

...

...

Same keys and values than in example 2.

enterStatus

OnDqResults

The circumstances when an item should enter a status (task). In this case only when DQ check will fail!

executeDq

Always

The circumstances when a DQ should be run. In this case always!

dqService

ExecuteDqBatch-Process

The service name of the process that will be handle the processing of the dq.

dqChannel

Channel 1

Name of the DQ channel which will be executed.

Step 2

Step 2 is nearly the same as the step 1 of the example above.

Only the differences are shown in the next table.

Key

Value

Description

...

...

Same keys and values than in example 2.

enterStatus

OnDqResults

The circumstances when an item should enter a status (task). In this case only when DQ check will fail!

executeDq

Always

The circumstances when a DQ should be run. In this case always!

dqService

ExecuteDqBatch-Process

The service name of the process that will be handle the processing of the DQ.

dqChannel

Channel 2

Name of the DQ channel which will be executed.