<div dir="ltr">Hi Gustav,<div>yes but it is kinda slow. But I got it in filter!</div><div><br></div><div>The expression is below.</div><div>On 80k users (check on password expiration)</div><div>- via script expression: <font color="#ff0000">4h 45m 😥</font></div><div>- via filter: <font color="#6aa84f">3m 👍</font></div><div><br></div><div><br></div><div><div style="color:rgb(212,212,212);background-color:rgb(30,30,30);font-family:Consolas,"Courier New",monospace;font-size:14px;line-height:19px;white-space:pre-wrap"><div><div style="line-height:19px;white-space:pre-wrap"><div>                            <span style="color:rgb(128,128,128)"><</span><span style="color:rgb(86,156,214)">q:greater</span><span style="color:rgb(128,128,128)">></span></div><div>                                <span style="color:rgb(128,128,128)"><</span><span style="color:rgb(86,156,214)">q:path</span><span style="color:rgb(128,128,128)">></span>extension/pwdValidity<span style="color:rgb(128,128,128)"></</span><span style="color:rgb(86,156,214)">q:path</span><span style="color:rgb(128,128,128)">></span></div><div>                                <span style="color:rgb(128,128,128)"><</span><span style="color:rgb(86,156,214)">expression</span><span style="color:rgb(128,128,128)">></span></div><div>                                    <span style="color:rgb(128,128,128)"><</span><span style="color:rgb(86,156,214)">script</span><span style="color:rgb(128,128,128)">></span></div><div>                                        <span style="color:rgb(128,128,128)"><</span><span style="color:rgb(86,156,214)">code</span><span style="color:rgb(128,128,128)">></span></div><div>                                            currentDate = basic.currentDateTime()</div><div>                                            return currentDate;</div><div>                                        <span style="color:rgb(128,128,128)"></</span><span style="color:rgb(86,156,214)">code</span><span style="color:rgb(128,128,128)">></span></div><div>                                    <span style="color:rgb(128,128,128)"></</span><span style="color:rgb(86,156,214)">script</span><span style="color:rgb(128,128,128)">></span></div><div>                                <span style="color:rgb(128,128,128)"></</span><span style="color:rgb(86,156,214)">expression</span><span style="color:rgb(128,128,128)">></span></div><div>                            <span style="color:rgb(128,128,128)"></</span><span style="color:rgb(86,156,214)">q:greater</span><span style="color:rgb(128,128,128)">></span></div></div></div><div>                            <span style="color:rgb(128,128,128)"><</span><span style="color:rgb(86,156,214)">q:less</span><span style="color:rgb(128,128,128)">></span></div><div>                                <span style="color:rgb(128,128,128)"><</span><span style="color:rgb(86,156,214)">q:path</span><span style="color:rgb(128,128,128)">></span>extension/pwdValidity<span style="color:rgb(128,128,128)"></</span><span style="color:rgb(86,156,214)">q:path</span><span style="color:rgb(128,128,128)">></span></div><div>                                <span style="color:rgb(128,128,128)"><</span><span style="color:rgb(86,156,214)">expression</span><span style="color:rgb(128,128,128)">></span></div><div>                                    <span style="color:rgb(128,128,128)"><</span><span style="color:rgb(86,156,214)">script</span><span style="color:rgb(128,128,128)">></span></div><div>                                        <span style="color:rgb(128,128,128)"><</span><span style="color:rgb(86,156,214)">code</span><span style="color:rgb(128,128,128)">></span></div><div>                                            df = javax.xml.datatype.DatatypeFactory.newInstance();</div><div>                                            currentDate = basic.currentDateTime()</div><div>                                            newDate = currentDate.clone();</div><div>                                            newDate.add(df.newDuration("P22D"));</div><div>                                            return newDate;</div><div>                                        <span style="color:rgb(128,128,128)"></</span><span style="color:rgb(86,156,214)">code</span><span style="color:rgb(128,128,128)">></span></div><div>                                    <span style="color:rgb(128,128,128)"></</span><span style="color:rgb(86,156,214)">script</span><span style="color:rgb(128,128,128)">></span></div><div>                                <span style="color:rgb(128,128,128)"></</span><span style="color:rgb(86,156,214)">expression</span><span style="color:rgb(128,128,128)">></span></div><div>                            <span style="color:rgb(128,128,128)"></</span><span style="color:rgb(86,156,214)">q:less</span><span style="color:rgb(128,128,128)">></span></div></div><div><div dir="ltr" class="m_919618207807689125m_1477727443310375764m_-159733675809546806gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><p><span style="font-family:Arial,sans-serif;font-size:10pt">--</span></p><p><span style="font-family:Arial,sans-serif;font-size:10pt">s pozdravem</span></p><div style="color:rgb(0,0,0);font-family:Arial,sans-serif;font-size:13px"><p><strong>Petr Gašparík</strong><br><span style="font-size:11px;color:rgb(128,128,128)">solution architect</span></p></div><p style="color:rgb(0,0,0);font-family:Arial,sans-serif;font-size:11px">gsm: [+420] 603 523 860<br>e‑mail: <a href="mailto:petr.gasparik@ami.cz" target="_blank">petr.gasparik@ami.cz</a></p><p style="color:rgb(0,0,0);font-family:Arial,sans-serif;font-size:11px"><strong>AMI Praha a.s.</strong><br>Pláničkova 11, 162 00 Praha 6</p><p style="color:rgb(0,0,0);font-family:Arial,sans-serif;font-size:11px">tel.: [+420] 274 783 239 | web: <a href="https://www.ami.cz" target="_blank">www.ami.cz</a></p><p style="color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif;font-size:10px;margin-top:20px"><img src="http://www.ami.cz/images/podpis/ami_logo.gif" alt="AMI Praha a.s." style="border:0px"></p><p style="font-family:Arial,sans-serif;font-size:11px;color:rgb(170,170,170)">Textem tohoto e‑mailu podepisující neslibuje uzavřít ani neuzavírá za společnost AMI Praha a.s.<br>jakoukoliv smlouvu. Každá smlouva, pokud bude uzavřena, musí mít výhradně písemnou formu.<br><span style="font-size:6px"> </span><br>Tento e‑mail je určen výhradně pro potřeby jeho adresáta/ů a může obsahovat důvěrné nebo osobní<br>informace. Nejste‑li zamýšleným příjemcem, je zakázáno jakékoliv zveřejňování, zprostředkování<br>nebo jiné použití těchto informací. Pokud jste obdrželi e‑mail neoprávněně, informujte o tom prosím<br>odesílatele a vymažte neprodleně všechny kopie tohoto e‑mailu včetně všech jeho příloh. Nakládáním<br>s neoprávněně získanými informacemi se vystavujete riziku právního postihu.</p></div></div></div></div></div></div></div></div></div></div></div></div><br></div><br><div class="gmail_quote"><div dir="ltr" class="m_919618207807689125m_1477727443310375764m_-159733675809546806gmail_attr">st 16. 1. 2019 v 14:20 odesílatel Pálos Gustáv <<a href="mailto:gustav.palos@gmail.com" target="_blank">gustav.palos@gmail.com</a>> napsal:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hi Petr,</div><div><br></div><div>I use expression script to read all (potential) users and filter it in groovy.</div><div>(or you can copy the value to another indexed extension attribute where this search is supported for example over user object template)</div><div><br></div><div>Best regards,</div><div><br></div><div>Gustav</div><br><div class="gmail_quote"><div dir="ltr">st 16. 1. 2019 o 14:13 Petr Gašparík - AMI Praha a.s. <<a href="mailto:petr.gasparik@ami.cz" target="_blank">petr.gasparik@ami.cz</a>> napísal(a):<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hi,<div>this filter is not working, looks like it is not supported.</div><div><br></div><div>I would appreciate any tip:</div><div><br></div><div><span style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"><query></span><br style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"><span style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px">   <filter></span><br style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"><span style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px">       <greaterOrEqual></span><br style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"><span style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px">           <path>credentials/password/metadata/modifyTimestamp</path></span><br style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"><span style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px">           <value>2019-09-17T09:43:26.464+02:00</value></span><br style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"><span style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px">       </greaterOrEqual></span><br style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"><span style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px">   </filter></span><br style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"><span style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"></query></span><br style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"><br style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"><span style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px">Couldn't find a proper data item to query, given base entity Ent:RUser (jaxb=UserType) and this filter: GREATER-OR-EQUAL:</span><br style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"><span style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"> PATH: credentials/password/metadata/modifyTimestamp</span><br style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"><span style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"> DEF: PPD:{.../common/common-3}modifyTimestamp {xsd:}dateTime[0,1],RAM,oper,I</span><br style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"><span style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"> VALUE:</span><br style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"><span style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px">   2019-09-17T09:43:26.464+02:00</span><br style="color:rgb(38,50,56);font-family:Roboto,Arial,sans-serif;font-size:13px"><div><div dir="ltr" class="m_919618207807689125m_1477727443310375764m_-159733675809546806gmail-m_-1704113843962026069gmail-m_-4980572177173394811gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><p><span style="font-family:Arial,sans-serif;font-size:10pt">--</span></p><p><span style="font-family:Arial,sans-serif;font-size:10pt">s pozdravem</span></p><div style="color:rgb(0,0,0);font-family:Arial,sans-serif;font-size:13px"><p><strong>Petr Gašparík</strong><br><span style="font-size:11px;color:rgb(128,128,128)">solution architect</span></p></div><p style="color:rgb(0,0,0);font-family:Arial,sans-serif;font-size:11px">gsm: [+420] 603 523 860<br>e‑mail: <a href="mailto:petr.gasparik@ami.cz" target="_blank">petr.gasparik@ami.cz</a></p><p style="color:rgb(0,0,0);font-family:Arial,sans-serif;font-size:11px"><strong>AMI Praha a.s.</strong><br>Pláničkova 11, 162 00 Praha 6</p><p style="color:rgb(0,0,0);font-family:Arial,sans-serif;font-size:11px">tel.: [+420] 274 783 239 | web: <a href="https://www.ami.cz" target="_blank">www.ami.cz</a></p><p style="color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif;font-size:10px;margin-top:20px"><img src="http://www.ami.cz/images/podpis/ami_logo.gif" alt="AMI Praha a.s." style="border:0px"></p><p style="font-family:Arial,sans-serif;font-size:11px;color:rgb(170,170,170)">Textem tohoto e‑mailu podepisující neslibuje uzavřít ani neuzavírá za společnost AMI Praha a.s.<br>jakoukoliv smlouvu. Každá smlouva, pokud bude uzavřena, musí mít výhradně písemnou formu.<br><span style="font-size:6px"> </span><br>Tento e‑mail je určen výhradně pro potřeby jeho adresáta/ů a může obsahovat důvěrné nebo osobní<br>informace. Nejste‑li zamýšleným příjemcem, je zakázáno jakékoliv zveřejňování, zprostředkování<br>nebo jiné použití těchto informací. Pokud jste obdrželi e‑mail neoprávněně, informujte o tom prosím<br>odesílatele a vymažte neprodleně všechny kopie tohoto e‑mailu včetně všech jeho příloh. Nakládáním<br>s neoprávněně získanými informacemi se vystavujete riziku právního postihu.</p></div></div></div></div></div></div></div></div></div></div></div></div></div></div>
_______________________________________________<br>
midPoint mailing list<br>
<a href="mailto:midPoint@lists.evolveum.com" target="_blank">midPoint@lists.evolveum.com</a><br>
<a href="http://lists.evolveum.com/mailman/listinfo/midpoint" rel="noreferrer" target="_blank">http://lists.evolveum.com/mailman/listinfo/midpoint</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="m_919618207807689125m_1477727443310375764m_-159733675809546806gmail-m_-1704113843962026069gmail_signature">s pozdravom<div><br></div><div>Gustáv Pálos</div></div></div>
_______________________________________________<br>
midPoint mailing list<br>
<a href="mailto:midPoint@lists.evolveum.com" target="_blank">midPoint@lists.evolveum.com</a><br>
<a href="http://lists.evolveum.com/mailman/listinfo/midpoint" rel="noreferrer" target="_blank">http://lists.evolveum.com/mailman/listinfo/midpoint</a><br>
</blockquote></div></div>