Multi mapping for Synchronous Interface (RFC)

Is it posssible to define synch multimapping (RFC)?
For exmaple my structure is
request
<items>
<item>
</item>
<item>
</item>
</items>
I want  to invoke RFC for each <item> and to get response like
<responseitems>
<item>
</item>
<item>
</item>
</responseitems>
Do I need synch BPM or it is possible without?

Hi,
u can do these buy settin the rfc to rfc to unbounded and map the items with the rfc so for every item u will get a rfc.
u can use <b>packaging</b> to perform the multimapping where u can avoid bpm.just create a external defnition for ur rfc and change the occurance of the rfc to 0..unbounded and use the external definition for mapping.
so for each <b>item tag a rfc will be generated</b>.
To get the response give ur inbound interface as synchronous.
regards
jithesh
Message was edited by: jithesh balakrishnan

Similar Messages

  • Multimapping for Synchronous interfaces.

    Hi,
    Is it possible to do multi mapping for synchronous interfaces.
    I have observed that when the cardinality of the target service  interface is changed to 0:unbounded , the response message mapping  tab disappears from operation mapping.
    Can anyone please suggest how it can be handled?
    I have a requirement to call a webservice and then write multiple files from the webservice response.

    Hi Soumya,
    i dont think so ...if you think theroitically. you are doing multimapping   where u  have a N:M relation... so it will be difficult match the respose directly.
    Since your scenario is syncrhronous, u have to rember the identity of source messgaes and then u need to reply back to those same identitiies. That means u have to use correlations  and that can be achived by BPM.

  • Dynamic receiver determination for synchron interface

    Hello everybody,
    I want to use dynamic receiver determination for a synchron scenario.
    The problem is, that the interface 'ReceiverDetermination' (http://sap.com/xi/XI/System SAP BASIS 7.00) is a asynchron interface.
    This leads to an error when activating the Interface-Mapping (synch source Interface -> asynch destination Interface ReceiverDetermination)
    Is there a way to use the dynamic receiver determination for synchron interface?
    Thanks a lot,
    Thomas

    Hi Thomas,
    I guess your scenario is not possible ASIS, since XI doesn't support 1:n for sync interfaces (and even if your mapping condition reduces it to 1:1, actually it is still 1:n, since your receiver list is unbounded).
    Theoretically, you could make it work with BPM, though.
    But I've never worked with a Receiver Determination Step reading from an enhanced receiver determination in ID (though there should be no problems).
    Use sync async bridge, then use receiver determination step to obtain the receiver from an enhanced Receiver Determination. Pay attention that this enhanced receiver determination is a dummy one, using a mapping from your async abstract interface to the ReceiverDetermination interface. Once your mapping has determined the receiver, the enhanced receiver determination will return that receiver to the Receiver Determination step in the BPM. Then use this receiver in the sync send step (in mode receiver from receiver list, not from context).
    The receiver determination of the actual sync send step may be a standard one, with the several receivers there (even if there are several there, at the moment of the sending, only one will be used).
    Maybe it will work, maybe not.
    Just try it.
    Regards,
    Henrique.

  • Http adapter at sender side for synchronous interface

    Hi SapAll.
    here for one synchronous interface we using http adapter at sender side.
    i just want to know on how i can get the sender ip adress or url through which they sending the data.
    will be waiting for best asnwer.
    regards.
    Varma

    Http adapter at sender side for synchronous interface
    i cont see any messages in xi producction.
    Is LOGGING_SYNC enabled for your production box....also is the problem just about the visibility of the messages or is your scenario itself not getting executed?
    At least the sender application might have received some error response if posting message to XI was a failure....also if possible check the message monitoring in RWB if you feel an error has occured.
    Regards,
    Abhishek.

  • Enhanced Receiver Determination for synchronous interface.

    Hello!
    Was anyone faced with the Enhanced Receiver Determination? When I try to create
    the definition of the Interface Mapping, I get the error:
    "Interface modi are different. Source interface Message Interface MI_My_sync_iface | urn:my is synchronous. Target interface Message Interface ReceiverDetermination | http://sap.com/xi/XI/System is asynchronous"
    Thank you.

    Hi ,
    U can go through below limks  :
    Illustration of Enhanced Receiver Determination - SP16
    SAP NetWeaver Process Integration: Enhanced Receiver Determination for Synchronous Scenarios
    Enhanced Receiver Determination in SAP XI - Exchange Infrastructure - Wiki
    https://www.sdn.sap.com/irj/sdn/wiki?path=/display/xi/enhanced%2breceiver%2bdetermination%2bin%2bsap%2bxi
    Thanks

  • Multi Mapping   for a simple scenario

    Hi,
       i have   a scenario    i.e. from the source I'm getting some 10 fields of data..   like  bellow..
    Data:                      0--- Unbounded
        Company_Code   1-1
        Order_No            1-1
        Material              1-1
        Amount              1-1
    but my requirement is.. in the receiver side i have two structures.. 
    1)Receiver1
    Data:                      0--- Unbounded
        Company_Code   1-1
        Order_No            1-1
    2)Receiver2
    Data:                      0--- Unbounded
        Company_Code   1-1
        Material              1-1
        Amount              1-1
    if the Company Code is  1000  then   the data wil goes to First Receiver..   and  if the  Company Code is 2000  then the data will goes to Second Receiver
      This is my requirement..
      for this.  idid IR point of view every thing correctly by using multi  mapping..  even if i test the mapping that is working fine..
    but  in the ID(Integration Directory ) i'm not able to see any  Interface mappings .  in the Enhanced  Interface detremination..    It was displaying No Objects Found.. message..
    for that what  can i do..   any suggestions.. please..
    regards
    Jain

    Hi jain,
      I think you confused with  occurance.
      For your recurement You created a structure with 0-unbounded in the Source and Receivers.
      There is no need of change the Message type and Interface Name Structure occurances.
      Just Do like belllow.
      1. Mapping:
         select your source structure.
         select your Receiver structures.
         Put the condition for creating Nodes for the Receiver structures.
         There is No need of change occurances.
      2.InterFace Mapping:
         Select Your source message Interface.
         Select your Receiver interfaces.
         Have (1 Mapping) 1 source ,2 Receivers.
         There is No need of change occurances.
    Now go to Interface Determination.Choose extened.you will get your mapping.
    Regards,
    Prakasu

  • Enabling to see the Source payload for synchronous Interface

    Hi Experts,
    Am working on a SOAP <-> RFC synchronous interface and PI version is 7.4 dual stack. Am unable to see the source payload when a
    message is triggered from the Source Webservice. I can only see the receiver payload in RWB for request msg i.e the RFC payload.
    Even for Response, I can only see the receiver payload which is sent to webservice and not the source payload from ECC on the RFC.
    I have built the interface using ICO. I have made the changes in NWA, by setting the RemoveBody field to false.
    Please let me know if any other settings are required. I have checked all other threads related to this issue and could not find the solution
    to my issue where only the source payload in the synchronous interface is missing. In case of Asynchronous interface, the source payload
    is visible.
    Please assist me how can I enable this.
    Regards,
    Vish...

    Hi Vishwanath,
    Please check the below blog
    Message Staging and Logging Options in Advanced Adapter Engine of PI 7.3x
    regards,
    Harish

  • Multi-mapping for ibound IDOC

    Hi! All
    It would be of great help if you provide your suggestions on:
    Mapping one XML source file to 6 IDOC receivers, 2 of them are of the same type and 4 are distinct idoc types.
    I tried multi-mapping and received the following error:
    "Messages in multi-message format can only be sent to one Adapter Engine"
    Looks like IDOC adapter does not support multi mapping...
    Can you please suggest any other option apart from using BPM(since it consumes lot of resources).
    Thanks a lot!!
    Regards,
    Patrick

    Hey
    its not possible to do Multimapping over IDOC's without BPM.
    other way around can be to do a single -single scenario,suppose u have 6 IDOC's to post then u need to design 6 different scenarios for them.
    without BPM you cant do multimapping for IDOC or HTTP
    Thanx
    Aamir
    Message was edited by:
            Aamir Suhail

  • Java Mapping for JDBC Interface

    Hi,
    please help on java mapping for my jdbc interface.
    my java code for jdbc is:
    Created on May 7, 2008
    TODO To change the template for this generated file go to
    Window - Preferences - Java - Code Style - Code Templates
    package XiMappingDB2.com.xi.test;
    @author miracle
    TODO To change the template for this generated type comment go to
    Window - Preferences - Java - Code Style - Code Templates
    Created on May 2, 2008
    To change the template for this generated file go to
    Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
    package com.xi.test;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.Statement;
    import java.util.HashMap;
    import java.util.Map;
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    import org.w3c.dom.Document;
    import org.w3c.dom.Element;
    import org.w3c.dom.Node;
    import org.w3c.dom.NodeList;
    import com.sap.aii.mapping.api.AbstractTrace;
    import com.sap.aii.mapping.api.MappingTrace;
    import com.sap.aii.mapping.api.StreamTransformation;
    import com.sap.aii.mapping.api.StreamTransformationConstants;
    import com.sap.aii.mapping.api.StreamTransformationException;
    @author kotla
    To change the template for this generated type comment go to
    Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
    public class NameMerge implements StreamTransformation  {
         private Map param = null;   
         private MappingTrace trace = null;
         public void setParameter(Map param){       
         this.param = param;
         if (param == null) { 
         this.param = new HashMap();
         public void execute(InputStream input, OutputStream output)      
         throws StreamTransformationException {
         AbstractTrace trace = null;     
         String RESULT = new String();
         trace =      
         (AbstractTrace) param.get(             
         StreamTransformationConstants.MAPPING_TRACE);
         try {          
        //Create DOM parser
        DocumentBuilderFactory factory =   
        DocumentBuilderFactory.newInstance();     
        DocumentBuilder builder = factory.newDocumentBuilder();
         //Parse input to create document tree
         Document doc = builder.parse(input);
                    trace.addInfo(doc.toString());
          //          Map the elements          
        Node root = doc.getFirstChild(); // gets the root element
         NodeList children = root.getChildNodes();
          for (int item = 0; item < children.getLength(); item++) {
          if (children.item(item) instanceof Element) {
          root = (Element) children.item(item);
          NodeList ch = root.getChildNodes();
          RESULT = RESULT.concat(ch.item(0).getNodeValue() + " ");
          trace.addInfo(RESULT); }
          catch (Exception e) {           
               trace.addDebugMessage(e.getMessage());      
       //Return the output document
       String document_exit = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><ns0:Person2 xmlns:ns0=\"urn:xxxxx.com:test:mapping:lookups\"><RESULT>" 
       + RESULT               
       + "</RESULT></ns0:Person2>";
         insertDB(RESULT);
       try
            output.write(document_exit.getBytes());
             catch (IOException e1) {
            trace.addDebugMessage(e1.getMessage());
    public void insertDB(String DETAILS){
        Statement stmt = null;
        Connection conn = null;
        try {
          conn = getConnection();
          conn.setAutoCommit(false);
          stmt = conn.createStatement();
          stmt.execute("insert into KUMAR(DETAILS) values ('"DETAILS"')");
          //System.out.println ('"DETAILS"');
          conn.commit();
          stmt.close();   
          conn.close();
        } catch (Exception e) {
          System.err.println("Error: " + e.getMessage());
          e.printStackTrace();
      public Connection getConnection() throws Exception {
        String driver = "com.ibm.db2.jcc.DB2Driver";
        String url = "jdbc:db2://172.17.4.24:50000/SAMPLE";
        String username = "miracle";
        String password = "sairam";
        Class.forName(driver);
        Connection conn = DriverManager.getConnection(url, username, password);
        return conn;
    but we are getting the following error:Linkage error occurred when loading class JavaDatabaseApp/XiMappingDB2/com/xi/test/NameMerge (http://FILE2JDBC_US, 7d7b3141-f4d1-11dc-b25e-d5d5c0a80198, -1)
    Start of test
    LinkageError at JavaMapping.load(): Could not load class: JavaDatabaseApp/XiMappingDB2/com/xi/test/NameMerge
    java.lang.NoClassDefFoundError: JavaDatabaseApp/XiMappingDB2/com/xi/test/NameMerge (wrong name: XiMappingDB2/com/xi/test/NameMerge) at java.lang.ClassLoader.defineClass0(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:539) at java.lang.ClassLoader.defineClass(ClassLoader.java:448) at com.sap.aii.ibrep.server.mapping.ibrun.RepMappingLoader.findClass(RepMappingLoader.java:175) at java.lang.ClassLoader.loadClass(ClassLoader.java:289) at java.lang.ClassLoader.loadClass(ClassLoader.java:235) at com.sap.aii.ibrep.server.mapping.ibrun.RepJavaMapping.load(RepJavaMapping.java:136) at com.sap.aii.ibrep.server.mapping.ibrun.RepJavaMapping.execute(RepJavaMapping.java:50) at com.sap.aii.ibrep.server.mapping.ibrun.RepMappingHandler.run(RepMappingHandler.java:80) at com.sap.aii.ibrep.server.mapping.rt.MappingHandlerAdapter.run(MappingHandlerAdapter.java:107) at com.sap.aii.ibrep.server.mapping.ServerMapService.transformInterfaceMapping(ServerMapService.java:127) at com.sap.aii.ibrep.server.mapping.ServerMapService.transform(ServerMapService.java:104) at com.sap.aii.ibrep.sbeans.mapping.MapServiceBean.transform(MapServiceBean.java:40) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0.transform(MapServiceRemoteObjectImpl0.java:167) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0p4_Skel.dispatch(MapServiceRemoteObjectImpl0p4_Skel.java:104) at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:320) at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:198) at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:129) at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33) at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41) 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:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170).
    please solve this issue.

    Uday,
    May be you have uploaded class file into external definitions.
    You need to Zip the class file into .jar  and then upload into external definitions of integration repository
    Regards,
    Kiran Bobbala

  • Multi Mapping for JDBC Receiver JDBC Adapter

    Hi All,
        I'm trying an IDoc to JDBC (canonical XML) scenario using multi mapping (single IDoc as source and two different JDBC messages in receiver end). But, this is failing in RWB with some parser error. So, am not sure whether multi mapping is allowed for JDBC Canonical XML format. Please clarify.
    Thanks,
    Hussain.

    Hi ,
    JDBC Adapter supports multi mapping,so you can implement the same,but what do you mean by Canonical XML format??
    Regards,
    Raj

  • Mapping for the interfaces

    Hi all !
    I am new to interfaces and as a functional cosultant I have to do couple of functional specs for the interfaces and also the mapping ...what should be my approach
    1, let's say I have to do the mappin for the Lcokbox interface( EDI 823) .....what should I have to exactly do in here?
    2. another example would be I need to grab required data from a third party tool into the credit master data on the cutomer ... how can I do this ...
    Please some one explain me in detail the above two cases , so I can get a clear understanding and start from there.....
    hoping couple of answers....thanks a lot in advance for anykind of help

    Hello
    In simple words, an interface is a 3rd party software. SAP and this software exchange data in 2 way channel.In layman's words, we need a program which can download data and process and record in SAP.
    Also, we need a program to send data to the external interface.
    First draw the process flow / how and what data is involved. Make a visio diagram.
    Let the technical guys have a look at it and decide on what business partners like XI need to be used.
    Let them decide on the channels by which data can flow.
    Now look at the available data in the 3rd party, study their fields and check relevance in SAP. The out come of this excercise is mapping data for smooth flow and compatability.
    Now let the ABAPers sit and prepare download / upload program and and link both the systems.
    The data is in the form of files, which are either manually uploaded or triggered by scheduled jobs. The interface program should facilitate both features.
    Reg
    assign points if useful

  • Multi mapping for n:1 transformation

    Hi Friends,
    I have to implement a multi mapping in which I have n:1 transformation,i.e
    2 MT in Source and 1 MT in Destination,but the constraint is - without using BPM....
    Is there any way to implement this Message Mapping without using BPM.
    Please suggest....
    Regards
    Pravesh

    Hi Pravesh,
    N:1 without BPM is not possible.
    However there is a nice way to collect multiple idocs without BPM
    /people/stefan.grube/blog/2006/09/18/collecting-idocs-without-using-bpm
    Dont know weather it suits ur scenario, but still it is a workaround.
    Regards,
    Prateek

  • Mapping Issue for Synchronous interface

    Hi Experts,
    We are facing the below issue in a SOAP to RFC synchronous scenario.
    Data from WS is successfully uploaded to RFC via RFC request. However we face the below issue when the RFC response is received.
    com.sap.aii.utilxi.misc.api.BaseRuntimeException:Character reference &quot;&amp;#00&quot; is an invalid XML character.
    We receive this error particularly when one field has the below values.
    <FIELD> X 20140812201409101211 1 USD TP 00000000 </FIELD>
    When we click on view source the same field shows as below:
    <FIELD> &#00;&#00;&#00;&#00;&#00;&#00;&#00;&#00;&#00;&#00;&#00;&#12;&#00;&#00;&#00;&#00;&#00;&#00;&#00;&#00;&#00;&#00;&#00;&#12;X  20140812201409101211            1             USD     &#00;&#00;&#00;&#00;&#12;&#00;&#00;&#00;&#00;&#12;&#00;&#00;&#00;&#00;&#00;&#00;&#00;&#00;&#19;TP&#12;     00000000&#00;&#12;&#00;&#12;&#00;&#12;&#00;&#00;&#12;&#00;&#00;&#12;</FIELD>
    Even while pasting the same source xml from view source in Message Mapping we get the below error:
    Unable to display tree view; Error when parsing an XML document (Character reference "&#00" is an invalid XML character.)
    How is a simple value getting converted to some huge value when we open it using view source.
    Please help me resolving the same.
    Regards,
    Shai

    Hi Shaibayan
    looks like there is inconsistency in the RFC maintained in ECC to PI as non unicode.
    In RFC channel check the flag for Unicode.
    Or
    Write a java mapping to remove the special characters
    Regards
    Osman

  • Multi-mapping for EDI 810 Interface

    Hi,
    I am building EDI 810 interface. We have following requirements.
    Source system is SAP. Target systems is AAFES and COSTCO.
    1 Source system and 2 target System.
    For example: Can i have Interface mapping as shown below?
    Invoice IDoc -> MM_EDI_810_AAFES  -> EDI_810
                    MM_EDI_810_COSTCO
    Based on DUNS number can i re-direct the interface to choose one of the mapping and accordingly choose the communication channel?
    Thanks,
    Gowri

    Hi,
    You can do this in any of the following ways:
    Content based routing in XI can be done during
    1) Receiver Determinations (Integration Directory) --- Used for entering a condition for
    forwarding a message to one or more receivers
    http://help.sap.com/saphelp_nw04/helpdata/en/26/5ccd3bb4560f01e10000000a11402f/content.htm
    2)Interface Determinations (Integration Directory) --- Used for entering a condition for forwarding a message to multiple inbound interfaces
    3) Designing Integration Processes (ccBPM) (Integration Repository) --- Used for entering a condition for processing process steps (see Step Types)
    At all the 3 places u will use the Condition editor,
    http://help.sap.com/saphelp_nw04/helpdata/en/67/49767669963545a071a190b77a9a23/content.htm
    Hope this helps you.
    Regards,
    Abhy

  • Sender / Receiver ID mapping for EDI interfaces and Type of seeburger adapt

    We need to set up a interface using Seeburger adapter for Purchase order IDOC to 850 EDI mapping.. After reading from SDN,
    1) We can use the standard mapping in BIC MD to do E2X and X2E mapping..
    2) We can use any of the AS2, EDI generic adapter, Seeburger FTP adapter or Seeburger SFTP adapter...
    How do we decide which adapters should be chosen? I can see that it makes sense to use SFTP adapter or AS2 adapter for security...
    Also how do we map Sender and Receiver IDs on the EDI message.. Should this be hardcoded as part of mapping or is there any facility in seeburger adapter to do this? I saw some references to Party Identifiers and not sure how it is used in setting up Sender/ Receiver ID
    Also the graphical mapping to convert IDOC XML to EDI XML, Do we have standard mapping defined or do we need to create our own graphical mapping.

    Hi Kris,
    I had worked in the somehow same scenario, It was IDOC to EDIFACT file.
    I can give you few clues which might be helpful
    In BIC MD you have to create your own mapping if the standard mapping is not available (First check all the standard mappings in BIC). For your reference you need X2E mapping, as your scenario is IDOC to 850 EDI.
    "the graphical mapping to convert IDOC XML to EDI XML, Do we have standard mapping defined or do we need to create our own graphical mapping."
    In graphical mapping i created my own mapping, Seeburger has given some sample mappings you can check those for your reference (SEEBURGER_GENERIC_EDI software component). Mostly you have to create your own. You need a document from your functional consultant so that you are able to map correct fields and constants.
    "how do we map Sender and Receiver IDs on the EDI message.. Should this be hardcoded as part of mapping or is there any facility in seeburger adapter to do this? I saw some references to Party Identifiers and not sure how it is used in setting up Sender/ Receiver ID"
    This has been generally hardcoded in message mapping (In my case i hardcoded). If any of ur IDOC field contains that data you can map that field. But better Idea is ask your functional expert.
    "How do we decide which adapters should be chosen? I can see that it makes sense to use SFTP adapter or AS2 adapter for security... "
    You can choose adapter according to your requirement. In my case i used File adapter as i have to create file in PI server only. My suggestion you can use SFTP for seeburger
    Hope these points are helpfu for u
    Regards,
    Shradha

Maybe you are looking for

  • Can administrator roll back a task from the process?

    If I have a process deploy to the weblogic, can the weblogic admin or some account can roll back the process from one task to the previous. Thank you for advise.

  • Why not using solar cells covering my Macbook

    Hi, My name is Jonathan and I was just wondering. Why is it, that nobody has combined a Macbook/solar powered combination? Probably someone has, but I've never heard of it. Just cover the outside of the screen with enough solarcells, so that it is re

  • Microsoft word issue

    Hello everyone, I have one small bug with the latest version of microsoft word 2011 on OS X leopard. Sometimes when I have already opened a document and that I want to change the font color, my computer freezes for several minutes, until it defreezes

  • Constant PCORP for Ledger !* does not contain any value

    Dear SAP Guru's, I have a user attempting to process a credit memo via t-code FB75 and is receiving the following error message while attempting to post the transaction. Constant PCORP for Ledger !* does not contain any value The user was able to pos

  • There is no option to save,create or discover any php file

    This just started today 22/06,but there is no option to create a new php file,the options to create all types of files except php show on main screen,there is no discover dynamic files showing in bar,i can still type in the browser to view the php fi