and more in a single search tool across platforms. Read the announcement here. |
02/25/2024 05:46 PM
Im trying to use Preprocessor to get the proxy address of the user's AD account to Cp62 . But Im getting JSON Parsing error as shown below.
{
"ADDITIONALTABLES": {
"USERS": "SELECT USERNAME,CUSTOMPROPERTY35,CUSTOMPROPERTY10,EMPLOYEECLASS,OWNER,EMPLOYEEID,CUSTOMPROPERTY18,CUSTOMPROPERTY45,CUSTOMPROPERTY30,STATUSKEY,CUSTOMPROPERTY16,CUSTOMPROPERTY33,STARTDATE,TERMDATE,ENDDATE,DISPLAYNAME,FIRSTNAME,LASTNAME,CUSTOMPROPERTY62,userkey FROM USERS",
"Accounts":"SELECT accountkey,customproperty47 FROM Accounts where endpointkey=4",
"USER_ACCOUNTS" : "SELECT userkey,accountkey FROM USER_ACCOUNTS where accountkey in (select distinct accountkey from accounts where endpointkey=4)"
},
"COMPUTEDCOLUMNS": [
"USERNAME",
"DISPLAYNAME",
"CUSTOMPROPERTY35",
"CUSTOMPROPERTY10",
"OWNER",
"STATUSKEY",
"TERMDATE",
"ENDDATE",
"CUSTOMPROPERTY16",
"CUSTOMPROPERTY62"
"SECONDARYMANAGER"
],
"PREPROCESSQUERIES": [
"update NEWUSERDATA set CUSTOMPROPERTY62=(select ac.customproperty47 from currentuser_accounts uac inner join currentusers u on uac.userkey=u.userkey inner join currentaccounts ac on ac.accountkey=uac.accountkey where ac.endpointkey=4)"
]
}
Below is the logs.
org.codehaus.groovy.grails.web.converters.exceptions.ConverterException: Error parsing JSON at grails.converters.JSON.parse(JSON.java:292) at com.saviynt.ecm.services.ImportSAvDataUserService.doImportDataPreprocessing(ImportSAvDataUserService.groovy:170) at com.saviynt.ecm.services.ImportSAvDataUserService.importDataFromFile(ImportSAvDataUserService.groovy:733) at com.saviynt.ecm.services.ImportSAvDataUserService.importDataFromFile(ImportSAvDataUserService.groovy:686) at com.saviynt.ecm.services.BulkUserUploadService.importUserFromRequest(BulkUserUploadService.groovy:265) at com.saviynt.workflowmgt.grantaccess.doaccess(grantaccess.groovy:50) at com.saviynt.workflowmgt.grantaccess$_createAccess_closure1.doCall(grantaccess.groovy:95) at com.saviynt.workflowmgt.grantaccess.createAccess(grantaccess.groovy:94) at org.jbpm.pvm.internal.util.ReflectUtil.invoke(ReflectUtil.java:184) at org.jbpm.pvm.internal.wire.descriptor.ObjectDescriptor.invokeMethod(ObjectDescriptor.java:209) at org.jbpm.jpdl.internal.activity.JavaActivity.perform(JavaActivity.java:76) at org.jbpm.jpdl.internal.activity.JpdlAutomaticActivity.execute(JpdlAutomaticActivity.java:15) at org.jbpm.pvm.internal.model.op.ExecuteActivity.perform(ExecuteActivity.java:60) at org.jbpm.pvm.internal.model.ExecutionImpl.performAtomicOperationSync(ExecutionImpl.java:672) at org.jbpm.pvm.internal.model.ExecutionImpl.fire(ExecutionImpl.java:582) at org.jbpm.pvm.internal.model.ExecutionImpl.take(ExecutionImpl.java:487) at org.jbpm.jpdl.internal.activity.ForEachActivity.execute(ForEachActivity.java:123) at org.jbpm.jpdl.internal.activity.ForEachActivity.execute(ForEachActivity.java:53) at org.jbpm.pvm.internal.model.op.ExecuteActivity.perform(ExecuteActivity.java:60) at org.jbpm.pvm.internal.model.ExecutionImpl.performAtomicOperationSync(ExecutionImpl.java:672) at org.jbpm.pvm.internal.model.ExecutionImpl.performAtomicOperation(ExecutionImpl.java:632) at org.jbpm.pvm.internal.model.ExecutionImpl.start(ExecutionImpl.java:217) at org.jbpm.pvm.internal.cmd.StartProcessInstanceInLatestCmd.execute(StartProcessInstanceInLatestCmd.java:63) at org.jbpm.pvm.internal.cmd.StartProcessInstanceInLatestCmd.execute(StartProcessInstanceInLatestCmd.java:36) at org.jbpm.pvm.internal.svc.DefaultCommandService.execute(DefaultCommandService.java:42) at org.jbpm.pvm.internal.tx.SpringCommandCallback.doInTransaction(SpringCommandCallback.java:45) at org.jbpm.pvm.internal.tx.SpringTransactionInterceptor.execute(SpringTransactionInterceptor.java:49) at org.jbpm.pvm.internal.svc.EnvironmentInterceptor.executeInNewEnvironment(EnvironmentInterceptor.java:53) at org.jbpm.pvm.internal.svc.EnvironmentInterceptor.execute(EnvironmentInterceptor.java:40) at org.jbpm.pvm.internal.svc.RetryInterceptor.execute(RetryInterceptor.java:56) at org.jbpm.pvm.internal.svc.ExecutionServiceImpl.startProcessInstanceByKey(ExecutionServiceImpl.java:71) at com.saviynt.ecm.services.WorkflowService.workflowaccessreqStart(WorkflowService.groovy:1066) at com.saviynt.ecm.services.BulkUserUploadService.createRequestForBulkUserUpload(BulkUserUploadService.groovy:91) at com.saviynt.ecm.services.UsersService.uploadUserFinalStep(UsersService.groovy:8687) at com.saviynt.ecm.identitywarehouse.controllers.UsersController$_closure26.doCall(UsersController.groovy:1716) at grails.plugin.springsecurity.web.filter.GrailsAnonymousAuthenticationFilter.doFilter(GrailsAnonymousAuthenticationFilter.java:53) at com.saviynt.webservice.SaviyntRestAuthenticationFilter.doFilter(SaviyntRestAuthenticationFilter.groovy:159) 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.lang.Thread.run(Thread.java:750)Caused by: org.codehaus.groovy.grails.web.json.JSONException: Expected a ',' or ']' at character 824 of {
02/25/2024 06:15 PM
{
"ADDITIONALTABLES": {
"USERS": "SELECT USERNAME,CUSTOMPROPERTY35,CUSTOMPROPERTY10,EMPLOYEECLASS,OWNER,EMPLOYEEID,CUSTOMPROPERTY18,CUSTOMPROPERTY45,CUSTOMPROPERTY30,STATUSKEY,CUSTOMPROPERTY16,CUSTOMPROPERTY33,STARTDATE,TERMDATE,ENDDATE,DISPLAYNAME,FIRSTNAME,LASTNAME,CUSTOMPROPERTY62,userkey FROM USERS",
"Accounts": "SELECT accountkey,customproperty47 FROM Accounts where endpointkey=4",
"USER_ACCOUNTS": "SELECT userkey,accountkey FROM USER_ACCOUNTS where accountkey in (select distinct accountkey from accounts where endpointkey=4)"
},
"COMPUTEDCOLUMNS": [
"USERNAME",
"DISPLAYNAME",
"CUSTOMPROPERTY35",
"CUSTOMPROPERTY10",
"OWNER",
"STATUSKEY",
"TERMDATE",
"ENDDATE",
"CUSTOMPROPERTY16",
"CUSTOMPROPERTY62",
"SECONDARYMANAGER"
],
"PREPROCESSQUERIES": [
"update NEWUSERDATA set CUSTOMPROPERTY62=(select ac.customproperty47 from currentuser_accounts uac inner join currentusers u on uac.userkey=u.userkey inner join currentaccounts ac on ac.accountkey=uac.accountkey where ac.endpointkey=4)"
]
}
I've added the comma after "CUSTOMPROPERTY62" in the "COMPUTEDCOLUMNS" array to ensure the JSON syntax is correct.