Saviynt unveils its cutting-edge Intelligence Suite products to revolutionize Identity Security!
Click HERE to see how Saviynt Intelligence is transforming the industry.
Saviynt Copilot Icon

Dynamic Attribute in Create ticket JSON and email template

shine
New Contributor
New Contributor

For disconnected application 

1)How to get the dynamic attribute values in ticket (name and the attribute value)?

tried and failed to display

requestAccessAttributes.get('abc').split(',').collect { it.trim() }
${requestAccessAttributes} or {reqAttrs} 
${request.dynamicAttributes}

 

I tried account column that's working but the name of the dynamic attribute I am not able to display. 

=================================================================

2)what binding variable to use to display these dynamic attributes?

Tried and failed to display 

${<attributename>}
Attribute Value:
${accessItems.findAll{it.request_access_attrss.size()}.collect{it.request_access_attrss.findAll{!it.attributeName.toString().equalsIgnoreCase('ENT_BY_RULE_ADD'))}.collect{it.attributeName.toString() + ':' +it.attributeValue}.join('###')}}

${accessItems.collect{ it.request_access_attrss.find{it.attributeName.toString().equalsIgnoreCase('Application')}.collect{it.attributeValue}}.get(0)}

13 REPLIES 13

rushikeshvartak
All-Star
All-Star

1) How do I get the dynamic attribute values in a ticket (name and attribute value)? 

${requestAccessAttributes.get('AccountColumnOfDA')} 

Refer https://forums.saviynt.com/t5/identity-governance/dynamic-attribute-in-createticketjson/m-p/40768 

 

2)what binding variable to use to display these dynamic attributes?

Where is email template attached ?

Please validate supported variables.

Purpose :

To get what variables are present to use in the email template.

Email Template steps :

The Advanced HTML CSS flag is checked

Keep your email Address in TO

TO CC, BCC & Subject: Don't use any dynamic variables

Add only below code in Email Body
${this.binding.variables.each {k,v -> println "$k = $v" + "" + "br" + ">"}}

Output : using the below expression. By putting it in the email body, it will print all variable names with values, and then accordingly, you can use it:


Regards,
Rushikesh Vartak
If this helped you move forward, click 'Kudos'. If it solved your query, select 'Accept As Solution'.

shine
New Contributor
New Contributor

1) How do I get the dynamic attribute values in a ticket (name and attribute value)? 

${requestAccessAttributes.get('AccountColumnOfDA')} -->This is not giving any variables that are related to dynamic attribute

2)Where is email template attached ?

Email is added in endpoint-->Add access-->Create task

${this.binding.variables.each {k,v -> println "$k = $v" + "" + "br" + ">"}}--> this I tried and it gives general info like manger,endpoint details, base url,user etc.

Both I have tried but I am not getting the desired output.

================================================================================

a bit explanation about my question

1)How to get the dynamic attribute values in ticket.

We have a service now-disconnected application. Application is displayed in ARS page with dynamic attribute in it along with entitlement type and values in it.we are not able to get the dynamic attribute values user have selected from dropdown in service now ticket. we tried multiple json string in create ticket JSOn in connection.

 

2)what binding variable to use to display these dynamic attributes email template?

I have referred the saviynt documentation and used all of them also some mentioned earlier.I was not able to display dynamic attribute values user have selected in ARS in email template.

 

 

 

  • ${requestAccessAttributes.get('AccountColumnOfDA')} - Did you update account column like customproperty1 from dynamic attribute ?
  • Email template  (Share output received on email in text format)

Regards,
Rushikesh Vartak
If this helped you move forward, click 'Kudos'. If it solved your query, select 'Accept As Solution'.

1)${requestAccessAttributes.get('AccountColumnOfDA')} - yes I used customproperty31 to store and added this string in COnnection-->Create ticketJSON-->"httpParams"

Displays null

 

2)Details displayed for "${this.binding.variables.each {k,v -> println "$k = $v" + "" + "br" + ">"}}"

output:

request = com.saviynt.ecm.workflow.ARS_Requests : 9225br> tasktype = Add Accessbr> manager = SSObr> owners = [null]br> requestor = 503262686br> users = Testuserge6br> out = java.io.PrintWriter@6682e849br> task = com.saviynt.ecm.task.ArsTasks : 109081br> requestid = 9564718br> endpointDisplayName = SIMSbr> baseUrlForEmail = https://release-n-plus-one.saviyntcloud.com/ECMbr> user = Testuserge6br> taskaction = Add Accessbr> tasks = com.saviynt.ecm.task.ArsTasks : 109081br>

  • Does account cp31 populated ?
  • Variable in not exposed in email template hence you can’t print dynamic attribute

Regards,
Rushikesh Vartak
If this helped you move forward, click 'Kudos'. If it solved your query, select 'Accept As Solution'.

with the variable you provided it displayed null with CP31.

Is there a way to expose variables in email template?

from entitlement value ,task ID, task action-Add or remove we are able to dispaly all details except dynamic attributes.

  • For email template we can’t do anything you need to raise enhancement request on ideas portal it will be product code change.
  • Does account customproperty is populated after request is completed ? Check under account - other attributes 

Regards,
Rushikesh Vartak
If this helped you move forward, click 'Kudos'. If it solved your query, select 'Accept As Solution'.

Does account customproperty is populated after request is completed ? Check under account - other attributes.

Yes,

it gets populated attaching a screenshot.

 

 

${reqAttrs.customproperty31}

https://docs.saviyntcloud.com/bundle/ServiceNow-v24x/page/Content/ServiceNow-as-a-Ticketing-System.h...

 


Regards,
Rushikesh Vartak
If this helped you move forward, click 'Kudos'. If it solved your query, select 'Accept As Solution'.

is there a way to display Dynamic attribute Label?

Value is stored in custom property 31 but the dynamic attribute label instead of hardcoding it.

No. we can't show dynamic attribute label


Regards,
Rushikesh Vartak
If this helped you move forward, click 'Kudos'. If it solved your query, select 'Accept As Solution'.

1.we have multiple endpoints using same connection . some endpoints are configured with dynamic attributes and some don't. 

2. Also is it possible to store multiple dynamic attribute value in one custom property?

1.we have multiple endpoints using same connection . some endpoints are configured with dynamic attributes and some don't. - You can have conditional if else check if dynamic attribute exist pass values else not

2. Also is it possible to store multiple dynamic attribute value in one custom property? - No value will be overwritten randomly 


Regards,
Rushikesh Vartak
If this helped you move forward, click 'Kudos'. If it solved your query, select 'Accept As Solution'.