我们有一个BAPI,可以将指定的文档上载到SAP。

BAPI接受三个参数:
ID,FILE_LOC和FOLDER_NAME。
我在JCo代码中按如下所示设置值:

JCO.ParameterList paramList = function.getImportParameterList();
paramList.setValue("101XS1", "EXTERNAL_ID");
paramList.setValue("tmp", "FOLDER_NAME");
paramList.setValue("D:/upload/foo.txt", "FILE_LOCATION");


但是,当我尝试执行BAPI时,出现以下异常:

com.sap.mw.jco.JCO$Exception: (104) RFC_ERROR_SYSTEM_FAILURE: Exception condition "NOT_SUPPORTED_BY_GUI" raised.
    at com.sap.mw.jco.rfc.MiddlewareRFC$Client.nativeExecute(Native Method)
    at com.sap.mw.jco.rfc.MiddlewareRFC$Client.execute(MiddlewareRFC.java:1242)
    at com.sap.mw.jco.JCO$Client.execute(JCO.java:3816)
    at com.sap.mw.jco.JCO$Client.execute(JCO.java:3261)


如果我通过胖客户端(SAP登录)执行,则相同的BAPI可以正常工作。但是通过JCo,它给出了这个错误。

最佳答案

除了“ ABAP程序(功能模块)引发了名为NOT_SUPPORTED_BY_GUI的异常”之外,该错误本身并不能告诉您更多信息。这实际上的含义可能是功能模块试图访问某些与GUI相关的功能-对于BAPI是非法的,因此这是一个定制的RFC功能模块,或者您在SAP标准编码中发现了编程错误,应打开一个SAPnet支持票。

09-30 15:41