バージョン 8.1.3
 —  ユーティリティ  —

Adabas シーケンシャルファイル

このドキュメントでは、次のトピックについて説明します。


シーケンシャルファイル表

このセクションでは、Adabas ユーティリティが使用するシーケンシャルファイルをまとめます。 表の見出しと内容については、表の後の説明を参照してください。

ユーティリティ ファイル名 VSE
テープ SYS
出力 入力 デバイス別
BLKSIZE
連結
ADACDC DD/SIIN 10   x  
ADACMP DD/AUSBA
DD/EBAND
DD/FEHL
12
10
14
x
x
x  
ADACNV DD/FILEA 10 x      
ADALOD DD/EBAND
DD/FILEA
DD/ISN
DD/OLD
10
12
16
14
x
x
x
x
x

ADAMER DD/EBAND 10   x    
ADAORD DD/FILEA 10 x x  
ADAPLP DD/PLOG 14   x  
ADARAI DD/OUT 10 x      
ADAREP DD/SAVE
DD/PLOG
10
11
  x
x
 
ADARES DD/BACK
DD/SIAUS1
DD/SIAUS2
DD/SIIN
20
21
22
20
x
x
x
x
 
ADASAV DD/DEL1
DD/DEL2
DD/DEL3
DD/DEL4
31
32
33
34
  x
x
x
x
 


DD/DEL5
DD/DEL6
DD/DEL7
DD/DEL8
35
36
37
38
  x
x
x
x
 


DD/DUAL1
DD/DUAL2
DD/DUAL3
DD/DUAL4
21
22
23
24
x
x
x
x
     
DD/DUAL5
DD/DUAL6
DD/DUAL7
DD/DUAL8
25
26
27
28
x
x
x
x
     
DD/FULL
DD/PLOG
30
10
  x
x
 
DD/REST1
DD/REST2
DD/REST3
DD/REST4
11
12
13
14
  x
x
x
x
 
DD/REST5
DD/REST6
DD/REST7
DD/REST8
15
16
17
18
  x
x
x
x
   
DD/SAVE1
DD/SAVE2
DD/SAVE3
DD/SAVE4
11
12
13
14
x
x
x
x
     
DD/SAVE5
DD/SAVE6
DD/SAVE7
DD/SAVE8
15
16
17
18
x
x
x
x
     
ADASEL DD/EXPA1
DD/EXPA2
DD/EXPA3
DD/EXPA4
11
12
13
14
x
x
x
x
     
DD/EXPA5
DD/EXPA6
DD/EXPA7
DD/EXPA8
15
16
17
18
x
x
x
x
     
DD/EXPA9
DD/EXPA10
DD/EXPA11
DD/EXPA12
19
20
21
22
x
x
x
x
     
DD/EXPA13
DD/EXPA14
DD/EXPA15
DD/EXPA16
23
24
25
26
x
x
x
x
     
DD/EXPA17
DD/EXPA18
DD/EXPA19
DD/EXPA20
27
28
29
30
x
x
x
x
     
DD/SIIN 10   x  
ADAULD DD/OUT1
DD/OUT2
DD/ISN
DD/SAVE
DD/PLOG
DD/FULL
DD/DEL1-8
10
11
12
13
14
30
31~38
x
x
x
x
x
x
x





ADAVAL DD/FEHL 14 x    

出力と入力の両方がマークされているファイルは、指定されたプログラムによって書かれた後に読まれるものです。 BS2000、z/VM、z/OS、および OS 互換のファイルの名前は "DD" で始まります(DDSIIN、DDFEHL など)。VSE ファイルの名前には "DD" は付けません。

Top of page

オペレーティングシステムに応じた考慮事項

次のセクションでは、オペレーティングシステム別のファイルとデバイス定義の特性について説明します。

BS2000 システム

注意:
この解説では SPF フォーマットを使用します。 ISP フォーマットでは次のようになります。

SPF フォーマット ISP フォーマット
BUFF-LEN BLKSIZE=(STD,16) で定義される BLKSIZE
REC-FORM RECFM
REC-SIZE RECSIZE
SET-FILE-LINK FILE

ファイルの参照に使用される LINK 名は次のように決定されます。

