ABAP Proxy - Exlcluding XML tags at runtime

Hello,
Scenario: ABAP Proxy is being used to send an XML file to third party from SAP R/3 via SAP PI.
SAP R/3 version - 4.7
SAP PI version - 7.0
Requirement: Based on some conditions certain tags should be omitted and in some case the entire parent tag should be omitted from the XML file.
Can this be acheived by some programming in ABAP.
All structures created under an ABAP proxy message contains a field, CONTROLLER of type PRXCTRLTAB. Can this be used to acheive the above requirement? If yes how?
Please provide some inputs. If this cannot be done in ABAP which the best way to do this and how?
Regards,
Sajith.

Hi,
>>>Requirement: Based on some conditions certain tags should be omitted and in some case the entire parent tag should be omitted from the XML file.
>>Can this be acheived by some programming in ABAP.
yes of course
of you can remove that inside a mapping in PI
Regards,
Michal Krawczyk

Similar Messages

  • Exclude XML tags at runtime

    Hi,
    Is there a way to exclude specific XML tags at runtime. For example: If a value is zero for say tag <amount> , the tag must be excluded else the tag must be present.
    Can this be done.
    Regards,
    Ranjith

    Hi,
    >>>Requirement: Based on some conditions certain tags should be omitted and in some case the entire parent tag should be omitted from the XML file.
    >>Can this be acheived by some programming in ABAP.
    yes of course
    of you can remove that inside a mapping in PI
    Regards,
    Michal Krawczyk

  • Problem in ABAP Proxy(sometimes XML Messages are not being created)

    Hi,
    I am trying to send the data from ECC to CRM when post goods issue is done for a delivery from ECC side. I called my proxy method in BADI : DELIVERY_PUBLISH.
    And after calling the method, I used commit work also.
    But the problem is, some times it is working fine. and some times the XML messages are not getting created. When I go in debug, looks everything is fine.
    I am unable to understand why this inconsistency.
    Could you please help me out, do I need to take any more precautions.
    Thanks,
    Sandeep

    You mean you can't find any message in SXMB_MONI of your ECC or is it XI where you can't see message?
    If you have not checked in SXMB_MONI of ECC then may be messages are created but they are going into error and that's why you are not able to see any message in XI.

  • ABAP Proxy generation from JAVA

    Hi,
    Is it possible to generate ABAP proxy classes from JAVA?
    If possible then how do we call them during runtime from JAVA?
    Here is what I am trying to do.
    I have XSD  ( Open Travel  Standards schemas). I want to generate ABAP proxy classes for these XSDs.
    So that I can call these ABAP proxy classes from JAVA during runtime. Real implementation of these methods will be implemented in ABAP.
    Thanks,
    Amara.

    hi amara,
    check this link
    http://help.sap.com/saphelp_nw04/helpdata/en/14/555f3c482a7331e10000000a114084/frameset.htm
    http://help.sap.com/saphelp_nwpi71/helpdata/en/3e/e3fb40f17af66fe10000000a1550b0/content.htm
    https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/a068cf2f-0401-0010-2aa9-f5ae4b2096f9
    let me know am i reach u r point
    bvr

  • Unallowed RFC-XML Tag (SOAP_EINVALDOC) - Web Service using ABAP Proxy

    Hi there
    I am trying to consume a Web Service using ABAP Proxies.  I have done the following in the system:
    I configured the HTTP and HTTPS Proxy settings. 
    I created a package with package interfaces SAI_TOOLS and SAPPINT included under the Use Access tab.
    I created the proxy classes by using the WSDL provided by the system I'm trying to interface with. 
    I created my HTTP destination RFC via SM59. 
    I configured a logical port for the proxy. 
    I developed the ABAP code for calling the proxy. 
    In the code the exception CX_AI_SYSTEM_FAULT gets raised with error message <b>"Unallowed RFC-XML Tag (SOAP_EINVALDOC)"</b> when I call the method for passing data to the destination system in the proxy class.
    I had a look at SM21 and the following message was written in the log:
    <b>"SOAP Runtime: SOAP Runtime exception: 111 occurred in method XP_READ_TAG of class CL_SOAP_XP at position 1
    SOAP Runtime: Exception message: Unallowed RFC-XML Tag (SOAP_EINVALDOC)"</b>.  I also looked at SAP Note 919886 which states that it can be dumps in the system, missing configuration or the path prefix of the RFC destination that is incorrect.  I cannot find any ST22 entries.  The trace file looks as follows:
    SAP System ID: DGH
    Client: 009
    User: COLESKG
    System time: 072910
    System date: 20070531
    SAP Release: 700
    Host: hd307c
    Operating system: AIX
    DB System: ORACLE
    Program: ZUK_IPA00003
    Processing State: 0
    Location: Client
    Transport Binding: http://schemas.xmlsoap.org/soap/http
    SOAP Application: urn:sap-com:soap:runtime:application:client
    SOAP Runtime Protocol: http://www.sap.com/webas/630/soap
    /runtime/protocol
    SOAP Protocols: <initial>
    Request Message: <initial>
    Response Message: <initial>
    Fault: <initial>
    Registry: <initial>
    SOAP Roles: <initial>
    Trace Level: 3
    Logging Level: 2
    Monitoring Level: 0
    Security Profile: <initial>
    WS Security Protocol: <initial>
    INFO 07:29:10: SOAP LP Registry CL_SRT_LP_MAINTENANCE->CREATE_CLIENT_APPL() Try to create client application for Proxyclass:
    ZES_CO_PROCESS_EMPLOYEE_BATCH LP name: DEFAULT
    INFO 07:29:10: SOAP LP Registry CL_SRT_LP_MAINTENANCE->CREATE_CLIENT_APPL() Client application created
    INFO 07:29:10: SOAP LP Registry CL_SRT_LP_MAINTENANCE->CREATE_CLIENT_APPL() Try to initialize client application
    INFO 07:29:10: SOAP Application CL_SOAP_APPLICATION_CLIENT->IF_SOAP_APPLICATION_CS~INIT() Try to initialize application
    urn:sap-com:soap:runtime:application:client
    INFO 07:29:10: SOAP Application CL_SOAP_APPLICATION_CLIENT->INTERNAL_CLIENT_INIT() Create new runtime CL_SOAP_RUNTIME_CLIENT
    INFO 07:29:10: SOAP Runtime CL_SOAP_RUNTIME_CLIENT->REGISTER_APPLICATION() Try to register application
    INFO 07:29:10: SOAP Runtime CL_SOAP_RUNTIME_CLIENT->REGISTER_APPLICATION() Application registered
    INFO 07:29:10: SOAP Application CL_SOAP_APPLICATION_CLIENT->INTERNAL_CLIENT_INIT() Read type of transport binding from
    configuration
    INFO 07:29:10: SOAP Application CL_SOAP_APPLICATION_CLIENT->INTERNAL_CLIENT_INIT() Create new transport binding type
    http://schemas.xmlsoap.org/soap/http
    INFO 07:29:10: SOAP Transport Binding CL_SOAP_TRANSPORT_BINDING_ROOT->IF_SOAP_TRANSPORT_BINDING~INIT() Try to initialize
    http://schemas.xmlsoap.org/soap/http
    INFO 07:29:10: SOAP Transport Binding CL_SOAP_TRANSPORT_BINDING_ROOT->IF_SOAP_TRANSPORT_BINDING~INIT() http://schemas.xmlsoap
    .org/soap/http initialized
    INFO 07:29:10: SOAP Transport Binding CL_SOAP_TRANSPORT_BINDING_ROOT->IF_SOAP_TRANSPORT_BINDING~REQUEST() Try to create request message
    INFO 07:29:10: SOAP Transport Binding CL_SOAP_TRANSPORT_BINDING_ROOT->IF_SOAP_TRANSPORT_BINDING~REQUEST() Request message created
    INFO 07:29:10: SOAP Transport Binding CL_SOAP_TRANSPORT_BINDING_ROOT->IF_SOAP_TRANSPORT_BINDING~RESPONSE() Try to create response message
    INFO 07:29:10: SOAP Transport Binding CL_SOAP_TRANSPORT_BINDING_ROOT->IF_SOAP_TRANSPORT_BINDING~RESPONSE() Response message
    created
    INFO 07:29:10: SOAP Runtime CL_SOAP_RUNTIME_CLIENT->INIT() Try to initialize
    INFO 07:29:10: SOAP Runtime CL_SOAP_RUNTIME_CLIENT->INIT() Check transport binding
    INFO 07:29:10: SOAP Runtime CL_SOAP_RUNTIME_CLIENT->INIT() Create runtime protocol
    INFO 07:29:10: SOAP Runtime Protocol CL_SOAP_RUNTIME_PROTOCOL->IF_SOAP_PROTOCOL~INIT() Try to initialize SOAP Runtime-intrinsic
    Protocol as SENDER with Priority 5
    INFO 07:29:10: SOAP Runtime Protocol CL_SOAP_RUNTIME_PROTOCOL->INIT_MODULES() Try to create trace header/part
    INFO 07:29:10: SOAP Runtime Protocol CL_SOAP_RUNTIME_PROTOCOL->INIT_MODULES() Trace header/part created
    INFO 07:29:10: SOAP Runtime Protocol CL_SOAP_RUNTIME_PROTOCOL->INIT_MODULES() Try to create logging header/part
    INFO 07:29:10: SOAP Runtime Protocol CL_SOAP_RUNTIME_PROTOCOL->INIT_MODULES() Logging header/part created
    INFO 07:29:10: SOAP Runtime Protocol CL_SOAP_RUNTIME_PROTOCOL->IF_SOAP_PROTOCOL~INIT() Protocol initialized
    INFO 07:29:10: SOAP Runtime CL_SOAP_RUNTIME_CLIENT->INIT()
    Initialized
    INFO 07:29:10: SOAP Protocol CL_SOAP_PROTOCOL_FACTORY->CREATE()
    Try to create instance for http://www.sap.com/webas/630/soap
    /runtime/session/protocol::http://www.sap.com/webas/630/soap
    /runtime/session/protocol/srt640_impl
    INFO 07:29:10: SOAP Protocol CL_SOAP_PROTOCOL_FACTORY->CREATE()
    Instance of CL_SOAP_SESSION_PROTOCOL created for http://www.sap.com/webas/630/soap/runtime/session/protocol::http://www.sap.com/webas/630/soap/runtime/session/protocol/srt640_impl
    INFO 07:29:10: SOAP SESSION Protocol CL_SOAP_SESSION_PROTOCOL->IF_SOAP_PROTOCOL~INIT() Try to initialize SOAP Session Protocol
    as SENDER with Priority 5
    INFO 07:29:10: SOAP SESSION Protocol CL_SOAP_SESSION_PROTOCOL->IF_SOAP_PROTOCOL~INIT() Protocol initialized
    INFO 07:29:10: SOAP Application CL_SOAP_APPLICATION_CLIENT_GEN->CONFIGURE_FEATURES() Try to configure features
    INFO 07:29:10: SOAP HTTP Binding CL_SOAP_HTTP_TPBND_ROOT->IF_SOAP_HTTP_TRANSPORT_BINDING~SET_CLIENT_BY_DESTINATION() Try to
    create ICF Client for DESTINATION = ALSB
    INFO 07:29:10: SOAP HTTP Binding CL_SOAP_HTTP_TPBND_ROOT->IF_SOAP_HTTP_TRANSPORT_BINDING~SET_CLIENT_BY_DESTINATION() ICF
    Client created by DESTINATION
    INFO 07:29:10: SOAP HTTP Binding CL_SOAP_HTTP_TPBND_ROOT->IF_SOAP_HTTP_TRANSPORT_BINDING~SET_DESTINATION_URL_PATH() Set
    DESTINATION PATH = /SapHRSmartIntegrationWeb/processes/ProcessEmployeeBatch.jpd
    INFO 07:29:10: SOAP Application CL_SOAP_APPLICATION_CLIENT_GEN->CONFIGURE_FEATURES() Features configured
    INFO 07:29:10: SOAP Application CL_SOAP_APPLICATION_CLIENT->IF_SOAP_APPLICATION_CS~INIT() Application urn:sap-com:soap
    :runtime:application:client initialized
    INFO 07:29:10: SOAP LP Registry CL_SRT_LP_MAINTENANCE->CREATE_CLIENT_APPL() Client application initialized
    Trace file opened at 20070531 073030 GMT SAP-REL 700,0,95
    Error in module XMLParserGetNextElement:773
    Id @(#) $Id: //bas/700_REL/src/krn/rfc/xrfcpars.c#2 $
    Unallowed RFC-XML Tag
    Error in module XMLConverterReadTag:3061
    Id @(#) $Id: //bas/700_REL/src/krn/rfc/xrfccnvrt.c#5 $
    Unallowed RFC-XML Tag(24)
    Error in module ab_soap:4392
    Id @(#) $Id: //bas/700_REL/src/krn/rfc/abxrfccal.c#2 $
    failed with return code 1
    It then must be something in the config.  Has anyone got any idea why this message is encountered?
    Kind Regards
    Gustav Coleske
    Message was edited by:
            Gustav Coleske

    Hi,
    I have the same problem as described.
    Can you give me a little more information about the error you have solved in the proxy.
    Thanks for help
    John

  • Get XML in Abap Proxy

    Hi XI experts,
    Probably a simple question for you guys. I have created an inbound invoice abap proxy in which I have to perform several checks before executing a simple FM. The checks with fields of the INPUT parameter are no problem at all but when check is successfull I have to copy the incoming XML (tag-structure) to the application server. But I don't know where to get my incoming XML ? It's been mapped and pushed to my method EXECUTE_ASYNCHRONOUS INPUT parameter in a generated abap structure that does not have the same fields/tags as the XML...
    Basically, what I need is something to just copy the original XML to the application server (in my Abap Proxy).
    Thanks for your help !
    Kind regards,
    Christof.

    Hi Christof,
    attachments are handled only at adapter level, not at mapping.
    You could create the attachment at sender adapter side and it would be sent to the receiver proxy, but the attachment would be the original input message and not the mapped one.
    If you don't have mapping or if you don't care whether the saved message is the original or the mapped one, go for it.
    Best regards,
    Henrique.

  • How to catch CONVT_NO_NUMBER runtime error in ABAP Proxy

    Hi all,
           In our abap proxy program, sometimes the CONVT_NO_NUMBER will happen and cause the program dump and then stuck the whole queue. I noticed that this error cannot be caught by CX_ROOT exception class. So, how can I catch this runtime error and avoid the dump of our program?
    Thanks,
    YiNing

    Hi,
    While Executing the proxy,first give \h TC and then execute the proxy then it will automatically got to debugging mode.
    I think ur data is worng,if it is wrong then only u will get this type of errors.
    Regards,
    Phani

  • Client Java Proxy - ?xml version="1.0" encoding="UTF-8" tag missing

    Hi All,
    I have a Java Proxy to File scenario. I am getting the output in the SAP XI but when i check the XML payload <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> is missing from it. Rest of the document is coming fine.
    Any idea how to fix it up?
    Thanks and Regards,
    Anurag Mahendru.

    Here it is:
    Re: ABAP Proxy -> XI - > File on a Website
    As I know, this is still on discussion, if the Java Proxy generation will be replaced by web service proxy generation.
    But existing Java Proxy applications definitivley  will run in PI 7.1 as well.
    Regards
    Stefan

  • INTERNAL - AMF_ERROR in XML -- ABAP proxy scenario

    Hi Experts,
    Can any one help me to solve this following issue please, it is happening while I am executing the scenario between XML File to ABAP Proxy scenario.
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Call Adapter
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="INTERNAL">AMF_ERROR</SAP:Code>
      <SAP:P1>1</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:Stack>Error when processing message number 1 in package No object type found for the message. Check that the corresponding process is activated An exception has occurred.</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>.
    This XML message has got 5 Lines Header and more than 100 Lin Items, this kind of Header and Lin item message 3 to 4 in one XML, I am using multi mapping. Message mapping shows working fine, OM also shows working fine. BPM is splitting messages to send messages to ABAP Proxy on SNC 7.0. After I have done all with SDN experts support, still I am having the above issue. can any one experties might help to resolve this?
    I will appreciate your support.
    Thanks & Regards
    San

    Can you please explain the solution.
    Regards,
    Rashi

  • Tags dont appear in XI from ABAP Proxy!!

    Hi,
    I have an interface which receives the data from SAP to XI via ABAP proxy. There are some fields in the structure which are mandatory in XI and the values are not been passed from SAP. As a result, the tags dont appear when the message enter XI and this results in the message mapping failure.
    As a workaround, we are checking for the existence of this field in the incoming message and assigning some constant value to it.
    But is this, the only option? do we have any better approaches to tackle this?
    Thanks for all your inputs,
    Regards,
    Vinayak Kamath

    Hi Vinayak,
    <i>There are some fields in the structure which are mandatory in XI</i>
    In XI, we make the fields mandatory based on the requirement and business rules of the sender side. If u r making it mandatory, that means the sender has requested u to do so. This implies that the sender should send the data according to the specifications it has provided to XI implementer.
    So either request the sender to send data according to its specification or change the structure in XI.
    If u couldnt do either, handling it in message mapping is good enough.
    <i>
    do we have any better approaches to tackle this?</i>
    U may also configure alerts for the same
    <i>[Reward if helpful]</i>
    Regards,
    Prateek

  • ABAP Proxy connection Between PI and SRM for XMLs

    Hello Experts,
    We are trying to set up ABAP proxy connection between PI 7.1 and SRM so we can send XML from SRM into PI.
    Our SRM developer is getting an SLD error (below) and seems like something is not set up right in the SLD. Could you help me out with any kind of blog/documention on setting up an ABAP proxy connection between PI and an ABAP system. Something that talks about what steps we need to take in PI and SRM.
    error ...
    *We saw the error during debugging. This error is preventing XML output
    to be sent to PI.
    BBP_BD  002     An SLD system has not been assigned to logical system
    Thanks,
    Mayur

    Thanks all for a quick reply. I also had to take following step to achieve the task.
    adding the XI system to the SRM config - SRM Server -->
    Technical basic Settings --> Define  System Landscape?  (also please
    associated documentation in that link for XI)
    Thanks,
    Mayur

  • ABAP Proxy viewing of historical web service posts - XML files

    Hi there
    I have developed a web service that posts via an ABAP proxy.  The webservice posts successfully.  Where do I see the historical XML files of the posts of my executed webservices?
    Kind Regards
    Gustav Coleske

    Hello Torsten,
    It seems that the Web Service You are going to consume is a SOAP 1.2 one.
    It is apparently making use of the so-called "SOAP Web Method Feature" which is part of the SOAP 1.2 specification (see [Web Method Feature (W3C)|http://www.w3.org/TR/soap12-part2/#WebMethodFeature]).
    Unfortunately, SOAP 1.2 is, to the best of my knowledge, not supported as yet by the SOAP Adapter in SAP NW 7.0 / 7.1. That leaves You, in theory, with one of the following options:
    - It might be possible to consume that service with the help of Axis framework (see [Using the Axis Framework in the SOAP Adapter|http://help.sap.com/saphelp_nw04/helpdata/en/45/a4f8bbdfdc0d36e10000000a114a6b/frameset.htm]). SAP Help states that with the help of the Axis framework SOAP 1.2 can be used. However, there are no further details on that subject, especially whether Web Method feature can be utilised (btw - has anyone tried this?).
    - Ask service provider for a SOAP 1.1-compatible WSDL.
    - Attempt to reverse engineer the SAP SOAP proxy so that it is capable of consuming a SOAP 1.2 Web Method-based web service (has anyone done this before?).
    Would You be so kind to post whether, and how, You were able to consume this web service?
    Kind regards
    Wiktor Nyckowski

  • XML File Sender to ABAP Proxy

    Hi Experts,
                    I have a scenario like File to ABAP Proxy. Input file is huge like 60 MB and it's a XML file. Currently, it's consuming large resources in both XI & R/3 system.
                     I would like to use the option of Recordsets per message using the File Content Conversion. As the Input file being the XML, how the parameters under the  File Content Conversion can be handled? Can you please throw some input on this?
    Thanks,
    Kumar.

    Hi Kumar,
         I guess u cannot use File Content Conversion for an input file which is in XML format. But if ur concern is to handle the large file then, u can go thru the following link which talks abt handling large files...
    <a href="/people/alessandro.guarneri/blog/2007/02/21/sap-xi-acting-as-a-huge-file-mover:///people/alessandro.guarneri/blog/2007/02/21/sap-xi-acting-as-a-huge-file-mover
    Regards,
    Akshay

  • Testing SOAP/ XML in ABAP  Proxy!

    Hi Experts,
                In an interview I was asked a question on abap proxy.
    In a scenerio where data from file gets into R/3 ztable through abap proxy, when data has already left XI and about to enter r/3, there is some SOAP XML format , and data can be tested/ debugged at this point. I was not sure about the exact point, but surely not the payload in SXMB_MONI.
    Can any1 tell me more about this part of Abap proxy testing.The interviewer said, this is popular testing of abap proxy scenerio .  I am also sure, I am not asking for how to debug Abap coding in the method endmethod part in SPROXY .
    Can any1 help!
    Regards,
    Arnab.

    Hi Arnab,
    In sproxy choose your interface and
    go with menu proxy---> Test interface
    follow the link which gives u step by step procedure
    XI: Debug your inbound ABAP Proxy implementation
    Regds,
    Shiva

  • ABAP Proxy - elements not filled in return XML

    Hi
    I have created an ABAP proxy based on Message Types in XI.
    In DEV system it returns all values as it should. When I transported it over to the QA system, almost all XML-elements are returned empty.
    I know the communication is OK and that the proxy is accessed because one part of the XML is filled (4 out of 100 fields). What I don't understand is why the rest of the fields are returned empty.
    If I use the "Test Interface" function, the XML is filled correctly. It's when I test it with an HTTP poster that the problem arise.
    Anyone had this problem before?
    regards Ole Mugaas

    Hi Ole,
    1. Try to regenerate (Ctrl+F3) the proxy.
    2. Debugg the proxy and see when you are transfering the data what values are being filled up.
    3. Aslo make sure that you have not made any changes in the data type structure after importing it into QA system.
    Regards,
    Sarvesh

Maybe you are looking for

  • How do I change the default paper size in Firefox if Printer Properties does nothing?

    I print on different including a receipt printer with roll paper. I had to reset Firefox yesterday because of a bug, and then changed the Printer Properties to be able to print again in the right format on the receipt paper. But now everything I prin

  • OBXM ERROR

    Dear all in f.5d      Company code 2100: Breakdown calculated for 011151 documents in f.5e  Am getting this error Vendor reconciliation acct     Post distr G/L acct   OrBA OrPB     Amount in LC1 ( G/L acct   BusA TPBA Amount in LC1 (INR) 90001100    

  • How to edit menu down arrows?

    In my horizontal menu navigation bar, the down arrows are too far from text. How to edit?

  • Message restrictions

    Hi Y'all, I have been going through the weblogs for splitting the messages at the message mapping level either by using context or by using the nulti mapping techniques. Also I hear that there is a restriction of not able to use these for Integration

  • ValueHolder vs. Proxy Indirection

    Hi all, We have a new project and we must decide what kind of indirection we'll use. I analyzed both indirection types, and noticed that ValueHolder is simpler but kind of 'pollutes' the code, OTOH proxy indirection is transparent but it needs to hav