!--a11y-->

インタフェース作業領域とは、以下の間でデータを渡すために使用する、特殊な名称付きデータオブジェクトです。
キ 画面 と ABAP プログラムとの間
キ 論理データベース と ABAP プログラムとの間
キ ABAP プログラムと外部サブルーチンとの間
インタフェース作業領域はプログラムの共有データ領域に作成され、データ交換に使用されます。関連するすべてのプログラムおよびプロシージャが、この作業領域にアクセスします。プロシージャでの変更から共有作業領域を保護する方法については、メインプログラムのグローバルデータを参照してください。
一般的なインタフェース作業領域の 1 つがテーブル作業領域であり、以下の命令を使用して宣言します。
TABLES <dbtab>.
この命令により、ABAP ディクショナリのデータベーステーブル、ビュー、または構造と、同じデータ型および 同じ名称で構造が作成されます。
4.0 より前のリリースでは、オープン SQL 命令によってテーブルにアクセスする前に、TABLES <dbtab> 命令を使用して、ABAP プログラムに対してデータベーステーブル <dbtab> を宣言する必要がありました。この制限事項は、オープン SQL 命令に適用されなくなっています。
ただし、データベーステーブル、ビュー、または ABAP
ディクショナリ構造を参照して
(
スクリーンペインタ
のレイアウトエディタにおけるディクショナリから取得機能)
、画面上で入力/
出力項目を定義する場合は、引き続き
TABLES
命令を使用する必要があります。 PBO
イベントでは、ABAP
プログラムが項目内容を画面項目に送信します。PAI
イベントでは、ABAP
プログラムが画面項目の内容を受信して、該当するテーブル作業領域のコンポーネントに戻します。
論理データベースとは、アプリケーションプログラムのデータを読み込む特殊な ABAP プログラムです。論理データベースは、実行可能プログラムにリンクしているとき、以下の命令で宣言されたインタフェース作業領域にデータを渡します。
NODES <node>.
この命令により、同じ名称の ABAP ディクショナリデータ型を参照して、変数 <node> が作成されます。論理データベースのノードの参照先が同一データ型である場合、変数は、論理データベースと実行可能プログラム間のインタフェースとして機能します。論理データベースのノードの参照先が、ABAP ディクショナリのデータベーステーブル、ビュー、またはフラット構造である場合、NODES の代わりに TABLES 命令を使用することができます。
追加情報については、論理データベースを参照してください。
さまざまプログラムに同様の変数がある場合、それらの変数を共有データ領域に保存することができます。保存するには、DATA 命令の COMMON PART オプションを使用します。このタイプの共通データ領域は、外部サブルーチンとのインタフェースとして機能します。また、TABLES および NODES 命令で定義したインタフェース作業領域を、外部サブルーチンの共通データ領域として使用することもできます。