シーケンシャルファイルの BUFF-LEN は次のように決定されます。

  1. BUFF-LEN は /SET-FILE-LINK ステートメントまたはデータセットのカタログエントリから取得されます(存在する場合)。

  2. BUFF-LEN を /SET-FILE-LINK ステートメントまたはカタログから取得できなかった場合、ADARUN QBLKSIZE パラメータの値が使用されます(指定されている場合)。

  3. この方法でも取得できなかった場合、BUFF-LEN はデバイスタイプに依存し、次のようになります。

    テープ: 32760
    ディスク: 32768(BUFF-LEN=(STD,16))

REC-SIZE と REC-FORM は次のようになります。

テープ: REC-SIZE = BUFF-LEN - 4; REC-FORM = V;
ディスク: REC-SIZE = BUFF-LEN - 20; RECFORM = V;
入力: /SET-FILE-LINK ステートメントまたはデータセットのカタログエントリから取得されます。

注意:
TAPE データセットの HDR2 に REC-FORM、REC-SIZE、または BUFF-LEN が一切含まれていない場合を除いて REC-FORM、REC-SIZE、BUFF-LEN を入力データセットに指定しないでください。

プライマリおよびセカンダリ割り当ての SPACE パラメータには、BUFF-LEN パラメータに指定した PAM ブロック数の 3 倍の数を指定します。 それ以外の値では I/O エラーが発生します。 デフォルトでは /CREATE-FILE ...,PUB(SPACE(48,48)) および /SET-FILE-LINK ...,BUFF-LEN=STD(16)(ISP フォーマットの場合は BLKSIZE=(STD,16)、SPACE=(48,48))が有効な最小値です。

DDDRUCK および DDPRINT データセットのうちディスクに書き込み済みの部分は、通常のニュークリアスまたはユーティリティの読み取りセッションでアクセス可能です。 これには次の BS2000 読み取りアクセスが含まれます。

BS2000 のシーケンシャル入力ファイルの連結

複数のデータセットを ADABAS ユーティリティへの入力媒体として使用するときに、一部のオペレーティングシステム(z/OS など)では連結機能を使用できます。

BS2000 では、次のように、元の LINK 名と 2 桁の連番(01~99)から作成した LINK 名を指定した /SET-FILE-LINK(ISP フォーマットの場合は /FILE)ステートメントを追加することで、同様の機能を実行できます。

/SET-FILE-LINK DDTEST,firstfile 
/SET-FILE-LINK DDTEST01,secondfile
/SET-FILE-LINK DDTEST02,thirdfile
...
/SET-FILE-LINK DDTEST99,lastfile

ISP フォーマットでは次のようになります。

/FILE firstfile ,LINK=DDTEST
/FILE secondfile,LINK=DDTEST01
/FILE thirdfile ,LINK=DDTEST02
...
/FILE lastfile ,LINK=DDTEST99

元の LINK 名の長さが 7 文字または 8 文字の場合、7~8 番目の位置は連番で上書きされます。 例としては、次のようなものがあります。

/SET-FILE-LINK DDEBAND,firstfile
/SET-FILE-LINK DDEBAND01,lastfile

ISP フォーマットでは次のようになります。

/FILE firstfile ,LINK=DDEBAND
/FILE secondfile,LINK=DDEBAN01

連結オプションのある入力ファイルを処理する場合、1 つの入力ファイルのエンドオブファイルで、次のデータセットに対する /SET-FILE-LINK(ISP フォーマットの場合は /FILE)ステートメントが存在するかどうかのチェックが行われます。 存在しない場合、シーケンシャル GET コールは EOF を返します。存在すれば、現在オープンしているデータセットがクローズされて次のファイルに対してオープンが試みられます。

このようにして連結するファイルは、ファイル特性(ブロックサイズ、レコードフォーマット、およびレコードサイズ)が同じである必要があります。

この連結の仕様は、逆順処理されるファイルに対しても適用されます。 LINK 名の順序は作成順序の逆になります。 例えば、ADARES で DDBACK を行う場合、次のようになります。

/SET-FILE-LINK DDBACK,lastfile
/SET-FILE-LINK DDBACK01,filebeforelast
/...
/SET-FILE-LINK DDBACKnn,firstfile

ISP フォーマットでは次のようになります。

/FILE lastfile ,LINK=DDBACK
/FILE filebeforelast,LINK=DDBACK01
/....
/FILE firstfile ,LINK=DDBACKnn

