【问题标题】:SAP JCo3 table empty although connectedSAP JCo3 表为空,但已连接
【发布时间】:2018-08-08 12:24:36
【问题描述】:

您好,我正在使用 SAP JCo3 连接器以及 jar 随附的 .dll 文件。 目的地已成功连接。我的问题是,当我在执行 function.execute(destination) 时, function.getTableParameterList().getTable("PART_LIST") 返回一个零行的空表 我实现连接的代码如下

JCoDestination dest  = JCoDestinationManager.getDestination("EOMP");
dest.ping();
JCoRepository repo=  dest.getRepository();
JCoFunctionTemplate ftemplate = repo.getFunctionTemplate("Z_BAPI_GET_ESO_PART");
JCoFunction function = ftemplate.getFunction();
JCoParameterList importParams = function.getImportParameterList();

importParams.setValue("ESO","R1S00444");
importParams.toXML();

function.execute(dest);

JCoParameterList tableParamList=function.getTableParameterList();
JCoTable table=tableParamList.getTable("PART_LIST");

【问题讨论】:

    标签: java sap sapjco3


    【解决方案1】:

    几天前我也有同样的现象......

    过了一会儿,我注意到要传递的参数 - 如果是字符 - 必须与字段的大小一样长。

    您的字段长度是 12 并且是字符。 如果你直接在 SAP 中调用你的函数,你传递例如1234567891 并获得您想要的结果。

    但是,如果从 RFC 连接调用它,则必须准备记录 001234567891

    查找数据库表。用表中给定的例子试试。

    【讨论】:

      【解决方案2】:

      我建议调试您的 ABAP 代码。 如果它会在这个 PART_LIST 表中填充一些行,那么您也可以在 Java 端获取它们。 你的 Java 代码没有明显的错误,除了 importParams.toXML() 是多余的,dest.ping() 也不需要。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-05-02
        • 1970-01-01
        • 1970-01-01
        • 2018-02-12
        • 2019-04-09
        • 1970-01-01
        • 1970-01-01
        • 2019-03-06
        相关资源
        最近更新 更多