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

DD_DDNAME 環境変数の使用による特性の指定

export コマンドを使用すると、PL/I ファイルに 関連付けられるデータ・セットを識別する環境変数を設定することができます。 また、オプショナルでデータ・セットの特性も指定することができます。 環境変数から得られるこのような情報を、 データ定義 (または、dd) 情報と呼びます。

DD_DDNAME 環境変数の構文は、次のとおりです。

構文図を読む構文図をスキップする                      .---------------.
                      V               |
>>-DD_DDNAME=filespec---+-----------+-+------------------------><
                        '-,--option-'
 

この構文ではブランクを使用することができます。 また、このステートメントの構文は、コマンド入力時にはチェックされません。 データ・セットのオープン時に、このステートメントの構文が検証されます。 構文に誤りがあれば、オン・コード 96 により UNDEFINEDFILE 条件が発生します。

DD_DDNAME
環境変数の名前を指定します。DDNAME は、大文字でなければなりません。 さらに、OPEN ステートメントの TITLE オプションに指定したファイル定数の 名前または代替 DDNAME のいずれかになります。TITLE オプションの詳細は、OPEN ステートメントの TITLE オプションの使用を参照してください。

代替 DDNAME を使用する場合に、その長さが 31 文字を超えるときは、最初の 31 文字だけが環境変数名に指定されます。

filespec
PL/I ファイルに関連付けるファイルまたは装置名を指定します。
option
DD 情報として指定するオプションです。

DD 情報として指定できるオプションは、APPENDからTYPEで説明します。

APPEND

APPEND オプションにより、既存データ・セットが拡張されるのか、再作成されるのかが指定されます。

構文図を読む構文図をスキップする             .-Y-.
>>-APPEND--(-+-N-+-)-------------------------------------------><
 

Y
新規レコードを、順次データ・セットの終わりに追加する、あるいは相対データ・ セットまたは索引付きデータ・セットに挿入することを指定します。
N
ファイルが存在する場合、そのファイルを再作成することを指定します。

APPEND オプションを適用できるのは、OUTPUT ファイルだけです。 したがって、次の場合、APPEND オプションは無視されます。

BUFSIZE

BUFSIZE オプションは、バッファーのバイト数を指定します。

構文図を読む構文図をスキップする>>-BUFSIZE--(n)------------------------------------------------><
 

RECORD 出力はデフォルト設定でバッファーに入り、BUFSIZE のデフォルト値 64k です。 STREAM 出力もバッファーに入りますが、デフォルトによるのではありません。 また、この場合、BUFSIZE のデフォルト値はゼロです。

BUFSIZE の値にゼロが指定されている場合は、 バッファーのバイト数は、RECSIZE オプションまたは LRECL オプションで指定されている値と同じです。

BUFSIZE オプションが有効なのは、連続バイナリー・ファイルだけです。 ファイルが端末入力に使用されている場合は、 効率を上げるために、BUFSIZE に値をゼロを割り当てるべきです。

レコード入出力用の CHARSET

CHARSET オプションのこのバージョンは、レコード入出力を使用 する連続ファイルにだけ適用されます。このオプションにより、ユーザーは ASCII データ・ファイルを入力ファイルとして使用したり、出力ファイルの文字セットを指定することができます。

構文図を読む構文図をスキップする              .-ASIS---.
>>-CHARSET--(-+-EBCDIC-+-)-------------------------------------><
              '-ASCII--'
 

入力ファイルの形式、または出力ファイルにとらせたい形式に基づいて、CHARSET の サブオプションを選択してください。

ストリーム入出力用の CHARSET

CHARSET オプションのこのバージョンは、 ストリーム入力ファイルおよびストリーム出力ファイルにだけ適用されます。 このオプションにより、ユーザーは ASCII データ・ファイルを入力ファイルとして使用し たり、出力ファイルの文字セットを指定することができます。 ストリーム入出力を使用しているときに ASIS を指定しようとしても、 エラーは出されず、文字セットは EBCDIC として扱われます。

構文図を読む構文図をスキップする              .-EBCDIC-.
>>-CHARSET--(-+-ASCII--+-)-------------------------------------><
 

入力ファイルの形式、または出力ファイルにとらせたい形式 に基づいて、CHARSET のサブオプションを選択してください。

DELAY

DELAY オプションは、システムがファイル・ロックやレコード・ロックを入手できない場合に 失敗した操作を再試行するまでの遅延の時間をミリ秒単位で指定します。

構文図を読む構文図をスキップする            .-0-.
>>-DELAY--(-+-n-+-)--------------------------------------------><
 

このオプションを適用できるのは、VSAM ファイルだけです。

DELIMIT

