RFC Structure

Hi All,
Actually, I am working on FILE->XI->RFC scenerio.The custom Function module created is the merging of 3 BAPIS which is used at the receiving end.But ,the Custom Function Module is having the response structure also while I need to work on Asynchronous scenerio.
From my understanding if I need to use the Asynchronous Adapter such as File for synchronouse communication then I need to write the Adapter Module.So if I need to use File for Synchronous Communication shall I need to write the Adapter Module for that?
Also,from my understanding if the custom BAPIS(RFCS) are merged into the custom Function Module then it is obvious to have a response structure as RFCS are used for Synchronous communication.Is it?If so, then I can neglect the response structure of the Custom Function Module if I need to implement the Asynchronous File->XI->RFC scenerio.Is it?
Please help me.
Thanks in advance.

Hi Shweta,
>>Is the following document applicable for my scenerio? https://wiki.sdn.sap.com/wiki/display/XI/File-RFC-File%28Without%20BPM%29
Yes very much..  BTW where you want your response to be written?
>>No. of Data Types,Message Types
2 Data type (Data type for sender file say DT_A,  Data type for getting response from RFC say DT_A_resp)
2 Message Type (corresponding  Message type say MT_A and MT_A_resp)
1 RFC structure
>>No. of Message Mappings,Interface Mappings
2 Message mapping (from MT_A to RFC and from RFC_response to MT_A_resp)
1 interface mapping
>>No of Communication channels
3 one for sender file, one for RFC (receiver) and one as receiver file
>>No. of Sender Agreements,Receiver Agreements
1 with File sender
>>No. of Receiver Determinations,Interface Determinations.
1. Between file service and RFC service
>>Which RFC Structure(Request/Response) shall I mention in the Interface Determination?
Mention RFC (not the response one)
Regards
Suraj