各ボリュームを別々の /SET-FILE-LINK(ISP フォーマットの場合は /FILE)ステートメントで指定すれば、この機能を用いてマルチボリュームファイルを逆順に処理できます。

次のリストは、連結オプションを使用する場合の LINK 名とユーティリティの一覧です。

DDDELn
(n = 1~8)
ADASAV
DDEBAND ADACMP
ADALOD
ADAMER
DDFULL ADASAV
DDISN ADALOD
DDPLOG ADAPLP
ADASAV
DDBACK ADARES
DDSIIN ADARES
ADASEL
DDREST1 ADASAV
(使用する LINK 名は DDREST1、DDREST01、DDREST02 など)

ADARES 付きで連結機能を使用する例

ニュークリアスセッションにおいて、F1、F2、F3 という 3 つのプロテクションログファイルが ADARES PLCOPY で作成されています。

セッションを特定のポイントにバックアウトする際は、ADARES BACKOUT 機能に次の /SET-FILE-LINK(ISP フォーマットの場合は /FILE)ステートメントを使用します。

/SET-FILE-LINK DDBACK,F3
/SET-FILE-LINK DDBACK01,F2
/SET-FILE-LINK DDBACK02,F1

ISP フォーマットでは次のようになります。

/FILE F3,LINK=DDBACK
/FILE F2,LINK=DDBACK01
/FILE F1,LINK=DDBACK02

セッション中に作成されたプロテクションログからデータベースを再生成するには、ADARES REGENERATE 機能に次の /SET-FILE-LINK(ISP フォーマットの場合は /FILE)ステートメントを使用します。

/SET-FILE-LINK DDSIIN,F1
/SET-FILE-LINK DDSIIN01,F2
/SET-FILE-LINK DDSIIN02,F3

ISP フォーマットでは次のようになります。

/FILE F1,LINK=DDSIIN
/FILE F2,LINK=DDSIIN01
/FILE F3,LINK=DDSIIN02

バージョン 11.2(OSD 2.0)におけるコントロールステートメント読み込み手順

BS2000 バージョン 11.2(OSD 2.0)では、SYSIPT システムファイルが利用できなくなりました。 バージョン 5.3.3 以降、Adabas ではすべてのコントロールステートメントを SYSDTA システムファイルから読み込むことができます。

BS2000 バージョン 10.0 または 11.0 で実行している場合、SYSIPT 割り当ては従来どおり使用できますが、Software AG では、BS2000 バージョン 11.2(OSD 2.0)に移行する前に、すべての Adabas ユーティリティおよび Entire Net-Work ジョブコントロールで SYSDTA システムファイルを指定するよう変更することをお勧めします。

ADARUN TAPEREL:テープ解放オプション

ADARUN パラメータ TAPEREL は、テープ上のファイルにアクセスするテープ処理制御を実行するのに必要です。 詳細は『ADABAS オペレーションマニュアル』を参照してください。

z/OS システム

DDNAME はファイル名の先頭に文字 DD を付けて指定します。

ユーティリティがクローズ後にデータセット情報にアクセスできるようにするには、ユーティリティで使用するシーケンシャルデータセットの DD ステートメントに FREE=CLOSE が含まれないようにする必要があります。

シーケンシャルファイルの BLKSIZE は次のように決定します。

ADACMP EBAND 以外のすべてのシーケンシャルファイルの RECFM および LRECL は、それぞれ VB および BLKSIZE-4 です。 ADACMP EBAND については、RECFM および LRECL が DD ステートメントとデータセットラベルのいずれか、または両方から得られるようにしなければなりません。

DD ステートメントで DCB BUFNO パラメータの指定がない場合、オペレーティングシステムのデフォルトが使用されます。

z/VM システム

DATADEF 名はファイル名の先頭に文字 DD を付けて指定します。

シーケンシャルファイルの BLKSIZE は次のように決定します。

ADACMP EBAND を除くすべてのシーケンシャルファイルで、RECFM は VB、LRECL は BLKSIZE - 4 になります。 ADACMP EBAND については、RECFM および LRECL が DATADEF ステートメントとデータセットラベルのいずれか、または両方から得られるようにしなければなりません。

VSE システム

次の項目は、VSE 配下で実行されているユーティリティによって、ファイルがどのように参照されるかを決定します。