DELIMIT オプションは、 入力ファイルにフィールド区切り文字が含まれているかどうかを指定します。 フィールド区切り文字は、レコードのフィールドを分離するブランクかまたはユーザー定義文字です。 このオプションを適用できるのは、ソート入力ファイルだけです。

構文図を読む構文図をスキップする              .-N-.
>>-DELIMIT--(-+-Y-+-)------------------------------------------><
 

ソート・ユーティリティー・プログラムは、 フィールド区切り文字の有無により、 テキスト・ファイルとバイナリー・ファイルを区別します。 フィールド区切り文字が含まれている入力ファイルは、 テキスト・ファイルとして処理され、区切り文字がない入力ファイルはバイナリー・ファイルと見なされます。 この情報は、ライブラリーが正しいパラメーターを ソート・ユーティリティー・プログラムに渡すために必要です。

LRECL

LRECL オプションは RECSIZE オプションと同じです。

構文図を読む構文図をスキップする>>-LRECL--(n)--------------------------------------------------><
 

LRECL が指定されておらず LINESIZE 値による暗黙指定 もされていない場合 (ただし TYPE(FIXED) ファイルを除く)、 デフォルトは 1024 です。

LRMSKIP

LRMSKIP オプションを使用すると、ファイルがオープンされてから 最初の SKIP フォーマット項目が実行される ように、1 ページ目の n 行目  (n は PUT ステートメント または GET ステートメントの SKIP オプションで指定されている値) で 出力が開始されるようにすることができます。

構文図を読む構文図をスキップする              .-N-.
>>-LRMSKIP--(-+-Y-+-)------------------------------------------><
 

n がゼロまたは 1 の場合は、1 ページ目の 1 行目で出力が開始されます。

PROMPT

PROMPT オプションは、コロンを端末からのストリーム入力の プロンプトとして表示するかどうかを指定します。

構文図を読む構文図をスキップする             .-N-.
>>-PROMPT--(-+-Y-+-)-------------------------------------------><
 

PUTPAGE

PUTPAGE オプションは、用紙送り文字の後ろに復帰文字を入れるかどうかを指定します。 このオプションが適用されるのは、プリンター向けファイルだけです。 プリンター向けファイルは、PRINT 属性を指定して宣言された ストリーム出力ファイル、あるいは、CTLASA 環境オプションを 指定して宣言されたレコード出力ファイルです。

構文図を読む構文図をスキップする              .-NOCR-.
>>-PUTPAGE--(-+-CR---+-)---------------------------------------><
 

NOCR
用紙送り文字 ('0C'x) の後ろに復帰文字 ('0D'x) を入れな いことを指します。
CR
用紙送り文字の後ろに復帰文字を追加することを指します。 このオプションは、出力が IBM 以外のプリンターに送られる場合に指定する必要があります。

RECCOUNT

RECCOUNT オプションは、PL/I ファイルのオープン・プロセス中に作成される、 相対データ・セットまたは領域データ・セットにロードできる最大のレコード数を指定します。

構文図を読む構文図をスキップする>>-RECCOUNT--(n)-----------------------------------------------><
 

PL/I がデータ・セットを作成も再作成もしない場合、RECCOUNT オプションは無視されます。

RECCOUNT オプションのデフォルトは 50 です。

注: z/OS の場合、REGIONAL(1) データ・セットの機能性とパフォーマンスを向上させるには、/filespec パラメーターと RECCOUNT パラメーターの両方を指定した TITLE オプションを省略することをお勧めします。 この場合、ファイルにロードされるレコードの数は、データ・セットの最初のエクステントに割り振られたスペースによって決まります。 詳しくは、領域データ・セットの定義と使用を参照してください。

RECSIZE

RECSIZE オプションは、データ・セット内のレコードの長さ n を指定します。

構文図を読む構文図をスキップする              .-512-.
>>-RECSIZE--(-+-n---+-)----------------------------------------><
 

領域データ・セットおよび固定長データ・セットの場合は、RECSIZE は データ・セットの各レコードの長さを指定します。 その他のデータ・セット・タイプの場合は、RECSIZE はレコードがとれる最大の長さを指定します。

SAMELINE

SAMELINE オプションは、入力を求めるプロンプトのステートメントと同じ行で、 システム・プロンプトを行わせるかどうかを指定します。

構文図を読む構文図をスキップする               .-N-.
>>-SAMELINE--(-+-Y-+-)-----------------------------------------><
 

以下の例は、PROMPT オプションと SAMELINE オプションのいくつかの組み合わせ の結果を示しています。

