如何修复“尝试将字段ID添加到记录时未知类型-1”



我们正在编写一个sapjco客户端来自动化某些事情。但是,一个函数似乎在初始化函数时出现问题。其他功能块可以正确连接,但此功能块在尝试连接时崩溃。

该函数没有导入。但是我们也尝试了导入,结果相同。所以添加一个似乎也不起作用

FUNCTION ZE237_GET_REZEPTID.
TYPES: BEGIN OF ZE237SOLLDATEN_TYP,
  id TYPE ZE237SOLLDATEN-ID,
  name TYPE ZE237SOLLDATEN-NAME,
  END OF ZE237SOLLDATEN_TYP.
DATA lt_table TYPE TABLE OF ZE237SOLLDATEN.
SELECT
  id name
  FROM ZE237SOLLDATEN
  INTO CORRESPONDING FIELDS OF TABLE T_EXPORTNAME.

ENDFUNCTION.
public IntellifarmSapFunction(JCoDestination destination, 
    JCoRepository repository, String functionname) throws JCoException, IllegalArgumentException {
    this.destination=destination;
    this.function = repository.getFunction(functionname); //crash here
}

预期:函数的指针

结果:"尝试将字段 ID 添加到记录时类型未知 -1">

如果任何字段的 ABAP 数据类型为 int8,那么您至少需要 JCo 3.0.18 补丁级别,以增加对这种新数据类型的支持。

您可以从 https://support.sap.com/jco 下载最新的JCo补丁级别

但是,我不建议对 ID 字段使用 ABAP 整数类型。在ABAP中,整数类型通常仅用于计算目的。数字数据值(如 ID(的首选数据类型应改为 NUMC(类型 n(。

最新更新