how can i start a process with activiti-app
1、i running activiti-app successful and i created a process
2、i assigned some users in this process
here is my users and there group:
3、then i want to start this process.
but when i visit the task app
i can’t see any process in the window
what should i do ?
i saw a old video about activiti 5 , there is a button named "start process" but i can't find it at activiti 6
Solved! Go to Solution.
I see, you want to capture intersection but listing groups gives you a union. In that case you could dynamically determine the set of users to be assignees using a piece of logic (as discussed in CandidateUsers from java code in BPMN or Dynamic assignment ). Or if it fits your case you could create groups that represent the intersections and use those.
I think maybe you've not published your process. As it happens baeldung has just recently released a new article illustrating this - http://www.baeldung.com/activiti-kickstart-and-rest-apps
Hi,
If you go throw Task App you have to click on Start after that to see your processes which you want to start.
Or you can simply deploy your App first by clicking on the + near the Identity Management
thank's for everyone's help O(∩_∩)O
I saw my processes and start it successful after published my process with one new app.
but there is a new problem happened :
i can't assign a task to a group of users, because there are two or three condition i have to choice
i use this img to description my problem ,
i have four groups : boy girl school home
most users belong to two group,such as MARY:
she belongs to girl group and home group
so i need MARY to complete first user task.
i don't know if i description my problem clearly %>_<%
I wish to express my sincere appreciation for everyone's help O(∩_∩)O
Do you mean that you want to restict the candidate for each of these user task so that the first user task has to be completed by a girl-home (i.e. any user who is both a member of both girl and home) and the second task to be completed by a girl-school user? If so I think you'd want to set candidate groups on the userTask - e.g. activiti:candidateGroups="girl, home". But I'm not 100% sure from your description whether you're talking about using groups to assign tasks or if you instead need one instance of a process for each user.
thank you for your replay
your's understand is right:
the first user task has to be completed by a girl-home (i.e. any user who is both a member of both girl and home) and the second task to be completed by a girl-school user
if i write
<userTask id="sid-54913B9F-9FA6-4A97-A6CB-5FF0D5F29F90" name="school and girl" activiti:candidateGroups="girl,school"></userTask>
any user who is a member of girl or home can claim this task
but i only need user who is both a member of both girl and home.
look at img :
and here is my wrong flow 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" xmlnsmgdc="http://www.omg.org/spec/DD/20100524/DC" xmlnsmgdi="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">
<process id="gglimit" name="gglimit" isExecutable="true">
<startEvent id="startEvent1"></startEvent>
<userTask id="sid-8DCB5D6C-FD30-4DE1-894D-CE314A9EFE13" name="home and girl" activiti:candidateGroups="home,girl"></userTask>
<sequenceFlow id="sid-60CC70FA-B293-4855-92D4-BBE8B41263F0" sourceRef="startEvent1" targetRef="sid-8DCB5D6C-FD30-4DE1-894D-CE314A9EFE13"></sequenceFlow>
<userTask id="sid-54913B9F-9FA6-4A97-A6CB-5FF0D5F29F90" name="school and girl" activiti:candidateGroups="girl,school"></userTask>
<sequenceFlow id="sid-894F6D73-3C2E-4F24-B8A3-9B4256D0EF2B" sourceRef="sid-8DCB5D6C-FD30-4DE1-894D-CE314A9EFE13" targetRef="sid-54913B9F-9FA6-4A97-A6CB-5FF0D5F29F90"></sequenceFlow>
<endEvent id="sid-6F8AB7AF-0F1C-4893-860B-0A10942A0574"></endEvent>
<sequenceFlow id="sid-62029DCD-8FC4-470D-814B-078690B13466" sourceRef="sid-54913B9F-9FA6-4A97-A6CB-5FF0D5F29F90" targetRef="sid-6F8AB7AF-0F1C-4893-860B-0A10942A0574"></sequenceFlow>
</process>
<bpmndi:BPMNDiagram id="BPMNDiagram_gglimit">
<bpmndi:BPMNPlane bpmnElement="gglimit" id="BPMNPlane_gglimit">
<bpmndi:BPMNShape bpmnElement="startEvent1" id="BPMNShape_startEvent1">
<omgdc:Bounds height="30.0" width="30.0" x="100.0" y="163.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="sid-8DCB5D6C-FD30-4DE1-894D-CE314A9EFE13" id="BPMNShape_sid-8DCB5D6C-FD30-4DE1-894D-CE314A9EFE13">
<omgdc:Bounds height="80.0" width="100.0" x="175.0" y="138.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="sid-54913B9F-9FA6-4A97-A6CB-5FF0D5F29F90" id="BPMNShape_sid-54913B9F-9FA6-4A97-A6CB-5FF0D5F29F90">
<omgdc:Bounds height="80.0" width="100.0" x="320.0" y="138.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="sid-6F8AB7AF-0F1C-4893-860B-0A10942A0574" id="BPMNShape_sid-6F8AB7AF-0F1C-4893-860B-0A10942A0574">
<omgdc:Bounds height="28.0" width="28.0" x="465.0" y="164.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge bpmnElement="sid-60CC70FA-B293-4855-92D4-BBE8B41263F0" id="BPMNEdge_sid-60CC70FA-B293-4855-92D4-BBE8B41263F0">
<omgdi:waypoint x="130.0" y="178.0"></omgdi:waypoint>
<omgdi:waypoint x="175.0" y="178.0"></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="sid-894F6D73-3C2E-4F24-B8A3-9B4256D0EF2B" id="BPMNEdge_sid-894F6D73-3C2E-4F24-B8A3-9B4256D0EF2B">
<omgdi:waypoint x="275.0" y="178.0"></omgdi:waypoint>
<omgdi:waypoint x="320.0" y="178.0"></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="sid-62029DCD-8FC4-470D-814B-078690B13466" id="BPMNEdge_sid-62029DCD-8FC4-470D-814B-078690B13466">
<omgdi:waypoint x="420.0" y="178.0"></omgdi:waypoint>
<omgdi:waypoint x="465.0" y="178.0"></omgdi:waypoint>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</definitions>
I see, you want to capture intersection but listing groups gives you a union. In that case you could dynamically determine the set of users to be assignees using a piece of logic (as discussed in CandidateUsers from java code in BPMN or Dynamic assignment ). Or if it fits your case you could create groups that represent the intersections and use those.
thank's for you help again.
i used rest method to handle progress . so i can't write too many java code to control activiti.
In my opinion ,intersection is just as important as the union.because i'm a fish man in activiti,i guess that ,we can assign task to union group ,it also can assign to intersection group.
Thank you very much whatever.
If you did follow the lead of CandidateUsers from java code in BPMN or How to assign alfresco activiti workflow task to intersection of two or more groups? - Stack Overflo... you'd be adding java logic for the engine to hook into. You wouldn't have to use the Java API to control the engine, it would be the engine using some Java. We're happy to discuss possible new features at Activiti/Activiti7 - Gitter
Ask for and offer help to other Alfresco Process Services and Activiti Users and members of the Alfresco team.
By using this site, you are agreeing to allow us to collect and use cookies as outlined in Alfresco’s Cookie Statement and Terms of Use (and you have a legitimate interest in Alfresco and our products, authorizing us to contact you in such methods). If you are not ok with these terms, please do not use this website.