<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
span.EstiloDeEmail19
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 3.0cm 70.85pt 3.0cm;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="PT-BR" link="#0563C1" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal">Hi everyone!<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span lang="EN-US">I tried to solve the problem below, implementing the "escalate" flow, so that when there were no approvers (outcomeIfNoApprovers), it was directed to escalate. I believe I didn't understand how the flow works, or I couldn't
 implement it correctly. Below is how it was implemented. If anyone can help, or if you've had a similar issue. I saw in the examples the use of escalation via Policy Rule (in systemConfiguration), but I confess that it was not clear to me if it would solve
 my case or if it's just so that we can make the application globally in midPoint. Thanks in advance for your support and help.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><inducement id="10"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">    <policyRule><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">        <name>Approval flow</name><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">        <policyConstraints><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">            <assignment id="11"/><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">        </policyConstraints><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">        <policyActions><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">            <approval id="12"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                <compositionStrategy><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                    <order>10</order><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                </compositionStrategy><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                <approvalSchema><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                    <stage id="13"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                        <name>Approvers/Line managers</name><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                        <approverExpression><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                            <script><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                                <code>midpoint.getManagersOidsExceptUser(object)</code><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                            </script><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                        </approverExpression><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                        <evaluationStrategy>firstDecides</evaluationStrategy><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                        <outcomeIfNoApprovers>reject</outcomeIfNoApprovers><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                        <duration>P7D</duration><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                        <timedActions id="14"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                            <actions><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                                <escalate><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                                    <name>Approvers Tecnhical Escalation</name><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                                    <approverRef oid="cf6c47e1-41c8-4f66-9f15-cbf49a62e179" relation="org:default" type="c:OrgType"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                                        <!--Approvers/Temp --><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                                    </approverRef><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                                    <outcomeIfNoApprovers>escalate</outcomeIfNoApprovers><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                                    <duration>P7D</duration><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                                    <delegationMethod>addAssignees</delegationMethod><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                                    <notifyBeforeAction>P1D</notifyBeforeAction><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                                    <notifyBeforeAction>P2D</notifyBeforeAction><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                                    <escalationLevelName>Approvers Tecnhical Escalation</escalationLevelName><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                                </escalate><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                            </actions><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                            <escalationLevelFrom>1</escalationLevelFrom><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                            <escalationLevelTo>1</escalationLevelTo><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                        </timedActions><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                    </stage><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                </approvalSchema><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">            </approval><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">        </policyActions><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">    </policyRule><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"></inducement><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:PT-BR"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:PT-BR"><o:p> </o:p></span></p>
</div>
<p class="MsoNormal">Regards,<o:p></o:p></p>
<p class="MsoNormal">Vitor Alves<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span style="mso-fareast-language:PT-BR">De:</span></b><span style="mso-fareast-language:PT-BR"> Vitor Alves | Gerencianet
<br>
<b>Enviada em:</b> quinta-feira, 8 de setembro de 2022 08:59<br>
<b>Para:</b> midpoint@lists.evolveum.com<br>
<b>Assunto:</b> Midpoint - Add conditional approval flow<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span lang="EN-US">Hello community!<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">We already have an approval flow in place, which assigns the Line Manager for the approval, if it does not exist, the approval is denied as follows:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><inducement id="10"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">    <policyRule><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">        <name>Approval Flow</name><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">        <policyConstraints><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">            <assignment id="11"/><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">        </policyConstraints><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">        <policyActions><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">            <approval id="12"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                <compositionStrategy><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                    <order>10</order><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                </compositionStrategy><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                <approvalSchema><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                    <stage id="13"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                        <name>Approvers/Line managers</name><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                        <approverExpression><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                            <script><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                                <code>midpoint.getManagersOidsExceptUser(object)</code><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                            </script><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                        </approverExpression><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                        <evaluationStrategy>firstDecides</evaluationStrategy><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                        <outcomeIfNoApprovers>reject</outcomeIfNoApprovers><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                        <duration>P7D</duration><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                    </stage><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                </approvalSchema><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">            </approval><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">        </policyActions><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">    </policyRule><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"></inducement><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">The problem we are facing is when the manager himself requests a role, the process is cancelled. Ideally, if there is no manager or if he himself is the manager, this request should be forwarded to a member of the "Security-Approvers"
 organization. I made a configuration, based on steps, but the flow is always forwarded to this second step, which would not be correct, as I only need it to be forwarded to the members of that organization if it doesn't find any approver. can anybody help
 me?<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:PT-BR"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:PT-BR"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-fareast-language:PT-BR">Regards,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-fareast-language:PT-BR"><o:p> </o:p></span></p>
<p class="MsoNormal" style="margin-bottom:14.25pt;background:white"><span style="font-size:10.5pt;color:#212121;mso-fareast-language:PT-BR">-----<br>
<b>Vitor Alves</b></span><span style="font-size:8.0pt;color:#212121;mso-fareast-language:PT-BR"><o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>