callActivity with candidate group

cancel
Showing results for 
Search instead for 
Did you mean: 
kdevineni1
Active Member

callActivity with candidate group

I am trying to design a simple callactivity example.

 

MainProcess --> Task1-->CallActivity(SubProcess)-->Task2-->End

SubProcessA->SubTask1-->SubTask2

 

For all Tasks MainProcess and SubProcess , I have set Candidate groups(TEST group).

 

calling callActivity (SubprocessA) only works if I set to the SubTask1 to "single user" or "process initiator". otherwise after completing Task1, workflow is active but the Subprocess SubTask1  wouldn't appear.

I need to get the SubProcess tasks work using candidate groups.

Please advice.

Attached the workflow bpmn files below.

 

 

bpmn-models\MainProcess-1.bpmn20.xml

<?xml version='1.0' encoding='UTF-8'?>
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/processdef" xmlns:modeler="http://activiti.com/modeler" modeler:version="1.0en" modeler:exportDateTime="20210428152812674" modeler:modelId="1" modeler:modelVersion="10" modeler:modelLastUpdated="1619637911690">
  <process id="MainProcess" name="MainProcess" isExecutable="true">
    <startEvent id="startEvent1">
      <extensionElements>
        <modeler:editor-resource-id><![CDATA[startEvent1]]></modeler:editor-resource-id>
      </extensionElements>
    </startEvent>
    <userTask id="Task1" name="Task1" activiti:candidateGroups="1001">
      <extensionElements>
        <modeler:allow-send-email><![CDATA[true]]></modeler:allow-send-email>
        <modeler:group-info-name-1001><![CDATA[TEST]]></modeler:group-info-name-1001>
        <modeler:activiti-idm-candidate-group><![CDATA[true]]></modeler:activiti-idm-candidate-group>
        <modeler:initiator-can-complete><![CDATA[false]]></modeler:initiator-can-complete>
        <modeler:editor-resource-id><![CDATA[sid-D77F4C6A-1F94-4637-99D4-3A2ACA3B3F3D]]></modeler:editor-resource-id>
      </extensionElements>
    </userTask>
    <sequenceFlow id="sid-A510F45A-3F73-49E4-BAC9-084F0716D316" sourceRef="startEvent1" targetRef="Task1">
      <extensionElements>
        <modeler:editor-resource-id><![CDATA[sid-A510F45A-3F73-49E4-BAC9-084F0716D316]]></modeler:editor-resource-id>
      </extensionElements>
    </sequenceFlow>
    <callActivity id="SubProcess" name="SubProcess" calledElement="SubProcess" activiti:inheritVariables="false">
      <extensionElements>
        <modeler:editor-resource-id><![CDATA[sid-B941DFE0-17C0-43A8-A0CF-B6322F464284]]></modeler:editor-resource-id>
      </extensionElements>
    </callActivity>
    <userTask id="Task2" name="Task2" activiti:candidateGroups="1001">
      <extensionElements>
        <modeler:allow-send-email><![CDATA[true]]></modeler:allow-send-email>
        <modeler:group-info-name-1001><![CDATA[TEST]]></modeler:group-info-name-1001>
        <modeler:activiti-idm-candidate-group><![CDATA[true]]></modeler:activiti-idm-candidate-group>
        <modeler:initiator-can-complete><![CDATA[false]]></modeler:initiator-can-complete>
        <modeler:editor-resource-id><![CDATA[sid-0FDA5836-4BDD-4BFB-8EC5-EA83897394CE]]></modeler:editor-resource-id>
      </extensionElements>
    </userTask>
    <sequenceFlow id="sid-0EBD3BE8-989C-4BAB-87B8-4F35A983C5B1" sourceRef="SubProcess" targetRef="Task2">
      <extensionElements>
        <modeler:editor-resource-id><![CDATA[sid-0EBD3BE8-989C-4BAB-87B8-4F35A983C5B1]]></modeler:editor-resource-id>
      </extensionElements>
    </sequenceFlow>
    <endEvent id="sid-09ACF9DE-0C09-4A93-821B-77B78ECDFEF9">
      <extensionElements>
        <modeler:editor-resource-id><![CDATA[sid-09ACF9DE-0C09-4A93-821B-77B78ECDFEF9]]></modeler:editor-resource-id>
      </extensionElements>
    </endEvent>
    <sequenceFlow id="sid-263DB9FF-3B89-4DBC-A9B6-BF03AA29CB59" sourceRef="Task2" targetRef="sid-09ACF9DE-0C09-4A93-821B-77B78ECDFEF9">
      <extensionElements>
        <modeler:editor-resource-id><![CDATA[sid-263DB9FF-3B89-4DBC-A9B6-BF03AA29CB59]]></modeler:editor-resource-id>
      </extensionElements>
    </sequenceFlow>
    <sequenceFlow id="sid-E0F1BD41-20EF-41D1-AF3F-D1AE1991914D" sourceRef="Task1" targetRef="SubProcess">
      <extensionElements>
        <modeler:editor-resource-id><![CDATA[sid-E0F1BD41-20EF-41D1-AF3F-D1AE1991914D]]></modeler:editor-resource-id>
      </extensionElements>
    </sequenceFlow>
  </process>

