on 05-04-2007 4:46 PM
All,
Quick question - im trying to configure a RFC to file scenario. Is there a step-by-step document somewhere. I did the steps as mentioned in few of the blogs (Michal's and others) and im kind of stuck in how to trigger the scenario?
Thanks.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
All,
Thanks for the replies. Im actually facing issue in the configuration of the scenario. Let me try to explain the scenario - There is an RFC that takes no input parameters and returns a table as output. We need to run the RFC through a report and send the output to PI, which will do mapping and send it to a FTP site.
1. There is an RFC object ZZ_TestRFCSender (there is no input parameter to this RFC, and there is a table ouput parameter)
2. I have a message type MT_FileOut
3. A message interface with MI_FileOut (Asyn, outbound)
4. There is a message mapping for ZZ_TestRFCSender.Response to MT_FileOut
The problem i have is when trying to do the interface mapping - ZZ_TestRFCSender to MI_FileOut, only the request for the RFC interface comes up and im not able to use the message mapping there..
any help would be appreciated.
Thanks.
Hey
did u create an outbound async Message interface using the RFC response message?
if not then do it coz then u will be able to see this MI in Interface mapping
Plz note,u need to explicitly create Message interface for async RFC but u dont need to create any Message interface for sync RFC
and one more thing ,ur interface mapping is wrong
it will be between
MI_RFC_outbound_async and MI_File_inbound_async.
thanx
ahmad
Message was edited by:
Ahmad
Hi Ahmad,
Thanks for the quick reply. I did as you mentioned in the post, from MI_Outbound_RFC_Async to MI_Inbound_File_Async.
When i run the report in R3, that runs the RFC and pushes the data out - i see an error in the SXMB_MONI saying - "No Receiver Case BE". And in the SXMB_MONI - the sender system isn DXXCLNT100, the sender interface is "ZZ_TestRFCSender", so it is not able to determine the receiver.
My current receiver determination is like -
Sender : DXXCLNT100
Sender Interface : MI_Outbound_RFC_Async
Receiver : FTPSystem
Receiver interface : MI_Inbound_File_Async.
Interface Mapping : MI_Outbound_RFC_Async to MI_Inbound_File_Async.
if i pick the sender interface as "ZZ_TestRFCSender", i will not be getting any interface mapping?
thanks for the help.
Hey
>>if i pick the sender interface as "ZZ_TestRFCSender", i will not be getting any interface mapping?
yeah,that correct u wont get any interface mapping coz u didn't do any for the ZZ_TestRFCSender:)
u actually crippled the RFC and are using only response of it so u will have to deal select MI_Outbound_RFC_Async instead of ZZ_TestRFCSender.
for ur scenario,XI knows only MI_Outbound_RFC_Async it does not know ZZ_TestRFCSender,so u can use only MI_Outbound_RFC_Async
>>the sender interface is "ZZ_TestRFCSender"
this is wrong,the sender interface is MI_Outbound_RFC_Async
thanx
ahmad
Hey thezone,
you can make it like this:
- create a "dummy" RFC, which is a function module with enabled remote access. In this dummy RFC, there should be no source code, only importing parameters (and these importing parameters are the ones you'll see in request message when importing the RFC into Integration Repository);
- create a RFC Destination of type T (TCP/IP) in SM59. Then, select it as "Registered Server Program" and use some string for the ProgramID field (best practice is to use ProgramID = RFC Destination name). Finally, enter hostname and gateway of RFC Server (which can be the same as of the web as abap where you have these objects). Gateway should be "sapgwXX" (with no quotes), where XX is the System number;
- this rfc should be called by the function module which is executed by your report. In the function module, use it like this:
CALL FUNCTION '<rfc_name>'
IN BACKGROUND TASK
DESTINATION <rfc_dest_name>
EXPORTING
...
where <rfc_name> is the name of the dummy rfc, <rfc_dest_name> is the name of the RFCDestination you created, and you export the parameters expected in Importing Parameters field of the dummy RFC;
- Import the dummy RFC in Integration Repository and use it for relevant mappings/interfaces;
- Finally, in Integration Directory, when creating the Sender RFC Adapter, Program ID should be the same of the RFC Destination you had created in SM59 of source system, and hostname/gateway should also be the same you inputed there.
Regards,
Henrique.
Had a follow up question. Sorry.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
87 | |
10 | |
10 | |
10 | |
7 | |
6 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.