DSNTIAR および DSNTIAC

SQL 戻りコードを文字列メッセージに変換します。

構文

CALL 'DSNTIAR' USING comm-area 
                     error-message 
                     error-rec-length

または、CICS アプリケーションの場合:

CALL 'DSNTIAC' USING comm-area 
                     error-message 
                     error-rec-length

パラメーター

comm-area プログラムの COMMAREA (通常は SQLCA)。実行時に、DSNTIAR/DSNTIAC が文字列メッセージを生成する元となるコードが、SQLCA 構造の SQLCODE フィールドに含まれている必要があります。
error-message エラー メッセージの出力を格納するために使用する、サイズが error-rec-length であるレコードの配列。error-message 配列は、次の 2 つのコンポーネントで構成されます。

error-length

2 番目の要素である error-text の長さを示す、240 以上の整数が含まれます。

error-text

メッセージのテキストが含まれます。通常、このメッセージは複数の文字列からなる配列として定義されます。各文字列は、長さが error-rec-length であり、error-length が 240 または error-rec-length * n のどちらか大きいほうになるように、n 回出現します。

error-rec-length 71 から 241 までの整数で、出力メッセージの論理レコード長を示します。error-message の長さが error-rec-length で定義された長さを超える場合、そのメッセージは複数の論理レコードに分かれて保存されます。

戻りコード

次の表に、DSNTIAR または DSNTIAC ユーティリティを呼び出した場合の戻りコードを示します。

コード 説明
0 実行に成功しました。
4 指定されたメッセージ領域に適合するサイズを超えるデータが使用可能です。
8

エラー レコードの長さが許容範囲 (72 <= error-rec-length <= 240) を超えています。

12 メッセージ領域の大きさが足りません。メッセージの長さが 240 以上です。
16 メッセージ ルーチンのエラーです。

01 ERROR-MESSAGE. 
     02 ERROR-LENGTH PIC S9(4) COMP VALUE +288. 
     02 ERROR-TEXT PIC X(72) OCCURS 4 TIMES. 
 77 ERROR-REC-LENGTH PIC S9(9) COMP VALUE +72.
    ... 
     CALL 'DSNTIAR' USING SQLCA ERROR-MESSAGE ERROR-REC-LENGTH