Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

regarding parameters in rfc

Former Member
0 Likes
429

hi all,

can any one explain me why RFC does not support the u201Cby referenceu201D mechanism , as i want to pass table parameter to rfc how they wil be passed without u201Cby referenceu201D .

thanks in advance

dilip

hi all,

can any one explain me why RFC does not support the u201Cby referenceu201D mechanism , as i want to pass table parameter to rfc how they wil be passed without u201Cby referenceu201D .

thanks in advance

dilip

1 REPLY 1
Read only

Former Member
0 Likes
382

When you make a remote function call, the system handles parameter transfer differently than it does with local calls.

TABLES parameters

The actual table is transferred, but not the table header. If a table parameter is not specified, an empty table is used in the called function. The RFC uses a delta managing mechanism to minimize network load during parameter and result passing. Internal ABAP tables can be used as parameters for function module calls. In a local function module call, a parameter table is passed on by reference, and no new local copy has to be created. RFC does not support the u201Cby referenceu201D mechanism, so the whole table has to be exchanged between the RFC client and the RFC server. When the RFC server receives the table entries, it creates a local copy of the internal table. Then only delta information is returned to the RFC client. This information is not returned to the RFC client every time a table operation occurs, however; instead, all collected delta information is passed on at once when the function

returns to the client.

The first time a table is passed, it is given an object-ID and registered as a "virtual global table" in the calling system. This registration is kept alive as long as call-backs are possible between calling and called systems. Thus, if multiple call-backs occur, the change-log can be passed back and forth to update the local copy, but the table itself need only be copied once (the first time).