on 08-30-2005 12:23 PM
Hello,
I have a question. Are nested Structures as import or export parameters possible for adaptive RFC?
I have one big structure that contains 2 elements of similar structure and some other fields. So I want to build something like:
BigStructure as defined in BAPI:
- Field0
- SubStructure1 TYPE Substructure
--- Subfield1
--- Subfield2
- SubStructure2 TYPE Substructure
--- Subfield1
--- Subfield2
- Field1
- Field2
I know that this is <u>not</u> allowed with Table Parameters. The backend system is 4.6C.
Best regards
Frank
Frank,
Yes, such structures are possible.
Btw, the statement should be "this is not recommended" rather then "this is not allowed". Actually, you may nest tables and structures as you wish -- Adaptive RFC model generator generates valid code.
Valery Silaev
EPAM Systems
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
The Problem is when I do that and call the Model I get an Error:
Expecting a tag to begin with < instead of 0, in "0183970400", error key: JCO_ERROR_XML_PARSER
The number 01839704 without the two "00" at the end is my input Parameter (an ID). The "00" is the first entry of a structure beginning here.
Field ID Value 01839704
--StructureField Value 0001...
This happens if the structure is used as an <u>export</u> Parameter.
If I use the same Structure as Import Parameter for another BAPI I don't get an error.
So if that should be allowed there is something wron my code? I tried to reimport the Model and also restarted the J2EE Server.
Frank
Here is the Stack trace I get:
[code]com.sap.tc.webdynpro.modelimpl.dynamicrfc.WDDynamicRFCExecuteException: Expecting a tag to begin with < instead of 0, in "00-XXX", error key: JCO_ERROR_XML_PARSER
at com.sap.tc.webdynpro.modelimpl.dynamicrfc.DynamicRFCModelClassExecutable.execute(DynamicRFCModelClassExecutable.java:101)
at de.mgi.appraisal.application.Appraisal.getAppraisal(Appraisal.java:222)
at de.mgi.appraisal.application.wdp.InternalAppraisal.getAppraisal(InternalAppraisal.java:696)
at de.mgi.appraisal.application.AppraisalStep1View.wdDoInit(AppraisalStep1View.java:102)
at de.mgi.appraisal.application.wdp.InternalAppraisalStep1View.wdDoInit(InternalAppraisalStep1View.java:151)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.doInit(DelegatingView.java:61)
at com.sap.tc.webdynpro.progmodel.controller.Controller.initController(Controller.java:215)
at com.sap.tc.webdynpro.progmodel.view.View.initController(View.java:274)
at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:540)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.bind(ViewManager.java:398)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:555)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.bindRoot(ViewManager.java:422)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.init(ViewManager.java:130)
at com.sap.tc.webdynpro.progmodel.view.InterfaceView.initController(InterfaceView.java:43)
at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:540)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.bindRoot(ViewManager.java:422)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.makeVisible(ViewManager.java:624)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.performNavigation(ViewManager.java:263)
at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.navigate(ClientApplication.java:775)
at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.handleActionEvent(WebDynproMainTask.java:359)
at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.execute(WebDynproMainTask.java:649)
at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:59)
at com.sap.tc.webdynpro.clientserver.cal.ClientManager.doProcessing(ClientManager.java:252)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doWebDynproProcessing(DispatcherServlet.java:154)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:116)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:55)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:392)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:345)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:323)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:865)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:240)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:95)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:159)
Caused by: com.sap.aii.proxy.framework.core.BaseProxyException: Expecting a tag to begin with '<' instead of '0', in "00-XXX", error key: JCO_ERROR_XML_PARSER
at com.sap.aii.proxy.framework.core.AbstractProxy.send$(AbstractProxy.java:150)
at de.mgi.appraisal.model.appraisal.Appraisal.zct_Appraisal_Get(Appraisal.java:213)
at de.mgi.appraisal.model.appraisal.Zct_Appraisal_Get_Input.doExecute(Zct_Appraisal_Get_Input.java:137)
at com.sap.tc.webdynpro.modelimpl.dynamicrfc.DynamicRFCModelClassExecutable.execute(DynamicRFCModelClassExecutable.java:92)
... 43 more
[/code]
For explanation the Data coming from the R/3 system (4.6C) starts with "00-XXX". So there is data send from the R/3 system because it is the first call and this was <u>not</u> in the input of the RFC call.
I can't see anything that would help me in this... Hopefully you can see more
Thanx for your help anyway!
Frank
User | Count |
---|---|
84 | |
25 | |
12 | |
9 | |
6 | |
6 | |
5 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.