ABAP ディクショナリ
7.1 ABAP ディクショナリ
ABAPワークベンチとは
ABAPディクショナリは、Add-onテーブルやAdd-onテーブルを
構成するデータエレメントやドメインの作成など、SAPシステムで
利用されているディクショナリオブジェクトの定義をする機能です。
※外部システムなど、他のシステムとのインターフェースデータを保持するために、Add-onテーブルを作成することが多いです。
ディクショナリオブジェクトとは
ディクショナリオブジェクトとは具体的に以下の9個に分類されます。
ABAPディクショナリで登録されたデータ定義はクライアント非依存のため、
変更したタイミングで全クライアントへ同時に反映されます。
ABAPディクショナリに登録されたデータ定義は、汎用モジュールやプログラムから利用可能となります。
ディクショナリオブジェクトの分類
ABAPディクショナリと一言に言っても、登録できるオブジェクトタイプは大きく3種類に分類することができます。
データベースオブジェクト
データベースオブジェクトに分類されるのは、テーブルとビューです。
ABAPディクショナリでテーブル定義を行うことで、データベース上への
データ登録を行うことが可能になります。
テーブル
ABAPディクショナリの機能からは、アドオンテーブルの新規定義を
行うことができます。テーブルの詳細については、後述にて説明します。
アドオンテーブルの作成方法を知れば、ABAPのデータ構造や裏で動いている処理内容がよくわかるようになります。
アドオンテーブルとは
アドオンテーブルとは、その名の通り “アドオン” (Add-On)で作るテーブルです。
SAPの標準テーブルを利用するだけでは実現することができない機能を
実装する場合に作成されます。
※アドオンテーブルを作成する前に、本当にそのテーブルが必要かどうか?
もしくは、SAPの標準テーブルで同じような用途で利用されているものは
ないか?を確認しましょう。
アドオンテーブルを作りすぎるとメンテナンスが大変になりますし、
その分バグの可能性も高まります。
Add-onテーブルを登録してみよう!
1. ABAPディクショナリ(SE11)の起動
Add-onテーブルの登録は、ABAPディクショナリ (トランザクションコード:SE11)を起動して行います。
2. 「ABAPディクショナリ」画面表示
トランザクションコード:SE11を実行すると「ABAPディクショナリ」という画面が表示されます。
この画面は、テーブルデータだけではなく、データ型・構造定義など、
SAPで利用されるデータ定義の全てを管理する画面です。
3. テーブル名称記入
4. 「登録」ボタン押下
テーブル名を入力します。
※テーブル名は、YまたはZ始まりで登録を行います。
【入力内容】
テーブルID :ZTS001_yyyymmdd または ZTS001_氏名(ローマ字)
例:ZTS001_20220101またはZTS001_KANDA
5. アドオンテーブルの頭文字
6. テーブル変更画面への入力
内容説明 :テスト用マスタ
出荷クラス :A
テーブルブラウザ/テーブルビュー更新 :照会/更新-許可
7. 出荷クラスとは
出荷クラスは、移送やクライアントコピーなどの際に、テーブルデータの移送を制限する設定です。
主に「テーブル更新内容の責任者」「アップグレード時やクライアントコピー時のテーブル処理」を制御します。
通常「A(アプリケーションテーブル)」もしくは「C(カスタマイズテーブル)」を選択することが多いです。
8. 「項目」を押下
9. データエレメントの入力①
項目名とデータエレメントを入力します。
10. 各項目①
11. 「技術設定」ボタンを押下
12. 「データクラス」、「サイズカテゴリ」の入力
【入力内容】
データクラス:APPL0
サイズカテゴリ: 0
バッファリング:バッファリング不可
13. 各項目②
14. 「ジャンプ」をクリック
15. 「前の画面に戻る」をクリック
16. 「チェック」をクリック
17. 「警告」が表示されますが問題ありません。
18. 「ジャンプ」→「前の画面に戻る」をクリック
19. 「有効化」をクリック
20. 「Yes」をクリック
21. 「警告」が表示されますが問題ありません。
22. 補足
①「補足」を選択
②「拡張カテゴリ」をクリック
③拡張可能(深い構造)を選択
④コピーをクリック