cancel
Showing results for 
Search instead for 
Did you mean: 

Flat File-to-RFC question, multiple RFC calls for one file.

RemiB1
Explorer
0 Kudos

Hi guys,

I'm quite new to XI / PI and I have a question regarding a File-to-RFC scenario we're trying in NW PI 7.1.

We have a flat file which has two lines with two fields each, let's take this as an example :

001,001

002,002

The files needs to be converted to XML and then transferred to the RFC program which will update a table with the values above.

In the ESR I've created 3 data types (z_row1,z_record1 and z_fileinput1), 1 message type (z_file2rfc_ob_mt), 1 message mapping (z_file2rfc_mm), 2 Service Interface (z_file2rfc_ob_si and z_file2rfc_ib_ztestpi) and 1 operation mapping (z_file2rfc_om).

In the Integration Builder (ID) I've created everything required (The sender and receiver communication channels, sender and receiver agreement, receiver determination and interface mapping).

We're also using content conversion to convert the flat file to XML, this does seem to work because I see all the lines/field in the message when it gets into PI. The problem is that the RFC can only accept two fields at a time and only the first line gets updated. I see that only the first line gets sent to the RFC.

How can I make the RFC call for each and every line ?

Thanks !!

Accepted Solutions (0)

Answers (6)

Answers (6)

Former Member
0 Kudos

Create the RFC with table, which takes multiple lineitem as input and update the table in single call.

If you want response back then call RFC as synchrounous else in Asynchrounous mode.

By doing this in single call it will update the complete table.

Gaurav Jain

Reward Points if answer is helpful

Former Member
0 Kudos

Hi,

look RFC is synchronous and fie con't be made as synchronous it is Asynchronous ,so for the file to RFC you have to go for BPM.

sender side use file adater with FCC . you don't have to thing for the multiple entries just give one RecordSet name and the item occurence as *(In FCC).

regards,

navneet

Former Member
0 Kudos

>>look RFC is synchronous

RFCs can be called in Asynch mode too...

Regards,

Jaishankar

Former Member
0 Kudos

Hey,

Can you post your FIle structure and Target RFC structure..so that we will see if we can handle it with the mapping..

Thanks,

Vijaya.

Former Member
0 Kudos

Remi,

All you need is Muti mapping here. There is a blog in SDN explaining Multimapping without BPM. Just follow that blog. It is a standarad procedure. You need to use Extended option in Interface Determination.

Regards,

Jaishankar

former_member859847
Active Contributor
0 Kudos

Hi,

I hope, it's better to plan for server proxy rather than RFC

inorder to update each and every lin.

in side server proxy call RFC .

performance wise also, it is fine.

warm regards

mahesh.

former_member181962
Active Contributor
0 Kudos

Hi Remi,

I think you may have to use BPM for your scenario.

YOu should include a send step in a loop ,which calls the RFC multiple times.

Regards,

Ravi Kanth Talagana