Similar Messages

  • File to RFC Structure mapping

    Hi All
    This is the first time I am going to work on customized mapping for the following requirement, please give your inputs.
    I am working on File to Proxy Scenario where I have created custom proxy using standard RFC Function Module.
    I have created my source data type, message type and service interface. The target structure I got by importing corresponding RFC structure and created service interface and proxy for the same.
    Now I am trying for graphical mapping here to map file structure to RFC structure. Can you please tell if I have to consider whether its header data or item data. I mean how can I mention that there will be multiple entries of item.
    Please let me know if mentioning in data type i.e 1 to unbound is sufficient and no need to do anything specially while mapping them to targe RFC tables.
    Also, please let me know if my approach is correct. Thanks for your inputs.
    Regards
    Amol

    >
    Amol wrote:
    > Hi All
    > This is the first time I am going to work on customized mapping for the following requirement, please give your inputs.
    >
    > I am working on File to Proxy Scenario where I have created custom proxy using standard RFC Function Module.
    >
    > I have created my source data type, message type and service interface. The target structure I got by importing corresponding RFC structure and created service interface and proxy for the same.
    >
    > Now I am trying for graphical mapping here to map file structure to RFC structure. Can you please tell if I have to consider whether its header data or item data. I mean how can I mention that there will be multiple entries of item.
    >
    > Please let me know if mentioning in data type i.e 1 to unbound is sufficient and no need to do anything specially while mapping them to targe RFC tables.
    >
    > Also, please let me know if my approach is correct. Thanks for your inputs.
    >
    >
    > Regards
    > Amol
    if you are asking about how to actually map a file to a RFC/Proxy structure please note that such requirements are defined by the business. The logic is owned by the customer.
    But in case you are trying a POC scenario then all you need to consider is to make sure the mandatory fields and segments are mapped in the RFC/Proxy structure

  • Changes in RFC Structure.

    Hi Experts,
    My RFC structure is changed, can i do anything else than restarting the server.
    Regards
    Upendra.

    Hi,
    its must and should, otherwise changes will not effect.
    Please tell me how i will know wether my RFC is Adaptive RFC or not.
    That will depend when you access the rfc in webdynpro  from R/3. in the second step you have to select the adaptive rfc while importing the  rfc.
    from r/3 side, your rfc will be remote enabled, thats all.
    PradeeP
    Edited by: pradeep bondla on Oct 16, 2008 12:16 PM

  • Change in RFC structure

    Hii experts,
    I was doing rfc scenario.. so i am imported a rfc structure in IR.. i done mapping and all.. but now my rfc structure has been changed say like one extra field has been added in rfc structure.. so i reimported it and trying to do mapping.. but i cant find the new field so i cant map that particular field.. how can i resolve this??
    Im using PI 7.0
    Regards,
    Balaji

    Ask your ECC Team to do the following things.
    1. Cancel the Release of RFC.
    2. Add the additional Field to RFC and Activate it.
    3. Release the RFC.
    After doing above.
    1. Re-Import the RFC.
    2. Make the mapping.
    3. do some dummy changes in Sender channel and activate it again.

  • Message Mapping RFC structure to deep XML structure

    Hello,
    I have a message mapping I am struggling with. The outbound interface is an RFC with structure like this:
    RFC_send_material
    -material (1..unbounded)
    --matnr
    --meins
    --brgew
    -description (1..unbounded)
    --matnr
    --vkorg
    --text
    The inbound interface should look like this:
    Materials_from_SAP
    -material (1..unbounded)
    --matnr
    --meins
    --brgew
    --description (0..unbounded)
    ---vkorg
    ---text
    My problem is to get all the description connected to the matnr together.
    Examples with data:
    Outbound rfc:
    <RFC_send_material>
       <material>
          <matnr>100</matnr>
          <meins>c1</code1>
          <brgew>c2</code2>
       </material>
       <material>
          <matnr>101</matnr>
          <meins>c1a</code1>
          <brgew>c2a</code2>
       </material>
       <material>
          <matnr>102</matnr>
          <meins>bv102</code1>
          <brgew>addd102</code2>
       </material>
       <description>
          <matnr>100</matnr>
          <vkorg>NO10</sales_org>
          <text>testing100</text>
       </description>
       <description>
          <matnr>102</matnr>
          <vkorg>SE10</sales_org>
          <text>testing102</text>
       </description>
       <description>
          <matnr>102</matnr>
          <vkorg>DK10</sales_org>
          <text>testing103</text>
       </description>
    </RFC_send_material>
    The inbound file structure should then look like this:
    <Materials_from_SAP>
       <material>
          <matnr>100</matnr>
          <meins>c1</meins>
          <brgew>c2</brgew>
          <description>
             <vkorg>NO10</vkorg>
             <text>testing100</text>
          </description>
       </material>
       <material>
          <matnr>101</matnr>
          <meins>c1a</meins>
          <brgew>c2a</brgew>
       </material>
       <material>
          <matnr>102</matnr>
          <meins>bv102</meins>
          <brgew>addd102</brgew>
          <description>
             <vkorg>SE10</vkorg>
             <text>testing102</text>
          </description>
          <description>
             <vkorg>DK10</sales_org>
             <text>testing103</text>
          </description>
       </material>
    </Materials_from_SAP>
    So as you see, my problem is to get the correct description belonging to the material. Hope anybody can help with doing this in Message Mapping.
    Regards,
    Per

    Hi PRW,
    As Michal said correctly, it is hard to describe in words, so here are some pictures which I think is the solution of your problem.
    Description mapping  : http://www.flickr.com/photos/23639237@N02/3220030016/sizes/o/
    VKORG mapping      : http://www.flickr.com/photos/23639237@N02/3219181675/sizes/o/
    Text  mapping           : http://www.flickr.com/photos/23639237@N02/3219182919/sizes/o/
    UDF  CODE             : http://www.flickr.com/photos/23639237@N02/3219184005/sizes/o/
    And the Final Reslut : http://www.flickr.com/photos/23639237@N02/3220035356/sizes/o/
    Regards,
    Sarvesh

  • Mixing Query and RFC: structure problem

    Hi,
    When I use Queries together with RFCs I am facing the following issue: what is the DDIC structure I should use for my RFCs since the Query object in Visual Composer seems to create the output dynamically ?
    Is there a structure in DDIC for each Query that I don't know of ?
    Let's say I want to update the Transaction cube behind the Query (similar to what BI-IP does). Do I have to create the structure each time ?
    Thanks in advance.
    Best regards,
    Guillaume

    BI Queries are based on DDIC-structures. Use in the BI system the transaction rsd1, which leads you to the InfoObject (IO) maintenance screen. Select the IO, that's behind your query field and look at the definitions. You will be able to find domain and DDIC type.

  • RFC Structure Reference in V12

    We had a custom RFC developed to perform a read on a Z_Table.  The ABAP developer unfortunately used a complex deep structure that could not be used with the JCO connector.
    We have had the problem with the RFC fixed, but xMII has retained the original polluted structure information, so using the current RFC name the JCO throws an error.
    If we rename the RFC 'ie. myRFC_2', all is well.  However, we would like to stick with our original naming convention.
    How can we clear out any cached structure information on this RFC in V12.  I'm told that in previous versions we could have deleted the cached structure file(s).  I'm assuming that with 12 they are in the DB.  Is there a way to do it from within Netweaver, or do I need to contact a DBA?
    Regards,
    Rod Hoffman

    Udayan,
    Thanks a bunch.  My apologies, my search technique is a bit rusty this morning.
    Regards,
    Rod Hoffman

  • RFC Structure got changed, getting ArrayIndexOutOfBoundsException Exception

    Hi All,
    I am using a RFC in my web Dynpro Application. before it was working fine but now my RFC's Structure name got chnaged.
    I reimported the RFC and mapped. But now I am getting ArrayIndexOutOfBoundsException Exception
    java.lang.ArrayIndexOutOfBoundsException
    I have invalidated the dictionary cache but still problem did not resolve.
    Restarting of server will resolve this issue but I dont want to restart server as I am working on client server.
    Please any one help me how to solve this issue without restarting the server.
    Thanks in  advance!!

    Hi,
    Have you made any changes in your Function Module ? if yes have you reimported the Model ?
    if you reimported , you need to restart the J2EE Engine
    Or else you can do the following
    Reimporting Model without restarting the J2EE Engine -- you can do u201CMetadata Cache invalidation for Webdynpro Adaptive RFC Modelsu201D ( Please look at Vishweshwarau2019s Links)
    Hope this is help full for u
    Best Regards
    Vijay K

  • File to RFC - XSLT Mapping after RFC structure has changed

    Hi
    I'm an XI beginner, and am looking at a File to RFC scenario which has been implemented in our 7.0 system.
    We have a requirement to add a new field to the RFC (which has already been done by the ABAPer) and I need to make the necessary changes in XI. So I have re-imported the RFC and added a field in Data Type (we had file content conversion and we have manually defined the Data Types).
    For mapping - is there a way to utilise the existing XSLT mapping without having to re-do the entire mapping in Stylus Studio? Is there an easy way to just add one additional field in Stylus Studio? or do I have to edit the xsl manually?
    Thanks
    Manoj

    Manoj,
    Let me explain you....
    1.Take the old XSL file into anote pad
    2.now import your newly modified source and target XSD and import into SS
    3.Perform the xslt mapping for the newly added source and target field
    4.generate the XSL for this mapping
    5.Now take the lines which mapped (Do not take all the lines in the generated XSL) and copy these few lines mapped
    6.Now go to the old XSL in the notepad and add the lines copied from the new XSL
    Now try to paste the entire XSL in SS then you would be able to see all the fields mapped in SS IF yes then you are done with XSLT mapping.
    Regards,
    Naveen.

  • Using part of imported RFC structure as new DataType

    Dear experts.
    I have a simple one for you today.
    I would like to create a new datatype in XI. As a basis I would like to use a node from a imported RFC. This has a particular type, e.g. BAPI_XXX.
    How can I achieve this? It's not possible to import/copy.
    Any suggestions?

    Hi,
    Export your RFC as an XSD,
    Copy the node part in your exported XSD and create a new XSD.
    Import it under External definition
    You can use Altova XML spy to be used as XSD editor...
    Thanks

  • About rfc structure defination

    should i use table type in IMPORT tag or using a TABLES to transfer a parameter of table?
    what difference between both?

    click on Table tab(se37) and specify
    ParameterName     Type Specification            Associated Type
    example                    LIKE                   GivetableName
    to know the difference refer Difference between Table and Table Type

  • Sender File adapter complex structure FCC issue - flat structure RFC-stuck

    Hi,
    Please help.
    I have a the below file structres-
    Option 1-
    H,100890,P100,A02,S101,AUD#
    I,P,NULL,TH,Test PO TH,1,EA,100,10160000,A002,0001,720090,E.1.4.3,,,,VT#
    I,P,NULL,TH,Test PO TH1 2,2,EA,100,10160000,A002,0001,720090,E.1.4.3,,,,VT#
    H,100899,P100,A02,S101,GBP#
    I,P,NULL,AS,Test PO AS1,1,EA,100,10160000,A002,0001,720090,E.1.4.2,,,,VT#
    I,P,NULL,AS,Test PO AS12,2,EA,100,10160000,A002,0001,720090,E.1.4.2,,,,VT#
    I need to map this into a Z RFC which is expecting all the data in one row - of course multiple rows
    Option 2-
    Same structure as above but all in same row-
    H,100890,P100,A02,S101,AUD,P,NULL,TH,Test PO TH,1,EA,100,10160000,A002,0001,720090,E.1.4.3,,,,VT#
    I,100890,P100,A02,S101,AUD,P,NULL,TH,Test PO TH,1,EA,100,10160000,A002,0001,720090,E.1.4.3,,,,VT#
    I,100890,P100,A02,S101,AUD,P,NULL,TH,Test PO TH1 2,2,EA,100,10160000,A002,0001,720090,E.1.4.3,,,,VT#
    H,100899,P100,A02,S101,GBP,P,NULL,AS,Test PO AS1,1,EA,100,10160000,A002,0001,720090,E.1.4.2,,,,VT#
    I,100899,P100,A02,S101,GBP,P,NULL,AS,Test PO AS1,1,EA,100,10160000,A002,0001,720090,E.1.4.2,,,,VT#
    I,100899,P100,A02,S101,GBP,P,NULL,AS,Test PO AS12,2,EA,100,10160000,A002,0001,720090,E.1.4.2,,,,VT
    This also needs to be mapped into a Z RFC which is expecting all the data in one row - of course multiple rows
    I am getting issues in getting the file data across to Receiver adapter.
    I have tried various combinations but the message is failing in SXMB_MONI.
    How do i do it as i need to get the finalised option for incoming file structure?
    Option 1 is being stressed but how do i map it if i cannot get the receiver structure in RFC.
    Please help as I am stuck now.
    Regards,
    Archana

    Hi,
    The problem is basically in message mapping from file to RFC external message.
    The option 2 is working now and I get correct converted file strcuture after FCC and into RFC and also a correct RFC payload.
    However, business is stressing that can send the file in the format as given in Option 1 where u have different structure - Header and Items. This is not coming out correct in RFC payload as the header has 5 fields as compared to more in item but the header and item are still being mapped to the flat RFC structure and this is creating a mismatch. The item line is missing the 5 fields from Header.
    How do i do the FCC in this situation to get the correct structure in RFC?
    This means that in RFC payload, the first line should be the one as below-
    H,100890,P100,A02,S101,AUD#
    The 2 records after this as received in RFC internal table should be as 2 given below-
    I,P,NULL,TH,Test PO TH,1,EA,100,10160000,A002,0001,720090,E.1.4.3,,,,VT#
    I,P,NULL,TH,Test PO TH1 2,2,EA,100,10160000,A002,0001,720090,E.1.4.3,,,,VT#
    However, the 2 structures contain variable field columns.
    Please help.
    Regards,
    Archana

  • RFC:Complex structure

    Dear experts,
    In my PI box,i used one RFC SXMB_GET_MESSAGES.I provided input to the table parameter with over 155 values.
    My attempt was to retrieve from output table parameter which is a deep structure
    If i drill EX_MSG_CONTENT , i get table MSG_VERS_T as one of table output and on further drilling this i get PROP again of type table line.
    <table>EX_MSG_CONTENT_LIST -> <table> MSG_VERS_T ->  <table> PROP
    Ultimately i fetched two fields from table PROP.Only issue is that if i am providing 155 input values i get 36 output values only.
    Further incase i put 222 input values then output values get affected in same ration ex 56 output values and so on..
    What should  i conclude.IS this because RFC (Remote Enabled) doesnot support complex nested structures and i should give up this assignment or may be i need to put something in addition. ?.For those of you familiar with java i am trying something like this
    _ob_c.function.execute(ob_c.destination);    //Problematic as it return less number of rows_
    call function statement:
    ArrayList<PayLoadType> payloads  = new ArrayList<PayLoadType>(fetchmessagepayloads(tableresout)); 
    //Works well as content fetched is actually equal to number of records fetched above.
    public ArrayList<PayLoadType> fetchmessagepayloads (JCoTable tableobj)
    int count = 0;
    ArrayList<PayLoadType> oba = new ArrayList<PayLoadType> ();
    while (count < tableobj.getNumRows()) {
    PayLoadType obj = new PayLoadType();
    JCoTable subtab1  = tableobj.getTable("MSG_VERS_T");
    count = count + 1;
    int rec = subtab1.getNumRows();
    int numrecs = 0;
    while ( numrecs < rec )
    subtab1.nextRow();
    numrecs = numrecs + 1;
    JCoTable subtab2  = subtab1.getTable("TPROP");
    numrecs = 0;
    rec = subtab2.getNumRows();
    while (numrecs < rec )
    numrecs = numrecs + 1;
    if (subtab2.getString("LCNAME").trim().equals("Main")) {
    obj.msgid = subtab2.getString("MSGGUID");
    obj.payload = subtab2.getString("CONTENT");
    oba.add(obj);
    subtab2.nextRow();
    tableobj.nextRow();
    return oba;
    Edited by: aditya  sharma on Aug 16, 2010 10:20 AM

    Hi,
    The problem is basically in message mapping from file to RFC external message.
    The option 2 is working now and I get correct converted file strcuture after FCC and into RFC and also a correct RFC payload.
    However, business is stressing that can send the file in the format as given in Option 1 where u have different structure - Header and Items. This is not coming out correct in RFC payload as the header has 5 fields as compared to more in item but the header and item are still being mapped to the flat RFC structure and this is creating a mismatch. The item line is missing the 5 fields from Header.
    How do i do the FCC in this situation to get the correct structure in RFC?
    This means that in RFC payload, the first line should be the one as below-
    H,100890,P100,A02,S101,AUD#
    The 2 records after this as received in RFC internal table should be as 2 given below-
    I,P,NULL,TH,Test PO TH,1,EA,100,10160000,A002,0001,720090,E.1.4.3,,,,VT#
    I,P,NULL,TH,Test PO TH1 2,2,EA,100,10160000,A002,0001,720090,E.1.4.3,,,,VT#
    However, the 2 structures contain variable field columns.
    Please help.
    Regards,
    Archana

  • Rfc to jdbc --issue with import structure

    Hi
    I am doing asynch RFc to jdbc scenario, for which I followed the below blog,
    /people/swaroopa.vishwanath/blog/2006/12/28/send-rfc-to-sap-xi-150-asynchronous
    (My abap code is as per the blog)
    But one doubt ,as per the blog, my imported rfc structure in IR doesnot conatin those fields(table structure) then how this mapping is going to happen?
    Else all the configurations are ok and success in runtime n in sxmb_moni,
    Please can anyone help in understanding this,
    Thanks

    Hi,
    What is the problem which you are facing ?
    You cant see the fields after importing in XI ?
    If so where are you trying to see the fields ?
    >>wanted to know as to how to code in R/3 so as to trigger the RFC in background.
    This is what is mentioned in the blog.
    >>i am not able to understand the blogs logic (R/3 code)
    Which part of the code you are not able to understand ?? theres hardly any code .
    Any part/word of the code which you cant understand ..just click on that word and press F1.
    Regards,
    Sumit

  • Sending a table to remote RFC in Java UDF

    Hello,
    <br><br>
    We use the API "com.sap.aii.mapping.lookup" often to make RFC calls from a UDF and return data. We typically create an import parameter in the Function Module and pass the value into the RFC. We now need to send in an unlimited number of values so we understand that instead of the import paramter we need to use a table. The problem is we get an error when we build the XML in our UDF and try to call the RFC. We tried wrapping the values in item nodes and several other approaches but we are not sure if we can populate a table via XML and make the RFC call.
    <br><br>
    Example of what we tried:
    <br><br>
    String sRfcxml = "&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;&lt;ns0:ZCAE_MX_CONTRACT_ROUTING xmlns:ns0=\"urn:sap-com:document:sap:rfc:functions\"&gt;&lt;E_ZCAE_COCODE&gt;&lt;item&gt;0445&lt;/item&gt;&lt;/E_ZCAE_COCODE&gt;&lt;/ns0:ZCAE_MX_CONTRACT_ROUTING&gt;";
    <br><br>
    Regardless of what we try we get the following error during the call:
    <br><br>
    error of "RuntimeException in Message-Mapping transformation: Exception:[java.lang.RuntimeException: com.sap.aii.mapping.lookup.LookupException: Exception during processing the payload.Problem when calling an adapter by using communication channel RFC_RCV_ORGDATA (Party: , Service: ValidateXIData_BusiServ, Object ID: d5401e52ad1039df96f02bde53b23c06) XI AF API call failed. Module exception: 'error while processing the request to rfc-client: com.sap.aii.af.rfc.afcommunication.RfcAFWException: error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: could not convert request from XML to RFC:com.sap.mw.jco.JCO$Exception: (130) JCO_ERROR_XML_PARSER: Expecting a tag to begin with '<' instead of '0', in "ODE><item>0965</item"'. Cause Exception: 'error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: could not convert request from XML to RFC:com.sap.mw.jco.JCO$Exception: (130) JCO_ERROR_XML_PARSER: Expecting a tag to begin with '<' instead of '0', in "ODE><item>0965</item"'. com.sap.aii.mapping.lookup.LookupException: Problem when calling an adapter by using communication channel RFC_RCV_ORGDATA (Party: , Service: ValidateXIData_BusiServ, Object ID: d5401e52ad1039df96f02bde53b23c06) XI AF API call failed. Module exception: 'error while processing the request to rfc-client: com.sap.aii.af.rfc.afcommunication.RfcAFWException: error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: could not convert request from XML to RFC:com.sap.mw.jco.JCO$Exception: (130) JCO_ERROR_XML_PARSER: Expecting a tag to begin with '<' instead of '0', in "ODE><item>0444</item"'. Cause Exception: 'error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: could not convert request from XML to RFC:com.sap.mw.jco.JCO$Exception: (130) JCO_ERROR_XML_PARSER: Expecting a tag to begin with '<' instead of '0', in "ODE><item>0444</item"'."
    <br><br>
    Now if we do not pass any data or use an import versus table parameter in the function module it works just fine.
    <br><br>
    We know we can work around this by using an import parameter and stringing the values together with a delimiter and then breaking this apart in ABAP but we are looking for a cleaner solution.
    <br><br>
    Any thoughts?
    <br><br>
    Joe
    Edited by: Joe Wright on Nov 16, 2009 10:45 PM

    Not sure what's wrong, but are you sure your "stringed" XML document matches the expected RFC structure ? Btw, I'd replace (though it could be considered as a cosmetic change) to replace "ns0" with "rfc" in your namespaces declaration, it's what you'll see in all imported RFC objects in XI/PI
    Rgds
    Chris

Maybe you are looking for