HFZWRITE コマンド

HFZWRITE コマンドは、ユーザー出口から Z Abend Investigator にデータ・レコードを渡すために使用します。これは、コンパイラー・リスト読み取り、メッセージ、異常終了コードの説明、フォーマット、または通知ユーザー出口でのみ使用できます。HFZWRITE コマンドによって提供可能なデータのタイプは、このコマンドの使用元であるユーザー出口のタイプによって異なります。詳細については、それぞれのユーザー出口タイプに関する一般セクションを参照してください。

1. Syntax

1 HFZWRITE
1 'text'
1 var_name
各コマンドの説明。
'text'
印刷するテキストをアポストロフィで囲んで指定します。ストリングを囲むには、単一引用符 (') または二重引用符 (") のいずれかを使用できます。このとき最初の引用符と最後の引用符には、同じ文字を使用してください。テキスト中の引用符がストリングを囲むために使用された引用符と同じ場合、いずれの引用符も 2 回指定する必要があります。例えば、It isn't there を出力するには、テキストを "It isn't there" または 'It isn''t there' で指定します。

引用符付きストリングを使用すると、通知ユーザー出口またはフォーマット・ユーザー出口でのみサポートされます。

var_name
データ・レコードを含む変数の名前。

var_name を指定せずに HFZWRITE コマンドを使用する場合、関連する出口タイプで説明したように出口固有のデータ域を使用してデータ・レコードを渡す必要があります。

戻りコード

HFZWRITE コマンドでは、以下の戻りコードが使用されます。
0
レコードが正常に書き込まれました。
2
直前のエラーによりレコードの書き込みが使用不可になりました。
4
エラーのためレコードが書き込まれませんでした。エラーの説明が HFZTRACE DDname に書き込まれます。
8
コマンド構文エラーです。エラーの説明が HFZTRACE DDname に書き込まれます。

2. HFZWRITE コマンド例

/* REXX */
/* Pass records to Z Abend Investigator */

/* Method 1 - plain text */
"HFZWRITE 'This is record 1'"
if RC = 0 then say 'Method 1 success!'

/* Method 2 - using LST data area (Compiler Listing Read user exit) */
rec = 'This is record 2'
LST.DATA_LENGTH = length(rec)
LST.DATA_BUFFER = rec
"HFZWRITE"
if RC = 0 then say 'Method 2 success!'

/* Method 3 - letting REXX resolve data record variable */
rec = 'This is record 3'
"HFZWRITE '"rec"'"
if RC = 0 then say 'Method 3 success!'

/* Method 4 - letting Z Abend Investigator resolve data record variable */
rec = 'This is record 4'
"HFZWRITE rec"
if RC = 0 then say 'Method 4 success!'