標準ファイル ヘッダー

すべての可変構造ファイルの最初のレコードは、ファイル ヘッダーと呼ばれるシステム レコードです。このヘッダーの長さは通常 128 バイトで、次の形式を取ります。

オフセット サイズ 説明
0 4 ファイル ヘッダーの長さ。最初の 4 ビットは常に 3 (バイナリの 0011) に設定され、これがシステム レコードであることを示します。残りのビットには、ファイル ヘッダー レコードの長さが含まれます。ただし、索引が別ファイルになっていない種類の索引ファイル (IDXFORMAT8 など) については例外となります。これらの種類のファイルについては、「索引 - ファイル ヘッダー」を参照してください。最大レコード長が 4095 バイト未満の場合は、長さが 126 になり、次の 12 ビットに格納されます。それ以外の場合は、長さが 124 になり、次の 28 ビットに格納されます。そのため、最大レコード長が 4095 バイト未満のファイルの場合は、このフィールドに x"30 7E 00 00" が含まれます。それ以外の場合は、このフィールドに、x"30 00 00 7C" が含まれます。

ただし例外として、C-ISAM ファイルのヘッダーでは、フィールドに "30 00 03 FC" が含まれます。

4 2 アドオン製品で使用されるデータベースのシーケンス番号。
6 2 整合性フラグ。索引ファイルのみ。ヘッダーの読み取り時にこの値がゼロ以外の場合は、ファイルが破損していることを示します。
8 14 ファイルの作成日時 (YYMMDDHHMMSSCC 形式)。
22 14 内部使用目的。
36 2 内部使用目的。
38 1 内部使用目的。
39 1 編成:
  1. 順編成
  2. 索引
  3. 相対編成
40 1 内部使用目的。
41 1 データ圧縮ルーチン番号
0
圧縮なし
1
CBLDC001
2 から 127
内部使用のために予約済み
128 から 255
ユーザー定義の圧縮ルーチン番号
42 1 内部使用目的。
43 1 索引ファイルの種類 (索引ファイルのみ)
44 4 内部使用目的。
48 1 レコード モード
0
固定長形式
1
可変長形式

索引ファイルの場合は、.idx ファイルのレコード モード フィールドが優先されます。

49 5 内部使用目的。
54 4 最大レコード長。たとえば、最大レコード長が 80 文字の場合、このフィールドには x"00 00 00 50" が格納されます。
58 4 最小レコード長。たとえば、最小レコード長が 2 文字の場合、このフィールドには x"00 00 00 02" が格納されます。
62 46 内部使用目的。
108 4 ファイルを作成する索引ファイル ハンドラーのバージョンおよびビルド データ。
112 16 内部使用目的。