【SystemDirector Enterprise for Batch】[pp_info:1445] gBcDbgFreeを185バイト以上にすると 「ORA-06502:PL/SQL: 数値または値のエラー: 文字列バッファが小さすぎます。が発生しました」となります。
質問内容
BatchFW_LogPutPを使って、メッセージID によるログ出力を行なっているのですが、PL/SQLで gBcDbgfreeに185バイト以上の文字をセットしてraiseすると、
--
ORA-06502: PL/SQL: 数値または値のエラー: 文字列バッファが小さすぎます。が発生しました
--
というエラーとなります。
BatchFW_LogPutPのサイズ制限を教えてください。
また、raise(例外発生)でgbcDbgFreeの内容をログに出力したいのですがどうすればよいでしょうか。
回答内容
BatchFW_LogMsgIdPutP 含め、PL/SQL系のログ出力部品で出力できるログの長さは、255バイトです。
これを超えたメッセージを出力しようとすると、バッファオーバフローが発生します。
【注意】255バイトのうち、フレームワークで51バイトを利用し、かつ、置換文字が1つ増えるごとに1バイト利用します。
なお、gBcDbgFreeを出力するには、メッセージIDで定義したメッセージの置換文字列を利用すればよいです。
【確認済みのバージョン】全バージョン
【確認済みの対象OS】全OS
製品名カテゴリ
SystemDirector Enterprise for Java(バッチ)/C Batch
-
コンテンツID:
3150105388
-
公開日:
2013年08月19日
-
最終更新日:2013年08月19日
アンケート
サポート情報充実のためアンケートにご協力をお願いいたします。
コメント欄: