!--a11y-->

プログラムはローカルデータを使って実行します。データは、プログラムのメモリ領域内にあるバイトの文字列で構成されます。関連したバイトの文字列を項目といいます。各項目には ID ( 名称) とデータ型が割り当てられています。すべてのプログラム言語は、データ型に従って項目内容を解釈する方法を示したコンセプトにもとづいています。
ABAP のタイプコンセプトでは、項目をデータオブジェクトと呼んでいます。各データオブジェクトは抽象データ型のインスタンスです。ABAP で使われるデータ型は単に項目の属性であるだけでなく、独立して定義することもできます。データオブジェクトとデータ型にはそれぞれ別個の名称領域が用意されています。したがって、1 つの名称をデータオブジェクト名としても、データ型の名称としても使用することができます。
データ型は、データオブジェクトの属性として発生するだけでなく、単独で定義することもできます。ユーザ定義データ型の定義は、事前定義された基本データ型のセットにもとづいています。データ型は、プログラムの宣言部分で (TYPES 命令を使用) ローカルに定義するか、ABAP ディクショナリ内でグローバルに定義することができます。独自のデータ型を使用して、データオブジェクトを宣言したり、汎用操作でパラメータのタイプをチェックしたりすることができます。
データオブジェクトとは、ABAP 命令が実行時に使用する物理単位です。各 ABAP データオブジェクトには技術属性が割り当てられています。これは、ABAP プログラムの実行時に常に完全に定義されます。データオブジェクトの技術属性として、長さ、小数点以下桁数、およびデータ型があります。ABAP 命令はデータオブジェクトの内容を使って実行し、データオブジェクトのデータ型に従ってそれを解釈します。データオブジェクトは ABAP プログラムの宣言部分で静的に宣言することも ( この場合にもっとも重要な命令は DATA です) 、実行時に ( たとえば、プロシージャの呼出時など) 動的に宣言することもできます。プログラムは、プログラムのメモリ領域内にある項目だけでなく、リテラルもデータオブジェクトとして扱います。
データ型とデータオブジェクトの追加情報については、以下を参照してください。
