java程序远程调用sap函数代码:
创新互联公司于2013年创立,是专业互联网技术服务公司,拥有项目网站制作、成都网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元开平做网站,已为上家服务,为开平各地企业和个人服务,联系电话:13518219792
JCoDestination destination = rfcSource.getDestination();
JCoFunction function = destination.getRepository().getFunction(funcName);
JCoParameterList paramStrlist = function.getImportParameterList();
JCoParameterList paramTableList = function.getTableParameterList();
ListString paramList = getParamList();
for (String param : paramList) {
int index = param.indexOf(":{");
if(index = 0){
String type = param.substring(0,index);
if(type.toLowerCase().equals("strings")){
String typeValues = param.substring(index + 2,param.length() - 1);
String[] paramArray = typeValues.split("[|]");
for (String pa : paramArray) {
paramStrlist.setValue(pa, paramMap.get(pa));
}
}else if(type.toLowerCase().equals("tables")){
String typeValues = param.substring(index + 2,param.length() - 1);
String[] paramArray = typeValues.split("[;]");
for (String pa : paramArray) {
int tabIndex = pa.indexOf(":");
if(tabIndex = 0){
String tableName = pa.substring(0,tabIndex);
String tableFields = pa.substring(tabIndex +1); //
String[] tfArray = tableFields.split("[|]");
paramTableList.getTable(tableName).appendRow();
for (String tf: tfArray) {
paramTableList.getTable(tableName).setValue(tf, paramMap.get(tableName+ "." + tf));
}
}
paramTableList.set
}
}
}
}
function.execute(destination);
String queryString = getQryString();
String rfcName = queryString.substring(0, queryString.indexOf(","));
String rfcParam = queryString.substring(rfcName.length() + 1);
final String[] returnType = { "TABLES", "STRUCTURES", "STRINGS" }; //SAP输出类型格式
无具体的错!我使用的是VB.NET,然后我在页面放了两个文本框,一个是用来输入SO NUMBER,一个是输入日期来查询。但是这两个参数无法传到SAP系统当中。导致无法查询结果,返回值为0.不知版主是可以给一个具体的例子呢,感谢!!
sap工具栏上有个 模式点进去输入函数名字再确定就能调用函数了e
RFC即可以是自定义的function也可以是sap系统组件自带的(如BAPI)。但是自己自定义的function必须勾选Remote-Enabled
Module.
RFC
是Remote
Function
Call
简称,SAP系统和其他(SAP或非SAP)系统间的一个重要而常用的双向接口技术,也被视为SAP与外部通信的基本协议。