Announcing the Saviynt Knowledge Exchange unifying the Saviynt forums, documentation, training,
and more in a single search tool across platforms. Read the announcement here.

Requestable entitlement Config not working for Multi select dynamic attribute

piyushm
Regular Contributor II
Regular Contributor II

I have an Ent type and in the Requestable entitlement config I am using ev.custompoperty1 like '%{$dynamicattr}%'.

Now, if I select single value for this dynamic attribute then this query works and the Ent list is populated. But when I select multiple values then the UI just says "Processing".

Does this not work for multi select list? Is there any workaround for this?

9 REPLIES 9

rushikeshvartak
All-Star
All-Star

Use find_in_set


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

piyushm
Regular Contributor II
Regular Contributor II

I am getting below error when using this function.

FIND_IN_SET( '${dynamicattr}',ev.customproperty3)

unexpected AST node: ( near line 1, column 144 [Select count(*) from com.saviynt.ecm.identitywarehouse.domain.Entitlement_values ev where ev.status=1 and ev.customproperty1='' and FIND_IN_SET( '',ev.customproperty3)]; nested exception is org.hibernate.hql.ast.QuerySyntaxException: unexpected AST node: ( near line 1, column 144 [Select count(*) from com.saviynt.ecm.identitywarehouse.domain.Entitlement_values ev where ev.status=1 and ev.customproperty1='' and FIND_IN_SET( '',ev.customproperty3)]

rushikeshvartak
All-Star
All-Star

This is loading because values are getting sent like below

only one value A

if 2 values - A','B

Fix - use replace all

ev.customproperty1 like '%${dynamicattr.replace("','","%' or ev.customproperty1 like '%")}%'


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

piyushm
Regular Contributor II
Regular Contributor II

Can you explain what this statement is trying to replace and with what?

get value from dynamic attribute as A','B and then replace ',' with what?

I am still getting "Processing" after using this statement.

piyushm
Regular Contributor II
Regular Contributor II

Working as expected. Needed to replace in one more condition in the query.

What is fix? 


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

piyushm
Regular Contributor II
Regular Contributor II

I had one more condition in the query where I was checking the dynamic attribute. so I added the replace function there as well.

Belwyn
Saviynt Employee
Saviynt Employee

Hi @piyushm 

Could you please share the query that worked for you? So in the future if any other folks in the community having similar questions will be able to have a working sample reference. 

Thanks & Regards, 
Belwyn.

piyushm
Regular Contributor II
Regular Contributor II

@Belwyn , please find the query below. 

and '${dynamicattr.replace("','",""}'!=''  and ev.customproperty1 like '%${dynamicattr.replace("','","%' or ev.customproperty1 like '%")}%'