13.6.3 プリフィクス部の出力形式(unldkindオペランドにlod_4vを指定した場合)【4V FMB,4V AFM】
unload文のunldkindオペランドにlod_4vを指定した場合の,プリフィクス部のデータ形式について説明します。
(1) 4V FMBのSDBデータベースの場合
プリフィクス部のデータ形式(4V FMBのSDBデータベースの場合)を次の図に示します。
- [説明]
-
図中の丸付き数字が次に示す表の項番に対応しています。
項番
項目
属性
長さ(バイト)
内容
1
レコードID
char
4
レコード種別を示す情報が格納されます。
-
ルートレコード型の場合:"SEGR"
-
子レコード型の場合:"SEG "
2
階層番号
unsigned char
1
レコードの階層を示す番号が格納されます。
-
ルートレコード型の場合:1
-
子レコード型の場合:2〜15
3
システム使用領域
char
5
(X'00....00')が格納されます。
4
ルートレコードのデータベースキーのサイズ
short
2
ルートレコード型の構成要素のうち,次の構成要素の長さの合計が格納されます。
-
SDBデータベース定義のTYPE句のデータ種別1にKを指定した構成要素
5
RDエリア分割キー
char
4
ルートレコード型の構成要素のうち,次に示す2つの条件を満たす構成要素に対応するレコード実現値が格納されます。
-
SDBデータベース定義のTYPE句のデータ種別1にKを指定した構成要素
-
SDBデータベース定義のTYPE句のデータ種別2にAを指定した構成要素
左詰めで格納され,余りがある場合はX'00'が格納されます。
該当する構成要素がない場合は,X'00....00'が格納されます。
6
ルートレコードのデータベースキー
char
36
ルートレコードのデータベースキーのサイズの出力対象となった構成要素に対応するレコード実現値が連結されて格納されます。左詰めで格納され,余りがある場合はX'00'が格納されます。
7
レコード通番
unsigned int
4
レコード通番が格納されます。ルートレコードには1が格納され,アンロードデータファイルのレコード格納順序に従い,順次2,3,…と格納されます。アンロードデータファイルのレコード格納順序については,「13.6.2(1) 4V FMBまたはSD FMBのSDBデータベースの場合」を参照してください。
なお,レコード通番は,ルートレコードごとに1にリセットされます。
また,オーバーフローした場合(4,294,967,295を超えた場合)は,0に戻ります。
8
システム使用領域
char
12
(X'00....00')が格納されます。
9
レコード型名
char
8
アンロード対象のレコードのレコード型名が格納されます。レコード型名は左詰めで格納され,余りがある場合は半角空白が格納されます。
10
システム使用領域
char
1
(X'00')が格納されます。
11
USERポインタフラグ
char
1
次に示す条件をすべて満たしている場合はUが格納されます。満たしていない場合は半角空白が格納されます。
-
dbinf文のuserpflgオペランドが指定されている。
-
SDBデータベース格納定義でUSERポインタが定義されている。
-
子レコードに対してUSERポインタで親子集合の接続をしている。
USERポインタフラグに設定される値の意味については,「12.6.1(3) プリフィクス部【4V FMB,4V AFM】」の「表12-10 USERポインタフラグに設定する値」を参照してください。
12
ユーザデータサイズ
short
2
アンロード対象のレコードの構成要素のうち,次の構成要素の長さの合計値が格納されます。
-
SDBデータベース定義のTYPE句のデータ種別1にUを指定した構成要素
13
システム使用領域
int
4
任意の番号が格納されます。
14
ページ切り替えフラグ
char
1
ページ切り替えフラグは格納されません。(X'00')が格納されます。
15
システム使用領域
char
9
(X'00....00')が格納されます。
-
(2) 4V AFMのSDBデータベースの場合
4V DAMのSDBデータベースの場合,unload文のafmtypeオペランドの指定によって,プリフィクス部のデータ形式が決まります。
4V MAM,4V TAM,および4V SAMのSDBデータベースの場合,プリフィクス部は「(a) afmtypeオペランドにtype1を指定した場合」の形式になります。
(a) afmtypeオペランドにtype1を指定した場合
プリフィクス部のデータ形式(afmtypeオペランドにtype1を指定した場合)を次の図に示します。
- [説明]
-
図中の丸付き数字が以下の表の項番に対応しています。
項番
項目
属性
長さ(バイト)
内容
1
SDBデータベース名
char
4
仮想ルートレコードの構成要素のうち,次の構成要素に対応するレコード実現値が格納されます。
-
SDBデータベース定義のTYPE句のデータ種別1にDを指定した構成要素
SDBデータベース名は左詰めで格納され,余りがある場合は半角空白が格納されます。また,SDBデータベース名が5バイト以上の場合は,5バイト目以降のデータを切り捨てます。
2
データベースキー
char
32
仮想ルートレコードの構成要素のうち,次の構成要素に対応するレコード実現値が連結されて格納されます。
-
SDBデータベース定義のTYPE句のデータ種別1にKを指定した構成要素
左詰めで格納され,余りがある場合はX'00'が格納されます。
該当する構成要素がない場合は,X'00....00'が格納されます。
3
システム使用領域
char
20
(X'00....00')が格納されます。
4
全キー長
short
2
アンロード対象のレコードの構成要素のうち,次の構成要素の長さの合計値が格納されます。
-
SDBデータベース定義のTYPE句のデータ種別1にD,K,またはNを指定した構成要素
5
システム使用領域
char
26
(X'00....00')が格納されます。
6
ページ切り替えフラグ
char
1
設定されません。(X'00')が格納されます。
7
システム使用領域
char
9
(X'00....00')が格納されます。
-
(b) afmtypeオペランドにtype2を指定した場合
プリフィクス部のデータ形式(afmtypeオペランドにtype2を指定した場合)を次の図に示します。
- [説明]
-
図中の丸付き数字が以下の表の項番に対応しています。
項番
項目
属性
長さ(バイト)
内容
1
レコード型名
char
8
アンロード対象のレコードのレコード型名が格納されます。レコード型名は左詰めで格納され,余りがある場合は半角空白が格納されます。
2
データベースキー
char
32
仮想ルートレコードの構成要素のうち,次の構成要素に対応するレコード実現値が連結されて格納されます。
-
SDBデータベース定義のTYPE句のデータ種別1にKを指定した構成要素
左詰めで格納され,余りがある場合はX'00'が格納されます。
該当する構成要素がない場合は,X'00....00'が格納されます。
3
システム使用領域
char
16
(X'00....00')が格納されます。
4
全キー長
short
2
アンロード対象のレコードの構成要素のうち,次の構成要素の長さの合計値が格納されます。
-
SDBデータベース定義のTYPE句のデータ種別1にD,K,またはNを指定した構成要素
5
システム使用領域
char
26
(X'00....00')が格納されます。
6
ページ切り替えフラグ
char
1
設定されません。(X'00')が格納されます。
7
システム使用領域
char
9
(X'00....00')が格納されます。
-