SOAP Sender with additional header: Interface determination error

Hello Experts,
I need to implement a scenario where in sender will add custom header fields and in PI, the values needs to captured. Second step: Based on the custom header value, the receiver needs to be determined.
Scenario: SOAP Sender -> PI -> SOAP Receiver
Request Message:
<RequestMsg>
     <request>
          <Field 1>...</Field 1>
          <Field 2>...</Field 2>
          <Field 3>...</Field 3>
     </request>
</RequestMsg>
Without any custom SOAP header, I have created Request / Response Message, Message Mapping, Service Interfaces (Inbound & Outbound) and Operation Mapping and tested the scenario by triggering call through SOAP UI, it works fine. SOAP Request XML looks like below:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:v1="http://www.test.abc.com/v1">
    <soapenv:Header />
    <soapenv:Body>
      <v1:RequestMsg>
         <request>
              <Field 1>1</Field 1> 
               <Field 2>2</Field 2>
               <Field 3>3</Field 3>
         </request>
      </v1:RequestMsg>
   </soapenv:Body>
</soapenv:Envelope>
To use customer fields in SOAP Header, I have checked the option "Do Not Use SOAP Envelope" in the SOAP Sender CC and added "&nosoap=true" to url. SOAP Request XML looks like below:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:v1="http://www.test.abc.com/v1">
    <soapenv:Header >
          <id>REC1</id>
     </soapenv:Header >
    <soapenv:Body>
      <v1:RequestMsg>
         <request>
              <Field 1>1</Field 1> 
               <Field 2>2</Field 2>
               <Field 3>3</Field 3>
         </request>
      </v1:RequestMsg>
   </soapenv:Body>
</soapenv:Envelope>
Now, when I invoke the url, I see that the message reaches PI but it throws error: RoutingException: InterfaceDetermination did not yield any actual interface
Please note that I have added a Java Mapping before main message mapping to read the soap header and pass only the request message to the next message mapping.
I am sure, I am missing important steps in the configuration. Please help me in reolving the issue.
Thanks & Regards,
Ankit Srivastava

Hello Hareesh,
Bingo! The second option suggested by Nicolas worked like a charm. I am just copying the same here:
-----In ESR, you set the attribute "Interface Pattern" of the outbound service interface as "Stateless (XI30-compatible)", which does not use operations.----
Thanks a lot. Now, I will be able to concentrate on the next steps.
Regards,
Ankit Srivastava

