RPG

419. プロシージャーと仕様書の順序の関係

プロシージャーをRPGに記述すると仕様書の
順序を考慮する必要がある。
プロシージャーを最後に配置しなければならないことは
わかるがどの位置にすべきか迷う人も多いのでは?
そこでその関係を明らかにしてみた。

↓RPG演算命令の順序

        

[メイン・ルーチン]

BEGSR

[メイン・ルーチンで呼びだされるサブ・ルーチン]

ENDSR
QPRINT 

[出力仕様書]

 P PROC   B
 D        PI

[プロシージャー]

BEGSR

[このプロシージャーで呼びだされるサブ・ルーチン]

ENDSR
P        E
** ARR

[コンパイル時の配列]

[解説]

つまり出力仕様書(O)はあくまでもメイン・ルーチンの一部なので
プロシージャーより前に記述され、メイン・ルーチンで記述されるサブ・ルーチンも
プロシージャーより前に記述する。
ただしプロシージャー内で使用するサブ・ルーチンはあくまでも
プロシージャーの内部に記述すること。
コンパイル時の配列は一番後ろに追加するのは今までどおりである。