</definitions>

 

 

bpmn-models\SubProcess-2.bpmn20.xml

<?xml version='1.0' encoding='UTF-8'?>
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/processdef" xmlns:modeler="http://activiti.com/modeler" modeler:version="1.0en" modeler:exportDateTime="20210428152812691" modeler:modelId="2" modeler:modelVersion="10" modeler:modelLastUpdated="1619637911824">
  <process id="SubProcess" name="SubProcess" isExecutable="true">
    <startEvent id="startEvent1">
      <extensionElements>
        <modeler:editor-resource-id><![CDATA[startEvent1]]></modeler:editor-resource-id>
      </extensionElements>
    </startEvent>
    <userTask id="SubTask1" name="SubTask1" activiti:candidateGroups="1001">
      <extensionElements>
        <modeler:allow-send-email><![CDATA[true]]></modeler:allow-send-email>
        <modeler:group-info-name-1001><![CDATA[TEST]]></modeler:group-info-name-1001>
        <modeler:activiti-idm-candidate-group><![CDATA[true]]></modeler:activiti-idm-candidate-group>
        <modeler:initiator-can-complete><![CDATA[false]]></modeler:initiator-can-complete>
        <modeler:editor-resource-id><![CDATA[sid-EBED9680-B98D-4597-9C48-2984895D77FB]]></modeler:editor-resource-id>
      </extensionElements>
    </userTask>
    <sequenceFlow id="sid-7BC990C1-BBAF-41E4-8984-2ECF77C3BE02" sourceRef="startEvent1" targetRef="SubTask1">
      <extensionElements>
        <modeler:editor-resource-id><![CDATA[sid-7BC990C1-BBAF-41E4-8984-2ECF77C3BE02]]></modeler:editor-resource-id>
      </extensionElements>
    </sequenceFlow>
    <userTask id="SubTask2" name="SubTask2" activiti:candidateGroups="1001">
      <extensionElements>
        <modeler:allow-send-email><![CDATA[true]]></modeler:allow-send-email>
        <modeler:group-info-name-1001><![CDATA[TEST]]></modeler:group-info-name-1001>
        <modeler:activiti-idm-candidate-group><![CDATA[true]]></modeler:activiti-idm-candidate-group>
        <modeler:initiator-can-complete><![CDATA[false]]></modeler:initiator-can-complete>
        <modeler:editor-resource-id><![CDATA[sid-DC0C3744-F122-4BB3-B7CA-DB58792A2CA0]]></modeler:editor-resource-id>
      </extensionElements>
    </userTask>
    <sequenceFlow id="sid-F2BD35DD-03C0-454E-99EA-11C86F1E2734" sourceRef="SubTask1" targetRef="SubTask2">
      <extensionElements>
        <modeler:editor-resource-id><![CDATA[sid-F2BD35DD-03C0-454E-99EA-11C86F1E2734]]></modeler:editor-resource-id>
      </extensionElements>
    </sequenceFlow>
    <endEvent id="sid-E5D28595-C496-4A0B-94B5-81C23847F12D">
      <extensionElements>
        <modeler:editor-resource-id><![CDATA[sid-E5D28595-C496-4A0B-94B5-81C23847F12D]]></modeler:editor-resource-id>
      </extensionElements>
    </endEvent>
    <sequenceFlow id="sid-149B951A-25A6-4272-97D6-FF5459B0278F" sourceRef="SubTask2" targetRef="sid-E5D28595-C496-4A0B-94B5-81C23847F12D">
      <extensionElements>
        <modeler:editor-resource-id><![CDATA[sid-149B951A-25A6-4272-97D6-FF5459B0278F]]></modeler:editor-resource-id>
      </extensionElements>
    </sequenceFlow>
  </process>

</definitions>
1 Reply
Damir-Kovacevic
Active Member

Re: callActivity with candidate group

Hello,

I try your main and subproces in activiti 6.0. Please provide more information for example:

You put your TEST group on task in Assignment but in section Identity store in Candidate groups.

Did you create TEST group in activiti-app application in Identity Management section. I created TEST group in activiti-app application.

Which API metod do you use to get tasks. I propose to look into activiti-admin application.

There you can find process instance and when you go in, you will see tab "Tasks" and you should click on task to get tab "Identity links". There you will see Group ID not Group name. My group has ID 1001. I use groupsListString.add("1001"); and API method taskQuery.taskCandidateGroupIn(groupsListString); and got task "SubTask1" in my angular app.