この章では、HSC スタンドアロンユーティリティーについて説明します。これらのユーティリティーは、独立したプログラムとして実行されます。
次のユーティリティーがあります。
ユーティリティー管理者 (SLUADMIN
)
SLICREAT
スクラッチ変換ユーティリティー (SLUCONDB
)
SLUADMIN
プログラムはバッチジョブとして動作し、ほとんどのユーティリティー機能の初期化処理を制御します。ユーティリティー管理者 (SLUADMIN
) は、複数のユーティリティーに対するシリアル要求として処理される複数のコマンドを受け入れることができます。ユーティリティー機能の実行に必要なすべての要件が満たされている場合、実際の処理を扱う適切なプログラムに制御が渡されます。
追加の制御文で示されたユーティリティー機能は、前のユーティリティー機能が停止するまで起動せず、制御は SLUADMIN
プログラムに返されます。
注意:
制御文の最大長は 32,767 文字です。この制限を超えた場合、無効なユーティリティー制御文であることを示すメッセージ SLS0241I が表示されます。便利のよいように、ほとんどのユーティリティープログラムはパッケージ化され、ユーザーが呼び出す単一のプログラムとして示されます。例外がスクラッチ変換です。ほかのユーティリティー機能はすべて、SLUADMIN
プログラムと、要求されたユーティリティー機能を呼び出すために必要なユーザー指定のコマンドを使用して、通常のバッチジョブとして呼び出されます。
追加コマンドで示されたユーティリティー機能は、前のユーティリティー機能が停止するまで起動せず、制御は SLUADMIN
プログラムに返されます。
次に、JCL の一般的な例を示します。これは SLUADMIN
を実行するために変更できます。この JCL 例で「utility and CSV commands
」と表示されている箇所には、実行するユーティリティーまたは CSV コマンドを入力してください。
例:
SET HOSTID(HSC2) FORHOST(HSCB) OFFLoad LOGF SCREdist ACS(01)
次の例は、SLUADMIN
を呼び出す JCL を示します。
//jobname job (account),programmer,REGION=0M //S1 EXEC PGM=SLUADMIN,PARM=MIXED //STEPLIB DD DSN=your.sea.linklib,DISP=SHR //SLSPRINT DD SYSOUT=A //SLSIN DD * utility and CSV commands . . . //************************************************************** //* Optional UUI Output Definition Statements * //************************************************************** //SLSCSV DD DSN=yourcsv.output.dataset,DISP=SHR //SLSCSVX DD SYSOUT=* //SLSXML DD DSN=yourxml.output.dataset,DISP=SHR /* //
注:
すべてのユーティリティー機能について、JOB
文で 0 M の領域サイズを指定します。次のオプションパラメータを、SLUADMIN
EXEC
文の PARM=
に指定できます。
レポートの見出しが印刷されないようにします。このパラメータの影響は、ACTIvities
、VOLRpt
、VTVRpt
など、レポート出力を生成するプログラムだけに限られます。
注:
NOHDR
と LINECNT
は相互に排他的です。NOHDR
を指定しない場合、次の情報を含む見出しの印刷がデフォルトとなります。
レポートの日付/時間
ページ番号
ホストソフトウェアバージョン番号
実行されたユーティリティー機能の名前
ページの見出しが印刷されないようにしますが、次のような制御ヘッダーを出力に生成します。
SLS0030I Message ID NNNN Help Info:
または
SLS0041I Command CCCCCCCC Help Info:
注:
NOPHDR
は、LINECNT
および NOHDR
と相互に排他的です。このパラメータは、Display CMd
または Display Message
コマンドを発行して、コマンドのヘルプテキストやメッセージを含んだファイルを作成するときに役立ちます。
大文字と小文字を組み合わせてレポートの見出しおよびメッセージをすべて印刷します。デフォルトは大文字です。
SLUADMIN
レポートのページあたりの行数を指定します。許可されている値は 10 から 99 で、デフォルトはページあたり 60 行です。
注:
LINECNT
と NOHDR
は相互に排他的です。オプションで、SLUADMIN
ユーティリティーが実行されている HSC サブシステムの名前を指定します。LPAR 上で稼働している HSC サブシステムが MULT
パラメータを指定しているときに、このパラメータは必須です。
XML および CSV 出力でのデータフィールドの書式を指定します。有効な日付書式は次のとおりです。
yyyymondd
yyyy-mm-dd
yyyy-mon-dd
HEXSTCK
(16 進数文字 STCK
書式)
デフォルトの書式は yyyymondd
です。たとえば、2005Oct14
です。
XML および CSV 出力におけるアルファベットのデータフィールドの大文字と小文字を指定します。有効な大文字と小文字の書式は次のとおりです。
M
は大文字と小文字の混在を示します。これがデフォルトです。
U
は大文字を示します。
特定の HSC および VTCS コマンドには、追加文が必要になる場合があります。このドキュメントでは、これらの文を適用可能なコマンドとともに説明しています。
次の定義文が常に必要です。
STEPLIB
ELS モジュールを含むリンクライブラリを指定します。
SLSPRINT
ユーティリティー出力 (プレーンテキスト) の出力先を指定します。
SLSIN
SLUADMIN
に対する入力を指定します (ユーティリティーコマンド名およびパラメータ)。
SLSOUT
SLUADMIN
処理メッセージの出力先を指定します。
次の CDS 定義文の 1 つ以上が、HSC が非アクティブになっているホストで実行されるユーティリティーコマンドに必要です。これらの文は、プライマリ CDS を指定し、オプションで、セカンダリおよびスタンバイ CDSを指定します。
注:
これらの文は、HSC がアクティブであるホストで実行するコマンドでは省略できます。これらの文を省略した場合、ホスト上のアクティブな HSC で使用されるデータセットがアクセスされます。プライマリ CDS を指定します。HSC が非アクティブであるホスト上で実行されるユーティリティーコマンドでは、この文は必要です。
オプションで、セカンダリ CDS を指定します。
セカンダリ CDS が存在する場合は、切り替えが発生してセカンダリ CDS がアクティブになったら、CDS を並べ替えることによってデータベースの整合性を維持できるように、この文を含めます。
オプションで、スタンバイ CDS を指定します。
スタンバイ CDS が存在する場合は、切り替えが発生し、スタンバイ CDS がアクティブになったときに CDS を並べ替えてデータベースの整合性を維持できるように、この文を含めます。
CDS 定義文を指定するときに、次の条件が適用されます。
指定する DD 文の数は、SET TCHNIQE
コマンドで定義される数と同じにする必要があります。SET TCHNIQE
コマンドを実行すると、定義された DD 文の数は、新しい技法によって暗示される数に等しくなる必要があります。
プライマリ、セカンダリ、およびスタンバイ CDS バージョンを選択するルールは、HSC サブシステムが使用するものと同じです。CDS 構成の詳細は、『HSC および VTCS の構成』を参照してください。
「読み取り専用」であるユーティリティー (たとえば、VOLRpt
) の場合、単一の DD (SLSCNTL
) を指定でき、内部名検証も外部名検証も実行されません。
統合ユーザーインタフェース (UUI) 要求を通じて追加された出力タイプを生成するときに、次の定義文の 1 つ以上が必要です。これらの出力タイプの要求の詳細は、SLUADMIN 出力の要求を参照してください。
カンマ区切り値 (CSV) 形式でユーティリティー出力の出力先を指定します。
CSV の例外の出力先を指定します。
構造化 XML 形式のユーティリティー出力の出力先を指定します。
プレーンテキストに加え、SLUADMIN
は、統合ユーザーインタフェース (UUI) 要求により追加される出力タイプをサポートします。UUI でサポートされるコマンドおよびユーティリティーのリストについては、『ELS プログラミングリファレンス』を参照してください。
出力タイプは、SLUADMIN
JCL で定義された DD 文により制御されます。次の出力タイプがあります。
プレーンテキスト
プレーンテキスト出力は常に生成され、以前のリリースからの変更はありません。出力は、SLSPRINT
定義文によって指定されたデータセットに書き込まれます。
構造化 XML
この出力タイプはオプションであり、SLSXML
定義文が指定されている場合にのみ生成されます。出力は、この文で指定されたデータセットに書き込まれます。
構造化 XML は、XML ヘッダータグ、データタグ、およびデータ要素の内容を含んだ整形式 XML データストリームです。すべての UUI 要求の XML タグ名および構造については、『ELS プログラミングリファレンス』を参照してください。
カンマ区切り値 (CSV)
この出力タイプはオプションであり、CSV コマンドと SLSCSV
定義文が指定されている場合にのみ生成されます。
CSV 出力はカスタマイズできます。XML データタグ名のテンプレートは、どのデータ値を出力するかを指定するためにユーザーが入力できます。出力データは、CSV 詳細行が後続する単一の CSV ヘッダー行です。
CSV ヘッダー行は、要求された XML データタグ名のリストです。それぞれの名前はカンマで区切られます。それぞれの CSV 詳細行は、指定した固定数のデータ値であり、カンマで区切られます。この種の出力は、スプレッドシートまたはカスタマイズ可能なレポートライターへの入力として簡単に利用できます。
SLSXML
DD 文が存在する場合、この文は、UUI インタフェースをサポートするすべての SLUADMIN
コマンドに、構造化 XML 出力を与える必要があることを示します。
XML が生成されるときに、各要求の最後に、例外が、専用のヘッダータグ (<exceptions>
) の下に生成されます。各例外は、<reason>
タグを使用して報告されます。詳細は、ELS Programming Referenceを参照してください。
SLSCSV
DD 文が存在する場合、UUI インタフェースをサポートするすべての SLUADMIN
コマンドに、カンマ区切り値 (CSV) 出力が与えられます。
SLSCSVX
DD 文が存在する場合、CSV 例外が報告されます。SLSCSVX
DD 文は、SLSCSV
DD 文が与えられている場合にのみ有効です。CSV 例外は、CSV コマンドが要求に対して有効な場合にのみ生成されます。
この DD のデフォルトの DCB 情報は、SLSPRINT, LRECL=121, RECFM=FB
と同じです。
CSV
コマンドは CSV 出力処理を制御します。
各 CSV
コマンドには、カンマで区切られた CSV 要素定義のリストが含まれます。各 CSV 要素定義は、オプションの XML 構造化タグおよびサブスクリプト値とともに XML データタグ名を指定します。ELS XML タグの詳細は、『ELS プログラミングリファレンス』を参照してください。
構文:
パラメータ:
以降の要求に対する CSV 処理を無効にします。
注:
OFF
は、ほかのすべての CSV パラメータと相互に排他的です。OFF
が指定されていない場合は必須です。
nnnn-
は、1 から 4 つの数字とそれに続くダッシュから構成されるオプションのフィールド名接頭辞です。フィールド名に「n(nnn)-
」の接尾辞が付いている場合、フィールドの CSV 出力には常に、指定した数ちょうどの文字が含まれます。数値フィールドは右詰めされ、もっとも左端の桁が切り捨てられます。その他のフィールドは左詰めされ、もっとも右端の文字が切り捨てられます。指定した値が実際の値よりも長い場合、数値フィールドの場合は左側が、その他のフィールドの場合は右側が空白で埋められます。
例:
8-acs_status
は acs_status
値を 8 文字に切り捨てます。
12-acs_status
は、acs_status
値を空白で埋めて 12 文字にします。
nnnn
の最大値は 1024 です。「nnnn-
」の指定は、パラメータ FIXed
も指定されているときにのみ有効です。
structuretag(
nnn
)
.datatag
はオプションの XML 構造化タグとデータタグのペアです。XML 構造化タグは、ほかの要素を含むが、内容の値は持たない要素です。ELS XML タグの詳細は、『ELS プログラミングリファレンス』を参照してください。
XML 構造化タグ/データタグのペアは、複数の構造化タグ内でデータタグが発生する場合にのみ指定してください。たとえば、DISPLAY LSM
の要求データタグ free_cell_count
は、LSM の空きセル数の合計が含まれるようにするには構造化タグ lsm_data
の下で使用し、パネルの空きセル数が含まれるようにするには構造化タグ panel_data
の下で使用します。lsm_data.free_cell_count
を指定すると、lsm_data
構造化タグからの空きセル数が要求され、panel_data.free_cell_count
を指定すると、panel_data
構造化タグからの空きセル数が要求されます。複数の構造化タグの下で発生するデータタグに対して構造化タグがコーディングされていない場合、生成された XML 内で最初に出現するデータタグが使用されます。
nnn
は、CSV 出力に含められる複数の XML データ値の数を決定するオプションのサブスクリプトです。
単一の要求の構造化 XML データに同じ名前の複数の XML 構造化要素が含まれるときにのみ、サブスクリプトを指定します。これは、「Maximum Occurrences
」のラベルが付けられた列が 1 より大きいときはいつでも、requestXML の説明で示されます。サブスクリプト値は、構造化タグ名とデータタグ名の両方で指定できます。次に例を示します。
CSV FIELD=(mvc_instance(4).volser,+ mvc_instance(4).partition_id(2))
12 のフィールドを持つ CSV 出力を作成し、mvc_instance
volser の 4 つのオカレンスに、最初の MVC volser に関連した partition_id
値を表す 2 つのフィールドが続き、続いて 2 番目の MVC に関連した partition_id
値を表す 2 つのフィールドが続く、というようになります。
datatag(
nnn
)
はオプションの XML データタグです。データタグが、要求内の複数の構造化タグの下にない場合、構造タグ修飾子を指定する必要はありません。
nnn
は、CSV 出力に含められる複数の XML データ値の数を決定するオプションのサブスクリプトです。
単一の要求の構造化 XML データに同じ名前の複数の XML 構造化要素が含まれるときにのみ、サブスクリプトを指定します。これは、「Maximum Occurrences
」のラベルが付けられた列が 1 より大きいときはいつでも、requestXML
の説明に示されます。
注:
XML タグ名は、大文字と小文字を区別せず、大文字と小文字を任意に組み合わせて指定できます。OFF
が指定されていない場合は必須です。ブレークタグは、入力要求について定義された有効な構造化タグである必要があります。ブレークタグに一致するトレーラタグが出力プロセスで見つかるたびに、新しい CSV レコードが作成されます。有効なブレークタグの例は次のとおりです。
DISPLAY CDS
の場合、cds_data
または host_data
VOLRPT
または Display Volume
の場合、volume_data
固定形式の CSV 出力を生成します。CSV 出力の各フィールドは、一定数の文字を占めるように空白で埋められます。ユーザーは自分のオプションを使用して、顧客指定の形式のフラットファイルをレポート用に作成できます。
CSV タイトル行が生成されないように指定します。このキーワードを省略すると、各 CSV 要求の最初の行は、カンマ区切りのタグ名を含むタイトル行になります。
TITLe
を指定した場合、指定したタイトル名が XML タグ名の代わりにタイトル出力行で使用されます。タイトル名を省略した場合は、FIELD
パラメータからの指定された XML タグ名がタイトルで使用されます。
JCL の例: CSV 出力:
次の SLUADMIN
JCL は MVCRPt
コマンドを実行して、CSV 形式のすべての MVC で使用できるスペースの割合のレポートを作成します。ジョブの実行後、CSV 出力ファイルをスプレッドシートアプリケーションに FTP で転送できます。
この例で使用される構造化タグとデータタグの詳細は、『ELS プログラミングリファレンス』を参照してください。
//MVCREPT JOB x,CHRIS,CLASS=A,MSGCLASS=E //* //* //* //MVCRPT EXEC PGM=SLUADMIN, // PARM='MIXED,XMLDATE=YYYY-MM-DD' //STEPLIB DD DSN=your.sea.LINKLIB,DISP=SHR //SLSCNTL DD DSN=your.sea.CLUSTER.CDS,DISP=SHR //SLSPRINT DD SYSOUT=* //SYSOUT DD SYSOUT=* //SLSCSV DD DISP=(,CATLG),DSN=hlq.MVCREPT.CSV, // DCB=(RECFM=VB,LRECL=4096,BLKSIZE=32000), // UNIT=SYSDA,SPACE=(CYL,(x,y)) //SLSIN DD * CSV FIELD=(mvc_data.volser,mvc_data.percent_available)+ BREAK=(mvc_data)+ NOTITLE MVCRPT /* //* //
SLUADMIN
プログラムは、下記のように、ジョブステップを実行するためのリターンコードを設定します。
各ユーティリティー機能のリターンコードはメッセージに一覧表示されます。0 以外のリターンコードの場合、エラー状況の詳細および説明を示した追加メッセージが一覧表示されます。表示されるメッセージについては、『ELS メッセージおよびコード』を参照してください。
SLUADMIN
ユーティリティーには次のリターンコードが含まれます。
0
は、制御文を通じて要求されたすべてのユーティリティー機能が正常に完了したことを示します。
4
は、少なくとも 1 つのユーティリティー機能で異常な状況が発生したが、そのユーティリティー機能または後続のユーティリティー機能の終了は起こらなかったことを示します。
8
は、少なくとも 1 つのユーティリティー機能で、そのユーティリティー機能を継続できなくするエラー状況が発生したが、制御文で表された後続のユーティリティー機能はすべて試みられたことを示します。
12 は、ユーティリティー機能の開始を妨げたエラー状況、またはアクティブなユーティリティー機能を終了させ、後続のユーティリティー機能の処理を妨げたエラー状況が検出されたことを示します。
注:
HSC CDS での問題のためにリターンコードが発生した場合は、HSC を安全に初期化できるように、その問題を解決する必要があります。SLICREAT
プログラムは、ライブラリ制御データセットを作成し、確認メッセージでライブラリボリューム容量を表示します。
これらのライブラリ制御データセットは、SLICREAT
データセット初期化 JCL で指定するデータセット定義に基づいて作成されます。
SLICREAT
を使用するには、次の手順を行います。
SLICREAT
プログラムを使用して、データセット初期化 JCL にデータセット定義を作成します。
SLICREAT
プログラムを実行して、ライブラリ制御データセットを作成します。
SLICREAT
プログラムが正常に完了したことを確認し、確認メッセージに表示されたライブラリボリューム容量をメモします。
これらの手順については、次のセクションで説明します。これらは、ライブラリが動作する前に実行する必要があります。
注:
SLICREAT
を使用する前に、最初に LIBGen
マクロを作成し、アセンブルしてリンクする必要があります。詳細は、『HSC および VTCS の構成』を参照してください。
SLICREAT
を使用して HSC SLSJRNnn
ジャーナルファイルを再フォーマットできます。詳細は、『ELS レガシーインタフェースリファレンス』を参照してください。
ライブラリ制御データセットの定義の作成は、SLICREAT
という名前のジョブファイルで JCL をコーディングすることにより行われます。
次に、SLICREAT
プログラムの JCL の例を示します。この例は、メンバー JCLCRT
として HSC SAMPLIB
にも含められています。
//SLICREAT JOB (account),’programmer’,CLASS=A //CREATE EXEC PGM=SLICREAT, CDS CREATE MODULE // PARM=’libgen-load-module-name’, // REGION=0M //* //STEPLIB DD DSN=your.sea.linklib,DISP=SHR //SYSPRINT DD SYSOUT=* MESSAGES //* //****************************************************************** //* LIBRARY PRIMARY CONTROL DATASET (CDS) //****************************************************************** //SLSCNTL DD DSN=SLS.SLSCNTL, P RIMARY CDS // SPACE=(4096,s,,CONTIG,ROUND), REPLACE ’s’ WITH YOUR // DISP=(NEW,CATLG,DELETE), SPACE CALCULATIONS // UNIT=SYSDA //****************************************************************** //* LIBRARY SECONDARY CONTROL DATASET (CDS) //****************************************************************** //SLSCNTL2 DD DSN=SLS.SLSCNTL2, SECONDARY CDS // SPACE=(4096,s,,CONTIG,ROUND), REPLACE ’s’ WITH YOUR // DISP=(NEW,CATLG,DELETE), SPACE CALCULATIONS // UNIT=SYSDA //****************************************************************** //* LIBRARY STANDBY CONTROL DATASET (CDS) //****************************************************************** / /SLSSTBY DD DSN=SLS.SLSCNTL3, STANDBY CDS // SPACE=(4096,s,,CONTIG,ROUND), REPLACE ’s’ WITH YOUR // DISP=(NEW,CATLG,DELETE), SPACE CALCULATIONS // UNIT=SYSDA //****************************************************************** //* LIBRARY JOURNAL DATASET (INITIAL) //****************************************************************** //SLSJRN01 DD DSN=SLS.SLSJRN01, INITIAL JOURNAL // SPACE=(4096,u,,CONTIG,ROUND), REPLACE ’u’ WITH YOUR // DISP=(NEW,CATLG,DELETE), SPACE CALCULATIONS // UNIT=SYSDA //****************************************************************** / /* LIBRARY JOURNAL DATASET (ALTERNATE) //****************************************************************** //SLSJRN02 DD DSN=SLS.SLSJRN02, ALTERNATE JOURNAL // SPACE=(4096,u,,CONTIG,ROUND), REPLACE ’u’ WITH YOUR // DISP=(NEW,CATLG,DELETE), SPACE CALCULATIONS // UNIT=SYSDA //****************************************************************** //* ONE PAIR OF JOURNALS ARE REQUIRED FOR EACH GENED HOST //****************************************************************** //*
ライブラリ制御データセットを定義するには、次の JCL DD 文を使用する必要があります。
出力メッセージ。
制御データセットを割り当てるときには、次の条件を参照してください。
DCB
文は指定しないでください。HSC は、必要なブロックサイズ (4K) を定義します。
データセットは、単一の連続して範囲で割り当てる必要があります。
SLICREAT
プロセスの実行前に、レコードを含む既存のデータセットを CDS に含めないでください。
高い I/O アクティビティーを生み出すほかの CDS やほかのデータセットと同じボリュームに CDS を置かないことをお勧めします。
プライマリライブラリ制御データセット。
これは、HSC 内ですべてのアクティビティーを制御し同期するために使用される初期データセットです。これは、自動または手動でデータセットの制御がセカンダリに切り替えられるまで、HSC によって使用されます。
SLSCNTL
はまた、SLICREAT
プロセスも制御します。SLICREAT
を実行するときに SLSCNTL
DD 文を含めない場合、次のようになります。
CDS はフォーマットされません。
PARM
文に含まれている LIBGEN
ロードモジュールのサイズ要件 (ブロック単位) は、計算されて報告され、ジャーナルフォーマットが試みられます。
プライマリ制御データセットのセカンダリコピー。
これは、SLIRCVRY
マクロの TCHNIQE
パラメータが、SHADOW
、STANDBY
、BOTH
、または ALL
の場合にのみ必要です。
スタンバイ制御データセット。
このデータセットは、SLIRCVRY
マクロの TCHNIQE
パラメータが STANDBY
または ALL
の場合にのみ必要です。スタンバイ制御データセットを指定した場合、セカンダリデータセットが必要になります。このデータセットは、STBYONLY
処理にも必要です (SLICREAT を使用したスタンバイ CDS のみの作成を参照)。
SLICREAT
プログラムを実行して、ライブラリ制御データセットを作成します。
SLICREAT
プログラムを実行するには、次の EXEC
文を使用します。
EXEC PGM=SLICREAT,PARM=’ libgen-load-module-name ’
PARM=
値は、LIBGEN
ロードモジュール名を示します。STEPLIB
文は、LIBGEN
ロードモジュールが現在存在している適切なライブラリを指し示している必要があります。
注:
SLICREAT
は、リリース LINKLIB
と同じレベルのマクロでアセンブルされた LIBGEN
ロードモジュールを必要とします。以前の HSC リリースで作成された LIBGEN
ロードモジュールは、後のリリースの SLICREAT
への入力として使用できません。
SLICREAT
(SLSCNTL
、SLSCNTL2
、および SLSSTBY
) によって作成される CDS ファイルは、フォーマットされる前に空のデータセットであることが検証されます。SLICREAT
がこれらのファイルのいずれかにレコードが含まれていると識別すると、エラーメッセージが表示され、作成プロセスは終了します。このようになった場合は、別のデータセットを指定するか、データセットを削除してから再定義し、SLICREAT
を再実行してください。
SLICREAT
プログラムが正しく処理された後、ライブラリのステータスと容量を示すメッセージが生成されます。次に例を示します。
SLS0557I DATABASE SUCCESSFULLY INITIALIZED; TOTAL CARTRIDGECAPACITY: DDDDDDDDDDDD VOLUMES
メッセージ SLS0557I には、ライブラリのカートリッジ容量の合計が表示されます。SL8500 および SL3000 ライブラリの場合、ライブラリの最大容量ではなくライブラリの実際の容量を確認するために、最初にライブラリをオンラインに変更する必要があります (Vary ACS
コマンド)。ライブラリをオンラインに変更するまでは、最大容量は LIBGEN
で定義した数ではなく、HSC で定義できるパネルの最大数に基づきます。
ライブラリをオンラインに変更したあと、Display Acs
コマンドまたは Display Lsm
コマンドを発行して、ライブラリの実際の容量を表示します。
SLICREAT を使用して、追加の CDS を作成できます。以前にスタンバイ CDS なしで HSC をインストールした場合、SLICREAT
プログラムを実行してこれを作成できます。
この方法は、プライマリ CDS のバックアップを作成しません。追加の CDS をフォーマットし、CDS Enable
コマンドを使用してアクティブ化できるようにします。
SLSCNTL
および SLSJRNnn
DD 文を指定せずに SLICREAT
を実行して、CDS に必要な最小限の DASD スペースを算定できます。HSC は、4096 バイトブロック単位でスペースの最小要件を示すメッセージを生成します。SLICREAT
を実行するときに、これらのデータセットごとに、少なくともこの最小値と同じ大きさのブロック数を指定する必要があります。
注:
複数の CDS (SLSCNTL2
、SLSSTBY
) を指定している場合は、定義するときに、すべてのデータセットに同じ容量のスペース (ブロック単位) を割り当てることをお勧めします。異なるスペース割り当てでデータセットを定義すると、HSC は、最小のデータセットのサイズを使用して、CDS に使用する 4K ブロックの数を算定します。ほかの CDS データセットに余分なスペースがあったとしても、HSC は使用しません。
必要な最小スペース (SLICREAT
で返される) と最小の CDS コピーのサイズとのスペースの差は、CDS 空きブロックとしてフォーマットされます。
SLUCONDB
プログラムは、CA-1、CA-DYNAM/TLMS、DFSMSrmm、および Zara テープ管理システムから、または SMC SMCUDBX
ユーティリティーによって、クライアントシステムから抽出されたファイルから、スクラッチトランザクションを生成します。
SLUCONDB
は、スタンドアロンユーティリティーとして実行でき、SLUADMIN
への入力用のスクラッチトランザクションを生成します。また、アクティブな HSC システムのホストで実行でき、SLUCONDB
LIBONLY
パラメータを使用して、アクティブな HSC システムに直接送信される UUI スクラッチトランザクションを生成できます。クライアント/サーバーシステムでは、SLUCONDB
は TAPEPLEX
パラメータを使用して、別のホスト上の HSC システムにアクセスして、CDS データを取得し、UUI スクラッチトランザクションを送信できます。
警告:
SLUCONDB
は、ほかの SCRAtch
、UNSCratch
、REPLaceall
アクティビティーとともに実行しないでください。
SLUCONDB
モジュールはすでにソースとして配布されていません。スクラッチ処理を、SLUCONDB
でサポートされていないテープ管理システムと同期させる場合は、配布された SLUCONDB
テープ管理インタフェースモジュールのいずれかを、SLUDRINF
インタフェース形式を使用するように変更してください。
SLUCONDB
は、プログラムパラメータを使用して、呼び出すテープ管理システムインタフェース (SLUDR*
) ルーチンを決定します。これらのルーチンの詳細は、付録C テープ管理システムインタフェース (SLUDR*) ルーチンを参照してください。
SLUCONDB
ユーティリティーを実行するときに、JCL EXEC
文で PARM
パラメータを使用して、SLUCONDB
入力値を指定できます。次のいずれかの形式を使用できます。
キーワード形式
位置形式
次の点を考慮してください。
GRACE
パラメータは、キーワード形式を使用した場合にのみ使用できます。
LIBONLY
パラメータは、位置形式を使用した場合のみ使用できます。
次のセクションでは、PARM
パラメータのキーワード形式用の構文およびパラメータについて説明します。
キーワード形式を使用する場合は、次の構文規則に従います。
キーワードと値は、「=」で区切る必要があります (MIXED
キーワードは値を取らないため除く)。
キーワード間の余分なカンマは使用できません。たとえば、PARM='TMC=TMS,,MIXED'
は無効です。
重複したキーワードは使用できません。
有効なパラメータは次のとおりです。
JCL の PGM
パラメータで示されているプログラムから、後続のパラメータにアクセスできるように指定します。
PARM
のデフォルトは次のとおりです。
TMS
すべてのラベルタイプ
スクラッチの適格性は 1900 年 1 月 1 日から始まり、現在のシステム日に終わる
大文字のみ
スクラッチトランザクションを生成します (直接更新はなし)。
オプションで、テープ管理システムを指定します。例:
TMS
は、CA-1 テープ管理システム (TMS) を指定します。これがデフォルトです。
TLMS
はオプションで、TLMS: CA-DYNAM/TLMS テープ管理システムを指定します。
RMM
はオプションで、DFSMSrmm テープ管理システムを指定します。
SMC
はオプションで、SMC ユーティリティー SMCUDBX
からの抽出ファイルを指定します。
SMC を指定した場合、ラベルおよび日付パラメータは使用できません。(ラベルおよび日付の選択は、SMC ユーティリティーが抽出ファイルを作成するときに実行します)。
ZARA
はオプションで、ZARA テープ管理システムを指定します。
subsystem-name
はオプションのサブシステム名です。
オプションで、ライブラリが使用するスクラッチプールのラベルタイプを指定します。有効なラベルタイプ値は次のとおりです。
(SL)
は標準ラベルを示します (デフォルト)。
(NL)
はラベルなしを示します。
(NSL)
は非標準ラベルを示します。
(AL)
は ANSI ラベルを示します。
(SUL)
は標準ユーザーラベルを示します。
オプションで、ボリュームが TMC でスクラッチ化された日付または日付範囲を示します。
1900001
はオプションで、1900 年 1 月 1 日を日付として指定します。これがデフォルトです。
TODAY
はオプションで、現在のシステム日を示します。この日付にスクラッチステータスになったボリュームだけが処理されます。
yyyyddd1
はオプションで、「開始」日付を指定します。「終了」日付はデフォルトで現在のシステム日になります。指定する日付はすべてユリウス歴表記です。
yyyyddd1
の日から今日の日付までにスクラッチステータスになったすべてのボリュームが処理されます。
yyyyddd1-yyyyddd2
はオプションで、ボリュームがスクラッチ化する日付範囲を指定します。これらの日付のどちらも、現在のシステム日付よりもあとにすることはできません。
yyyyddd1
の日から yyyyddd2
の日までにスクラッチステータスになったボリュームがすべて処理されます。
オプションで、大文字と小文字が混在した表記ですべての見出しとメッセージを印刷するように指定します。
注:
カンマを指定した場合、またはこのキーワードを指定しない場合、システムはデフォルトで大文字になります。オプションで、CDS ボリュームを抽出し、UUI スクラッチコマンドを実行するために使用する SMC TapePlex の名前を指定します。
tttttttt
は TapePlex 名です。
指定した TapePlex は、SLUCONDB
と同じホスト上で稼働しているローカル HSC である場合も、.SMC クライアントサーバー機能からアクセスされる別のホスト上の HSC サブシステムである場合もあります。TAPEPLEX
パラメータを指定するには、SLUCONDB
ホスト上のアクティブな SMC システムと、TapePlex に対するアクティブな HSC システムが必要であり、APF 許可ライブラリから SLUCONDB
を実行することが必要になります。
オプションで、スクラッチ適格性に猶予期間 (時間単位) を指定します。猶予期間以下の、SLUCONDB
実行の開始後にアクセスされたボリュームは、スクラッチの対象になりません。
nnn
は、0 から 999 の 1 から 3 桁の数値で、時間単位で猶予期間を示します。
次のセクションでは、PARM
パラメータの位置形式用の構文およびパラメータについて説明します。
JCL の PGM
パラメータで示されているプログラムから、後続のパラメータにアクセスできるように指定します。
PARM
のデフォルトは次のとおりです。
TMS
すべてのラベルタイプ
スクラッチの適格性は 1900 年 1 月 1 日から始まり、現在のシステム日に終わる
大文字のみ
スクラッチトランザクションを生成します (直接更新はなし)。
PARM
のキーワードは位置に関するものです。システムのデフォルトを受け入れる場合は、PARM
を指定しないか、「PARM=
」をコーディングしないでください。
オプションで、CA-1 テープ管理システム (TMS) を指定します。これがデフォルトです。
オプションで、TLMS: CA-DYNAM/TLMS テープ管理システムを指定します。
オプションで、DFSMSrmm テープ管理システムを指定します。
オプションで、ZARA テープ管理システムを指定します。
オプションで、SMC ユーティリティー SMCUDBX
からの抽出ファイルを指定します。
SMC を指定した場合、ラベルおよび日付パラメータは使用できません。(ラベルおよび日付の選択は、SMC ユーティリティーが抽出ファイルを作成するときに実行します)。
オプションで、ライブラリが使用するスクラッチプールのラベルタイプを指定します。有効なラベルタイプ値は次のとおりです。
(SL)
は標準ラベルを示します (デフォルト)。
(NL)
はラベルなしを示します。
(NSL)
は非標準ラベルを示します。
(AL)
は ANSI ラベルを示します。
(SUL)
は標準ユーザーラベルを示します。
次の日付関連パラメータは、ボリュームが TMC でスクラッチ化した日付または日付範囲を指定します。
オプションで、日付として 1900 年 1 月 1 日を指定します。これがデフォルトです。
オプションで、現在のシステム日を示します。この日付にスクラッチステータスになったボリュームだけが処理されます。
オプションで、「開始」日付を示します。「終了」日付はデフォルトで現在のシステム日になります。指定する日付はすべてユリウス歴表記です。
yyyyddd1
の日から今日の日付までにスクラッチステータスになったすべてのボリュームが処理されます。
オプションで、ボリュームがスクラッチ化される日付範囲を示します。これらの日付のどちらも、現在のシステム日付よりもあとにすることはできません。
yyyyddd1
の日から yyyyddd2
の日までにスクラッチステータスになったボリュームがすべて処理されます。
オプションで、大文字と小文字が混在した表記ですべての見出しとメッセージを印刷するように指定します。
注:
カンマを指定した場合、またはこのキーワードを指定しない場合、システムはデフォルトで大文字になります。オプションで、UUI インタフェースインタフェースを通じてボリュームがスクラッチステータスになるように指定します。LIBONLY
を指定するには、アクティブな HSC が必要であり、APF 許可ライブラリから SLUCONDB
を実行することが必要です。
オプションで、CDS ボリュームを抽出し、UUI スクラッチコマンドを実行するために使用する SMC TapePlex の名前を指定します。
tttttttt
は TapePlex 名です。
指定した TapePlex は、SLUCONDB
と同じホスト上で稼働しているローカル HSC である場合も、.SMC クライアントサーバー機能からアクセスされる別のホスト上の HSC サブシステムである場合もあります。TAPEPLEX
パラメータを指定するには、SLUCONDB
ホストでのアクティブな SMC システムと、TapePlex 用のアクティブな HSC システムが必要であり、APF 許可ライブラリから SLUCONDB
を実行する必要があります。
次の定義が SLUCONDB
JCL に適用されます。
CA-1 TMC、CA-DYNAM/TLMS Volume Master File (VMF)、または DFSMSrmm
レポート抽出ファイルのいずれかの形式でユーティリティーに入力します。この文は必須です。
スクラッチ更新ユーティリティー制御文を指定するユーティリティーからの出力。LIBONLY
も TAPEPLEX
も指定されていない場合に、この文が必要です。
JCL で「DSN=
」に一時的または永続的データセットを指定する場合、適切な DCB 情報 (つまり LRECL=72
) を含める必要があります。
ユーティリティープログラムからの出力メッセージ。この文は必須です。
注:
スクラッチ変換ユーティリティーは、UUI を使用して、ボリュームと VTV レコードを CDS から抽出します。UUI は、JCL の文からの、またはアクティブな HSC からデータセット情報を取得することによる、CDS への読み取りアクセスを必要とします。アクティブな HSC が同じシステム上で実行している場合は、SLSCNTL
、SLSCNTL2
、および SLSSTBY
DD 文はオプションです。SLSCNTL
、SLSCNTL2
、および SLSSTBY
DD 文は、LIBONLY
パラメータか TAPEPLEX
パラメータのどちらかが指定されている場合には許可されません。プライマリ制御データセット。この文はオプションです。
セカンダリ制御データセット。この文はオプションです。
スタンバイ制御データセット。この文はオプションです。
次の例は、スクラッチトランザクションの生成と、HSC CDS の直接的な更新の両方について説明しています。
次の例で「your.sea.smp/e.loadlib
」と呼ばれているライブラリは、ELS のインストール中に生成される SEALINK
ライブラリを指しています。このライブラリには、TMS インタフェース (SLUDR*
) モジュールが含まれています。これらのモジュールを再アセンブルする場合、このライブラリはリンクエディットの出力です。
注:
UNIT
、SPACE
、および DCB
パラメータ設定はユーザーが決定します。例5-4 アクティブな HSC で TMS データベースを処理する JCL
//JOBSCUP JOB (account),programmer //STEP1 EXEC PGM=SLUCONDB, // PARM=('TLMS,,,MIXED') //STEPLIB DD DISP=SHR,DSN=your.sea.smp/e.loadlib //SLSTMS DD DSN=TMS.MASTER.FILE,DISP=SHR //SLSSOUT DD DSN=&&SCUPINPT,DISP=(NEW,PASS), // UNIT=,SPACE=,DCB= //SLSPRINT DD SYSOUT=* //* //STEP2 EXEC PGM=SLUADMIN,COND=(4,LT,STEP1),PARM=MIXED //SLSIN DD DSN=&&SCUPINPT,DISP=(OLD,DELETE) //SLSPRINT DD SYSOUT=* //
例5-5 HSC CDS DDname で TMS データベースを処理する JCL
//JOBSCUP JOB (account),programmer //STEP1 EXEC PGM=SLUCONDB, // PARM=(',,2009100-2009110,MIXED') //STEPLIB DD DISP=SHR,DSN=your.sea.smp/e.loadlib //SLSTMS DD DSN=TMS.MASTER.FILE,DISP=SHR //SLSSOUT DD DSN=&&SCUPINPT,DISP=(NEW,PASS), // UNIT=,SPACE=,DCB= //SLSPRINT DD SYSOUT=* //SLSCNTL DD DSN=primary.control.dataset,DISP=SHR //SLSCNTL2 DD DSN=secondary.control.dataset,DISP=SHR //SLSSTBY DD DSN=standby.control.dataset,DISP=SHR //* //STEP2 EXEC PGM=SLUADMIN,COND=(4,LT,STEP1),PARM=MIXED //SLSIN DD DSN=&&SCUPINPT,DISP=(OLD,DELETE) //SLSPRINT DD SYSOUT=A //
//JOBSCUP JOB (account),programmer //STEP1 EXEC PGM=EDGHSKP,PARM='RPTEXT,DATEFORM(J)' //MESSAGE DD DSN=rmm.message.dataset,DISP=SHR //REPTEXT DD DSN=rmm.report.extract,DISP=SHR //* //STEP2 EXEC PGM=SLUCONDB, // PARM=('RMM,,,MIXED,LIBONLY') //STEPLIB DD DISP=SHR,DSN=your.sea.smp/e.loadlib //SLSTMS DD DSN=rmm.report.extract,DISP=SHR //SLSPRINT DD SYSOUT=* //
//JOBSCUP JOB (account),programmer //STEP1 EXEC PGM=SLUCONDB,PARM='SMC,,,MIXED,LIBONLY' //STEPLIB DD DISP=SHR,DSN=your.sea.smp/e.loadlib //SLSTMS DD DISP=SHR,DSN=your.smc.extract.file //SLSPRINT DD SYSOUT=* //
SLUCONDB
出力には次の内容が含まれます。
構文エラーが発生した場合の、入力コマンドと適切なメッセージのリスト
SLUCONDB
プロセスでのエラーに関連付けられたメッセージ
ボリュームのスクラッチの試行が失敗した結果生じたエラー状況に関連付けられたメッセージ (LIBONLY
または TAPEPLEX
パラメータを使用)
スクラッチ入力トランザクション (LIBONLY
も TAPEPLEX
も指定されていない場合)。
次の例では、LIBONLY
も TAPEPLEX
も指定しない場合のスクラッチ変換ユーティリティーの出力を示しています。
例5-9 スクラッチ変換ユーティリティーの出力 (LIBONLY も TAPEPLEX もない場合)
StorageTek Enterprise Library Software Scratch Conversion Utility Page 00001 Time 12:15:39 Date 2010-03-31 SLS4723I Volume (VTV) 400021 used after SLUCONDB start or TODATE SLS0286I 000005 volumes have been selected SLS0155I Condition code for utility function is 0
次の例は、LIBONLY
または TAPEPLEX
を指定した場合のスクラッチ変換ユーティリティーの出力を示しています。
例5-10 スクラッチ変換ユーティリティーの出力 (LIBONLY または TAPEPLEX がある場合)
StorageTek Enterprise Library Software Scratch Conversion Utility Page 00001 Time 12:15:39 Date 2010-03-31 SLS2321I Volume A00020 successfully added to VSM as scratch SLS2321I Volume A00023 successfully added to VSM as scratch SLS0167I Volume FB2110 successfully added to library as scratch SLS0167I Volume TIM021 successfully added to library as scratch SLS2280I Volume 400021 selected after SCRATCH command USETOKN SLS1312I 000004 volumes successfully scratched SLS0155I Condition code for utility function is 4