動的なデータ型の利用
背景
型の作成
基本型
数値や文字列などのABAP基本型を動的に作成するには、クラスCL_ABAP_ELEMDESCRのメソッドを利用します。 クラスCL_ABAP_ELEMDESCRからいかのようなStaticメソッドが用意されております。
メソッド名 | 機能 |
---|---|
GET_C | パラメータで指定された長さのC(テキスト)項目型を取得 |
GET_N | パラメータで指定された長さのN(数値テキスト)項目型を取得 |
GET_X | パラメータで指定された長さのX(16進数)項目型を取得 |
GET_P | パラメータで指定された長さのP(パック数値項目)型を取得 |
STRING(文字順序)、XSTRING(バイト順序)、I(整数)、F(浮動小数点数)、D(日付)、T(時間)などの型もメソッドが用意されておりますが、こちらの型は長さの指定がないので、型名を静的に指定すればよく、あえてメソッドを利用する必要がありません。
下記のサンプルソースでは、長さ10の固定長テキスト項目型を動的生成する方法を示しています。
DATA c10 TYPE REF TO cl_abap_datadescr. c10 = cl_abap_elemdescr=>get_c( 10 )."動的な型を取得