ヘッダーをスキップ
Oracle® OLAP DMLリファレンス
11gリリース2 (11.2)
B61346-03
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次
索引へ移動
索引

前
 
次
 

BADLINE

BADLINEオプションは、プログラム、モデルまたは入力ファイルの実行時に、Oracle OLAPがエラーの原因となる行を現行の出力ファイルに記録するかどうかを制御するオプションです。


関連項目:

PROGRAMMODELおよびINFILE

データ型

BOOLEAN

構文

BADLINE = {YES|NO}

パラメータ

YES

プログラム、モデルまたは入力ファイルの実行時にエラーが発生すると、Oracle OLAPは、エラーが発生したプログラム、モデルまたはファイルの名前とエラーが発生した行を現行の出力ファイルに記録します。エラー・メッセージが出力ファイルに記録されると、BADLINE情報がエラー・メッセージの直後に表示されます。

NO

(デフォルト)プログラム、モデルまたは入力ファイルにエラーが発生した場合、Oracle OLAPはエラーを現行の出力ファイルに記録しません。

例5-4 BADLINEオプションの使用

testという簡単なプログラムで、変数myint1を0(ゼロ)で除算します。

DEFINE test PROGRAM
PROGRAM
VARIABLE myint1 INTEGER
VARIABLE myint2 INTEGER
myint1 = 0
myint2 = 250/myint1
END

DIVIDEBYZEROオプションをNOに設定してプログラムを実行すると、ゼロでは除算ができないため、エラーが発生します。BADLINEYESに設定すると、現行の出力ファイルに次のメッセージが記録されます。

ERROR: (MXXEQ01) A division by zero was attempted. Set DIVIDEBYZERO to
YES if you want NA to be returned as the result of division by zero.
In DEMO!TEST PROGRAM:
myint2 = 250/myint1

例5-5 プログラム行のエラー検出

testという簡単なプログラムで、変数myint10(ゼロ)で除算します。

DEFINE test PROGRAM
PROGRAM
VARIABLE myint1 INTEGER
VARIABLE myint2 INTEGER
myint1 = 0
myint2 = 250/myint1
END

このプログラムを実行すると、ゼロでは除算できない(DIVIDEBYZEROがNOに設定されている)ため、エラーが発生します。

BADLINEをNOに設定すると、現行の出力ファイルにはエラーのみが記録されます。

ERROR: (MXXEQ01) A division by zero was attempted.  (If you want NA to
be returned as the result of a division by zero, set the DIVIDEBYZERO
option to YES.)
 

BADLINEをYESに設定すると、エラーが発生する行と、エラーが発生するプログラムの名前が現行の出力ファイルに記録されます。

ERROR: (MXXEQ01) A division by zero was attempted.  (If you want NA to
be returned as the result of a division by zero, set the DIVIDEBYZERO
option to YES.)
In TESTBAD PROGRAM:
myint2 = 250/myint1
In EDDE.RUNCMD PROGRAM: