データベース セグメント データを順編成出力ファイルに書き込みます。
 
   
 
	  
		Unload 関数は、データベース セグメント データを順編成出力ファイルに書き込みます。DBD 定義を変更する前にデータベースをアンロードする場合や、他の目的でデータベース セグメント データのフラット ファイルを作成する場合は、この関数をデータベース再編成の一部として使用できます。
 
	  
 
	 構文 - コマンド ライン
 
		 
		mfims imsdbu UNLO {database-name|filename}
     [[NO]CLS] 
     [[NO]COMPRESS[(program)]]
     [DATA(position)]
     [DSN(filespec)]
     [ECHO(keyword,msglvl,stoplvl
     [[NO]INI(filespec)]
     [LAYOUT(type)]
     [[NO]LIST(filespec)]
     [LISTOPEN(disp)]
     [[NO]LOG(filespec)]
     [LRECL(length)]
     [PROGRESS(no-of-segments)]
     [RECFM(format)]
     [[NO]SEGEXIT[(program)]]
     [SEGM(position)]
 
	  
 
	 構文 - JCL
 
		 
		//UNLOAD EXEC PGM=MFDBUJCL,PARM='UNLOAD,database-name,{dataset-name | catalog-name}'
//SYSOUT    DD SYSOUT=* 
//OUTPUT    DD DSN=output-dataset,DISP=SHR
 
	  
 
	 パラメーター - コマンド ライン
 
		 
		 
		   
			 - database-name
 
 
			 - 関数の実行対象のデータベースの名前。
 
 
		   
		   
			 - filename
 
 
			 - 関数の実行対象のデータベースのリストを含むファイルの名前。
 
 
		   
		   
			 - CLS 指令 (共通)
 
 
			 - ユーティリティの起動前に画面をクリアします。NOCLS を指定すると、画面の初期クリアは行われません。NOCLS は、コマンド ファイルで一連のユーティリティを実行している場合に役立ちます。
 
			 
 
 
		   
		   
			 - COMPRESS
 
 
			 - 入力データ ファイル レコードの展開を有効または無効にします。
 
				
 
				   
					 - サブパラメーター
 
 
					 -  
						
 
							  
								 
								  | program | 
 
								  システム供給ルーチンの代わりに使用する圧縮/展開ルーチンの名前 | 
 
								
 
							 
 
						  
 
 
					  
 
				   
				   
					 - 構文規則
 
 
					 -  
						
 
						  - COMPRESS は、LAYOUT(G) が指定されている場合にのみ使用します。LAYOUT(D)、LAYOUT(I)、または LAYOUT(S) が指定されている場合は、COMPRESS は不要であり、無視されます。
 
 
						  - プログラム名なしで COMPRESS を指定すると、CBLDCIMS プログラム (MFIMS ソフトウェア ライブラリに組み込まれている) を使用して圧縮解除が行われます。圧縮/展開ルーチンの名前は、ユーザー記述プログラムの名前を指定してオーバーライドできます。
 
 
						
 
					  
 
				   
				   
					 - 一般規則
 
 
					 -  
						
 
						  - 後続の Load に Unload ファイルを使用する場合は、アンロードに使用した COMPRESS 指令をロード時にも使用する必要があります。IMSDBU 専用の LAYOUT(D) フォーマットの場合は、圧縮設定がアンロード ファイル ヘッダー レコードに格納されるため、これは自動的に処理されます。汎用フォーマット アンロードの場合は、データの破損を防ぐように COMPRESS 指令が正しく設定されていることを確認します。
 
 
						
 
					  
 
				   
				
 
			  
 
		   
		   
			 - DSN
 
 
			 - セグメント データを含む入力ファイルのデータセット名を指定します。
 
				
 
				   
					 - サブパラメーター
 
 
					 -  
						
 
							  
								 
								  | filespec | 
 
								  セグメント データ用の出力のデータセット名 | 
 
								
 
							 
 
						  
 
 
					  
 
				   
				   
					 - 構文規則
 
 
					 -  
						
 
						  - filespec のベース名をアスタリスク (*) として指定した場合、そのアスタリスクは DBD 名に置き換えられます。
 
 
						  - 出力ファイル名には一意の拡張子を使用します。これは、データベース データ ファイルが出力ファイルと別のディレクトリにある場合でも適用されます。
 
 
						  - ドライブまたはディレクトリ (あるいはその両方) を指定しない限り、出力データセットは現在のディレクトリにあります。
 
 
						  - 出力ファイル名 (ドライブおよびディレクトリは含めない) は、データベース用のファイルの名前とは別にする必要があります。たとえば、MYDBD という名前のデータベースのデータ ファイルが MYDBD.DAT および MYDBD.IDX である場合は、出力ファイル名にはこれらのファイル名を使用できません。
 
 
						
 
					  
 
				   
				
 
			  
 
		   
		   
			 - ECHO
 
 
			 - IMSDBU が表示するメッセージの表示、およびそれらのメッセージとの対話を制御します。
 
				
 
				   
					 - サブパラメーター
 
 
					 -  
						
 
							  
								 
								  | keyword | 
 
								  表示される情報のカテゴリ。次のいずれかを指定します。 
										 
										  - ALL
 
 
										  - 処理メッセージ、入力ソースまたは詳細情報、および終了メッセージを常に表示します。メッセージ レベルが msglvl および stoplvl 値以上の場合は、警告およびエラー メッセージが表示され、ユーザー入力を求めて停止します。
 
 
										 
										 
										  - MSGS
 
 
										  - 処理メッセージおよび終了メッセージを常に表示します。ソースや詳細情報は表示されません。メッセージ レベルが msglvl および stoplvl 値以上の場合は、警告およびエラー メッセージが表示され、ユーザー入力を求めて停止します。
 
 
										 
										 
										  - ERREND
 
 
										  - ユーティリティ終了メッセージを常に表示します。メッセージ レベルが msglvl および stoplvl 値以上の場合は、警告およびエラー メッセージが表示され、ユーザー入力を求めて停止します。
 
 
										 
										 
										  - ENDMSG
 
 
										  - ユーティリティ終了戻りコードが msglvl 以上の場合のみ終了メッセージを表示します。ユーティリティ終了戻りコードが stoplvl 以上の場合は、「Press any key to continue」というメッセージが表示され、入力を求めて停止します。すべての終了メッセージで表示または停止、あるいはその両方を行うには、msglvl または stoplvl (あるいはその両方) の値としてゼロを入力します。
 
 
										 
										 
										  - COND
 
 
										  - 警告またはエラー メッセージ、および終了メッセージは、どちらも msglvl および stoplvl 値を条件としています。メッセージ レベルが msglvl および stoplvl 値以上の場合は、警告およびエラー メッセージが表示され、ユーザー入力を求めて停止します。終了戻りコードが msglvl 以上の場合は、終了メッセージが表示されます。ユーティリティ終了戻りコードが stoplvl 以上の場合は、入力を求める「Press any key to continue」というメッセージが表示されます。
 
 
										 
										 
										  - ERRORS
 
 
										  - メッセージ レベルが msglvl および stoplvl 以上の場合は、入力を求める警告およびエラー メッセージが表示されます。終了メッセージは表示されません。
 
 
										 
									  
 
								   | 
 
								
 
								 
								  | msglvl | 
 
								  表示するメッセージの重大度を示す 4 から 20 までの値。1 | 
 
								
 
								 
								  | stoplvl | 
 
								  ユーザー入力を求めて停止するメッセージの重大度を示す 4 から 20 までの値。1 | 
 
								
 
							 
 
						  
 
 
						1 次の値を指定できます。
 
							  
							  
							  
							  
								 
								  | 値 | 
 
								  カテゴリ | 
 
								  原因例 | 
 
								
 
							 
 
							  
								 
								  | 4 | 
 
								  一般的な警告メッセージ | 
 
								  DBDGEN が想定して続行できる DBD ソース内のマイナーなコーディング エラー | 
 
								
 
								 
								  | 6 | 
 
								  IMS 固有の警告メッセージ | 
 
								  キーワードまたは文がサポート対象外で無視されるという警告 (処理は続行可能) | 
 
								
 
								 
								  | 8 | 
 
								  一般的な重大エラー | 
 
								  補正できない DBD ソース内の無効なコーディング (「no DBD statement」など) | 
 
								
 
								 
								  | 10 | 
 
								  IMS Option 固有の重大エラー | 
 
								  補正できないサポート対象外の機能が定義されている (「Exceeded some maximum」など) | 
 
								
 
								 
								  | 12 | 
 
								  重大エラー - 起こりうる一時的な状態 | 
 
								  一時的な入出力エラー (「file locked」または「database locked」状態など) | 
 
								
 
								 
								  | 16 | 
 
								  重大エラー - 永続的 - インストールの問題の可能性 | 
 
								  永続的な入出力エラー (無効なデータ セット名やメンバー名がユーティリティに入力された場合や、環境変数が正しく設定されていない場合など) | 
 
								
 
								 
								  | 20 | 
 
								  重大エラー - 永続的 | 
 
								  回復不能な入出力エラーまたは他の予期しないエラー | 
 
								
 
							 
 
						  
 
 
						 
 
					  
 
				   
				
 
			  
 
		   
		   
			 - INI
 
 
			 - デフォルトの指令ファイルを指定します。
 
				
 
				   
					 - サブパラメーター
 
 
					 -  
						
 
							  
								 
								  | filespec | 
 
								  IMSDBU プログラム デフォルトをオーバーライドする指令を含む .INI ファイルの名前および場所。 | 
 
								
 
							 
 
						  
 
 
					  
 
				   
				   
					 - 構文規則
 
 
					 -  
						
 
						  - filespec には、必要に応じてドライブまたはディレクトリ (あるいはその両方) を含められます。ドライブやディレクトリを指定しない場合、IMSDBU は指定された .INI ファイルを現在のディレクトリで検索します。
 
 
						  - .INI ファイルにリストされた指令は、IMSDBU プログラム デフォルトをオーバーライドします。
 
 
						  - コマンド ラインまたは対話式画面で入力された指令は、.INI ファイル内の指令をオーバーライドします。
 
 
						  - NOINI を指定すると、.INI ファイルによるプログラム デフォルトのオーバーライドは行われません。
 
 
						  - 指定した .INI ファイルが存在しない場合は、NOINI を指定した場合と同様にプログラム デフォルトの指令が使用されます。
 
 
						
 
					  
 
				   
				   
					 - 一般規則
 
 
					 -  
						
 
						  - .INI ファイルは ASCII テキスト形式のファイルで、見出し [IMSDBU] を行 1 に含み、列 1 から始まり、1 行に 1 つの指令が含まれる mfims imsdbu 指令のリストが続きます。行は改行またはファイルの末尾で終了します。コメント行は、列 1 にアスタリスク (*) またはセミコロン (;) があることで示されます。次に例を示します。
[IMSDBU]
PROGRESS(1000)
;use local log
LOG(C:\MYDIR\MYDB.LOG)
 
						   
 
						
 
					  
 
				   
				
 
			  
 
		   
		   
			 - LAYOUT
 
 
			 - 入力または出力ファイルのタイプを指定します。
 
				
 
				   
					 - サブパラメーター
 
 
					 -  
						
 
							  
								 
								  | type | 
 
								  出力ファイルのタイプ。次のいずれかになります。 
										 
										  - D
 
 
										  - 出力ファイルは IMSDBU ファイル レイアウトです。追加の指令を使用して入力ファイルを記述する必要はありません。
 
 
										 
										 
										  - G
 
 
										  - 出力ファイルは汎用レイアウトです。追加の指令を使用して入力ファイルおよびその内容を記述する必要があります。
 
 
										 
										 
										  - I
 
 
										  - 出力ファイルは IBM フォーマットです。追加の指令を使用して入力ファイルを記述する必要はありません。
 
 
										 
										 
										  - S
 
 
										  - 出力ファイルは順編成ファイルです。追加の指令を使用して入力ファイルおよびその内容を記述する必要があります。
 
 
										 
									  
 
								   | 
 
								
 
							 
 
						  
 
 
					  
 
				   
				   
					 - 構文規則
 
 
					 -  
						
 
						  - G および S パラメーターに必要な追加の指令は、RECFM、LRECL、SEGM、および DATA です。
 
 
						
 
					  
 
				   
				   
					 - 一般規則
 
 
					 -  
						
 
						  - LAYOUT(I) 出力ファイルは、メインフレームへのアップロードおよび IMS/ESA データベースの再ロードには適していません。
 
 
						  - LAYOUT(I) により、RECFM(V)、LRECL(0)、SEGM(7)、DATA(36)、および NOCOMPRESS 指令が自動的に設定されます。
 
 
						
 
					  
 
				   
				
 
			  
 
		   
		   
			 - LIST
 
 
			 - 詳細リスティング ファイルの場所および名前を制御します。リスティング ファイルには、ソース リスティング、完了状態、エラー メッセージ、実行統計などの項目が含まれます。
 
				
 
				   
					 - サブパラメーター
 
 
					 -  
						
 
							  
								 
								  | filespec | 
 
								  リスティング ファイルに使用する名前および場所。 | 
 
								
 
							 
 
						  
 
 
					  
 
				   
				   
					 - 構文規則
 
 
					 -  
						
 
						  - filespec には、必要に応じてドライブまたはディレクトリ (あるいはその両方) を含められます。ドライブやディレクトリを指定しない場合、IMDBU は現在のディレクトリにリスティング ファイルを作成します。
 
 
						  - NOLIST はリスティング ファイルの作成を抑制します。
 
 
						  - パスの指定では、パスを表す環境変数名の冒頭にドル記号 ($) を書く表記法を使用できます。たとえば、LIST($ENVVAR\*.DOC) と記述すると、ENVVAR 環境変数で指定したディレクトリに dbdname.DOC のリスト ファイルが作成されます。
 
 
						  - LIST(*.LST) または LIST(*.RPT) を指定すると、プロジェクト リスティング ディレクトリにリスティング ファイルが作成されます。
 
 
						  - パスを指定しない場合、リスティング ファイルは現在のディレクトリに作成されます。
 
 
						  - filespec のベース名をアスタリスク (*) として指定した場合、そのアスタリスクは DBD 名に置き換えられます。これにより、IMSDBU は、複数のデータベースを操作できる関数の個別レポートを提供できます。また、これは DBD 名による履歴詳細レポートの管理にも役立ちます。
 
 
						  - LIST を filespec なしで指定すると、LIST(*.LST) を指定した場合と同じ結果が得られます。
 
 
						
 
					  
 
				   
				
 
			  
 
		   
		   
			 - LISTOPEN
 
 
			 - 詳細リスティング ファイルのオープン ディスポジションを制御します。
 
				
 
				   
					 - サブパラメーター
 
 
					 -  
						
 
							  
								 
								  | disp | 
 
								  使用するディスポジション。次のいずれかになります。 
										 
										  - NEW
 
 
										  - 新しいリスティング ファイルを作成するか、既存のリスティング ファイルを上書きします。
 
 
										 
										 
										  - MOD
 
 
										  - リスト出力を既存のファイルに追加します。既存のファイルがない場合は、新しいリスティング ファイルを作成します。MOD を指定すると、データベース関数の詳細履歴レコードを管理できます。
 
 
										 
									  
 
								   | 
 
								
 
							 
 
						  
 
 
					  
 
				   
				   
					 - 構文規則
 
 
					 -  
						
 
						  - NOLIST を指定した場合、LISTOPEN は無視されます。
 
 
						
 
					  
 
				   
				
 
			  
 
		   
		   
			 - LOG
 
 
			 - 各関数の終了メッセージ状態を示す IMSDBU アクティビティ ログを指定します。
 
				
 
				   
					 - サブパラメーター
 
 
					 -  
						
 
							  
								 
								  | filespec | 
 
								  IMSDBU アクティビティ ログとして使用するファイルの名前および場所。 | 
 
								
 
							 
 
						  
 
 
					  
 
				   
				   
					 - 構文規則
 
 
					 -  
						
 
						  - filespec には、必要に応じてドライブまたはディレクトリ (あるいはその両方) を含められます。ドライブやディレクトリを指定しない場合は、現在のディレクトリにリスティング ファイルが作成されます。
 
 
						  - NOLOG を指定すると、ログ ファイル出力は抑制されます。
 
 
						
 
					  
 
				   
				   
					 - 一般規則
 
 
					 -  
						
 
						  - ログ ファイルが存在しない場合は作成されます。
 
 
						  - ログ ファイルは、ファイルの末尾に書き込まれた最新のエントリを含む履歴ファイルです。
 
 
						  - ログ ファイルは時間とともにサイズが大きくなるため、状況に応じて定期的に削除する必要があります。
 
 
						
 
					  
 
				   
				
 
			  
 
		   
		   
			 - LRECL
 
 
			 - 固定長汎用レイアウト出力レコードの長さを指定します。
 
				
 
				   
					 - サブパラメーター
 
 
					 -  
						
 
							  
								 
								  | length | 
 
								  固定長汎用レイアウト出力レコードの長さ。 | 
 
								
 
							 
 
						  
 
 
					  
 
				   
				   
					 - 構文規則
 
 
					 -  
						
 
						  - 固定長汎用ファイルからロードする場合、つまり LAYOUT(G) が指定されている場合は、LRECL が必要です。
 
 
						  - LAYOUT(D)、LAYOUT(I)、または LAYOUT(S) が指定されている場合は、LRECL は不要であり、無視されます。
 
 
						  - LRECL(0) を指定すると、IMSDBU で可能な最小値が割り当てられます。使用した値は、詳細レポート リストに表示されます。
 
 
						
 
					  
 
				   
				
 
			  
 
		   
		   
			 - PROGRESS
 
 
			 - 進捗レポートの頻度を制御します。
 
				
 
				   
					 - サブパラメーター
 
 
					 -  
						
 
							  
								 
								  | no-of-segments | 
 
								  進捗メッセージを表示する前に処理するセグメントの数を示す 0 から 9999 までの値。0 を指定すると、進捗レポーティングは無効になります。 | 
 
								
 
							 
 
						  
 
 
					  
 
				   
				   
					 - 構文規則
 
 
					 -  
						
 
						  - 指定するセグメント数は、デフォルトの 200 より小さくしないことをお勧めします。非常に小さい値を使用すると、データベース関数のパフォーマンスが明確に低下します。
 
 
						  - 比較的高速なシステムでは、設定値を高くすると (たとえば 1000 以上にすると)、パフォーマンスが多少向上することがあります。
 
 
						
 
					  
 
				   
				   
					 - 一般規則
 
 
					 -  
						
 
						  - 進捗メッセージには、処理済みのセグメントの数、または完了率および予想残り時間が表示されます。
 
 
						
 
					  
 
				   
				
 
			  
 
		   
		   
			 - RECFM
 
 
			 - 入力または出力レコードのフォーマットを指定します。
 
				
 
				   
					 - サブパラメーター
 
 
					 -  
						
 
							  
								 
								  | format | 
 
								  入力レコードのフォーマット。次のいずれかになります。 
										 
										  - V
 
 
										  - レコードは可変長です。LAYOUT(G) を指定すると、各レコードにはプレフィックスとして 2 バイトのレコード長 (LL) が付き、ファイルは VRECGEN ユーティリティによって作成されるものと同じフォーマットになります。LAYOUT(S) を指定すると、ファイルは Micro Focus レコード順編成フォーマットになります。
 
 
										 
										 
										  - F
 
 
										  - レコードは固定長です。
 
 
										 
										
										  - U
 
										  - レコードはフォーマットされていません。
 
										
									  
 
								   | 
 
								
 
							 
 
						  
 
 
					  
 
				   
				   
					 - 構文規則
 
 
					 -  
						
 
						  - LAYOUT(I) が指定されている場合は、RECFM は不要であり、無視されます。
 
 
						  - format を V に設定し、LAYOUT(G) を指定した場合、各レコードにはプレフィックスとして 2 バイトのレコード長 (LL) が付き、ファイルは VRECGEN ユーティリティによって作成されるものと同じフォーマットになります。
 
 
						  - format を V に設定し、LAYOUT(S) を指定した場合、ファイルは Micro Focus レコード順編成フォーマットになります。
 
 
						  - format を F に設定した場合は、LRECL を使用してレコード長を指定する必要もあります。
 
 
						
 
					  
 
				   
				
 
			  
 
		   
		   
			 - SEGEXIT 指令 (Add 関数)
 
 
			 - 追加プロセス中にセグメント データの選択および変更の制御に使用できるユーザー指定の出口プログラムの名前を指定します。
 
				
 
				   
					 - サブパラメーター
 
 
					 -  
						
 
					 
 
 
				   
				   
					 - 構文規則
 
 
					 -  
						
 
						  - NOSEGEXIT を指定すると、この出口は無効になります。
 
 
						
 
					  
 
				   
				
 
			  
 
		   
		   
			 - SEGM
 
 
			 - データ レコード内の 8 バイト セグメント名の開始位置を指定します。
 
				
 
				   
					 - サブパラメーター
 
 
					 -  
						
 
							  
								 
								  | position | 
 
								  データ レコード内の 8 バイト セグメント名の開始位置。 | 
 
								
 
							 
 
						  
 
 
					  
 
				   
				   
					 - 構文規則
 
 
					 -  
						
 
						  - 値 1 は、レコード データの最初のバイトに相当します。
 
 
						  - SEGM 指令は、LAYOUT(G) または LAYOUT(S) が指定されている場合にのみ使用します。
 
 
						  - LAYOUT(D) または LAYOUT(I) が指定されている場合は、SEGM は不要であり、無視されます。
 
 
						  - RECFM(V) を指定すると、可変長レコード プレフィックス (LL) はレコード データの一部と見なされず、この値には影響しません。つまり、可変長ファイル内の LL フィールドに続く最初のフィールドがセグメント名の場合は、SEGM 値に 1 を指定します。
 
 
						
 
					  
 
				   
				   
					 - 一般規則
 
 
					 -  
						
 
						  - GSAM ファイルをロードする場合、SEGM 値は無視されます。
 
 
						  - LTERM キー (関連または非関連) を使用する Fast Path データベースをロードする場合、SEGM 指令は、セグメント名ではなく LTERM 名の位置を示します。
 
 
						
 
					  
 
				   
				
 
			  
 
		   
		
 
	  
 
	 パラメーター - JCL
 
		 
		 
		   
			 - database-name
 
 
			 - 関数の実行対象のデータベースの名前。
 
 
		   
		   
			 - dataset-name
 
 
			 - アンロードするデータのデータセット名。
 
 
		   
		   
			 - catalog-name
 
 
			 - アンロードするデータを含むデータセットが JCL カタログ内にある場合は、データセット名の代わりにカタログ名を指定できます。
 
 
		   
		   
			 - output-dataset
 
 
			 - 出力データを含むデータセット。
 
 
		   
		
 
	  
 
	 入力
 
		 
		アンロードされるデータベースは、DBDGEN を使用して定義された 1 次物理 DBD または GSAM DBD でなければなりません。Unload では、2 次索引データベースのデータ ファイルは必要ありません。論理子が含まれているデータベースをアンロードする場合、論理親のデータベース ファイルは必要ありません。次のいずれかのデータベースをアンロードしようとすると、エラー メッセージが表示されます。
 
		 
		  - HIDAM データベースの主索引。
 
 
		  - 2 次索引データベース。2 次索引からユーザー データを抽出する必要がある場合は、DBUTIL ユーティリティを使用するか、独自のプログラムを作成します。
 
 
		  - ACCESS=LOGICAL として定義されたデータベース。IMSDBU は、物理データベースを使用して論理関係を管理します。論理 DBD を使用してデータをアンロードする必要がある場合は、DBUTIL ユーティリティを使用するか、独自のプログラムを作成します。
 
 
		
 
		User Exit プログラムの Database Catalog タイプを IMSDBU によってアンロードすることはできません。Unload のサポート対象は、単一ユーザー専用データベースおよび共有読み取り専用データベースです。DBUTIL ユーティリティでは、User Exit データベースをアンロードできます。
 
	  
 
	 出力
 
		 
		データベースのアンロード用としては、さまざまな出力ファイル フォーマットがサポートされています。ファイル フォーマットの詳細については、「IMS データベース ユーティリティ (IMSDBU)」トピックの「専用および汎用のロード入力」を参照してください。Load 関数によってサポートされるフォーマットは、Unload を使用して作成することができます。