トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS

ABAP/PERFORM のバックアップ(No.1)


サブルーチンを呼び出すための命令。

概要

用法

ダラダラ書くと可視性も保守性も低下するため、適切なサブルーチンに分け、この命令で呼び出す。

サンプル

USING, CHANGING

# PERFORM F_FUNC_GET_SALES_ORDER_DETAIL USING P_VBELN

# CHANGING IT_SO_HEADER

# IT_SOITEM.

引数戻り値を受け渡しする。 サブルーチンを分けていようと、正しく受け渡しされていなければ結局、中で何をやっているか分からないため、正しく定義し利用すること。

IF FOUND, IN PROGRAM xxx

# PERFORM F_FUNC_GET_SALES_ORDER_DETAIL IN PROGRAM (ZZZzzz) IF FOUND.

「存在するか分からない」サブルーチンの呼び出しに用いる。 ルーチンなど、標準プログラムでよく利用されている。

他のプログラムのサブルーチンを流用することもできるが、流用するような或いはしたいようなロジックは汎用モジュールか共通インクルードにしておくべきで、思わぬところで影響範囲が広がったりするため、そういった用途では使用しないこと。

その他

TABLESオプション

SAPが推奨しない通りTABLES命令は使用しないこと。 内部テーブルを受け渡ししたい場合は、TYPESで「TYPE TABLE OF 〜」としておけば、USINGやCHANGINGで連携できる。

引数の指定順序

引数の指定順序は、必ずTABLES*1→USING→CHANGINGの順となり、逆転は出来ないらしい。(筆者はこのルールに逆らったことがない) CHANGING→USINGと書いた場合、CHANGINGと言う名のUSINGパラメータになり、USINGと言う名のCHANGINGパラメータになるとのこと。




コメントはありません。 Comments/ABAP/PERFORM

お名前:

*1 ※上記の通り現在は使用しないこと