if (window.name != "content") document.write("
"); <!-- !chm2web! -->
| Click here to show toolbars of the Web Online Help System: show toolbars |
"); <!-- !chm2web! -->
SAP Java Connector - Excample 1: 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
testJco
{
main(String[] args)
{
GetMemberFarm testGetMemberFarm = new GetMemberFarm();
String memberFarm= testGetMemberFarm.GetMemberFarmFromSap("0111020155","02");
System.out.println("Memberfarm: " + memberFarm);
}
}
Class GetMemberFram
com.sap.mw.jco.*; //The JCO
GetMemberFarm {
String GetMemberFarmFromSap(String farm, String OwnerNumber)
{ String zzmemb ="";
String memberFarm = "";
JCO.Repository mRepository;
JCO.Client mConnection = null;
JCO.Function myFunction = null;
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);
}
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);
}
try
{
mConnection.execute(myFunction);
System.out.println("RFC Call OK");
}
catch (Exception ex)
{ System.out.println(ex); //Exception from function
}
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);
}
try
{
mConnection.disconnect();
System.out.println("Disconnected from SAP");
}
catch (Exception ex)
{
System.out.println(ex);
}
return zzmemb;
}
} //public class GetMemberFarm
var fe = FindFrame("toc", top); if ((fe != null) && (chmtop.c2wtopf.jstree != null)) { if (chmtop.c2wtopf.FITEMS[chmtop.c2wtopf.pagenum] != chmtop.c2wtopf.pageid) chmtop.c2wtopf.jstree.OpenTreeNode("" + chmtop.c2wtopf.pageid); } <!-- CHM2WEB --><!-- DO NOT DELETE OR MODIFY THIS CODE WITHOUT WRITTEN PERMISSION OF A!K RESEARCH LABS -->
SAP Java Connector 示例
本文介绍如何使用SAP Java Connector调用简单的RFC功能模块ZNAS_HIE1_GET_MEMBER_FARM,该模块根据农场编号返回拥有过该农场的成员列表。通过示例代码展示了连接SAP系统、设置输入参数、执行RFC调用并处理返回结果的过程。
3625

被折叠的 条评论
为什么被折叠?



