[[サブルーチン>アドオン/サブルーチン]]の定義に使用する。
* 概要 [#be14f03d]
FORM〜ENDFORM形式で記述し、メインプログラムからデータを受け取って処理を行い、処理が終了するとメインプログラムに処理を戻す。
FORM~ENDFORM形式で記述し、メインプログラムからデータを受け取って処理を行い、処理が終了するとメインプログラムに処理を戻す。
** USING, CHANGING, TABLES [#w6118416]
*** 用法 [#d61200ef]
[[引数>アドオン/引数]]や[[戻り値>アドオン/戻り値]]の定義のため、[[USING>ABAP/USING]]や[[CHANGING>ABAP/CHANGING]]命令を使用する。
なお、[[TABLES>ABAP/TABLES]]命令は使用しないようSAPからお達しが出ている。
なお、[[TABLES>ABAP/TABLES]]命令は使用しないようSAPからお達しが出ているので、内部テーブルを引数にしたければディクショナリでテーブルデータ型を定義するか、[[TYPES>ABAP/TYPES]]命令でTYPE TABELE OF ~で参照する型を宣言しておくこと。
なお、[[引数>アドオン/引数]]や[[戻り値>アドオン/戻り値]]自体およびそのデータ型を指定しないこともできるが、保守性も可読性も著しく低下するため''必ず書け''。
*** サンプル [#e2e0f75a]
# FORM F_FUNC_COMPANYCODE_GETDETAIL
# USING I_BUKRS TYPE BKPF-BUKRS
# CHANGING E_WA_T001 TYPE T001.
# ...
# ENDFORM.
FORM F_FUNC_COMPANYCODE_GETDETAIL
USING I_BUKRS TYPE BKPF-BUKRS
CHANGING E_WA_T001 TYPE T001.
...
ENDFORM.
* その他 [#f12152c6]
関連する命令は、[[PERFORM>ABAP/PERFORM]]など。
~
~
CENTER:【スポンサードリンク】
#htmlinsert(amazon_book_sap_system_implement)
~
~
----
#pcomment(reply)