TAG (タグ)
コード | 演算項目 1 | 演算項目 2 | 結果フィールド | 標識 | ||
---|---|---|---|---|---|---|
TAG | ラベル |
宣言命令の TAG は、GOTO (演算命令のスキップ)または CABxx (比較および分岐)命令 の行き先を識別するラベルを指定します。 この命令は、演算内 (合計演算内を含む) の任意の場所に指定することができ ます。
サイクル・メイン・プロシージャーのサブルーチン内の GOTO は、同じサブルーチン、明細演算、または合計演算の中の TAG に出すことができます。 サブプロシージャーのサブ ルーチン内の GOTO は、同じサブルーチン内またはサブプロシージャーの本体 内の TAG に出すことができます。
制御レベルの指定 (7 から 8 桁目) はブランクにするか、 あるいはプログラムの適切なセクション内のステートメントをグループにまとめる ために L1 から L9 標識、LR 標識、または L0 標識を入れることができます。 条件付け標識の指定 (9 から 11 桁目) は使用できません。
演算項目 1 には、GOTO または CABxx 命令の行き先の名前を入れなければな りません。 この名前は、GOTO 命令の演算項目 2 に指定されるか、または CABxx 命令の結果フィールドに指定される固有の記号名でなければなりません。 この名前は、複数の GOTO または CABxx 命令の共通の行き先として使用するこ とができます。
RPG IV 論理サイクルの別の部分から TAG に分岐すると、無限ループに入ることがあります。例えば、明細演算行に合計演算 TAG 命令への GOTO 命令を指定すると、無限 ループが発生する場合があります。
TAG 命令の例については、図 1 を参照してください。