2006 Jul 25 2:13 PM
Hi All,
I had a requirement, In the Transaction VF02(CHANGE BILLING DOCUMENT) after the SD billing document is created and when the option 'ReleaseToAccounting' is selected an OutBound Idoc should be created for the FI InvoiceHi All,
My question is how to create a custom idoc for FI invoices via a user exit and these idocs will be routed (via RFC) to a JAVA server/processor. Pls suggest how can i acheive this.
Is there any user exit for acheiveing this or can we proceed further without user exit also.
If so how to acheive this.
Thanks & Regards,
Anil.
Hi All,
I had a requirement, In the Transaction VF02(CHANGE BILLING DOCUMENT) after the SD billing document is created and when the option 'ReleaseToAccounting' is selected an OutBound Idoc should be created for the FI InvoiceHi All,
My question is how to create a custom idoc for FI invoices via a user exit and these idocs will be routed (via RFC) to a JAVA server/processor. Pls suggest how can i acheive this.
Is there any user exit for acheiveing this or can we proceed further without user exit also.
If so how to acheive this.
Thanks & Regards,
Anil.
2006 Jul 26 7:15 AM
Hi Anil,
SAP Java Connector - Example: Simple RFC call
Scenario:
We will call the RFC function module ZNAS_HIE1_GET_MEMBER_FARM.that returns members that have owned a farm. Input to the function is a farm number, and output is a table of members that have owned the farm and Owner number (Sequence number of owners).
Class testJCO is excuted and calls class GetMemberFarm method GetMemberFarmFromSap. Input parameters to GetMemberFarm are Farm and Owner number.
GetMemberFarmFromSap executes RFC ZNAS_HIE1_GET_MEMBER_FARM, that returns a table of members that have owned the farm from the input parameters.
GetMemberFarmFromSap loops through the table and finds the member where ZZCHCODE (Owner numer), is equal owner number from the input-parameters. and returns the member.
Code
Class testJCO
public class testJco
{
public static void main(String[] args)
{
GetMemberFarm testGetMemberFarm = new GetMemberFarm();
String memberFarm= testGetMemberFarm.GetMemberFarmFromSap("0111020155","02");
System.out.println("Memberfarm: " + memberFarm);
}
}
Class GetMemberFram
import com.sap.mw.jco.*; //The JCO
public class GetMemberFarm {
public String GetMemberFarmFromSap(String farm, String OwnerNumber)
{ String zzmemb ="";
String memberFarm = "";
JCO.Repository mRepository;
JCO.Client mConnection = null;
JCO.Function myFunction = null;
//----
//Create Connection to SAP
//----
try
{
mConnection = JCO.createClient("800", //SAP client
"HFR", //User ID
"vimmer3", //Password
"EN", //Language
"53.205.22.71", //Host
"03"); //System
mConnection.connect();
System.out.println("Connection OK");
}
catch (Exception ex)
{
System.out.println(ex);
}
//----
// Create function and parameters
//----
try
{
//Create repository
mRepository = new JCO.Repository( "GetMember", mConnection );
//Get a function template from the repository
IFunctionTemplate ftemplate = mRepository.getFunctionTemplate("ZNAS_HIE1_GET_MEMBER_FARM");
//Create function
myFunction = new JCO.Function(ftemplate);
System.out.println("Function created");
//Set import parameter
JCO.Field zzfarm = myFunction.getImportParameterList().getField("ZZFARM");
zzfarm.setValue(farm);
System.out.println("Parameters ok");
}
catch (Exception ex)
{
System.out.println(ex);
}
//----
// Execute function
//----
try
{
mConnection.execute(myFunction);
System.out.println("RFC Call OK");
}
catch (Exception ex)
{ System.out.println(ex); //Exception from function
}
//----
// Handle return table GT_HIERARCHY
// Loop over the table and find the record that
// has ZZCHCODE = OwnerNumber from the
// method parameters, and return Member for the
// record
//----
JCO.Table gt_HIERARCHY = null;
try
{
gt_HIERARCHY=myFunction.getTableParameterList().getTable("GT_HIERARCHY");
//Loop thhrough table and return the member that has
// changecode (ZZCHCODE) = 02
for (int i = 0; i < gt_HIERARCHY.getNumRows(); i++)
{ gt_HIERARCHY.setRow(i);
String zzchcode = gt_HIERARCHY.getString("ZZCHCODE");
if (zzchcode.equals(OwnerNumber))
{
zzmemb = gt_HIERARCHY.getString("ZZMEMB");
}
}
}
catch (Exception ex)
{ System.out.println(ex);
}
//----
// Disconnect from SAP
//----
try
{
mConnection.disconnect();
System.out.println("Disconnected from SAP");
}
catch (Exception ex)
{
System.out.println(ex);
}
return zzmemb;
}
} //public class GetMemberFarm
Reward points if helpful.
Regards,
Harini
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |