ABAP/PERFORM
Last-modified: 2016-01-08 (金) 12:41:24 (3025d)
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?