MDXLIMITFORMULARECURSION
falseに設定すると、MDXLIMITFORMULARECURSIONは、Essbaseサーバーが128 MDX式の実行レベルを超えないようにしません。これは、式/計算済メンバーでの再帰的実行が最終的に終了し、Essbaseで処理を続行する場合に使用できます。
構文
MDXLIMITFORMULARECURSION [appname [dbname]] TRUE | FALSE-
appname - オプション。制限を設定または削除するアプリケーションを指定します。appnameの値を指定し、dbnameの値を指定しないと、設定は指定したアプリケーションのすべてのキューブに適用されます。設定を特定のキューブに対して有効にするには、アプリケーションとキューブを指定する必要があります。
-
dbname— オプション。appnameで指定したアプリケーション内のデータベース(キューブ)を指定します。このデータベースに対して制限を設定します。dbnameの値を指定し、appnameの値を指定しないと、指定は無視されます。
-
TRUE—MDX式の実行レベルの数について128の制限を課します。デフォルト設定は「TRUE」です。
-
FALSE—MDX式の実行レベルの数に制限を課しません。
説明
MDX計算済メンバーまたは式の実行を再帰的にすることができます(たとえば、式はその式自体を参照できます。または、計算済メンバーは自分自身を参照できます)。デフォルトでは、EssbaseはMDX式の実行レベルの数を制限します。式が超過すると、スタック・オーバーフロー・エラーが発生し、サーバーが失敗する可能性があります。ただし、MDXLIMITFORMULARECURSIONをFALSEに設定すると、Essbaseが制限を課すことができなくなります。式/計算済メンバーでの再帰的実行が最終的に終了することを認識しているときに、および再帰深度を128より大きくする場合に、この設定を使用できます。
MDX式が128実行レベルに達し、MDXLIMITFORMULARECURSIONが設定されていないかTRUEに設定されている場合、Essbaseはその式の処理を停止し、アプリケーション・ログにエラー・メッセージを書き込みます。式が128実行レベルに達し、MDXLIMITFORMULARECURSIONがFALSEに設定されている場合、Essbaseはその式の処理を続行します。
注意:
MDXLIMITFORMULARECURSIONをFALSEに設定する前に、アウトライン内のMDX式が無限に再帰的でないことを確認します。たとえば、式が相互に依存していないことを確認します。