文字配列の順序検査
ALTSEQ(*NONE) によって定義されていない文字配列の順序検査には、
次の 2 つの依存関係があります。
- ALTSEQ 制御仕様書キーワードの指定の有無、およびそれが指定された 場合の指定方法。
- 配列がコンパイル時配列と実行時前の配列のいずれであるか。
以下の表は、順序検査が行われる時点を示しています。
| 制御仕様書の指定 | SORTA、LOOKUP、および順序検査への ALTSEQ の使用 | コンパイル時配列の順序検査の時点 | 実行時前の配列の順序検査の時点 |
|---|---|---|---|
| ALTSEQ(*NONE) | なし | コンパイル時刻 | 実行時 |
| ALTSEQ(*SRC) | なし | コンパイル時刻 | 実行時 |
| ALTSEQ(*EXT) (コンパイル時に判明) | あり | コンパイル時刻 | 実行時 |
| ALTSEQ(*EXT) (実行時にだけ判明) | あり | 実行時 | 実行時 |
注: RPG III との互換性のために、SORTA および LOOKUP では、ALTSEQ(*SRC) に
よる代替照合順序は使用されません。 代替照合順序を使用してこれらの命令を実行したい場合には、ユーザーの代替順
序を含むテーブル (オブジェクト・タイプ *TBL) をシステム上に定義することが
できます。 次に、制御仕様書で ALTSEQ(*SRC) を ALTSEQ(*EXT) に変更し、
作成コマンドの SRTSEQ キーワードまたはパラメーターに
ユーザー・テーブルの名前を指定することができます。