高度なデータ・セット情報

この章では、ファイルとデータ・セットの章に示した情報をさらに詳しく説明します。この章で説明する内容は次のとおりです。

データ・セット編成

MSS によってサポートされるデータ・セット編成を次の表に示します。

略語 編成 コメント
GDG 世代別データ・グループ  
IS 索引順次  
ISU 索引順次、移動不可能  
PDSM 区分データ・セット・メンバー Micro Focus 編成
PO 区分  
POU 区分、移動不可能  
PS 物理順次  
PSU 物理順次、移動不可能  
VSAM 仮想記憶アクセス方式  

注:

直接アクセス (DA) 編成は明示的にサポートされていませんが、VSAM 編成と相対レコード (RR) レコード・フォーマットを使用することにより、直接アクセス (DA) 編成をエミュレートすることができます。

レコード・フォーマット

VSAM 以外のデータ・セット編成のレコード・フォーマットを次の表に示します。

略語 フォーマット 制御文字 レコード区切り文字 コメント
F 固定長 なし なし  
FA 固定長 ANSI なし  
FB ブロック化固定長 なし なし F フォーマットと同じ
FBA ブロック化固定長 ANSI なし FA フォーマットと同じ
FBM ブロック化固定長 マシン なし FM フォーマットと同じ
FBS スパンド・ブロック化固定長 なし なし F フォーマットと同じ
FM 固定長 マシン なし  
FS スパンド固定長 なし なし F フォーマットと同じ
LSEQ 行順次 なし 改行復帰  
U 不定長     Windows または UNIX では結果は予測不能
V 可変長 なし Micro Focus タイプ  
VA 可変長 ANSI Micro Focus タイプ  
VB ブロック化可変長 なし Micro Focus タイプ V フォーマットと同じ
VBA ブロック化可変長 ANSI Micro Focus タイプ VA フォーマットと同じ
VBM ブロック化可変長 マシン Micro Focus タイプ VM フォーマットと同じ
VBS スパンド・ブロック化可変長 なし Micro Focus タイプ V フォーマットと同じ
VM 可変長 マシン Micro Focus タイプ  
VS スパンド可変長 なし Micro Focus タイプ V フォーマットと同じ

注:ブロック化レコード・フォーマットおよびスパンド・レコード・フォーマットは、MSS では受け入れられますが、PC または UNIX 環境では意味を持ちません。

VSAM ファイルのレコード・フォーマットを次の表に示します。

略語 フォーマット 制御文字 コメント
ES 入力順 なし  
KS キー順 なし  
LS 線形順 なし 未サポート
RR 相対レコード なし  

注:

論理レコード長

MSS では、次の表で定義されている論理レコード長が扱われます。

レコード・フォーマット 論理レコード長
固定長 実際のレコード長
可変長 実際のレコード長 + 4
LSEQ 最大レコード長

注:EBCDIC を使用するようにコンパイルされたプログラムがあり、LSEQ の RECFM 、0 の LRECL、および ASCII の文字セットを使用したファイルをそのプログラムで読み取る場合、ファイルのデータは MSS によって読み取りの一部として自動的に EBCDIC に変換されます。この自動変換は、16 進データが含まれていないファイル (コントロール・カードなど) を読み取る場合に役立ちます。

物理ファイル・フォーマットへのマッピング

MSS は、次の編成とレコード・フォーマット・マッピングを使用して、PC および UNIX 上の物理ファイルにデータ・セットを書き込みます。

メインフレーム 物理ファイル  
データ・セット編成 レコード・フォーマット ファイル編成 レコード・フォーマット コメント
DA、DAU、PS、PSU 任意の固定 (Fnn) または可変 (Vnn) フォーマット 順次 Micro Focus  
DA、DAU、PS、PSU LSEQ 行順次 Micro Focus 常に ANSI 文字セットを使用します。テキスト・エディターでのみ編集可能です。
GDG       カタログ・エントリーのみ
IS、ISU 任意の固定 (Fnn) または可変 (Vnn) フォーマット 索引順次 Micro Focus  
PDSM 任意の固定 (Fnn) または可変 (Vnn) フォーマット 順次 Micro Focus  
PDSM LSEQ 行順次 Micro Focus  
PO、POU       カタログ・エントリーのみ
VSAM ES 順次 ESDS  
VSAM ES 索引順次 ESDS 定義された代替索引
VSAM KS 索引順次 Micro Focus  
VSAM LS 未サポート    
VSAM RR 相対 Micro Focus  

