Hi Suresh,
the behavior depicted below is expected: each user will continue to work
under the workflow definition version that he got when created (this is
by Activiti).
Regards.
On 18/10/2014 09:58, Suresh wrote:
hi,
updateApproval works even if approver role ids removed from
candidateGroups and new approver role ids added works only for new
users created
Test steps to reproduce the bug:
1. In the workflow xml, when approver candidate groups is updated to
include new role ids for claim / approval rights on createApproval /
updateApproval / deleteApproval and few existing role ids in the
candidate groups are deleted
3. The deleted approver role ids users continue to function on already
created users i.e. they are allowed to claim and approve
updateApproval requests for existing users in syncope.
4. The new approver role ids that were added works only on the new
users registered from the time these new approver role ids were
created. They cannot claim or approve updateApproval requests on
already existing users in syncope.
Below is the workflow xml before and after the change.
*Before:*
<userTask id="createApproval" name="Create approval"
activiti:candidateGroups="*100,150*" activiti:formKey="createApproval">
<extensionElements>
<activiti:formProperty id="username" name="Username"
type="string" expression="${syncopeUser.username}"
writable="false"></activiti:formProperty>
<activiti:formProperty id="approve" name="Approve?"
type="boolean" variable="approve" required="true"></activiti:formProperty>
<activiti:formProperty id="rejectReason" name="Reason for
rejecting" type="string" variable="rejectReason"></activiti:formProperty>
</extensionElements>
</userTask>
<userTask id="updateApproval" name="Update approval"
activiti:candidateGroups="*100,150*" activiti:formKey="updateApproval">
<extensionElements>
<activiti:formProperty id="username" name="Username"
type="string" expression="${syncopeUser.username}"
writable="false"></activiti:formProperty>
<activiti:formProperty id="approve" name="Approve?"
type="boolean" variable="approve" required="true"></activiti:formProperty>
<activiti:formProperty id="rejectReason" name="Reason for
rejecting" type="string" variable="rejectReason"></activiti:formProperty>
</extensionElements>
</userTask>
*After:*
<userTask id="createApproval" name="Create approval"
activiti:candidateGroups="*200,250*" activiti:formKey="createApproval">
<extensionElements>
<activiti:formProperty id="username" name="Username"
type="string" expression="${syncopeUser.username}"
writable="false"></activiti:formProperty>
<activiti:formProperty id="approve" name="Approve?"
type="boolean" variable="approve" required="true"></activiti:formProperty>
<activiti:formProperty id="rejectReason" name="Reason for
rejecting" type="string" variable="rejectReason"></activiti:formProperty>
</extensionElements>
</userTask>
<userTask id="updateApproval" name="Update approval"
activiti:candidateGroups="*200,250*" activiti:formKey="updateApproval">
<extensionElements>
<activiti:formProperty id="username" name="Username"
type="string" expression="${syncopeUser.username}"
writable="false"></activiti:formProperty>
<activiti:formProperty id="approve" name="Approve?"
type="boolean" variable="approve" required="true"></activiti:formProperty>
<activiti:formProperty id="rejectReason" name="Reason for
rejecting" type="string" variable="rejectReason"></activiti:formProperty>
</extensionElements>
</userTask>
Regards,
Suresh
______________________________________________________________________________
This mail has been scanned for viruses and spam.
______________________________________________________________________________
--
Francesco Chicchiriccò
Tirasa - Open Source Excellence
http://www.tirasa.net/
Involved at The Apache Software Foundation:
member, Syncope PMC chair, Cocoon PMC, Olingo PMC
http://people.apache.org/~ilgrosso/