Similar Messages

  • How to send a signed SOAP message with additional HTTP Header fields

    Our Partner's integration requirements are that we send them asynchronous SOAP messages, that are digitally signed, and whose HTTP headers contains 5 or 6 additional header fields, of which 3 or 4 will need to be dynamically set during the message mapping.  I believe we can use the HTTP adapter for adding new fields to the HTTP header, but don't believe it supports signing.  I believe that the SOAP adapter supports signing, but I'm not clear on how to use it to add fields to the HTTP header.  What is the most straight-forward way to achieve both the signing of the message and the addition of the HTTP header values?
    Thanks,
    Kurt

    >>>What is the most straight-forward way to achieve both the signing of the message and the addition of the HTTP header values?
    Use Java mapping for both.
    1) Signing the message
    You can digitally sign the soap message using many standard api like WSS4j? or  refer Java XML signature API which comes in Jdk1.6.
    Refer these links
    WSS4J  -  http://ws.apache.org/wss4j/axis.html
    Java XML signature : http://java.sun.com/developer/technicalArticles/xml/dig_signature_api/
    2) >>whose HTTP headers contains 5 or 6 additional header fields, of which 3 or 4 will need to be dynamically set during the message mapping
    Use Dynamic configuration API to set the additional header fields during message mapping.

  • Sending a SOAP Envelope with empty header

    Hey all,
    I'm contacting a BPEL Web Service from my ADF JSF application. I can send a request which starts a BPEL process, but the problem is the process wil lalways generate a fault because I can't let the Header empty. I'm always forced to enter a "ReplyTo" etc.
    Is there a way to send a SOAP envelope with an empty header? Cause in that case, the whole BPEL flow works like a charm.
    Thanks in advance,
    Stijn.

    I managed to work around it myself.
    I simply created a Java Proxy for the webservice and use that Proxy in the Application Module (create an instance of it and call the desired method). Obviously, now you can pass null value parameters to the method, while you can't do that when you use the Web Service in a Data Control.

  • Send SOAP commands with a header

    I have been playing with the SOAP function in applescript and would really like to be able to send a xml command with a header and a body. I need to send the header because it contains the authentication info.
    Is there a way to send commands with a custom header?
    or is there a shell command that would work better here?
    this is the info I have been referencing:
    http://developer.apple.com/documentation/AppleScript/Conceptual/soapXMLRPC/chapt er3/chapter3_section_3.html#//apple_ref/doc/uid/TP30001126-//appleref/doc/uid/20001723-BAJBFJBD

    first, SOAP services don't work that way. Here is a snippet of my SOAP call to check my email:
    on getPOPmessageCount(popserver, _popserverport, _login, _password)
    tell application "http://www.cosme.nu/services/pop.php"
    set POPmessageCount to (call soap ¬
    {method name:"countmessages", method namespace uri:"http://www.cosme.nu/services/", parameters:¬
    {popserver:_popserver, popserverport:_popserverport, login:_login, |password|:_password} ¬
    , SOAPAction:"http://www.cosme.nu/services/pop.php"})
    end tell
    return POPmessageCount
    end get_POPmessageCount
    There are required parameters for login name & password by www.cosme.nu. AS SOAP call takes care of formatting.
    Since we are hosting the services ourselves
    internally, is there something that I can change on
    the server that would help?
    You need to check with your system admin, is your server running SOAP/RPC services?

  • BPM interface determination error

    Hi All,
    i have BPM scenario. scenario like three files coming from the sender  once picking the all file i have to merge these file based on the common filed in three files.
    for this i used correlation in BPM
    i followed the below steps:
    1)  i creatd three out bound service interfaces for the sender three files
    2)  one inbound  service interface for the  receiver.
    3)  four abstract service interfaces for the BPM.
    5)  Operation mapping between the abstract interfaces.
    ID objects creation :
    imported the integration process in ID from IR.
    communication componets created for the sender & receiver
    4 receiver determinations created 3 RD between Sender bussiness component & BPM ,1 RD between BPM & receiver business component
    4 Interfaces determinastion created as per as RD
    3 sender agreements
    1 receiver agreement
    while testing i got this error in SXMB_MONI
    RCVR_DETERMINATION">CX_RD_PLSRV</SAP:Code>
      <SAP:P1>Problem while determining receivers using interface mapping: No operation with XML root tag
    i got confusion while creatin the Interfaces Determination i.e weather do we need mention Operation mapping between outbound service interface & abstract service interface
    please correct what is the correct process to create the Interface determination in BPM like this scenario.
    thanks in advance

    Are you doing any content conversion in Sender file Adapter then check whether the Flat file properly converted to XML file or not?
    You need to create Interface determination but if source and target interface message type is same then no need to specify operation mappinhg in Interface determiination.
    So interface determination should be there without any operation mapping

  • SOAP Sender with HTTP(with SSL)=HTTPS with Client Authentication config

    Hi All,
    I have a Web-service-XI-Proxy scenario where we use SOAP Sender Adapter with HTTPs.  Double authentication (client- server) sertificate shall be used.
    Testing simple HTTP and XI user name/password works fine.
    Now I installed requred sertificates in TrustedCA and ssl-provider in VIsualadmin.
    But i can't see how i can configure certificates in SOAP sender Adapter. I've just did SOAP receiver for another scenario and there I could give keystore entry.
    I also doesn't know how to disable asking for name/password.  I am using XI 7.0.
    Please advise.
    Thanks,
    Nataliya

    Hi Nataliya,
    Go to SOAP Adapter> Inbound Security Checks-> HTTP Security Level--> Here you can specify  option "HTTP with Client Authentication. 
    One more thing HTTP Security level option is always available in Sender Adapter.
    For more clarity about HTTPS find below link.
    http://help.sap.com/saphelp_nw04/helpdata/en/14/ef2940cbf2195de10000000a1550b0/content.htm
    To enable the TrustedCA in SOAP Sender adapter. Go SOAP Sender> Security Parameter> Security Profile--> Web Service
    security. Then go to sender agreement there you need to give key store entry.

  • XI3.0: Soap Sender with HTTPS

    I have enabled HTTPS on our J2EE stack.
    We have a soap sender which works fine using http and username/password authentication.
    When I switch "HTTP Security level" on the SOAP sender to "HTTPS without client authentication" and sends the SOAP request to the HTTPS port XI (j2ee) returns a HTTP errorcode 403 Forbidden. No explanation, and I can't find any traces in the logs.
    Please help/advise!
    -AD

    The solution was very simple!
    The client accessing XI was using a .NET application which picked up Internet explorer's proxy settings, even if the .NET application it self activly set NO proxy!,...and that proxy did not allow https
    Nothing to do with XI at all. Everything worked as soon as we got rid of that.
    -AD

  • SOAP sender adapter and several interfaces

    I have several interfaces and want to connect them via SOAP sender adapter. How can I use 1 communication channel for this interfaces? or do i need to create communicaton channel for each interface?

    Hi,
    you can't use one communication channel, cause you got different WS.
    As you have a WS individual parameter (
    SOAP action) in the communication channel you need individual communication channels.
    A workaround would be to develop a >wrapper WebService< and deploy it on the backend. This Wrapper is able to call the different other WSs.In this case you need only one CC. Additionaly you need a parameter, which tells the wrapper-WS which individual WS he has to call.
    Regards Mario
    Message was edited by:
            Mario Müller

  • Creating interface determination error

    Hi Experts,
    I upgrade the our PI system to
    XI TOOLS 7.10 SP006 11
    XI PCK 7.10 SP006 11
    After that, i cant create interface determination with wizard. When i finish the wizard, interface determination isnt created and there is a lock in the integration builder.
    I tried to make manual interface determination but i cant select the operation mapping..
    im waiting ur answers
    thanks

    Hi,Arvind:
      Did you upgrade to SPS06 with the whole SP stack or just upgrade several components of PI?
      If you just upgrade several components of PI,it is not recommended by SAP.
      If you upgrade the whole components with SPS06,try to upgrade to SPS07 and take a look at NOTES:1259837&1263112, or the java component "ESPFRAMEWORK07_0-20001918" can not be deployed successfully.
    regards
    yu ming

  • Need Help for  SOAP sender with HTTPS protocol

    Hi Team
    We have a scenario where the sender is a 3P system and they will be sending the message using web service.They will send the data using SSL ( HTTPS) using certificates.
    In the sender soap adapter , I have two options
    1. HTTPS with client Authorization
    2. HTTPS without client Authorization
    I think I need to use the first option. But I have doubt regarding certificates
    1. Who is going to provide the certificate? is it PI Team or the third party team.
    2. Once we have the certificate where we need to store it in NWA? is it in the TrustedCA keystore view or service_ssl keystore view.

    Hi Indrajit,
    Krupa already shared a valuable resource on how to set up on Double Stack PI, so I'll focus on what's left to deal with / open questions.
    Indrajit Sarkar wrote:
    In the sender soap adapter , I have two options
    1. HTTPS with client Authorization
    2. HTTPS without client Authorization
    I think I need to use the first option. But I have doubt regarding certificates
    1. HTTPS with client authorization means that the 3rd party would not give username / password to authenticate to your PI but present a certificate you are trusting. You can think of this as an admission ticket to communicate with your PI server
    2. HTTPS without client authorization means they will authenticate with username password.
    In both cases the caller (3rd party) would need to trust your PI server. Most commonly this trust is established by not trusting your PI server's explicit certificate but in trusting the CA that issued your PI server's certificate. This CA can very well be a company internal CA. That way, if you happen to need changing the hostname of the server some time in the future, trust situation is still valid.
    In case of 1. (HTTPS with client authorization) your PI server in turn would also need to trust the 3rd party caller. This is often done in such ways that the interal CA on your side issues a client certificate with the CN of the caller. The caller presents this certificate to your server upon making a call (see here for a picture https://help.sap.com/saphelp_nw74/helpdata/en/43/dc1fa58048070ee10000000a422035/content.htm). You will also need to back up this process on your PI server by mapping the certificate to a specific user.
    --> Option 2 is the more polished one with ability to withdraw a certificate and the like. However it does result in some overhead setting it up so I personally would go with Option 1 if there's no business need / security policy enforcing so.
    HTH
    Cheers Jens

  • SOAP Axis sender with CSV file attachment

    Hi Experts,
    I have a requirement where I receive a CSV file attachment from a Web Service post ( i.e a SOAP sender with attachment). I decided to use SOAP with Servlet(Axis) protocol, since standard SOAP sender does not allow modules to be used.
    I am able to test this interface through SOAPUI with attachment to the point where I can get the attachment payload as my main payload in IE, but it fails in mapping since CSV needs to be converted to XML. I have following queries for proceeding ahead with this scenario:
    1. How do I convert the CSV attachment to XML inorder for mapping to be used in IE. Is there a standard axis handler available for this ???? Also where should this handler be called in the sequence of Axis modules ???
    2. Can I use MessageTransformationBean for converting plain to XML ??? If yes where should this module be called in the sequence of Axis modules. I tried using this module between the CallSapAdapter and the first AdapterBean but it returns exception in SOAPUI saying " Messaging exception: No Main"
    3. Is there a blog available which illustrates about using additional modules/handlers in Axis. I have had a look at the FAQ note of Axis but it just gives the overview.
    Thanks.
    Siddhesh S.Tawate

    Solved :).
    1     AF_Adapters/axis/HandlerBean                     Local Enterprise Bean                              xireq
    2     AF_Adapters/axis/AFAdapterBean                     Local Enterprise Bean                              afreq
    3     localejbs/AF_Modules/MessageTransformBean    Local Enterprise Bean                     Plain2XML
    4     CallSapAdapter                                          Local Enterprise Bean                              sap
    5     AF_Adapters/axis/AFAdapterBean                    Local Enterprise Bean                             afresp
    6     AF_Adapters/axis/HandlerBean                    Local Enterprise Bean                             xires
    Above sequence worked. I guess I was missing some parameter in content conversion earlier.
    Thanks.

  • Use Moduls with SOAP Sender Adapter

    Hi Experts,
    I have a question regarding the use of modules in the soap sender adapter / communication channel. Is it correct that the use of modules in the soap sender adapter is not possible?
    the background of my question is that we use modules from SEEBURGER in our Communication channels for archiving incoming and outgoing documents. the use of modules in the soap receiver adapter is possible. why not in the soap sender???
    according to the sap help it is possible to use the axis framwork in the soap adapter. then it should be possible to use modules. Is that correct? I tested it but it is not working. If I send a soap message (with the soap reveicer adapter) to the axis soap sender adapter there occure internal server errors. it is only working if I write my own modules for the axis soap sender adapter? is it not possible to use external modules like in other channels (File/FTP, soap receiver etc.)???
    thanks and best regards!
    Christopher

    we have moduls from SEEBURGER. so I have to test it. but before I need a scenario with which I can test it.
    We have a customer who sends xml-files per soap to us. these files we receive succussfully with the soap sender adapter. now we want to use some modules. so we have to use the axis soap sender adapter. I tried to send an xml file with the soap receiver adapter to the axis soap sender adapter, but this was not working. http 500 internal server errors occurred. is it possible that this scenario (soap-to-axis-soap) is not working? need I a specific configuration for this?
    thanks and regards
    Christopher

  • Abap proxy with attachments in enhanced interface determination/mapping

    Hi guys.
    We were receiving a abap proxy from ECC with a pdf attached in the header.
    This was the scenario PROXY ---> FILE
    We used the PayloadSwapBean Module in a Receiver File Adapter to get this document and put it in a FTP Server.
    Now we have to make and improvement in the scenario and we have to generate two receiver interfaces so the scenario looks like this:
    PROXY ---> FILE and JDBC.
    So we have to use an enhanced interface mapping and an enhanced interface determination.
    The problem is that with this enhanced interface determination/mapping the attached document is lost.
    Any solution?
    Thanks a lot.
    Regards.

    > The problem is that with this enhanced interface determination/mapping the attached document is lost.
    I know there was an issue in early PI 7.1 SP versions. maybe you find a bug fix for this?
    Otherwise report to SAP.

  • When we  will go for Ectended Interface Determination

    extended interface determination example give me any one...
    Regards,
    Vinay

    Enhanced (Mapping-Based) Interface Determination 
    Use
    In an enhanced interface determination, you do not enter the inbound interfaces manually, but first select a multi-mapping. You get the inbound interfaces from the target interfaces of the multi-mapping. The inbound interfaces are determined at runtime during the mapping step.
    You typically use an enhanced interface determination if the source message has an element with occurrence 0 ... unbounded (for multiple items of a data record) and you want multiple messages (for the individual items) to be generated at runtime.
    For example, you want to split an overall booking for a trip comprising connecting flights into individual booking orders (for each leg of the trip).
    You cannot realize this usage case with a standard interface determination (without using an integration process). A standard interface determination does allow you to specify multiple (N) inbound interfaces (with different mapping). In this case, N messages with the same payload and different receiver interfaces are generated from the source message before the mapping step; these are then transformed differently depending on the receiver interface. Therefore it is conceivable to write the mappings in such a way that the first mapping from the source message generates a message that only contains the first item, the second mapping generates a messages that only contains the second item, and so on. However, this no longer works if the number of items can vary with each new source message.
    You can use an enhanced interface determination to configure a mapping-based message split for this usage case. You assign the interface determination a multi-mapping that has a target interface with an element with occurrence 0...unbounded. At runtime, the individual messages (for the individual items) are calculated in the mapping step. First, the individual messages are grouped into a bulk message. Then, the bulk message is transferred to the Adapter Engine. The Adapter Engine then splits the bulk message up into the individual messages (see figure).
    Procedure at Runtime During Message Split
    Note that both the bulk message and all individual messages each have a message header with a receiver interface (see figure).
    Receiver Interfaces of Bulk Messages and Individual Messages
    The header of the individual messages contains the relevant receiver interface. It is based on the definition of the multi-mapping. Note that the receiver interfaces of the individual messages may be different. The receiver interface of the bulk message is always InterfaceCollection (namespace http://sap.com/xi/XI/System).
    If the message split only results in one message, the original message structure remains the same. In this case, a bulk message containing just one individual message is not created.
    You can also assign a multi-mapping with multiple different target interfaces to an enhanced interface determination (1:n transformation). Each target interface can contain elements with occurrence 0 ... unbounded.
    Messages cannot be sent by using different Adapter Engines in a mapping-based message split. This affects configuration thus: All receiver agreements that have a receiver interface from the mapping entered in the key must only be assigned communication channels with the following adapter types:
    -          RFC adapter
    -          SAP Business Connector adapter
    -          File/FTP adapter
    -          JDBC adapter
    -          JMS adapter
    -          SOAP adapter
    -          Marketplace adapter
    -          Mail adapter
    -          RNIF adapter
    -          CIDX adapter
    The adapters also have to all run on the same Adapter Engine.
    Adapters developed by partners also support a mapping-based message split if they run on the same Adapter Engine.
    Attachments from the original message are not appended to the messages resulting from the message split.
    Activities
    To execute a mapping-based message split, perform the following steps:
           1.      Integration Repository: Define the multi-mapping (see Developing Multi-Mappings for Message Splits).
           2.      Integration Directory: Define the interface determination.
    Note the following:
    ○     The outbound interface of the multi-mapping must be entered as the sender interface in the key of the interface determination.
    ○     The interface determination type must be set to Enhanced.
    ○     Select the multi-mapping you defined previously from the Integration Repository.
    To select the interface mapping, use the input help ( ).
    The target interfaces of the interface mapping are displayed in the Inbound Interfaces frame.
    The number of messages (for an inbound interface) created in the mapping step is displayed in the Occurrence column.
    regards,
    Raj

  • Extended Receiver & Extended  Interface Determination

    Hi Experts,
    Can any tell me what is Extended Receiver & Extended  Interface Determination.
    And the Difference between Standard Receiver & Standard Interface Determination.
    were to use Extended Receiver & Extended  Interface Determination.
    Thanks in advance
    Shakif

    Hi,
    Standard Receiver Determination Features
    Specifying Receivers
    You can specify receiver parties and receiver services. To specify the receiver in more detail, you have the following options:
    &#9679;     Select the receiver from the Integration Directory
    &#9679;     Specify a constant value for the receiver
    &#9679;     Determine the receiver dynamically from the message content
    To enter the necessary details, use the following:
    &#9679;     The party editor for specifying the receiver party
    &#9679;     The service editor for specifying the receiver service
    To call the relevant editor, in the Display/Edit Receiver Determination editor in the Configured Receivers frame, call the Input Help ( ) in either the Party or Service column.
    Defining Conditions
    You also have the option of specifying the conditions to be applied when forwarding a message to the receiver(s) in a receiver determination.
    Generally, a condition relates to the contents of a message; if a specified condition is fulfilled for a particular payload element (the corresponding element has a certain value, for example), then the message is forwarded to the specified receiver(s).
    &#9679;     If you want to specify a new condition for forwarding the message to a receiver, in the table in the Display/Edit Receiver Determination editor in the Configured Receivers frame, choose Insert New Condition () and call the condition editor by using the input help ().
    &#9679;     If you want to specify a new condition for forwarding the message to multiple receivers, in the table in the Display/Edit Receiver Determination editor in the Configured Receivers frame, choose Insert Line After Selection ( ) and call the condition editor  by using the input help (). 
    In the condition editor, you can select an element from the message payload and specify a value with which the value of this element is to be compared at runtime.
    Enhanced Receiver Determination
    Use
    You use an enhanced receiver determination to have a mapping program determine the receivers of the message dynamically at runtime. Instead of creating the receivers in the receiver determination manually, you assign a mapping to the receiver determination and this returns a list of receivers at runtime.
    A typical usage case is if you do not yet know the names of the receivers at configuration time. In this case, you can define a mapping program, for example, which reads a list of receivers from a table or from the payload of the message at runtime.
    You can of course formulate conditions in a standard receiver determination that relate to the content of the message. However, you have to specify the names of the receivers (to which the message is sent under the formulated condition) explicitly in the receiver determination. If you create an enhanced receiver determination, you do not have to specify receiver names at this stage. 
    Integration
    During the definition of the interface mapping, you assign the abstract message interface ReceiverDetermination as the target interface. The message interface ReceiverDetermination is in the Integration Repository in the software component SAP BASIS (namespace http://sap.com/xi/XI/System).
    The message interface uses the message type Receivers and the data type Receivers. The data type Receivers describes a list of receivers and has the following structure:
    The following instance of the data type Receivers contains two receivers. The first receiver comprises a party and service and is identified by a DUNS number; the second receiver comprises a service without a party.
    <Receivers>
    <Receiver>
        <Party agency=“016“ scheme=“DUNS“>123456789</Party>
        <Service>MyService</Service>
    </Receiver>
    <Receiver>
        <Party agency=“http://sap.com/xi/XI“ scheme=“XIParty“></Party>
        <Service>ABC_200</Service>
    </Receiver>
    </Receivers>
    You can specify party and service for each receiver.
    Activities
           1.      Integration Repository: Define the interface mapping. Assign the message interface ReceiverDetermination as the target interface (see above).
           2.      Integration Repository: Define the message mapping or mapping program that is to determine the receivers at runtime. Assign the message mapping or mapping program to the interface mapping.
           3.      Integration Directory: Define an (enhanced) receiver determination.
    &#9675;     Enter the outbound interface of the interface mapping from step 1 in the key of the receiver determination as the outbound interface.
    &#9675;     Assign the interface mapping created in step 1 to the receiver determination.
    Standard Interface Determination
    Use
    You can specify to which inbound interfaces at the receiver the message is to be sent at runtime. You also have the option of specifying a mapping and (when multiple inbound interfaces are defined) a condition for each inbound interface.
    Note the following fundamental cases when assigning multiple inbound interfaces:
    Multiple Different Inbound Interfaces
    Imagine you enter the following interface assignment.
    Inbound Interface
    Condition
    Interface Mapping
    IF_1
    M_1
    IF_2
    M_2
    After the interface determination is evaluated, this results in two messages with the same payload at runtime. A different mapping (either M1 or M_2) is executed for both messages and then they are forwarded to the two interfaces (either IF_1 or IF_2) at the receiver. 
    Multiple Identical Inbound Interfaces with Conditions
    Imagine you enter the following interface assignment.
    Inbound Interface
    Condition
    Interface Mapping
    IF_1
    B_1
    M_1
    IF_1
    B_2
    M_2
    In this case, the conditions are evaluated during the interface determination step. If condition B_1 is true, then mapping M_1 is executed; if condition B_2 is true, then mapping M_2 is executed. The message is forwarded to the same inbound interface at the receiver in both cases. Unlike in the case described above, this does not result in multiple messages with the same payload because only one condition can ever be true at runtime.
    Features
    You enter the assignment between the outbound interface and the inbound interface(s) in a table. Each table line represents exactly one assignment between the outbound interface and an inbound interface. To insert or delete lines, choose Insert One Line After Selection () or Delete Selected Line ().
    Enhanced (Mapping-Based) Interface Determination
    Use
    In an enhanced interface determination you do not enter the inbound interfaces manually, but instead first select a multi-mapping. You get the inbound interfaces from the target interfaces of the multi-mapping. The inbound interfaces are determined at runtime during the mapping step.
    You typically use an enhanced interface determination if the source message has an element with occurrence 0 ... unbounded (for multiple items of a data record) and you want multiple messages (for the individual items) to be generated at runtime.
    For example, you want to split an overall booking for a trip comprising connecting flights into individual booking orders (for each leg of the trip).
    You cannot realize this usage case with a standard interface determination (without using an integration process). A standard interface determination does allow you to specify multiple (N) inbound interfaces (with different mapping).  In this case, N messages with the same payload and different receiver interfaces are generated from the source message before the mapping step; these are then transformed differently depending on the receiver interface. Therefore it is conceivable to write the mappings in such a way that the first mapping from the source message generates a message that only contains the first item, the second mapping generates a messages that only contains the second item, and so on. However, this no longer works if the number of items can vary with each new source message.
    You can use an enhanced interface determination to configure a mapping-based message split for this usage case. You assign the interface determination a multi-mapping that has a target interface with an element with occurrence 0...unbounded. At runtime, the individual messages (for the individual items) are calculated in the mapping step. First, the individual messages are grouped into a bulk message. Then, the bulk message is transferred to the Adapter Engine. The Adapter Engine then splits the bulk message up into the individual messages (see figure).
    Procedure at Runtime During Message Split
    Note that both the bulk message and all individual messages each have a message header with a receiver interface (see figure).
    Receiver Interfaces of Bulk Messages and Individual Messages
    The header of the individual messages contains the relevant receiver interface. It is based on the definition of the multi-mapping. Note that the receiver interfaces of the individual messages may be different. The receiver interface of the bulk message is always InterfaceCollection (namespace http://sap.com/xi/XI/System).
    If the message split only results in one message, the original message structure remains the same. In this case, a bulk message containing just one individual message is not created.
    You can also assign a multi-mapping with multiple different target interfaces to an enhanced interface determination (1:n transformation). Each target interface can contain elements with occurrence 0 ... unbounded.
    Messages cannot be sent by using different Adapter Engines in a mapping-based message split. This affects configuration thus: All receiver agreements that have a receiver interface from the mapping entered in the key must only be assigned communication channels with the following adapter types: 
    -          RFC Adapter
    -          SAP Business Connector Adapter
    -          File/FTP Adapter
    -          JDBC Adapter
    -          JMS Adapter
    -          SOAP adapter
    -          Marketplace adapter
    -          Mail Adapter
    -          RNIF adapter
    -          CIDX Adapter
    The adapters also have to all run on the same Adapter Engine.
    Adapters developed by partners also support a mapping-based message split if they run on the same Adapter Engine.
    Attachments from the original message are not appended to the messages resulting from the message split.
    Activities
    To execute a mapping-based message split, perform the following steps:
           1.      Integration Repository: Define the multi-mapping (see Developing Multi-Mappings for Message Splits).
           2.      Integration Directory: Define the interface determination.
    Note the following:
    &#9675;     The outbound interface of the multi-mapping must be entered as the sender interface in the key of the interface determination.
    &#9675;     The interface determination type must be set to Enhanced.
    &#9675;     Select the multi-mapping you defined previously from the Integration Repository.
    To do so, call input help ().
    The target interfaces of the interface mapping are displayed in the Inbound Interfaces frame.
    The number of messages (for an inbound interface) created in the mapping step is displayed in the Occurrence column.
    Regards,
    Phani
    Reward points if Helpful

Maybe you are looking for

  • Does anybody have a matte key for fcp  Urgent!!!

    Hi i need a matte key. I am trying to insert pics withing a matte i have a bground layer then the matte layer then the fill on top. I cant find a matte key in FCP. Can anyone help. Thanks Martin

  • Advance input tax

    Dear All,   In the Advance tax report for input tax, (S_ALR_87012357), in case of LST, the base amount,  input tax amount and  gross amount is not coming properly. The VAT amount is coming in the base amt column, Surcharge in tax amount and total of

  • High Quality Album Artwork.

    I want to 'fill in the blanks' that iTunes has left for all of my album artwork. I tried using jpgs that I acquired from wherever over the Internet but they just don't look that great large. I'd really like to get the same quality resolution pics tha

  • Looking for Synths

    So I recorded some synths on Garageband for my Iphone and now I'm trying to reproduce them. However when I booted up my lovely lady friends version of Garageband it was missing the synth that I had been using. She doesn't have the newest version and

  • Need help with Bridge on a Mac

    I am using Bridge CS4 version 3.0.0.464 on a mac.  [no Lion yet] I have been finding that Bridge has been closing unexpectedly, particularly when I use the batch rename function.  This has been happening more often recently, up to at least once per s