1

指定されたドキュメントを SAP にアップロードする BAPI があります。

BAPI は、ID、FILE_LOC、および FOLDER_NAME の 3 つのパラメーターを受け入れます。そして、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 Logon) を介して実行すると、同じ BAPI が正常に動作します。しかし、JCo を介して、このエラーが発生します。

4

2 に答える 2

2

このエラー自体は、「ABAP プログラム (汎用モジュール) が NOT_SUPPORTED_BY_GUI という名前の例外を発生させた」以上のことはわかりません。これが実際に意味することは、おそらく汎用モジュールが何らかの GUI 関連機能にアクセスしようとしたことです。これは BAPI では違法です。したがって、これはカスタムメイドの RFC 汎用モジュールであるか、または SAP 標準コーディングでプログラミング エラーを発見したため、 SAPnet サポート チケットを開きます。

于 2010-04-13T17:57:58.267 に答える
1

RFC またはバックグラウンド JOB として、GUI 以外の操作で GUI サービスを使用することはできません。一般に、クラス cl_gui_frontend_services と関数 GUI_* の使用は避けてください。または、RFC 対応関数で OPEN_DATASET FOR INPUT/OUTPUT 命令を使用します。

よろしく

于 2010-04-20T10:56:54.943 に答える