世代別データ・グループのサポート

世代別データ・グループ (Generation Data Group; GDG) は、2 つの部分で構成されます。1 つは GDG モデル、もう 1 つはGDG に関連付けられている一連の物理順次 (PS) データ・セットです。これらのデータ・セットは、バイアス、または世代別データ・セットと呼ばれます。

世代別データ・グループの作成

GDG をセットアップする主な方法としては、次の 2 つがあります。

次の例では、世代別データ・グループを作成する場合に使用できるジョブを示します。STEP00 では GDG モデルが作成され、STEP01 では 5 つの新しい GDG バイアスが作成されます。

//MFIDMFGD JOB 'MFIDMFGD',CLASS=A,MSGCLASS=A,NOTIFY=MFIDF
//STEP00 EXEC PGM=IDCAMS
//SYSOUT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//AMSDUMP DD SYSOUT=*
//SYSIN DD *
DELETE MFIDMF.TEST.GDG
DEFINE GENERATIONDATAGROUP(NAME(MFIDMF.TEST.GDG)
       EMPTY NOSCRATCH LIMIT(96))/*
//STEP01 EXEC PGM=IEFBR14
//SYSUXX DD DSN=MFIDMF.TEST.GDG(+1),DISP=(NEW,CATLG),SPACE=(TRK,(5,2))
//SYSUXY DD DSN=MFIDMF.TEST.GDG(+2),DISP=(NEW,CATLG),SPACE=(TRK,(5,2))
//SYSUXZ DD DSN=MFIDMF.TEST.GDG(+3),DISP=(NEW,CATLG),SPACE=(TRK,(5,2))
//SYSUXA DD DSN=MFIDMF.TEST.GDG(+4),DISP=(NEW,CATLG),SPACE=(TRK,(5,2))
//SYSUXB DD DSN=MFIDMF.TEST.GDG(+5),DISP=(NEW,CATLG),SPACE=(TRK,(5,2))

MFIDMF.TEST.GDG.G0001V00、MFIDMF.TEST.GDG.G0002V00、MFIDMF.TEST.GDG.G0003V00、MFIDMF.TEST.GDG.G0004V00、MFIDMF.TEST.GDG.G0005V00 という名前の 5 つのバイアスは、STEP01 によって作成されます。

バイアスは、相対番号によって、実際の参照によって、または世代別データ・グループ全体の一部として処理できます。例えば、前述のジョブの実行後に次の各文を実行できます。

//SYSUT1 DD DSN=MFIDMF.TEST.GDG,DISP=SHR

これにより、MFIDMF.TEST.GDG.G0001V00 から MFIDMF.TEST.GDG.G0005V00 までの一組の連結されたデータ・セットで構成されている世代別データ・グループ MFIDMF.TEST.GDG 全体が参照されます。

//SYSUT1 DD DSN=MFIDMF.TEST.GDG(0),DISP=SHR

相対番号 0 を使用すると、MFIDMF.TEST.GDG.G0005V00 という名前のデータ・セットが参照されます。

//SYSUT1 DD DSN=MFIDMF.TEST.GDG(-1),DISP=SHR

相対番号 -1 を使用すると、MFIDMF.TEST.GDG.G0004V00 という名前のデータ・セットが参照されます。

//SYSUT1 DD DSN=MFIDMF.TEST.GDG(+1),DISP=SHR

相対番号 +1 を使用すると、MFIDMF.TEST.GDG.G0006V00 という名前の新しいデータ・セットが参照されます。

//SYSUT1 DD DSN=MFIDMF.TEST.GDG.G0003V00,DISP=SHR

実際の参照である G0003V00 を使用すると、MFIDMF.TEST.GDG.G0003V00 という名前のデータ・セットが参照されます。

番号のインクリメントは、ジョブごとに行われます。そのため、連続する 2 つのステップで + 1 を参照した場合、各ステップは同じデータ・セットを使用することになります。

世代別データ・グループの制限事項

このセクションでは、MSS で GDG を使用する場合の制限事項について説明します。