ディスク上のシーケンシャルファイルには、すべてのプログラマ論理ユニットを使用できます。 テープ上のシーケンシャルファイルには、VSE テープの SYS 番号を用いなければなりません。またこれらの番号はすべて『Adabas インストールマニュアル』に定義された手順を用いて変更できます。

シーケンシャルファイルの BLKSIZE は次のように決定します。

ADACMP EBAND については、BLKSIZE は下記のように ADACMP コントロールカードに指定された RECFM および LRECL パラメータに応じて、チェックされた後に実際の BLKSIZE に変更されることがあります。

RECFM の値 実際の BLKSIZE
F LRECL。
FB BLKSIZE / LRECL * LRECL で、除算の余りは乗算の前に切り捨てられます。
U LRECL。この値は BLKSIZE より大きくてはなりません。
V LRECL+4。この値は、BLKSIZE より大きくてはなりません。
VB BLKSIZE。この値は、LRECL+4 より小さくてはなりません。

ADACMP EBAND を除くすべてのシーケンシャルファイルの RECFORM は VARBLK です。 ADACMP EBAND については、コントロールステートメントの RECFM パラメータで与えられます。

VSE メッセージ 4140D が、複数ボリュームのテープファイルの最初のボリュームを参照しているのか、それとも以降のボリュームなのかを見分けるために、テープファイルのオープン時にオペレータに対してメッセージ ADAI31 が出力されますが、ボリューム終了時には出力されません。

VSE のシーケンシャル入力ファイルの連結

Adabas ユーティリティに対して複数データセットを入力媒体として使用したい場合、いくつかの OS(z/OS など)では連結機能を使用できます。

VSE ではこの機能に類似したものとして、元の LINK 名に 2 桁の連番(01~99)を加えた LINK 名を指定した FILE ステートメントを加えることができます。

// DLBL TEST  ,'firstfile'
// EXTENT ...
// DLBL TEST01,'secondfile'
// EXTENT ...
...
// DLBL TEST99,'lastfile'
// EXTENT ...

連結オプションのある入力ファイルを処理する場合、1 つの入力ファイルのエンドオブファイルで、次のデータセットに対する FILE ステートメントが存在するかどうかのチェックが行われます。 存在しない場合、シーケンシャル GET コールは EOF を返します。存在すれば、現在オープンしているデータセットがクローズされて次のファイルに対してオープンが試みられます。

このようにして連結するファイルは、ファイル特性(ブロックサイズ、レコードフォーマット、およびレコードサイズ)が同じである必要があります。

この連結の仕様は、逆順処理されるファイルに対しても適用されます。 LINK 名の順番は作成時と逆の順番になります。例えば、ADARES で BACK を使用する場合は次のようになります。

// DLBL BACK  ,'lastfile'
// EXTENT ...
// DLBL BACK01,'filebeforelast'
// EXTENT ...
...
// DLBL BACKnn,'firstfile'
// EXTENT ...

各ボリュームを別々の FILE ステートメントで指定すれば、この機能を用いて複数ボリュームファイルの逆処理もできることにご注目ください。

以下は、連結オプションを使用する場合の LINK 名とユーティリティの一覧です。

DELn
(n=1~8)
ADASAV
EBAND ADACMP
ADALOD
ADAMER
FULL ADASAV
ISN ADALOD
PLOG ADAPLP
ADASAV
BACK ADARES
SIIN ADARES
ADASEL
REST1 ADASAV
(使用する LINK 名は REST1、REST101、REST102 など)

ADARES 付きで連結機能を使用する例

ニュークリアスセッションにおいて、F1、F2、F3 という 3 つのプロテクションログファイルが ADARES PLCOPY で作成されています。

セッションをある時点までバックアウトしたい場合、ADARES BACKOUT 機能に次のような FILE ステートメントを使用します。

// DLBL BACK  ,'F3'
// EXTENT ...
// DLBL BACK01,'F2'
// EXTENT ...
// DLBL BACK02,'F1'
// EXTENT ...

セッション中に作成したプロテクションログからデータベースを再生成するには、次のような FILE ステートメントを ADARES REGENERATE 機能に使用します。

// DLBL SIIN  ,'F1'
// EXTENT ...
// DLBL SIIN01,'F2'
// EXTENT ...
// DLBL SIIN02,'F3'
// EXTENT ...

Top of page