Click HERE to see how Saviynt Intelligence is transforming the industry. |
01/03/2024 06:00 AM
We are facing an issue in workflow. Once the manager and entitlement owner approve the request idea it should create a task but instead of creating a task it is going under reject mode.
Note: - it is in reject mode but approved by manager and entitlement owner.
Here's the XML code for workflow.
<?xml version="1.0" encoding="UTF-8"?>
<process key="CyberArk AddAccess_Manager and Group Owner" name="CyberArk AddAccess_Manager and Group Owner" xmlns="http://jbpm.org/4.4/jpdl">
<start name="Start">
<transition to="foreachAccessRequest"/>
</start>
<foreach in="#{RequestAccessKeys}" name="foreachAccessRequest" var="requestaccesskey">
<transition to="Manager Approval"/>
</foreach>
<task name="Manager Approval">
<assignment-handler class="com.saviynt.workflowmgt.managerAssignmentHandler">
<field name="removeitemcf">
<string value="true"/>
</field>
<field name="mitigatingControlRisk">
<string value="[]"/>
</field>
</assignment-handler>
<transition name="Esclated By Manager Approval" to="SecondLManager">
<timer duedate="5 days"/>
</transition>
<transition name="Approved By Manager Approval" to="EntOwnerApproval"/>
<transition name="Rejected By Manager Approval" to="ManagerReject"/>
<on event="start">
<event-listener class="com.saviynt.workflowmgt.JBPMTaskEventListner">
<field name="msg">
<string value="Manager Approval Required (Manager)"/>
</field>
<field name="nottemplate2">
<string value="Submitted to Manager (Requestor)"/>
</field>
</event-listener>
</on>
<on event="end">
<event-listener class="com.saviynt.workflowmgt.JBPMTaskEventListner">
<field name="msg">
<string value="null"/>
</field>
</event-listener>
</on>
<reminder duedate="2 day" repeat="2 day">
<text><![CDATA[
#{requestaccesskey}__Reminder - Manager approval required__Manager Approval
]]></text>
</reminder>
</task>
<task name="EntOwnerApproval">
<assignment-handler class="com.saviynt.workflowmgt.RoleOwnerAssignHandlerRank1ApprByOne">
<field name="mitigatingControlRisk">
<string value="[]"/>
</field>
</assignment-handler>
<transition name="Esclated By EntOwnerApproval" to="ITInfraManager">
<timer duedate="5 days"/>
</transition>
<on event="start">
<event-listener class="com.saviynt.workflowmgt.JBPMTaskEventListner">
<field name="msg">
<string value="Group Owner Approval Required (Owner)"/>
</field>
<field name="nottemplate2">
<string value="Manager Approved-Submitted to Owner (Requestor)"/>
</field>
</event-listener>
</on>
<on event="end">
<event-listener class="com.saviynt.workflowmgt.JBPMTaskEventListner">
<field name="msg">
<string value="null"/>
</field>
</event-listener>
</on>
<reminder duedate="2 day" repeat="2 day">
<text><![CDATA[
#{requestaccesskey}__Reminder - Group Owner approval required__EntOwnerApproval
]]></text>
</reminder>
<transition name="Approved By EntOwnerApproval" to="AccessApproved"/>
<transition name="Rejected By EntOwnerApproval" to="AccessRejected"/>
</task>
<java class="com.saviynt.workflowmgt.rejectaccess"
method="denyAccess" name="ManagerReject">
<arg>
<object expr="#{requestaccesskey}"/>
</arg>
<arg>
<object expr="Manager Rejected (Requestor)___ManagerReject"/>
</arg>
<transition to="All Approvals Complete Check"/>
</java>
<task name="SecondLManager">
<assignment-handler class="com.saviynt.workflowmgt.ArsCustomAssignmentHandler">
<field name="fieldname">
<string value="CustomQuery___select mm.userkey from users u, users m, users mm where u.userkey = ${user.id} and u.manager = m.userkey and m.manager = mm.userkey___Any Owner Approval Required"/>
</field>
<field name="mitigatingControlRisk">
<string value="[]"/>
</field>
</assignment-handler>
<transition name="Approved By SecondLManager" to="EntOwnerApproval"/>
<transition name="Rejected By SecondLManager" to="SecondLMAnagerReject"/>
<on event="start">
<event-listener class="com.saviynt.workflowmgt.JBPMTaskEventListner">
<field name="msg">
<string value="Second Level Manager Approval Required"/>
</field>
<field name="nottemplate2">
<string value="Submitted to Second Level Manager (Requestor)"/>
</field>
</event-listener>
</on>
<on event="end">
<event-listener class="com.saviynt.workflowmgt.JBPMTaskEventListner">
<field name="msg">
<string value="null"/>
</field>
</event-listener>
</on>
<reminder duedate="2 day" repeat="2 day">
<text><![CDATA[
#{requestaccesskey}__Reminder - Second Level Manager Action Required__SecondLManager
]]></text>
</reminder>
</task>
<java class="com.saviynt.workflowmgt.rejectaccess"
method="denyAccess" name="SecondLMAnagerReject">
<arg>
<object expr="#{requestaccesskey}"/>
</arg>
<arg>
<object expr="Second Level Manager Rejected the access (Requestor)___SecondLMAnagerReject"/>
</arg>
<transition to="All Approvals Complete Check"/>
</java>
<java class="com.saviynt.workflowmgt.rejectaccess"
method="denyAccess" name="AccessRejected">
<arg>
<object expr="#{requestaccesskey}"/>
</arg>
<arg>
<object expr="Owner Rejected (Requestor)___AccessRejected"/>
</arg>
<transition to="All Approvals Complete Check"/>
</java>
<task name="ITInfraManager">
<assignment-handler class="com.saviynt.workflowmgt.ArsCustomAssignmentHandler">
<field name="fieldname">
<string value="USERNAME___McFarlane@sigplc.com___Any Owner Approval Required"/>
</field>
<field name="mitigatingControlRisk">
<string value="[]"/>
</field>
</assignment-handler>
<transition name="Approved By ITInfraManager" to="AccessApproved"/>
<transition name="Rejected By ITInfraManager" to="ITInfraManagerRejected"/>
<on event="start">
<event-listener class="com.saviynt.workflowmgt.JBPMTaskEventListner">
<field name="msg">
<string value="IT infrastructure manager action required(approver)"/>
</field>
<field name="nottemplate2">
<string value="Submitted to IT Infrastructure manager (Requestor)"/>
</field>
</event-listener>
</on>
<on event="end">
<event-listener class="com.saviynt.workflowmgt.JBPMTaskEventListner">
<field name="msg">
<string value="null"/>
</field>
</event-listener>
</on>
<reminder duedate="2 day" repeat="2 day">
<text><![CDATA[
#{requestaccesskey}__Reminder - IT infrastructure Manager__ITInfraManager
]]></text>
</reminder>
</task>
<java class="com.saviynt.workflowmgt.rejectaccess"
method="denyAccess" name="ITInfraManagerRejected">
<arg>
<object expr="#{requestaccesskey}"/>
</arg>
<arg>
<object expr="IT Infrastructure manager Rejected (Requestor)___ITInfraManagerRejected"/>
</arg>
<transition to="All Approvals Complete Check"/>
</java>
<java class="com.saviynt.workflowmgt.grantaccess"
method="createAccess" name="AccessApproved">
<arg>
<object expr="#{requestaccesskey}"/>
</arg>
<arg>
<object expr="Group Owner Approved (Requestor)___AccessApproved"/>
</arg>
<transition to="All Approvals Complete Check"/>
</java>
<join multiplicity="#{quorum}" name="All Approvals Complete Check">
<transition to="End Request"/>
</join>
<java class="com.saviynt.workflowmgt.endrequest"
method="arsendrequest" name="End Request">
<arg>
<object expr="#{reqid}"/>
</arg>
<transition to="endRequest"/>
</java>
<end name="endRequest"/>
</process>
01/03/2024 08:18 AM
@vyadav : Did you build the WF using XML format or did you edit the content of XML after WF is built? If not then you can please share the screenshot of WF in GUI format?
01/03/2024 07:31 PM
change createAccess --> createAccessForApproved
01/03/2024 08:45 PM
Try checking this post : How to configure All Approval Workflow to create t... - Saviynt Forums - 28987
01/22/2024 10:30 AM
Sometimes it's happened seems the issue with UI ,just check the pending task are getting created or not ?