6.6 KiB
6.6 KiB
ファイル定義書
変更履歴
| No | 変更内容 | 担当者 | 変更日 | 承認者 | 備考 |
|---|---|---|---|---|---|
| 1 | 新規作成 | AI | YYYY/MM/DD |
Layout(レコードレイアウト)
ファイル基本情報
| ファイル名 | COPY ID | 媒体 | レコード形式 | レコード長 |
|---|---|---|---|---|
| PS | FB |
レコード定義
| No | レベル | 項目名 | 項目名(英字名) | 属性 | バイト数 | OCCURS | 開始位置 | REDEFINES | 所属グループ | 備考 |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | ||||||||||
| 2 | ||||||||||
| 3 | ||||||||||
| 4 |
記載説明
| 項目 | 説明 |
|---|---|
| 媒体 | ファイル(PS)の場合は"PS"と記録 |
| レコード形式 | 固定長(FB)または可変長(VB)と記録 |
| レコード長 | レコード長は全項目のバイト数を合計して記録。FDのRECORD SIZEと一致させること。REDEFINES項目は合計に含まない。 |
| レベル | レベル番号の定義:01, 03, 05, 07, 09... と飛び飛びのレベル番号とする。同じレベル番号は兄弟関係となる。 |
| 属性(PIC TYPE) | 属性(TYPE)とバイト数を記入するものとする。原則PIC記法で記録。COBOL記述に沿ったシートの記載内容に準拠。 |
COBOLデータ型一覧
| No | COBOL記述 | 略記法 | バイト数 | 説明 | 日本語説明 | 例 | バイト数(例) |
|---|---|---|---|---|---|---|---|
| 1 | PIC X(n) | X(n) | n | 英数字 | 固定長英数字 | X(10) | 10 |
| 2 | PIC G(n) | G(n) | n×2 | DBCS文字 | ダブルバイト文字(日本語) | G(20) | 40 |
| 3 | PIC 9(n) | 9(n) | n | 数字・10進(符号無) | 符号無し整数 | 9(7) | 7 |
| 4 | PIC S9(n) | S9(n) | n | 数字・10進(符号有) | 符号付き整数 | S9(7) | 7 |
| 5 | PIC S9(n)V9(m) | S9(n)V9(m) | n+m | 数字・10進(符号有・小数) | 暗黙小数点付き(DISPLAY) | S9(7)V9(2) | 9 |
| 6 | PIC S9(n) COMP-3 | S9(n) COMP-3 | INT((n+2)/2) | パック10進(符号有) | 内部10進数 | S9(7) COMP-3 | 4 |
| 7 | PIC 9(n) COMP-3 | 9(n) COMP-3 | INT((n+1)/2) | パック10進(符号無) | 内部10進数(符号無) | 9(7) COMP-3 | 4 |
| 8 | PIC S9(n)V9(m) COMP-3 | S9(n)V9(m) COMP-3 | INT((n+m+2)/2) | パック10進(符号有・小数) | 暗黙小数点付きCOMP-3 | S9(7)V9(2) COMP-3 | 5 |
| 9 | PIC S9(4) COMP | S9(4) COMP | 2 | 2進(2バイト) | 半語長バイナリ | S9(4) COMP | 2 |
| 10 | PIC S9(9) COMP | S9(9) COMP | 4 | 2進(4バイト) | 全語長バイナリ | S9(9) COMP | 4 |
| 11 | PIC S9(18) COMP | S9(18) COMP | 8 | 2進(8バイト) | 2語長バイナリ | S9(18) COMP | 8 |
| 12 | PIC S9(n)V9(m) COMP | S9(n)V9(m) COMP | n+m≦4→2, ≦9→4, ≦18→8 | 2進(符号有・小数) | 暗黙小数点付きCOMP | S9(9)V9(2) COMP | 8 |
| 13 | PIC S9(n) BINARY | S9(n) BINARY | n≦4→2, n≦9→4, n≦18→8 | 2進(バイナリ) | COMPと同一 | S9(15) BINARY | 8 |
| 14 | ZZZ9 | ZZZ9 | Zの数+9の数 | 数字編集パターン | ゼロ抑制編集 | ZZZZ9 | 5 |
COBOL記述例
例1: 基本レイアウト
COBOL定義:
01 TEST-RECORD.
03 FIELD-1 PIC X(10).
03 FIELD-2 PIC S9(7) COMP-3.
03 FIELD-3 PIC 9(4).
03 FIELD-4 PIC S9(9) COMP.
03 FILLER PIC X(5).
FD記述:
| No | レベル | 項目名 | 項目名(英字名) | 属性(PIC TYPE) | バイト数 | OCCURS | 開始位置 | REDEFINES | 所属グループ | 備考 |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 01 | テストレコード | TEST-RECORD | 1 | ||||||
| 2 | 03 | フィールド1 | FIELD-1 | X | 10 | 1 | TEST-RECORD | |||
| 3 | 03 | フィールド2 | FIELD-2 | S9(7) COMP-3 | 5 | 11 | TEST-RECORD | |||
| 4 | 03 | フィールド3 | FIELD-3 | 9(4) | 4 | 16 | TEST-RECORD | |||
| 5 | 03 | 予約 | FILLER | X(5) | 5 | 20 | TEST-RECORD |
例2: REDEFINESを使用する場合
COBOL定義:
01 REDEF-REC.
03 BASE-FIELD PIC X(10).
03 REDEF-FIELD REDEFINES BASE-FIELD.
05 INFO-1 PIC X(5).
05 INFO-2 PIC X(5).
FD記述:
| No | レベル | 項目名 | 項目名(英字名) | 属性(PIC TYPE) | バイト数 | OCCURS | 開始位置 | REDEFINES | 所属グループ | 備考 |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 01 | REDEFINESレコード | REDEF-REC | 1 | ||||||
| 2 | 03 | ベースフィールド | BASE-FIELD | X(10) | 10 | 1 | REDEF-REC | |||
| 3 | 03 | 再定義フィールド | REDEF-FIELD | 11 | BASE-FIELD | REDEF-REC | ||||
| 4 | 05 | 情報1 | INFO-1 | 9(5) | 5 | 11 | REDEF-REC | |||
| 5 | 05 | 情報2 | INFO-2 | 9(5) | 5 | 16 | REDEF-REC |
例3: OCCURSを使用する場合
COBOL定義:
01 OCCURS-REC.
03 OCCURS-ITEM OCCURS 3.
05 SUB-1 PIC X(5).
03 AFTER-ITEM PIC 9(3).
FD記述:
| No | レベル | 項目名 | 項目名(英字名) | 属性(PIC TYPE) | バイト数 | OCCURS | 開始位置 | REDEFINES | 所属グループ | 備考 |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 01 | OCCURSレコード | OCCURS-REC | 1 | ||||||
| 2 | 03 | OCCURS項目 | OCCURS-ITEM | 3 | 1 | OCCURS-REC | ||||
| 3 | 05 | サブ項目1 | SUB-1 | X(5) | 5 | 1 | OCCURS-REC | |||
| 4 | 03 | OCCURS後 | AFTER-ITEM | 9(3) | 3 | 16 | OCCURS-REC |
例4: OCCURSの多重入れ子
COBOL定義:
01 OCCURS-MULTI-REC.
03 GRP-ITEM OCCURS 3.
05 SUB1 PIC X(5).
05 SUB2 OCCURS 4.
07 SUB2-DATA PIC 9(3).
03 AFTER-ITEM PIC 9(3).
FD記述:
| No | レベル | 項目名 | 項目名(英字名) | 属性(PIC TYPE) | バイト数 | OCCURS | 開始位置 | REDEFINES | 所属グループ | 備考 |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 01 | OCCURS多重入れ子レコード | OCCURS-MULTI-REC | 1 | ||||||
| 2 | 03 | グループ項目 | GRP-ITEM | 3 | 1 | OCCURS-MULTI-REC | ||||
| 3 | 05 | サブ項目1 | SUB-1 | X(5) | 5 | 1 | OCCURS-MULTI-REC | |||
| 4 | 05 | サブ項目2 | SUB-2 | 4 | 6 | OCCURS-MULTI-REC | ||||
| 5 | 07 | サブ項目2データ | SUB2-DATA | 9(3) | 3 | 6 | OCCURS-MULTI-REC | |||
| 6 | 03 | OCCURS後 | AFTER-ITEM | 9(3) | 3 | 52 | OCCURS-MULTI-REC |