SAPABAP-データ型
ABAPでプログラミングする場合、さまざまな情報を格納するためにさまざまな変数を使用する必要があります。変数は、値を格納するために予約されたメモリ位置に他なりません。これは、変数を作成するときに、メモリにいくらかのスペースを予約することを意味します。文字、整数、浮動小数点などのさまざまなデータ型の情報を格納したい場合があります。変数のデータ型に基づいて、オペレーティングシステムはメモリを割り当て、予約済みメモリに格納できるものを決定します。
基本データ型
ABAPは、プログラマーに固定長および可変長のデータ型の豊富な品揃えを提供します。次の表に、ABAP基本データタイプを示します。
タイプ | キーワード |
---|---|
バイトフィールド | バツ |
テキストフィールド | C |
整数 | 私 |
浮動小数点 | F |
パック数 | P |
テキスト文字列 | ストリング |
一部のフィールドと番号は、次のように1つ以上の名前を使用して変更できます。
- byte
- numeric
- character-like
次の表は、データ型、メモリに値を格納するために必要なメモリ量、およびそのようなタイプの変数に格納できる最小値と最大値を示しています。
タイプ | 典型的な長さ | 典型的な範囲 |
---|---|---|
バツ | 1バイト | 任意のバイト値(00からFF) |
C | 1文字 | 1〜65535 |
N(提出された数値テキスト) | 1文字 | 1〜65535 |
D(文字のような日付) | 8文字 | 8文字 |
T(文字のような時間) | 6文字 | 6文字 |
私 | 4バイト | -2147483648から2147483647 |
F | 8バイト | 2.2250738585072014E-308〜1.7976931348623157E +308正または負 |
P | 8バイト | [-10 ^(2len -1)+1]から[+10 ^(2len -1)1](ここで、len =固定長) |
ストリング | 変数 | 英数字 |
XSTRING(バイト文字列) | 変数 | 任意のバイト値(00からFF) |
例
REPORT YR_SEP_12.
DATA text_line TYPE C LENGTH 40.
text_line = 'A Chapter on Data Types'.
Write text_line.
DATA text_string TYPE STRING.
text_string = 'A Program in ABAP'.
Write / text_string.
DATA d_date TYPE D.
d_date = SY-DATUM.
Write / d_date.
この例では、事前定義された長さ40のタイプCの文字列があります。STRINGは、可変長の任意の文字列(テキスト文字列)に使用できるデータ型です。タイプSTRINGデータオブジェクトは、通常、固定長が重要ではない文字のようなコンテンツに使用する必要があります。
上記のコードは次の出力を生成します-
A Chapter on Data Types
A Program in ABAP
12092015
DATE型は、日付情報の格納に使用され、上記のように8桁を格納できます。
複合型と参照型
複合型は次のように分類されます Structure types そして Table types。構造タイプでは、基本タイプと構造(つまり、構造に埋め込まれた構造)がグループ化されます。基本タイプのグループ化のみを検討できます。ただし、構造体のネストが利用できることに注意する必要があります。
基本型をグループ化すると、グループ化されたデータ項目としてデータ項目にアクセスしたり、個々の基本型データ項目(構造フィールド)にアクセスしたりできます。テーブルタイプは、他のプログラミング言語では配列としてよく知られています。Arrays単純配列または構造配列にすることができます。ABAPでは、配列は内部テーブルと呼ばれ、他のプログラミング言語と比較すると、さまざまな方法で宣言および操作できます。次の表は、内部テーブルが特徴付けられるパラメータを示しています。
S.No. | パラメータと説明 |
---|---|
1 | Line or row type 内部テーブルの行は、基本型、複合型、または参照型にすることができます。 |
2 | Key テーブルの行を識別する内部テーブルのキーとして、フィールドまたはフィールドのグループを指定します。キーには、基本タイプのフィールドが含まれています。 |
3 | Access method ABAPプログラムが個々のテーブルエントリにアクセスする方法について説明します。 |
参照型は、クラス、インターフェイス、および実行時データ項目のインスタンスを参照するために使用されます。ABAP OOP実行時型サービス(RTTS)を使用すると、実行時にデータ項目を宣言できます。