on 10-27-2016 9:04 PM
Dear All,
I am facing an issue with IDM 8.0 SP03 when using a SQL query to obtain user data.
I have an MS SQL query defined in the Attribute Values and normally to obtain the MSKEY, you use the variable %MSKEY%.
This is not working for me and below the logs:
IDM UI: Could not expand values for attribute: ZXY. Incorrect syntax near '%' OpenSQLExceptionCategories: []
Any ideas?
Best Regards,
Ridouan Taibi
NW logs:
SQL error occurred on connection <host>:mxmc_db:mxmc_prov_u: code=102, state="S0001", message="Incorrect syntax near '%'.";
SQL statement is "SELECT SUBSTRING(AttrName,8,20) AS repositories FROM idmv_value_basic_active %nolock%
WHERE AttrName LIKE 'ACCOUNT%' AND MSKEY = %MSKEY%".
[EXCEPTION]
com.microsoft.sqlserver.jdbc.SQLServerException: Incorrect syntax near '%'.
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:217)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(SQLServerStatement.java:1635)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.doExecutePreparedStatement(SQLServerPreparedStatement.java:426)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement$PrepStmtExecCmd.doExecute(SQLServerPreparedStatement.java:372)
at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:6276)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1793)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(SQLServerStatement.java:184)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(SQLServerStatement.java:159)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.executeQuery(SQLServerPreparedStatement.java:284)
at com.sap.sql.jdbc.basic.BasicPreparedStatement.executeQuery(BasicPreparedStatement.java:102)
at com.sap.sql.jdbc.direct.DirectPreparedStatement.executeQuery(DirectPreparedStatement.java:315)
at com.sap.sql.jdbc.direct.DirectPreparedStatement.executeQuery(DirectPreparedStatement.java:271)
at com.sap.engine.services.dbpool.wrappers.PreparedStatementWrapper.executeQuery(PreparedStatementWrapper.java:379)
at com.sap.idm.jmx.ic.AttributeUtil.expandSQLFilterAndTaskValues(AttributeUtil.java:918)
at com.sap.idm.jmx.ic.AttributeUtil.fillAttributeValues(AttributeUtil.java:682)
at com.sap.idm.jmx.ic.TaskUtil.getTaskSchema(TaskUtil.java:2055)
at com.sap.idm.jmx.ic.TaskUtil.getTaskSchema(TaskUtil.java:1917)
at com.sap.idm.jmx.ic.EntryUtil.getEntry(EntryUtil.java:702)
at com.sap.idm.jmx.impl.SAP_ITSAM_IDM_Service_Impl_Impl.retrieveEntryWithException(SAP_ITSAM_IDM_Service_Impl_Impl.java:707)
at com.sap.idm.jmx.impl.SAP_ITSAM_IDM_Service_Impl_Impl.retrieveEntry(SAP_ITSAM_IDM_Service_Impl_Impl.java:641)
at com.sap.idm.jmx.impl.SAP_ITSAM_IDM_Service_Impl_Impl.retrieveEntry(SAP_ITSAM_IDM_Service_Impl_Impl.java:636)
at com.sap.idm.jmx.SAP_ITSAM_IDM_ServiceWrapper.invoke(SAP_ITSAM_IDM_ServiceWrapper.java:1305)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
at com.sap.pj.jmx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:468)
at com.sap.pj.jmx.server.interceptor.MBeanServerWrapperInterceptor.invoke(MBeanServerWrapperInterceptor.java:288)
at com.sap.engine.services.jmx.CompletionInterceptor.invoke(CompletionInterceptor.java:612)
at com.sap.pj.jmx.server.interceptor.BasicMBeanServerInterceptor.invoke(BasicMBeanServerInterceptor.java:277)
at com.sap.jmx.provider.ProviderInterceptor.invoke(ProviderInterceptor.java:365)
at com.sap.engine.services.jmx.RedirectInterceptor.invoke(RedirectInterceptor.java:340)
at com.sap.pj.jmx.server.interceptor.MBeanServerInterceptorChain.invoke(MBeanServerInterceptorChain.java:367)
at com.sap.engine.services.jmx.MBeanServerSecurityWrapper.invoke(MBeanServerSecurityWrapper.java:289)
at com.sap.engine.services.jmx.ClusterInterceptor.invoke(ClusterInterceptor.java:813)
at com.sap.pj.jmx.server.interceptor.MBeanServerInterceptorChain.invoke(MBeanServerInterceptorChain.java:367)
at com.sap.idm.wd.jmx.SAP_ITSAM_IDM_Service$Impl.retrieveEntry(SAP_ITSAM_IDM_Service.java:1187)
at com.sap.idm.wd.modelwrapper.ModelWrapperInterface.getEntryWithAudit(ModelWrapperInterface.java:638)
at com.sap.idm.wd.modelwrapper.ModelWrapperInterface.getEntry(ModelWrapperInterface.java:230)
at com.sap.idm.wd.modelwrapper.wdp.InternalModelWrapperInterface.wdInvokeMethod(InternalModelWrapperInterface.java:761)
at com.sap.tc.webdynpro.progmodel.generation.ExternalControllerPI$ExternalInterfaceInvocationHandler.invoke(ExternalControllerPI.java:339)
at com.sun.proxy.$Proxy2925.getEntry(Unknown Source)
at com.sap.idm.wd.wf.entrydetails.EditEntry.wdDoInit(EditEntry.java:249)
at com.sap.idm.wd.wf.entrydetails.wdp.InternalEditEntry.wdDoInit(InternalEditEntry.java:406)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingComponent.doInit(DelegatingComponent.java:161)
at com.sap.tc.webdynpro.progmodel.controller.Controller.initController(Controller.java:227)
at com.sap.tc.webdynpro.progmodel.components.Component.initController(Component.java:258)
at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:206)
at com.sap.tc.webdynpro.progmodel.components.ComponentUsage.createComponentInternal(ComponentUsage.java:418)
at com.sap.tc.webdynpro.progmodel.components.ComponentUsage.createComponent(ComponentUsage.java:352)
at com.sap.tc.webdynpro.progmodel.components.ComponentUsage.createComponent(ComponentUsage.java:306)
at com.sap.idm.wd.wf.task.TaskComp.initTask(TaskComp.java:500)
at com.sap.idm.wd.wf.task.TaskComp.wdDoInit(TaskComp.java:171)
at com.sap.idm.wd.wf.task.wdp.InternalTaskComp.wdDoInit(InternalTaskComp.java:180)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingComponent.doInit(DelegatingComponent.java:161)
at com.sap.tc.webdynpro.progmodel.controller.Controller.initController(Controller.java:227)
at com.sap.tc.webdynpro.progmodel.components.Component.initController(Component.java:258)
at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:206)
at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.init(ClientApplication.java:590)
at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.doPreprocessing(ClientApplication.java:1457)
at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doPreprocessing(ApplicationSession.java:660)
at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:349)
at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:326)
at com.sap.tc.webdynpro.serverimpl.core.AbstractDispatcherServlet.doContent(AbstractDispatcherServlet.java:87)
at com.sap.tc.webdynpro.serverimpl.wdc.DispatcherServlet.doContent(DispatcherServlet.java:101)
at com.sap.tc.webdynpro.serverimpl.core.AbstractDispatcherServlet.doGet(AbstractDispatcherServlet.java:55)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:734)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at com.sap.engine.services.servlets_jsp.server.Invokable.invoke(Invokable.java:152)
at com.sap.engine.services.servlets_jsp.server.runtime.RequestDispatcherImpl.doWork(RequestDispatcherImpl.java:373)
at com.sap.engine.services.servlets_jsp.server.runtime.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:499)
at com.sap.tc.webdynpro.serverimpl.wdc.ForwardServlet.doPost(ForwardServlet.java:77)
at com.sap.tc.webdynpro.serverimpl.wdc.ForwardServlet.doGet(ForwardServlet.java:34)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:734)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at com.sap.engine.services.servlets_jsp.server.Invokable.invoke(Invokable.java:152)
at com.sap.engine.services.servlets_jsp.server.Invokable.invoke(Invokable.java:38)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:466)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:210)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:441)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:430)
at com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:38)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:81)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:278)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:81)
at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)
at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.SessionSizeFilter.process(SessionSizeFilter.java:26)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:57)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:43)
at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
at com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:475)
at com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:269)
at com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:56)
at com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
at com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)
Hi DP,
Many thanks for your response.
The issue was with the %MSKEY%, this variable should be %USERMSKEY%.
Many thanks.
Best Regards,
Ridouan Taibi
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Ridouan,
As per the log message, which is posted, is the below query being used in the attribute?
SELECT SUBSTRING(AttrName,8,20) AS repositories FROM idmv_value_basic_active %nolock%
WHERE AttrName LIKE 'ACCOUNT%' AND MSKEY = %MSKEY%".
If the above SQL query is set, then please put nolock inside parenthesis (nolock) and test.
Can you please post the query you are using the attribute values, so it would be helpful to resolve your issue.
Regards,
DP
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
93 | |
10 | |
10 | |
9 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.