バッチ・プログラムから HFS ファイルにアクセスするには、DD ステートメント内、または OPEN ステートメントの TITLE オプション 内に HFS ファイル名を指定します。
例えば、DD HFS を使用して HFS ファイル /u/USER/sample.txt にアクセスするには、次のように DD ステートメントをコーディングします。
//HFS DD PATH='/u/USER/sample.txt',PATHOPTS=ORDONLY,DSNTYPE=HFS
OPEN ステートメントの TITLE オプションを使用して同じファイルに アクセスするには、次のようにコーディングします。
OPEN FILE(HFS) TITLE('//u/USER/sample.txt');
TITLE オプションにある 2 つのスラッシュに注意してください。 最初のスラッシュはファイル名 (DD 名でなく) が後に続くことを示し、2 番目は完全修飾 HFS ファイル名の先頭を示します (また、バッチ環境で HFS ファイルを参照する場合は、ファイル指定を行うために使用できる現行ディレクトリーがないため、完全修飾名を使用する必要があります)。
次のいずれかの方法で HFS ファイル名を指定することにより、PL/I 動的割り振りを使用してバッチ・プログラムから HFS ファイルにアクセスできます。
次の例は、上記の方法を使用して HFS ファイルにアクセスする方法を示しています。
//HFS DD PATH='/u/USER/sample.txt',PATHOPTS=ORDONLY...
OPEN FILE(HFS) TITLE('PATH(/u/USER/sample.txt)');
xx = putenv('DD_HFS=/u/USER/sample.txt');
Dcl plixopt char(100) var ext static
init('ENVAR("DD_HFS=PATH(/u/USER/sample.txt)")');
バッチ環境では、PL/I は HFS ファイルの取り扱い方法を以下の順序で決定します。
UNIX から固定長 z/OS ファイルにアクセスするには、ファイルのレコード・サイズをファイルの ENVIRONMENT 属性で、または OPEN ステートメントの TITLE オプションで指定する必要があります。 したがって、
'/dataset.name,type(fixed),recsize(80)'