2007 Jan 02 11:35 AM
Hi
I need to have a program which can either take a single FM or
multiple fm as input from selection screen or an input file with fms as
input and compare the attributes and interface of the function with the
same function module in target system.
For comparision logic, i need to have an RFC function module developed
so that it can take the input of function modules compare them with the
target system and return the function modules that have different
attributes, or interface ( import, export, tables ) etc and list of the
differences function module wise.
How do I go abt this from creation of RFC and program..i am new to RFC's.
Regards
Davinder
Hi
I need to have a program which can either take a single FM or
multiple fm as input from selection screen or an input file with fms as
input and compare the attributes and interface of the function with the
same function module in target system.
For comparision logic, i need to have an RFC function module developed
so that it can take the input of function modules compare them with the
target system and return the function modules that have different
attributes, or interface ( import, export, tables ) etc and list of the
differences function module wise.
How do I go abt this from creation of RFC and program..i am new to RFC's.
Regards
Davinder
2007 Jan 02 11:59 AM
u can check the table RFCDES first and find the all the other logical systems.
by accessing the logical system basing on client (SY-MANDT) u can access the function module remotely and study the parameter and pass.
Using the syntax;
CALL FUNCTION <F.M.NAME> DESTINATION 'LOGICAL SYSTEM'
2007 Jan 02 12:21 PM
Table name : FUPARAREF
This table has all the Function module names and their status,parameter & Parameter type.
Create a Function module.
While giving short text in ATTRIBUTES tab, you can see Remote enabled module.
select it.
It is not possible 'pass by reference' in RFC so have to put all those FMs from input in an internal table and pass it to this Function module.
So use tables parameter and your internal table name.
In this RFC you can access FUPARAREF table with FM
Create an Internal table like this
DATA : Begin of it_fmname LIKE FUPARAREF occurs 0 With Header Line,
copy all the FM names from imported table list.
then select * from FUPARAREF INTO it_fmname FOR ALL ENTRIES of it_fmname WHERE FUNCNAME = it_fmname-funcname.
Now you will have the function modules name, parameters and parameters type in the internal table so you can compare with the imported table parameters and return the status to the original system through the table itself.
I hope this will solve your requirement,
for further help please brief it.
By
Yuvaram
2007 Jan 02 12:26 PM
Hi,
Please find More info about RFC's in the following blog.
<a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f078394a-4469-2910-c4bf-853c75674694">RFC Blog</a>
Regards
Bhupal Reddy