08-06-2012 04:50 AM
08-06-2012 11:55 AM
08-07-2012 07:22 AM
08-07-2012 12:37 PM
08-08-2012 03:48 AM
For example I am having Multiple groups as Group1 to Group 10
Then In the Workflow I will choose few groups from available groups to Startworkflow.
Then the review Task should be Parallel for all selected groups, One of the pooled user from the each group will approve/reject the Task.
08-13-2012 02:00 PM
08-17-2012 03:07 AM
<node name="startreview">
<action class="org.alfresco.repo.workflow.jbpm.ForEachFork">
<foreach>#{bpm_groupAssignees}</foreach>
<var>groupreviewer</var>
</action>
<event type="node-enter">
<script>
<variable name="wf_approveCount" access="write" />
<expression>
wf_approveCount = 0;
</expression>
</script>
</event>
<transition name="review" to="review" />
</node>
<task-node name="review">
<task name="wf:reviewTask">
<assignment class="org.alfresco.repo.workflow.jbpm.AlfrescoAssignment">
<pooledactors>#{groupreviewer}</pooledactors>
</assignment>
<event type="task-create">
<script>
if (bpm_workflowDueDate != void) taskInstance.dueDate = bpm_workflowDueDate;
if (bpm_workflowPriority != void) taskInstance.priority = bpm_workflowPriority;
</script>
</event>
</task>
<transition name="approve" to="endreview">
<script>
<variable name="wf_approveCount" access="read,write" />
<expression>
wf_approveCount = wf_approveCount +1;
</expression>
</script>
</transition>
<transition name="reject" to="endreview" />
</task-node>
<startEvent id="start"
activiti:formKey="wf:submitGroupReviewTask" />
<sequenceFlow id='flow1'
sourceRef='start'
targetRef='reviewTask' />
<userTask id="reviewTask" name="Review Task"
activiti:formKey="wf:activitiReviewTask">
<extensionElements>
<activiti:taskListener event="create" class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener">
<activiti:field name="script">
<activiti:string>
if (typeof bpm_workflowDueDate != 'undefined') task.setVariable('bpm_dueDate', bpm_workflowDueDate);
if (typeof bpm_workflowPriority != 'undefined') task.priority = bpm_workflowPriority;
</activiti:string>
</activiti:field>
</activiti:taskListener>
<activiti:taskListener event="complete" class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener">
<activiti:field name="script">
<activiti:string>
execution.setVariable('wf_reviewOutcome', task.getVariable('wf_reviewOutcome'));
</activiti:string>
</activiti:field>
</activiti:taskListener>
</extensionElements>
<potentialOwner>
<resourceAssignmentExpression>
<formalExpression>${reviewAssignee.properties.authorityName}</formalExpression>
</resourceAssignmentExpression>
</potentialOwner>
<multiInstanceLoopCharacteristics isSequential="false">
<loopDataInputRef>bpm_groupAssignees</loopDataInputRef>
<inputDataItem name="reviewAssignee" />
</multiInstanceLoopCharacteristics>
</userTask>
11-14-2012 12:11 PM
11-15-2012 12:07 AM
Hi,
I want to create my own group Assignee ID. How can I do that?
Regards
Anand.
11-15-2012 04:24 AM
<?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: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/bpmn20">
<process id="Test7" name="Test 7">
<startEvent id="startevent1" name="Start" activiti:formKey="tst:start"></startEvent>
<userTask id="usertask1" name="Assign Task" activiti:assignee="${initiator.properties.userName}" activiti:formKey="tst:assignTask">
<extensionElements>
<activiti:taskListener event="create" class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener">
<activiti:field name="script">
<activiti:string>if (typeof bpm_workflowDueDate != 'undefined') task.dueDate = bpm_workflowDueDate;
if (typeof bpm_workflowPriority != 'undefined') task.priority = bpm_workflowPriority;
if (typeof bpm_comment != 'undefined') task.setVariable('bpm_comment', bpm_comment);</activiti:string>
</activiti:field>
</activiti:taskListener>
<activiti:taskListener event="complete" class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener">
<activiti:field name="script">
<activiti:string>execution.setVariable('bpm_comment', task.getVariable('bpm_comment'));
execution.setVariable('tst_brandID', tst_brandID);
execution.setVariable('tst_brandName', tst_brandName);
execution.setVariable('tst_dobc', tst_dobc);
execution.setVariable('tst_groupAssignee', task.getVariable('tst_groupAssignee'));</activiti:string>
</activiti:field>
</activiti:taskListener>
</extensionElements>
</userTask>
<userTask id="usertask2" name="Get Task" activiti:candidateGroups="${tst_groupAssignee.properties.authorityName}" activiti:formKey="tst:getTask"></userTask>
<endEvent id="endevent1" name="End"></endEvent>
<sequenceFlow id="flow1" name="" sourceRef="startevent1" targetRef="usertask1"></sequenceFlow>
<sequenceFlow id="flow2" name="" sourceRef="usertask1" targetRef="usertask2"></sequenceFlow>
<sequenceFlow id="flow3" name="" sourceRef="usertask2" targetRef="endevent1"></sequenceFlow>
</process>
<bpmndi:BPMNDiagram id="BPMNDiagram_Test7">
<bpmndi:BPMNPlane bpmnElement="Test7" id="BPMNPlane_Test7">
<bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
<omgdc:Bounds height="35" width="35" x="200" y="150"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="usertask1" id="BPMNShape_usertask1">
<omgdc:Bounds height="55" width="105" x="320" y="140"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="usertask2" id="BPMNShape_usertask2">
<omgdc:Bounds height="55" width="105" x="520" y="140"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
<omgdc:Bounds height="35" width="35" x="700" y="150"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1">
<omgdi:waypoint x="235" y="167"></omgdi:waypoint>
<omgdi:waypoint x="320" y="167"></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2">
<omgdi:waypoint x="425" y="167"></omgdi:waypoint>
<omgdi:waypoint x="520" y="167"></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3">
<omgdi:waypoint x="625" y="167"></omgdi:waypoint>
<omgdi:waypoint x="700" y="167"></omgdi:waypoint>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</definitions>
<?xml version="1.0" encoding="UTF-8"?>
<model name="tst:testModel" xmlns="http://www.alfresco.org/model/dictionary/1.0">
<imports>
<import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d" />
<import uri="http://www.alfresco.org/model/bpm/1.0" prefix="bpm" />
</imports>
<namespaces>
<namespace uri="http://www.infosys.com/tst/model/process/1.0"
prefix="tst" />
</namespaces>
<types>
<type name="tst:start">
<parent>bpm:startTask</parent>
<mandatory-aspects>
<aspect>tst:testProps</aspect>
</mandatory-aspects>
</type>
<type name="tst:assignTask">
<parent>bpm:workflowTask</parent>
<mandatory-aspects>
<aspect>tst:groupAssignee</aspect>
<aspect>tst:testProps</aspect>
</mandatory-aspects>
</type>
<type name="tst:getTask">
<parent>bpm:workflowTask</parent>
<mandatory-aspects>
<aspect>tst:testProps</aspect>
</mandatory-aspects>
</type>
</types>
<aspects>
<aspect name="tst:testProps">
<properties>
<property name="tst:brandID">
<type>d:text</type>
<mandatory>true</mandatory>
</property>
<property name="tst:brandName">
<type>d:text</type>
<mandatory>true</mandatory>
</property>
<property name="tst:dobc">
<type>d:date</type>
<mandatory>true</mandatory>
</property>
</properties>
</aspect>
<aspect name="tst:groupAssignee">
<associations>
<association name="tst:groupAssignee">
<source>
<mandatory>false</mandatory>
<many>false</many>
</source>
<target>
<class>cm:authorityContainer</class>
<mandatory>false</mandatory>
<many>false</many>
</target>
</association>
</associations>
</aspect>
</aspects>
</model>
<config evaluator="string-compare" condition="activiti$Test7">
<forms>
<form>
<field-visibility>
<show id="bpm:workflowDescription" />
<show id="bpm:workflowDueDate" />
<show id="bpm:workflowPriority" />
<show id="bpm:comment" />
<show id="tst:brandID"/>
<show id="tst:brandName"/>
<show id="tst:dobc" />
</field-visibility>
<appearance>
<set id="" appearance="title" label-id="workflow.set.general" />
<set id="info" appearance=""
template="/org/alfresco/components/form/2-column-set.ftl" />
<set id="work" appearance="title" label-id="workflow.set.work" />
<set id="other" appearance="title" label-id="workflow.set.other" />
<set id="response" appearance="title" label-id="workflow.set.response" />
<field id="bpm:workflowDescription" label-id="workflow.field.message">
<control template="/org/alfresco/components/form/controls/textarea.ftl">
<control-param name="style">width: 95%</control-param>
</control>
</field>
<field id="bpm:workflowDueDate" label-id="workflow.field.due"
set="info" />
<field id="bpm:workflowPriority" label-id="workflow.field.priority"
set="info">
<control
template="/org/alfresco/components/form/controls/workflow/priority.ftl" />
</field>
<field id="tst:brandID" label="Brand ID"/>
<field id="tst:brandName" label="Brand Name"/>
<field id="tst:dobc" label="Date of Brand Creation"/>
<field id="bpm:comment" label-id="workflow.field.comment"
set="response">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
</appearance>
</form>
</forms>
</config>
<config evaluator="task-type" condition="tst:assignTask">
<forms>
<form>
<field-visibility>
<show id="message" />
<show-id="tst:groupAssignee" />
<show id="bpm:comment" />
<show id="transitions" />
<show id="tst:brandID"/>
<show id="tst:brandName"/>
<show id="tst:dobc"/>
</field-visibility>
<appearance>
<set id="" appearance="title" label-id="workflow.set.general" />
<set id="info" appearance=""
template="/org/alfresco/components/form/2-column-set.ftl" />
<set id="groupAssignee" appearance="title" label-id="workflow.set.assignee" />
<set id="work" appearance="title" label-id="workflow.set.work" />
<set id="other" appearance="title" label-id="workflow.set.other" />
<set id="response" appearance="title" label-id="workflow.set.response" />
<field id="message" label-id="workflow.field.message">
<control template="/org/alfresco/components/form/controls/info.ftl" />
</field>
<field id="tst:brandID" label="Brand ID"/>
<field id="tst:brandName" label="Brand Name"/>
<field id="tst:dobc" label="Date of Brand Creation"/>
<field id="tst:groupAssignee" label-id="workflow.field.assign_to"
set="groupAssignee" />
<field id="bpm:comment" label-id="workflow.field.comment"
set="response">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="transitions" set="response" />
</appearance>
</form>
</forms>
</config>
<config evaluator="task-type" condition="tst:getTask">
<forms>
<form>
<field-visibility>
<show id="message" />
<show id="bpm:comment" />
<show id="transitions" />
<show id="tst:brandID"/>
<show id="tst:brandName"/>
<show id="tst:dobc"/>
</field-visibility>
<appearance>
<set id="" appearance="title" label-id="workflow.set.general" />
<set id="info" appearance=""
template="/org/alfresco/components/form/2-column-set.ftl" />
<set id="work" appearance="title" label-id="workflow.set.work" />
<set id="other" appearance="title" label-id="workflow.set.other" />
<set id="response" appearance="title" label-id="workflow.set.response" />
<field id="message" label-id="workflow.field.message">
<control template="/org/alfresco/components/form/controls/info.ftl" />
</field>
<field id="tst:brandID" label="Brand ID"/>
<field id="tst:brandName" label="Brand Name"/>
<field id="tst:dobc" label="Date of Brand Creation"/>
<field id="bpm:comment" label-id="workflow.field.comment"
set="response">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="transitions" set="response" />
</appearance>
</form>
</forms>
</config>
Nov 15, 2012 2:14:25 PM org.apache.catalina.startup.SetContextPropertiesRule begin
WARNING: [SetContextPropertiesRule]{Context} Setting property 'debug' to '0' did not find a matching property.
Nov 15, 2012 2:14:51 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive C:\Alfresco\tomcat\webapps\alfresco.war
Nov 15, 2012 2:15:29 PM org.apache.catalina.core.StandardContext addApplicationListener
INFO: The listener "org.apache.myfaces.webapp.StartupServletContextListener" is already configured for this context. The duplicate definition has been ignored.
Nov 15, 2012 2:18:21 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Error listenerStart
Nov 15, 2012 2:18:21 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Context [/alfresco] startup failed due to previous errors
Nov 15, 2012 2:18:22 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
Nov 15, 2012 2:45:00 PM org.apache.catalina.loader.WebappClassLoader loadClass
INFO: Illegal access: this web application instance has been stopped already. Could not load org.bouncycastle.jce.provider.symmetric.AES$ECB. The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
java.lang.IllegalStateException
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1600)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
at java.security.Provider$Service.getImplClass(Provider.java:1279)
at java.security.Provider$Service.newInstance(Provider.java:1237)
at javax.crypto.Cipher.chooseProvider(Cipher.java:845)
at javax.crypto.Cipher.init(Cipher.java:1348)
at sun.security.ssl.CipherBox.<init>(CipherBox.java:175)
at sun.security.ssl.CipherBox.newCipherBox(CipherBox.java:208)
at sun.security.ssl.CipherSuite$BulkCipher.newCipher(CipherSuite.java:467)
at sun.security.ssl.CipherSuite$BulkCipher.isAvailable(CipherSuite.java:507)
at sun.security.ssl.CipherSuite$BulkCipher.isAvailable(CipherSuite.java:485)
at sun.security.ssl.CipherSuite.isAvailable(CipherSuite.java:190)
at sun.security.ssl.SSLContextImpl.getApplicableCipherSuiteList(SSLContextImpl.java:342)
at sun.security.ssl.SSLContextImpl.getDefaultCipherSuiteList(SSLContextImpl.java:293)
at sun.security.ssl.SSLSocketImpl.init(SSLSocketImpl.java:576)
at sun.security.ssl.SSLSocketImpl.<init>(SSLSocketImpl.java:494)
at sun.security.ssl.SSLServerSocketImpl.accept(SSLServerSocketImpl.java:313)
at org.apache.tomcat.util.net.jsse.JSSESocketFactory.acceptSocket(JSSESocketFactory.java:182)
at org.apache.tomcat.util.net.JIoEndpoint$Acceptor.run(JIoEndpoint.java:216)
at java.lang.Thread.run(Thread.java:722)
Tags
Find what you came for
We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.