コンテンツフレーム起動

データ型およびオブジェクトの例 文書を SAP ライブラリストラクチャに組み込む

ABAP プログラムでは、基本データ型/ データオブジェクト、集約データ型/ データオブジェクト、およびオブジェクトを頻繁に使用するので、このセクションにはそれらの例が記述されています。

例

この例には、組込 ABAP 型を参照して基本データオブジェクトを宣言する方法が示されています。

PROGRAM demo_elementary_data_objects.

DATA text1(20) TYPE c.
DATA text2     TYPE string.

DATA number    TYPE i.

text1 = 'The number'.
number = 100.
text2 = 'is an integer.'.

WRITE: text1, number, text2.

このプログラムにより、以下が画面に出力されます。

The number              100 is an integer.

この例では、データオブジェクト TEXT1TEXT2 、および NUMBER が、DATA 命令によって宣言されます。技術属性は、組込 ABAP CSTRING 、および I を参照して設定されます。名称のないリテラルの値が、データオブジェクトに代入されます。名称付きデータオブジェクトの内容が、一覧に表示されます。

例

この例には、プログラム内でローカル基本データ型を宣言する方法が示されています。

REPORT demo_types_statement.

TYPES mytext(10) TYPE c.
TYPES myamount   TYPE p DECIMALS 2.

DATA text        TYPE mytext.
DATA amount      TYPE myamount.

text = ' 4 / 3 = '.
amount = 4 / 3 .

WRITE: text, amount.

このプログラムにより、以下が画面に出力されます。

4 / 3 =                1.33

このプログラムでは、TYPES 命令を使用してローカルデータ型 MYTEXT および MYAMOUNT を作成します。技術属性は、組込 ABAP 型を参照して定義されます。次に、データオブジェクト TEXT および AMOUNT が、DATA 命令によって宣言されます。それらのデータ型は、MYTEXT MYAMOUNT を参照して定義されます。値がデータオブジェクトに代入され、データオブジェクトの内容が画面に表示されます。

例

この例には、構造の宣言方法が示されています。

REPORT demo_structure.

TYPES: BEGIN OF name,
         title(5)       TYPE c,
         first_name(10) TYPE c,
         last_name(10)  TYPE c,
       END OF name.

TYPES: BEGIN OF mylist,
         client         TYPE name,
         number         TYPE i,
       END OF mylist.

DATA list TYPE mylist.

list-client-title = 'Lord'.
list-client-first_name = 'Howard'.
list-client-last_name = 'Mac Duff'.
list-number = 1.

WRITE list-client-title.
WRITE list-client-first_name.
WRITE list-client-last_name.
WRITE / 'Number'.
WRITE list-number.

このプログラムにより、以下が画面に出力されます。

Lord  Howard      Mac Duff
Number           1

ローカルデータ型 NAME および MYLIST は、TYPES 命令によって構造として定義されます。構造 NAME には、組込 ABAP C を参照する 3 つのコンポーネント TITLEFIRST_NAME 、および LAST_NAME があります。構造 MYLIST には、コンポーネント CLIENT および NUMBER があります。CLIENT は、構造 NAME を参照する下位構造です。NUMBER は、組込型 I の基本項目です。データオブジェクト LIST は、データ型 MYLIST を参照して定義されます。値がコンポーネントに代入されてから、コンポーネントの内容が画面に表示されます。

例

この例には、内部テーブルの定義方法が示されています。

PROGRAM demo_internal_table.

TYPES: BEGIN OF mytext,
         number TYPE i,
         name(10) TYPE c,
       END OF mytext.

TYPES mytab TYPE STANDARD TABLE OF mytext WITH DEFAULT KEY.

DATA text TYPE mytext.
DATA itab TYPE mytab.

text-number = 1. text-name = 'John'.
APPEND text TO itab.

text-number = 2. text-name = 'Paul'.
APPEND text TO itab.

text-number = 3. text-name = 'Ringo'.
APPEND text TO itab.

text-number = 4. text-name = 'George'.
APPEND text TO itab.

LOOP AT itab INTO text.
   WRITE: / text-number,text-name.
ENDLOOP.

このプログラムにより、以下が画面に出力されます。

1  John

2  Paul

3  Ringo

4  George

この例では、最初にデータ型 MYTEX が構造として定義されます。次に、データ型 MYTAB が、行データ型 MYTEXT の内部テーブルとして定義されます。データオブジェクト TEXT および ITAB は、内部データ型 MYTEXT および MYTAB を参照して宣言されます。内部テーブル ITAB の各行は、APPEND 命令によって動的に生成されます。内部テーブル ITAB の内容が、構造 TEXT を使用して一覧に書き込まれます。内部テーブルも参照してください。

 

 

 

 

コンテンツフレーム終了