We are delighted to share our new EIC Delivery Methodology for efficiently managing Saviynt Implementations and delivering quick time to value. CLICK HERE.

Update User Request Form- EndDate validation

Puspanjali
New Contributor
New Contributor

Hi Team,

We want to restrict, the user's end date should not be extended more than 90 days from the user's last end date by using the update form.

Validation Condition : ${UUR_UdynEndDateRW - users.ENDDATE <= 90}

UUR_UdynEndDateRW :-Dynamic attribute

But I'm receiving the below error

Puspanjali_0-1670164575410.png

8 REPLIES 8

amit_krishnajit
Saviynt Employee
Saviynt Employee

Could you please try using the following condition instead?

${UUR_UdynEndDateRW - user.enddate<= 90}

Thanks,
Amit

Hi Amit,

I tried your query, but still receiving the same error

Puspanjali_0-1670222444501.png

I'm not sure, does it due to the Attribute Type: "Date", not allowing to use user's attribute details in the validation

Puspanjali_1-1670222745684.png

Puspanjali_3-1670222808372.png

Puspanjali_6-1670222939867.png

Have you observed any errors related to this in the logs? Please share the logs when this error occurs.

Thanks,
Amit

Hi Amit,

PFA the error log"MissingPropertyException"

C_UdynO365LicenseType_W:No License, U_UdynEmployeeType_R:External, currentdate:Mon Dec 05 00:00:00 UTC 2022, U_UdynSecondaryEmail_R:puspanjali@securiag.co.uk, C_U_UdynPhoneNumberRW:+917377013396, U_UdynJobDescription_R:, U_Udyn_systemusername_R:TH14000392, C_U_UdynCompanyRW:]
2022-12-05 11:45:46,636 [https-jsse-nio-443-exec-486] DEBUG workflow.JbpmworkflowmanagementController - validation string is ${UUR_UdynEndDateRW - user.enddate<= 90}
2022-12-05 11:45:46,640 [https-jsse-nio-443-exec-486] ERROR errors.GrailsExceptionResolver - MissingPropertyException occurred when processing request: [POST] /ECM/jbpmworkflowmanagement/validatedynamicattrcondns
No such property: user for class: SimpleTemplateScript686460. Stacktrace follows:
groovy.lang.MissingPropertyException: No such property: user for class: SimpleTemplateScript686460
at SimpleTemplateScript686460.run(SimpleTemplateScript686460.groovy:1)
at com.saviynt.ecm.workflow.JbpmworkflowmanagementController$_closure59_closure292.doCall(JbpmworkflowmanagementController.groovy:5719)
at com.saviynt.ecm.workflow.JbpmworkflowmanagementController$_closure59.doCall(JbpmworkflowmanagementController.groovy:5715)
at grails.plugin.springsecurity.web.filter.GrailsAnonymousAuthenticationFilter.doFilter(GrailsAnonymousAuthenticationFilter.java:53)
at com.saviynt.webservice.SaviyntRestAuthenticationFilter.doFilter(SaviyntRestAuthenticationFilter.groovy:145)
at grails.plugin.springsecurity.web.authentication.logout.MutableLogoutFilter.doFilter(MutableLogoutFilter.java:62)
at grails.plugin.springsecurity.web.SecurityRequestHolderFilter.doFilter(SecurityRequestHolderFilter.java:59)
at com.mrhaki.grails.plugin.xframeoptions.web.XFrameOptionsFilter.doFilterInternal(XFrameOptionsFilter.java:69)
at com.brandseye.cors.CorsFilter.doFilter(CorsFilter.java:82)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
2022-12-05 11:45:46,667 [https-jsse-nio-443-exec-486] ERROR error.ErrorController - Exception
org.codehaus.groovy.grails.web.errors.GrailsWrappedRuntimeException: No such property: user for class: SimpleTemplateScript686460
at grails.plugin.springsecurity.web.filter.GrailsAnonymousAuthenticationFilter.doFilter(GrailsAnonymousAuthenticationFilter.java:53)
at com.saviynt.webservice.SaviyntRestAuthenticationFilter.doFilter(SaviyntRestAuthenticationFilter.groovy:145)
at grails.plugin.springsecurity.web.authentication.logout.MutableLogoutFilter.doFilter(MutableLogoutFilter.java:62)
at grails.plugin.springsecurity.web.SecurityRequestHolderFilter.doFilter(SecurityRequestHolderFilter.java:59)
at com.mrhaki.grails.plugin.xframeoptions.web.XFrameOptionsFilter.doFilterInternal(XFrameOptionsFilter.java:69)
at com.brandseye.cors.CorsFilter.doFilter(CorsFilter.java:82)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: groovy.lang.MissingPropertyException: No such property: user for class: SimpleTemplateScript686460
at SimpleTemplateScript686460.run(SimpleTemplateScript686460.groovy:1)
at com.saviynt.ecm.workflow.JbpmworkflowmanagementController$_closure59_closure292.doCall(JbpmworkflowmanagementController.groovy:5719)
at com.saviynt.ecm.workflow.JbpmworkflowmanagementController$_closure59.doCall(JbpmworkflowmanagementController.groovy:5715)
... 9 more

