and more in a single search tool across platforms. Read the announcement here. |
03/20/2024 02:10 PM
Hi All,
I am trying to add the piece of code(\"${entitlementValue.entitlementID}\"}) under 'ADDList' to provision entitlements but values are not populating. Syntax and every thing looks good.
can you share your thoughts.
Application type:Rest
Json configured attribute: Create account
"httpParams": "{\"AddRequest\": {\"REQUESTID\": \"${arsTasks.requestKey?.processinstanceid?.substring(ADDLIST)}\",\"ACCESSTYPE\": \"${if(requestAccessAttributes.get('Access Needed')=='Update Access'){'Update'} else{'Read'}}\",\"ADDLIST\": ${if(requestAccessAttributes.get('Selection Type')=='Property List' && requestAccessAttributes.get('ManagedFranchisedQuestion')=='Yes') {'[\"'+requestAccessAttributes.get('CustomerPropertyPicklistMandF').split(', ').collect { it.split(': ')[0] }.toString()?.replace('[','').replace(' ]','').replaceAll(' ','').replaceAll(',', '\",\"')+'\"]'} else if(requestAccessAttributes.get('Selection Type')=='Property List' && requestAccessAttributes.get('ManagedFranchisedQuestion')=='No') {'[\"'+requestAccessAttributes.get('Property Selection').split(', ').collect { it.split(': ')[0] }.toString()?.replace('[','').replace(' ]','').replaceAll(' ','').replaceAll(',', '\",\"')+'\"]'} else if(requestAccessAttributes.get('Selection Type')=='Entire Brand')'[\"'+requestAccessAttributes.get('Brand Selection').replaceAll(', ', '\",\"')+'\"]' else if(requestAccessAttributes.get('Selection Type')=='Entire Region')'[\"'+requestAccessAttributes.get('Region Selection').replaceAll(', ', '\",\"')+'\"]' else if(requestAccessAttributes.get('SelectAll')=='Yes') {'[]'} else if(requestAccessAttributes.get('SelectAll')=='No') {'[\"'+requestAccessAttributes.get('Property Selection').split(', ').collect { it.split(': ')[0] }.toString()?.replace('[','').replace(' ]','').replaceAll(' ','').replaceAll(',', '\",\"')+'\"]'} else {'[\"'+requestAccessAttributes.get('Property Selection').split(', ').collect { it.split(': ')[0] }.toString()?.replace('[','').replace(' ]','').replaceAll(' ','').replaceAll(',', '\",\"')+'\"]'}},\"ADDTYPE\": \"${if(requestAccessAttributes.get('Selection Type')=='Property List'){'Property'} else if(requestAccessAttributes.get('Selection Type')=='Entire Brand'){'Brand'} else if(requestAccessAttributes.get('Selection Type')=='Entire Region'){'Region'} else{'Property'}}\",\"CUSTOMEREID\": \"${user.username}\",\"CUSTOMEREIDTYPE\": \"${user.employeeType}\",\"CUSTOMEREMAIL\": \"${user.email}\",\"CUSTOMERFIRSTNAME\": \"${user.firstname}\",\"CUSTOMERLASTNAME\": \"${user.lastname}\",\"CUSTOMERPHONE\": \"${user.phonenumber}\",\"CUSTOMERCITY\": \"${user.city}\",\"CUSTOMERSTATE\": \"${user.state}\",\"CUSTOMERCOUNTRY\": \"${user.country}\",\"COMPANYCODE\": \"${user.departmentname+'.'+user.departmentNumber}\",\"COMPANYNAME\": \"${user.companyname}\",\"CUSTOMERSTATUS\": \"99\",\"TRANSTYPE\": \"New\"}}"
03/20/2024 10:04 PM
${entitlementValue.entitlementID} it works properly can you share logs and full json
03/21/2024 05:47 AM
Log:
2024-03-21 12:40:22,569 [quartzScheduler_Worker-2] INFO services.ImportSAvDataUserService - Exit processAttributes
2024-03-21 12:40:22,569 [quartzScheduler_Worker-2] DEBUG services.ImportSAvDataUserService - dirtyMap=[:], dirtyMap=0
2024-03-21 12:40:22,578 [quartzScheduler_Worker-2] DEBUG services.ImportSAvDataUserService - Saving user data for username : ihhom078
2024-03-21 12:40:22,582 [quartzScheduler_Worker-4] ERROR rest.RestProvisioningService - Error in createNewUsercom.fasterxml.jackson.core.JsonParseException: Unrecognized token '$': was expecting ('true', 'false' or 'null')
at [Source: {"AddRequest": {"REQUESTID": "${arsTasks.requestKey?.processinstanceid?.substring(arsTasks.requestKey?.processinstanceid?.indexOf('.') + 1,arsTasks.requestKey?.processinstanceid?.length())}","ACCESSTYPE": "${if(requestAccessAttributes.get('Access Needed')=='Update Access'){'Update'} else{'Read'}}","ADDLIST": ${entitlementValue.entitlementID},"ADDTYPE": "${if(requestAccessAttributes.get('Selection Type')=='Property List'){'Property'} else if(requestAccessAttributes.get('Selection Type')=='Entire Brand'){'Brand'} else if(requestAccessAttributes.get('Selection Type')=='Entire Region'){'Region'} else{'Property'}}","CUSTOMEREID": "${user.username}","CUSTOMEREIDTYPE": "${user.employeeType}","CUSTOMEREMAIL": "${user.email}","CUSTOMERFIRSTNAME": "${user.firstname}","CUSTOMERLASTNAME": "${user.lastname}","CUSTOMERPHONE": "${user.phonenumber}","CUSTOMERCITY": "${user.city}","CUSTOMERSTATE": "${user.state}","CUSTOMERCOUNTRY": "${user.country}","COMPANYCODE": "${user.departmentname+'.'+user.departmentNumber}","COMPANYNAME": "${user.companyname}","CUSTOMERSTATUS": "99","EDSROLE": "${if(requestAccessAttributes.get('Access Needed')=='Update Access'){'HPPHTLUP'} else{'HPPHTLRD'}}","TRANSTYPE": "New"}}; line: 1, column: 312]
2024-03-21 12:40:22,582 [quartzScheduler_Worker-4] DEBUG println.PrintlnToLogger - Println :: [1;31m| Error [22;39mcom.fasterxml.jackson.core.JsonParseException: Unrecognized token '$': was expecting ('true', 'false' or 'null')
at [Source: {"AddRequest": {"REQUESTID": "${arsTasks.requestKey?.processinstanceid?.substring(arsTasks.requestKey?.processinstanceid?.indexOf('.') + 1,arsTasks.requestKey?.processinstanceid?.length())}","ACCESSTYPE": "${if(requestAccessAttributes.get('Access Needed')=='Update Access'){'Update'} else{'Read'}}","ADDLIST": ${entitlementValue.entitlementID},"ADDTYPE": "${if(requestAccessAttributes.get('Selection Type')=='Property List'){'Property'} else if(requestAccessAttributes.get('Selection Type')=='Entire Brand'){'Brand'} else if(requestAccessAttributes.get('Selection Type')=='Entire Region'){'Region'} else{'Property'}}","CUSTOMEREID": "${user.username}","CUSTOMEREIDTYPE": "${user.employeeType}","CUSTOMEREMAIL": "${user.email}","CUSTOMERFIRSTNAME": "${user.firstname}","CUSTOMERLASTNAME": "${user.lastname}","CUSTOMERPHONE": "${user.phonenumber}","CUSTOMERCITY": "${user.city}","CUSTOMERSTATE": "${user.state}","CUSTOMERCOUNTRY": "${user.country}","COMPANYCODE": "${user.departmentname+'.'+user.departmentNumber}","COMPANYNAME": "${user.companyname}","CUSTOMERSTATUS": "99","EDSROLE": "${if(requestAccessAttributes.get('Access Needed')=='Update Access'){'HPPHTLUP'} else{'HPPHTLRD'}}","TRANSTYPE": "New"}}; line: 1, column: 312][m
2024-03-21 12:40:22,582 [quartzScheduler_Worker-4] DEBUG println.PrintlnToLogger - Println :: [1;31m| Error [22;39m at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1702)[m
03/21/2024 06:18 AM
Please paste json as text. You have issue in syntax
03/21/2024 10:47 AM
{
"call": [
{
"name": "call1",
"connection": "acctAuth",
"url": "*******",
"httpMethod": "POST",
"httpParams": "{\"AddRequest\": {\"REQUESTID\": \"${arsTasks.requestKey?.processinstanceid?.substring(arsTasks.requestKey?.processinstanceid?.indexOf('.') + 1,arsTasks.requestKey?.processinstanceid?.length())}\",\"ACCESSTYPE\": \"${if(requestAccessAttributes.get('Access Needed')=='Update Access'){'Update'} else{'Read'}}\",\"ADDLIST\": ${entitlementValue.entitlementID},\"ADDTYPE\": \"${if(requestAccessAttributes.get('Selection Type')=='Property List'){'Property'} else if(requestAccessAttributes.get('Selection Type')=='Entire Brand'){'Brand'} else if(requestAccessAttributes.get('Selection Type')=='Entire Region'){'Region'} else{'Property'}}\",\"CUSTOMEREID\": \"${user.username}\",\"CUSTOMEREIDTYPE\": \"${user.employeeType}\",\"CUSTOMEREMAIL\": \"${user.email}\",\"CUSTOMERFIRSTNAME\": \"${user.firstname}\",\"CUSTOMERLASTNAME\": \"${user.lastname}\",\"CUSTOMERPHONE\": \"${user.phonenumber}\",\"CUSTOMERCITY\": \"${user.city}\",\"CUSTOMERSTATE\": \"${user.state}\",\"CUSTOMERCOUNTRY\": \"${user.country}\",\"COMPANYCODE\": \"${user.departmentname+'.'+user.departmentNumber}\",\"COMPANYNAME\": \"${user.companyname}\",\"CUSTOMERSTATUS\": \"99\",\"EDSROLE\": \"${if(requestAccessAttributes.get('Access Needed')=='Update Access'){'HPPHTLUP'} else{'HPPHTLRD'}}\",\"TRANSTYPE\": \"New\"}}",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept": "application/json"
},
"httpContentType": "application/json",
"successResponses": {
"modifyResponse.code":["0"]
},
"unsuccessResponses": {
"modifyResponse.code":["99"]
}
}
]
}
03/21/2024 06:29 PM
Reduce number of attributes being sent. to narrow down issue.
Try below
{
"call": [
{
"name": "call1",
"connection": "acctAuth",
"url": "*******",
"httpMethod": "POST",
"httpParams": "{\"AddRequest\": {\"REQUESTID\": \"aa\",\"ACCESSTYPE\": \"${if(requestAccessAttributes.get('Access Needed')=='Update Access'){'Update'} else{'Read'}}\",\"ADDLIST\": ${entitlementValue.entitlementID},\"ADDTYPE\": \"${if(requestAccessAttributes.get('Selection Type')=='Property List'){'Property'} else if(requestAccessAttributes.get('Selection Type')=='Entire Brand'){'Brand'} else if(requestAccessAttributes.get('Selection Type')=='Entire Region'){'Region'} else{'Property'}}\",\"CUSTOMEREID\": \"${user.username}\",\"CUSTOMEREIDTYPE\": \"${user.employeeType}\",\"CUSTOMEREMAIL\": \"${user.email}\",\"CUSTOMERFIRSTNAME\": \"${user.firstname}\",\"CUSTOMERLASTNAME\": \"${user.lastname}\",\"CUSTOMERPHONE\": \"${user.phonenumber}\",\"CUSTOMERCITY\": \"${user.city}\",\"CUSTOMERSTATE\": \"${user.state}\",\"CUSTOMERCOUNTRY\": \"${user.country}\",\"COMPANYCODE\": \"${user.departmentname+'.'+user.departmentNumber}\",\"COMPANYNAME\": \"${user.companyname}\",\"CUSTOMERSTATUS\": \"99\",\"EDSROLE\": \"${if(requestAccessAttributes.get('Access Needed')=='Update Access'){'HPPHTLUP'} else{'HPPHTLRD'}}\",\"TRANSTYPE\": \"New\"}}",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept": "application/json"
},
"httpContentType": "application/json",
"successResponses": {
"modifyResponse.code": [
"0"
]
},
"unsuccessResponses": {
"modifyResponse.code": [
"99"
]
}
}
]
}
03/21/2024 04:25 PM
Here is the full Json code
03/27/2024 01:13 PM
Here is the problem. ADDLIST\": ${entitlementValue.entitlementID}.
If I add the above statement then the task getting failed.
This Json configured in create account Json.
03/27/2024 01:52 PM
Entitlement object is not exposed in create account json
03/28/2024 12:39 PM
True..
Is there any way to capture Entitlements which user requested through ARS request in create account task.
I know this can be captured through dynamic attribute but the limitation is that I can not use Dynamic attribute to list the Entitlements..
03/28/2024 07:16 PM
Currently no option other than dynamic attributes