Rational Developer for System z
Enterprise PL/I for z/OS, Version 3.8, プログラミング・ガイド

データ定義 (DD) ステートメント

データ定義 (DD) ステートメントは、オペレーティング・システムに 対してデータ・セットを定義するためのジョブ制御ステートメントであり、 入出力リソースの割り振りをオペレーティング・システムに要求するものです。 データ・セットを動的に割り振らない場合は、 各ジョブ・ステップに、そのジョブ・ステップで処理する データ・セットの DD ステートメントをすべて組み込んでおく必要があります。

ジョブ制御ステートメントの構文については、「z/OS JCL User's Guide」を参照してください。DD ステートメントのオペランド・フィールドには、データ・セットの 位置 (例えば、ボリューム通し番号や、ボリュームをマウントする 装置の識別名) を記述したキーワード・パラメーター、および データそのものの属性 (例えば、レコード・フォーマット) を記述した キーワード・パラメーターを入れることができます。

DD ステートメントを使用すると、使用するデータ・セットおよび入出力装置 から独立した PL/I ソース・プログラムを作成することができます。 また、ユーザー・プログラムを再コンパイルしなくても、データ・セットの パラメーターを変更したり、さまざまなデータ・セットを処理したり することができます。

次の項に、DD ステートメントのオペランドと、ユーザーの PL/I プログラムとの 関係について説明します。

ENVIRONMENT 属性の LEAVE および REREAD オプションを使用すると、磁気テープ・ボリュームの終わりに達したとき、または磁気テープのデータ・セットが閉じたときにとるアクションを制御する DISP パラメーターを使用できます。 LEAVE および REREAD オプションの説明は、第 8 章の『LEAVE|REREAD』にあります。

PL/I バージョン 1 の標準機能であった書き込み妥当性検査は、本バージョンでは実行さ れません。 書き込み妥当性検査を実行するには、JCL DD ステートメントの DCB パラメーター の OPTCD サブパラメーターを使って要求できます。 詳細については、「OS/VS2 Job Control Language」を参照してください。

条件付きサブパラメーターの用法

PL/I プログラムにより処理されるデータ・セットの DISP パラメーターの条件 付きサブパラメーターを使用する場合は、ステップ異常終了機能を使う必要があります。 ステップ異常終了機能は、次のようなにして入手します。

  1. アプリケーションの条件付きサブパラメーターを適用する必要がある障害が発生したために プログラムの実行を終了する場合は常に、ERROR 条件を発生させるか、 または ERROR 信号を出す。
  2. PL/I のユーザー出口を ABEND 要求に変更する必要がある。

データ・セット特性

DD ステートメントの DCB (データ制御ブロック) パラメーターを使用すると、 データ・セット内のデータの特性を記述したり、実行時のデータの処理方法を 記述することができます。DD ステートメントの他のパラメーターは、主としてデータ・セットの識別、位置、 処置を扱うのに対し、DCB パラメーターはレコード自体の処理に必要な情報を指定します。 DCB パラメーターのサブパラメーターの詳細については、「z/OS JCL User’s Guide」を 参照してください。

DCB パラメーターには、次の事項を記述するサブパラメーターが入っています。

BLKSIZE、LRECL、KEYLEN、および RECFM (またはそれらと同等のもの) は、DCB パラメーター ではなく、ユーザーの PL/I プログラムの ファイル宣言の ENVIRONMENT 属性を使って指定することができます。

DCB パラメーターを使って、PL/I プログラム内でデータ・セット用に (宣言されたファイル属性と、その属性で暗黙指定されたその他の属性を使って) 既に 設定されている情報を指定変更することはできません。 既に提供されている情報を変更しようとする DCB サブパラメーターは、無視さ れます。

新規データ・セットの場合、DD ステートメントと矛盾していれば、プログラムで定義されたファイルの属性が使用されます。

PDS ファイルをクローズするときに、RC=4 を伴う メッセージ IEC225I が出される場合があります。 このメッセージは安全であり、無視できます。

DCB パラメーターの例

DCB=(RECFM=FB,BLKSIZE=400,LRECL=40)

上記の例では、長さ 40 バイトの固定長レコードが、400 バイトの長さのブロックに グループ化されます。


Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)