Puspanjali_0-1670240948539.png

${UUR_UdynEndDateRW - users.enddate<= 90}


Regards,
Rushikesh Vartak
If you find the response useful, kindly consider selecting Accept As Solution and clicking on the kudos button.

Hi Rushikesh

It's the same error,I 'm receiving for all below condition

${UUR_UdynEndDateRW - users.enddate<= 90}

${UUR_UdynEndDateRW - users.enddate <= 90}

${UUR_UdynEndDateRW - user.enddate<= 90}

${UUR_UdynEndDateRW - user.enddate <= 90}

ERROR

U_UdynSecondaryEmail_R:puspanjali@securiag.co.uk, C_U_UdynPhoneNumberRW:+917377013396, U_UdynJobDescription_R:, U_Udyn_systemusername_R:TH14000392, C_U_UdynCompanyRW:]
2022-12-06 04:48:52,691 [https-jsse-nio-443-exec-474] DEBUG workflow.JbpmworkflowmanagementController - validation string is ${UUR_UdynEndDateRW - users.ENDDATE<= 90}
2022-12-06 04:48:52,694 [https-jsse-nio-443-exec-474] ERROR errors.GrailsExceptionResolver - MissingPropertyException occurred when processing request: [POST] /ECM/jbpmworkflowmanagement/validatedynamicattrcondns
No such property: users for class: SimpleTemplateScript691196. Stacktrace follows:
groovy.lang.MissingPropertyException: No such property: users for class: SimpleTemplateScript691196
at SimpleTemplateScript691196.run(SimpleTemplateScript691196.groovy:1)
at com.saviynt.ecm.workflow.JbpmworkflowmanagementController$_closure59_closure292.doCall(JbpmworkflowmanagementController.groovy:5719)
at com.saviynt.ecm.workflow.JbpmworkflowmanagementController$_closure59.doCall(JbpmworkflowmanagementController.groovy:5715)
at grails.plugin.springsecurity.web.filter.GrailsAnonymousAuthenticationFilter.doFilter(GrailsAnonymousAuthenticationFilter.java:53)
at com.saviynt.webservice.SaviyntRestAuthenticationFilter.doFilter(SaviyntRestAuthenticationFilter.groovy:145)
at grails.plugin.springsecurity.web.authentication.logout.MutableLogoutFilter.doFilter(MutableLogoutFilter.java:62)
at grails.plugin.springsecurity.web.SecurityRequestHolderFilter.doFilter(SecurityRequestHolderFilter.java:59)
at com.mrhaki.grails.plugin.xframeoptions.web.XFrameOptionsFilter.doFilterInternal(XFrameOptionsFilter.java:69)
at com.brandseye.cors.CorsFilter.doFilter(CorsFilter.java:82)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
2022-12-06 04:48:52,721 [https-jsse-nio-443-exec-474] ERROR error.ErrorController - Exception
org.codehaus.groovy.grails.web.errors.GrailsWrappedRuntimeException: No such property: users for class: SimpleTemplateScript691196
at grails.plugin.springsecurity.web.filter.GrailsAnonymousAuthenticationFilter.doFilter(GrailsAnonymousAuthenticationFilter.java:53)
at com.saviynt.webservice.SaviyntRestAuthenticationFilter.doFilter(SaviyntRestAuthenticationFilter.groovy:145)
at grails.plugin.springsecurity.web.authentication.logout.MutableLogoutFilter.doFilter(MutableLogoutFilter.java:62)
at grails.plugin.springsecurity.web.SecurityRequestHolderFilter.doFilter(SecurityRequestHolderFilter.java:59)
at com.mrhaki.grails.plugin.xframeoptions.web.XFrameOptionsFilter.doFilterInternal(XFrameOptionsFilter.java:69)
at com.brandseye.cors.CorsFilter.doFilter(CorsFilter.java:82)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: groovy.lang.MissingPropertyException: No such property: users for class: SimpleTemplateScript691196
at SimpleTemplateScript691196.run(SimpleTemplateScript691196.groovy:1)
at com.saviynt.ecm.workflow.JbpmworkflowmanagementController$_closure59_closure292.doCall(JbpmworkflowmanagementController.groovy:5719)
at com.saviynt.ecm.workflow.JbpmworkflowmanagementController$_closure59.doCall(JbpmworkflowmanagementController.groovy:5715)
... 9 more

Create a hidden dynamic attribute named enddate with below configs -

  • Attribute Name - userEndDate
  • Attribute Type - Date
  • User Column - enddate

Then try the below validation condition for UUR_UdynEndDateRW -

${UUR_UdynEndDateRW - userEndDate <= 90}

AshishDas
Regular Contributor II
Regular Contributor II

This should work

${((TerminationDate > currentdate) && (TerminationDate < currentdate.plus(90)))}

TerminationDate is the dynamic attribute name