レコード識別標識の割り当てに関する規則
プログラム記述ファイル中のレコードにレコード識別標識を割り当てる場合には、
以下の点に留意してください。
- すべてのレコード・タイプに対して同じ命令を処理する場合には、2 つ以上 の異なるレコード・タイプに同じ標識を割り当てることができます。 そのためには、21 から 22 桁目にレコード識別標識を指定し、各種のレコード・タイ プのレコード識別コードを OR 関係で指定します。
- レコード識別標識を AND 関係で関連付けることができますが、そのレコード 識別標識はグループの最初の行に指定しなければなりません。 AND 行にレコード識別標識を 指定することはできません。
- 不定形式レコード (プログラム記述ファイル中のレコードで、23 から 46 桁目に レコード識別コードで記述されていないもの) は、プログラムの停止の原因とな ります。
- 1 つのレコード識別標識を、別のレコード・タイプのレコード識別標識とし て、フィールド標識として、または結果の標識として指定することができます。 診断メッセージは出されませんが、こうした標識の使用法は、間違った結果の原 因となることがあります。
外部記述ファイル中のレコードにレコード識別標識を割り当ている場合には、以
下の点に留意してください。
- AND/OR 関係をレコード様式名と一緒に使用することはできませんが、同 じレコード識別標識を複数のレコードに割り当てることはできます。
- 7 から 16 桁目には、ファイル名でなく、レコード様式名を指定しなければなり ません。
レコード識別標識の例については、図 1 を参照してください。
図 1. レコード識別標識の例
*...1....+....2....+....3....+....4....+....5....+....6....+....7...
IFilename++SqNORiPos1+NCCPos2+NCCPos3+NCC................................
I........................Fmt+SPFrom+To+++DcField+++++++++L1M1FrPlMnZr....
*
I*Record identifying indicator 01 is set on if the record read
I*contains an S in position 1 or an A in position 1.
IINPUT1 NS 01 1 CS
I OR 1 CA
I 1 25 FLD1
* Record identifying indicator 02 is set on if the record read
* contains XYZA in positions 1 through 4.
I NS 02 1 CX 2 CY 3 CZ
I AND 4 CA
I 1 15 FLDA
I 16 20 FLDB
* Record identifying indicator 95 is set on if any record read
* does not meet the requirements for record identifying indicators
* 01 or 02.
I NS 95
*...1....+....2....+....3....+....4....+....5....+....6....+....7...
IRcdname+++....Ri........................................................
*
* For an externally described file, record identifying indicator 10
* is set on if the ITMREC record is read and record identifying
* indicator 20 is set on if the SLSREC or COMREC records are read.
IITMREC 10
ISLSREC 20
ICOMREC 20