SAP テーブル とは? ~標準テーブル名称の由来や確認方法とは~(vol.102)
- 公開日:
- 最終更新日:
SAPシステムに蓄積された業務データを確認するには、テーブルに関する知識が必要不可欠です。
本ブログ記事では、SAPテーブルの種類や、SAP標準テーブルの名称とその由来、SAPテーブルの確認に役立つトランザクションコードについて解説します。
*本ブログの「SAPシステム」は、「SAP ERP」および「SAP S/4HANA」を指します。
SAP テーブルとは?
テーブルとは、データベースにおけるデータを格納する場所であり、データを管理する基本的な単位です。
基本的には、行(レコード)と列(フィールド)から成る表形式でデータを管理します。
SAPシステムでも、日々蓄積される業務データはテーブルに格納されます。
SAPシステムには、大別して3種類のテーブル(標準テーブル/アドオンテーブル/内部テーブル)が存在します。
- 標準テーブル
標準テーブルとは、SAPシステムに標準で用意されているテーブルのことです。
標準テーブルは、特定のビジネスプロセスや業務フローをサポートできるようSAP社によって設計されており、各種業務データやマスタデータが格納されます。 - アドオンテーブル
アドオンテーブルとは、標準テーブルには存在しないが、ユーザーやベンダーが特定のビジネス要件を満たすために追加で作成したテーブルのことです。
アドオンテーブルは、企業独自のデータフィールドや構造を持つことができるため、標準テーブルだけでは実現できない機能を実装する際に、アドオンテーブルを作成します。
*アドオンテーブルの頭文字は”Z”であることが多いため、テーブル名称の頭文字が”Z”でなければ、標準テーブルであると予測できます。 - 内部テーブル
内部テーブルとは、ABAPプログラム内で一時的にデータを保持するためのテーブルのことです。
プログラムが実行されている間のみメモリ上に存在し、プログラムが終了すると自動的にメモリから削除されます。
次章では、この3種類の内、もっとも利用頻度の高い標準テーブルの名称やその由来を解説していきます。
SAP標準テーブル名称の由来とは?
SAP標準テーブルの例として、「BKPF:会計伝票ヘッダ」、「MARA:一般品目データ」などが挙げられます。
これを見て分かるように、SAP標準テーブル名からテーブルの内容を予測するのは至難の業です。
恐らく、ほとんどの方が覚えきれず毎回調べているのではないでしょうか?
なぜこのような予測しづらいテーブル名称になっているかというと、SAP社がドイツの会社であるためです。
SAP標準テーブルの名称はドイツ語の略称となっていることが多いため、ドイツ語に馴染みがない方にとっては丸暗記するしか方法がありません。
しかし、いくつかのドイツ語を覚えることでテーブル名からテーブルの内容を予測できるようになります。
そこで、覚えておくと良いドイツ語の略称をいくつかご紹介します。
これらのドイツ語の略称を覚えることでテーブル名称から内容を予測できるようになるかもしれません。
- Beleg:伝票
「Beleg」は「伝票」という意味のため、その略の”B”が伝票に関するテーブルの頭文字として用いられています。裏を返せば、頭文字が”B”のテーブルは、基本的に伝票に関するSAPテーブルと予測できます。
*頭文字ではなく、テーブル名称の途中に”B”が含まれている場合もあります。例)
BKPF:会計伝票ヘッダー
BSEG:会計伝票明細
VBAP:販売伝票明細 - Krop:ヘッダー
同様に、「Krop」の略である”K”を使用しているSAPテーブルは、ヘッダーであると予測できます。例)
BKPF:会計伝票ヘッダー
VBAK:販売伝票ヘッダー - Material:原料/材料
「Material」は英語にもあるように「原料/材料」を意味します。「Material」の略である”MA”を使用しているテーブルは、生産/購買/在庫に関連するテーブルであることが推測できます。特に品目という名称が付くことが多いです。例)
MARA:一般品目データ
MARD:品目の保管場所データ
上記の他にも、ドイツ語の名称を調べることで、SAPテーブルを丸暗記せずに理解できるようになるかもしれません。
是非、調べてみてください。
次章では、SAPテーブルの確認に役立つトランザクションコードについて詳しく解説します。
SAP S/4HANA や RISE with SAP って、正直何ができるの?
~ “変わる良さ” と “変わらない安心” を徹底分析!! ~
SAP テーブル確認に役立つトランザクションコードとは?
SAPテーブルをSAP GUI上で確認する方法はいくつかあります。
ここでは、SAPテーブルの確認に役立つトランザクションコードをいくつかご紹介します。
- 「SE11」:テーブル照会・変更
テーブル定義を一覧で表示できるトランザクションコードです。
項目のデータ型や長さ、小数点以下桁数などの設定を照会のみならず、変更することもできます。そのため、テーブル定義を確認したいときは「SE11」がおすすめです。 - 「SE15」:テーブル項目
テーブルの項目名を一覧で表示できるトランザクションコードです。
「SE15」で画面遷移後、「リポジトリ情報システム」→「項目」→「テーブル項目」の順に選択し、表示したいテーブル名を入力すると項目名が一覧で表示されます。ここから項目名の一覧をExcelにダウンロードすることも可能なので、テーブルの項目名を一気に取得したい場合におすすめです。 - 「SE16」:データブラウザ
テーブルのデータを表示できるトランザクションコードです。
選択画面で条件を絞り込んでからデータを表示できます。
*「SE16H」や「SE16N」と違い、選択画面からはじまるトランザクションコードです。 - 「SE16N」:一般テーブル照会
すべての項目で条件を絞り込みしてデータを表示できるトランザクションコードです。
「SE16」では一部の項目でしか絞り込みができない仕様ですが、「SE16N」ではテーブルのすべての項目に条件を設定可能です。
細かな条件を設定してデータを表示したい場合におすすめです。 - 「SE16H」:一般テーブル照会
データを確認するときは、この「SE16H」が一番おすすめです。
「SE16N」に、次の3つの機能が追加されているトランザクションコードです。
①グループ集計:エントリ数をグループ化して確認することができます。グループ化したい項目のグループ欄にチェックを入れて実行するだけで、データをグループ化して表示してくれます。
②合計機能:合計を出力したい項目の金額欄にチェックを付けることで合計した値を出力してくれます。
③集計機能:集計をしたい項目の集計欄で表示したい内容を選択することで、項目の最大値/最小値/平均値を出力してくれます。 - 「DB02」:SQL文
「DB02」で遷移後、「診断」→「SQL コマンドエディタ」を選択します。
他のトランザクションコードとは違って、ここではSAPテーブルをSQL文で表示することができます。つまり、他のトランザクションコードで実現できなかったテーブル同士の結合もすることも可能です。
他にも細かな条件や指定をSQLで自由にカスタマイズできます。SQLになれている人はこの「DB02」でテーブルを確認するのがおすすめです。
普段の業務ではSAPテーブルを意識することは少ないかもしれません。
SAPシステム内でどのようにデータが保持されているのか、今回ご紹介したトランザクションコードを使用して、ご確認いただければと思います。
*ご紹介したトランザクションコードは、権限によっては使えないことがあるかもしれません。使用できない場合は、他のトランザクションコードを試してみてください。(SAPシステムのバージョンによって、表示される画面や機能が異なる場合がございますので、予めご了承ください)
まとめ
さてここまで、SAPテーブルの種類や、SAP標準テーブルの名称とその由来、SAPテーブルの確認に役立つトランザクションコードについて解説して参りました。
SAP標準テーブルは数千以上存在すると言われてます。すべてのSAP標準テーブルを覚える必要はありませんが、本ブログ記事でご紹介した内容を踏まえ、利用頻度の高いSAP標準テーブルを確認してみると、SAPシステムへの理解が深まり、業務効率化の余地を発見できるもしれません。是非、試してみてください。
※本記事は、2023年9月1日時点の情報をもとに作成しています。製品/サービスに関する詳しいお問い合わせは、電通総研のWebサイトからお問い合わせください。
https://erp.dentsusoken.com/inquiry/