例 1
PUT SKIP LIST('ENTER:'); というステートメントが与えられると、 その出力結果は次のようになります。
prompt(y), sameline(y)prompt(n), sameline(y)prompt(y), sameline(n) prompt(n), sameline(n) ENTER: (cursor)ENTER: (cursor)ENTER:(cursor)ENTER:(cursor)
例 2
PUT SKIP LIST('ENTER'); というステートメントが与えられると、 その出力結果は次のようになります。
prompt(y), sameline(y)prompt(n), sameline(y)prompt(y), sameline(n)  prompt(n), sameline(n) ENTER: (cursor)ENTER (cursor)ENTER:(cursor)ENTER(cursor)

SKIP0

SKIP0 オプションは、ソース・プログラムに SKIP(0) ステートメント がコーディングされた場合、ライン・カーソルをどこに移動するかを指定します。SKIP0 オプションは、PM アプリケーションとしてリンクされていない 端末ファイルに適用されます。

構文図を読む構文図をスキップする            .-N-.
>>-SKIP0--(-+-Y-+-)--------------------------------------------><
 

SKIP0(N)
カーソルを次の行の先頭に移動することを指定します。
SKIP0(Y)
カーソルを現在行の先頭に移動することを指定します。

次の例は、現在の出力行の先頭にカーソルが移動するように、 出力を端末スキップ・ゼロ行で行う方法を示しています。

  export DD_SYSPRINT='stdout:,SKIP0(Y)'

TYPE

TYPE オプションは、ネイティブ・ファイル内のレコードのフォーマットを指定します。

構文図を読む構文図をスキップする           .-LF------.
>>-TYPE--(-+-CRLF----+-)---------------------------------------><
           +-TEXT----+
           +-FIXED---+
           +-CRLFEOF-+
           '-U-------'
 

CRLF
レコードを文字の組み合わせ CR - LF で区切ることを指定します。('CR' と 'LF' は、 それぞれ復帰と改行の ASCII 値である '0D'x と '0A'x を表します。) 出力ファイルの場合、PL/I は各レコードの終わりにこれらの文字を挿入します。 入力ファイルの場合、PL/I はこれらの文字を破棄します。入力、出力のいずれの場合も、これらの文字は RECSIZE の考慮事項には入りません。

データ・セットのレコード長として決められている値よりも長いレコードを データ・セットに入れることはできません。

LF
レコードが LF 文字組み合わせで区切られることを指定します。('LF' は、ASCII コードの用紙送り、つまり '0A'x を表します。) 出力ファイルの場合、PL/I は各レコードの終わりにこれらの文字を挿入します。 入力ファイルの場合、PL/I はこれらの文字を破棄します。 入力、出力のいずれの場合も、これらの文字は RECSIZE の考慮事項には入りません。

データ・セットのレコード長として決められている値よりも長いレコードを データ・セットに入れることはできません。

TEXT
前述の LF と同じです。
FIXED
データ・セット内の各レコードの長さが同じであることを指定します。 データ・セット内のレコード長として指定されている値は、レコードの境界を認識す る場合に使用されます。

TYPE(FIXED) ファイル内のすべての文字は、制御文字も含め (ある場合)、データと見なされます。 指定したレコード長が、存在している文字を反映していること、 あるいは、指定したレコード長がレコード内の全文字を扱えることを確認してください。

CRLFEOF
出力ファイルを除けば、このサブオプションは CRLF オプションと同じ情報を指定します。 ファイルの 1 つが出力についてクローズされるときに、 ファイルの終わりマーカーが最後のレコードに追加されます。
U
レコードが不定形式であることを表します。 これらの不定形式ファイルは、OPEN および CLOSE を除いて、 どのレコード入出力またはストリーム入出力のステートメントでも使用できません。TYPE(U) ファイルからの読み取りは、FILEREAD 組み込み関数を使用すること のみにより行うことができます。 また、TYPE(U) ファイルへの 書き込みは、FILEWRITE 組み込み関数を使用することのみにより行うことができます。

ASA(N) オプションを指定したプリンター向けファイルの場合 このオプションが無視されるということを除き、TYPE オプションを 適用できるのは CONSECUTIVE ファイルだけです。

使用しているプログラムが TYPE(FIXED) が有効である既存のデータ・セット にアクセスしようとしており、かつそのデータ・セット長が ユーザーが指定した複数の論理レコード長の倍数でない 場合は、PL/I は UNDEFINEDFILE 条件を発生させます。

TYPE(FIXED) 属性を指定した非印刷ファイルを使用している 場合は、SKIP が行の終わりまで末尾ブランクに置き換えられます。TYPE(LF) が使用されている場合、SKIP は末尾ブランクなしに、LF で置き換えられます。


Terms of use | Feedback

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