ヘッダーをスキップ
Oracle OLAP DMLリファレンス
11g リリース1(11.1)
E05732-02
  目次へ
目次
索引へ
索引

戻る
戻る
 
次へ
次へ
 

BADLINE

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


参照:

PROGRAMMODELおよびINFILE

データ型

BOOLEAN

構文

BADLINE = {YES|NO}

引数

YES

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

NO

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

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

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

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

例6-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: