【SAP】データエレメントとは?1分で分かりやすく

ABAP

本ページでは、SAPのデータエレメントを初心者の方向けに分かりやすく解説します。

データエレメントとはテーブル項目の意味属性を決定するもの。ドメインが技術属性―"10桁の数値型" などを決めるものであるのに対して、データエレメントは、その4文字の数値型が、例えば「勘定コード」のためにある、というような情報を定義します。

このページでは、データエレメントの作成方法を1から解説しつつ、そもそもデータエレメントが何のためにあるのか?結論、データエレメントとは何か?を初心者向けに解説します。

このページで学べる内容
  • データエレメントとは?
  • ドメインとの違い
  • データエレメントの定義方法

SAPエンジニアを目指す方であれば知らないと恥ずかしい超重要知識ですので、是非最後までご覧ください。

それでは、早速解説を始めます。

スポンサーリンク
スポンサーリンク

SAP:データエレメントとは?

データエレメントとは、テーブル項目の意味属性を決めるものです。

ドメインが、テーブル項目の技術属性―。すなわち、"数値型/10桁" という情報を定義するのに対し、データエレメントは、その "数値型/10桁" の項目がどのような意味を持つのか?というものを定義します。勘定コードなのか、品目コードなのか。はたまた、仕入先コードなのか。

データエレメントとドメインの具体例

ドメイン
技術属性(データ型 / 項目長 / 値範囲)を決定

"文字列/15桁"・"日付型/8桁" など


データエレメント
⇒意味属性を決定

"住所"・"支払期日" など

ページ後半でも説明しますが、データエレメントを作成する際には基本的にドメインを参照するように設定します。

データエレメントとして「支払日付」という意味を持たせ、"日付型/8桁" という技術属性をドメインから受け継ぐようなイメージでOK。

その意味で、ドメインとデータエレメントの関係性を正しく理解しておくことが重要です。初心者の方ほど混乱してしまいがちな概念ですので、この機会にドメインも合わせて理解しておきましょう。

データエレメントの定義方法

実際の画面を見ながら、データエレメントの作成方法を解説します。

言葉だけではイメージがついていなくても、実際の画面を見ることで理解が深まります。すぐに必要でなくても、是非1つ1つ丁寧にご覧ください。

1:ABAPディクショナリ(SE11)を実行

SAPメニュー > ツール > ABAPワークベンチ > 開発 > ABAPディクショナリ(SE11)

トランザクションコード:SE11を実行すると「ABAPディクショナリ」の画面が開きます。「データ型」の項目に、登録したいデーエレメント名を入力して登録ボタンをクリックします。

トランザクションコード:SE11を実行すると「ABAPディクショナリ」の画面が開きます。「データ型」の項目に、登録したいデーエレメント名を入力して登録ボタンをクリックします。

ポップアップ画面が表示されるので「データエレメント」を選択。

ポップアップ画面が表示されるので「データエレメント」を選択。

下記のような画面が表示されます。

2:データ型定義

まずは、データエレメントのデータ型を定義します。

データ型の登録方法は3つ。

データエレメントのデータ型定義方法
  • ドメインを指定する(最もポピュラー
  • 組込型を指定する
  • 他のデータエレメントを指定する

1つ1つ説明します。

ドメインを指定する

最も基本となる方法がこれ。事前に定義したドメインを参照する方法です。

ドメインが既にデータ型や項目長などの技術属性を持ち合わせていますので、ドメインを指定してあげれば、対象のデータエレメントもその技術属性を保持することになります。

既に他のデータエレメントから参照されているドメインを指定することもできます。

もちろん、ドメインの技術属性を変更すれば、そのドメインを参照している全てのデータエレメントの技術属性も変わります。後から、桁数の変更を行うような場合に便利です。(逆にいうとドメインとデータエレメントを適切に紐づけて置かないとアウト)

組込型を指定する

事前定義されたABAPのディクショナリデータ型を指定します。

ディクショナリデータ型とは、ABAPディクショナリの中でのみ利用できるデータ型です。

ディクショナリデータ型意味
ACCP会計期間 YYYYMM
CHAR文字列
CLNTクライアント
CUKY通貨コード(CURR項目による参照)
CURR通貨項目
DATS日付
DEC計算/金額項目
FLTP浮動小数点数
INT11 バイト整数
INT22 バイト整数
INT44 バイト整数
LANG言語
LCHR文字 (長)
LRAWバイト順序 (長)
NUMC数値テキスト
PREC精度
QUAN数量
RAWバイト順序
RAWSTRING可変長のバイト順序
STRING可変長の文字列
TIMS時刻 HHMMSS
UNIT単位

他のデータエレメントを指定する(参照データ型)

最後はあまり見かけない方法。他のデータエレメントを指定するだけ。

指定したデータエレメントと同じデータ型のデータエレメントが出来上がります。

ですが、本来のデータエレメント定義の意味・目的から考えると、他のデータエレメントを参照するのであれば、最初からそのデータエレメントを作る意味がなくなってしまうので、このオプションの存在意義は把握しかねているのが実態です。

(事実、実際に稼働しているSAP上でこのような他のデータエレメントを参照するデータエレメントをみたことはありません。)

3:他の属性定義

続いては「他の属性」タブの項目を入力します。

この項目では、事前定義した検索ヘルプなどを指定します。

検索ヘルプ以外については、設定するタイミングが多くはありません。

4:項目ラベル

項目ラベルを定義します。

ALV表示した場合などに表示されるテキストです。ALV上の項目幅に伴って表示される名称が短~長で変わるため、それぞれ指定します。

これで、データエレメントの定義はOK。

ABAPを1から勉強したい方は

ABAPを1から学習したい初心者の方向けに、できるだけ網羅的にABAPが理解できるよう以下ページに知識体系を整理しています。

特に初心者のうちは、どこから学べばよいか?どう勉強すれば良いか?すらわからない状態になりがち。

ある程度の知識を持ったうえで、はじめて実践的な理解へとつながります。

是非、一度ご覧になってみてください。

タイトルとURLをコピーしました