1

プール テーブルと透過テーブルからデータをフェッチする SAP 環境で開発された新しい bapi があります。

この bapi が非 SAP 環境から呼び出されると、プール テーブルのみがデータを返します。透過テーブルは空白の値を返します。

場合

A931 テーブルのような透過テーブルの「Where 句」でハードコードされた値を渡すと、透過テーブルも非 SAP 環境の bapi からデータを返します。

しかし、透過テーブルの "Where 句" で値を bapi で宣言された変数を介して渡すと、透過テーブルは非 SAP 環境で値を返さない (代わりに空白を返す)。

4

2 に答える 2

1

変数の長さが必要な SAP の長さではなかったため、ゼロを追加しました。

出来た。

于 2009-10-26T09:41:42.543 に答える
0

ABAPコードを投稿していただけますか?モジュール関数でテーブルを宣言する場合、それらのコンテンツはアクセス可能である必要があり、テーブルパラメータとして返すことができます。

たとえば、RFCによって呼び出される次のコードでは、2つの挿入ステートメントが入力されるため、「select」ステートメントにコメントを付けても、テーブルSTATESが空になることはありません。

FUNCTION z_prt_dns_status_get.
*"----------------------------------------------------------------------
*"*"Interface locale :
*"  IMPORTING
*"     VALUE(LANGU) TYPE  LANGU DEFAULT 'F'
*"  EXPORTING
*"     VALUE(RETURN) TYPE  BAPIRETURN1
*"  TABLES
*"      STATES STRUCTURE  ZPRT_ATN_STATEST
*"----------------------------------------------------------------------


  SELECT t~atn t~state t~langu t~text s~seqnr
   INTO CORRESPONDING FIELDS OF TABLE states
     FROM zprt_atn_statest AS t
     INNER JOIN zprt_atn_states AS s
        ON s~atn = t~atn AND s~state = t~state
        WHERE t~atn = 'DNS'
        ORDER BY s~seqnr.

  states-text = 'A traiter'.
  states-state = 'OPEN'.
  INSERT states INDEX 1.

  states-text = 'Tous'.
  states-state = '****'.
  INSERT states INDEX 1.

ENDFUNCTION.

よろしく

于 2009-10-21T12:32:58.030 に答える