Essbaseアウトラインの検証

Essbaseアウトラインを事前検証して、アプリケーションがハイブリッドEssbaseバージョンと互換性があることを確認します。

ハイブリッド・ブロック・ストレージ・オプション(BSO)キューブをサポートするOracle Essbaseバージョンにすべての環境をアップグレードする作業の一環として、Oracleでは、Essbaseアウトラインを事前検証するプロセスを追加しました。これにより、ハイブリッドEssbaseバージョンに環境をアップグレードする際、スムーズに移行できます。

Note:

Essbaseバージョンの詳細は、管理者用スタート・ガイドCloud EPMのEssbaseについてを参照してください。

アプリケーションとハイブリッドEssbaseバージョンとの互換性を確保するには、環境内のメンバー式を検証して、問題があれば修正できるようレポートを提出する、新しいユーティリティを実装しておきます。

ユーティリティは手動で起動でき、データベース・リフレッシュ中に自動的に実行されます:

ユーティリティによるメンバー式の検証の完了後にエラーが検出された場合は、「アウトライン事前検証レポート」を確認して、検出されたエラーを修正できます。エラーが検出されなかった場合は、必要なアクションはありません。

事前検証エラーのサンプルと推奨される解決策のリストは、次の各項を参照してください:

事前検証プロセスの手動起動

事前検証プロセスを手動で起動するには、アプリケーションの「概要」ページで、「アクション」メニューの「Essbaseアウトライン検証」メニュー・オプションにある次のオプションの中から選択します:

  • アウトラインの事前検証: アプリケーションの検証を実行します

  • アウトライン事前検証レポート: ハイブリッドEssbaseバージョンとの互換性を保つために修正が必要なメンバー式のリストを表示します

Note:

  • 「Essbaseアウトライン検証」メニュー・オプションは、環境が非ハイブリッドEssbaseバージョンの場合にのみ表示されます。環境がハイブリッドEssbaseバージョンの場合は、「Essbaseアウトライン検証」メニュー・オプションは表示されなくなります。

  • 環境がハイブリッドまたは非ハイブリッドEssbaseバージョンのどちらであるかを確認する別の方法は、「アクティビティ・レポート」Essbaseバージョンでのハイブリッド・ブロック・ストレージ・オプションのサポートの値を表示することです。値が「はい」の場合、環境はハイブリッドEssbaseバージョンです。値が「いいえ」の場合、環境は非ハイブリッドEssbaseバージョンです。

環境内のEssbaseアウトラインを検証して、メンバー式で検出されたエラーを修正するには:

  1. ホーム・ページで「アプリケーション」をクリックし、「概要」をクリックします。

  2. 「アクション」をクリックして「Essbaseアウトライン検証」を選択し、次のオプションから選択します:

    • 検証を実行するには、「アウトラインの事前検証」を選択します。

    • 検証中に検出されたエラーのレポートを表示およびダウンロードするには、「アウトライン事前検証レポート」を選択します。

メンバー式を修正した後、「アウトラインの事前検証」オプションを再度使用して、すべての問題が解決されたことを確認します。

Note:

メンバー式を修正したら、事前検証レポートを再度表示する前にデータベースをリフレッシュしてください。リフレッシュしない場合、レポートにはすべてのエラーが解決されたことが表示されません。

データベース・リフレッシュ中の自動事前検証

ご使用の環境で非ハイブリッド版のOracle Essbaseが使用されており、ハイブリッドEssbaseにアップグレードする必要があることが検出された場合は、「データベースのリフレッシュ」プロセスの最後に検証ユーティリティが自動的に起動されます。

検証プロセス中にメンバー式のエラーが検出された場合は、レポートを確認してエラーを修正するよう指示する警告が表示されます。「アウトライン事前検証レポートの表示」をクリックしてレポート全体を表示し、エラーを解決します。

検証エラーへの対処

アウトラインを検証すると、次に示すようなエラーが明らかになる場合があります。提供された推奨事項を使用してこれらの問題に対処し、すべてのエラーが解決されるまで検証プロセスを再実行します。

エラー・カテゴリ 推奨事項
IFなしのELSEまたはENDIF メンバー式では、ifelseif,else, およびendifの構文が使用されていますが、endifトークンの数がifトークンの数より多いか、elseトークンとifトークンが対応していません。ifトークンの数は、endifまたはelseトークンの数と一致している必要があり、これにより、適切なグループ化が確保されます。構文の問題に対処して式を修正してください。
無効なデータ型、または必要な型NUMBERに対してSTRINGが見つかりました メンバー式は存在しないメンバーを参照しています。式を確認し、存在しないメンバーを削除してください。
無効な数式の戻り値の型 メンバー式は存在しないメンバーを参照しています。式を確認し、存在しないメンバーを削除してください。
対応する引用符が見つかりません 対応していない引用符が式に含まれています。開始引用符と終了引用符の数が同じで、適切にグループ化されていることを確認してください。構文エラーを解決して式を修正してください。
処理なし メンバー式が/*と*/を使用してコメント・アウトされています。メンバーは動的であるため、有効な式が必要です。メンバーに有効なメンバー式を入力するか、メンバーのプロパティを変更してください。
括弧エラー 対応していない括弧が式にあります。開き括弧と閉じ括弧の数が一致し、正しくグループ化されていることを確認してください。構文エラーを解決して式を修正してください。
代替変数が存在しません メンバー式は存在しない代替変数を参照しています。適切な値で代替変数を作成し、式の検証が成功するようにしてください。
MDX問合せの構文エラー 構文エラーを修正するには、MDXの構文と文法ルールを参照してください。
セミコロンの欠落

または

予期しない数式の終わり
メンバー式がセミコロンで終わっていません。

式は値を返す可能性がありますが、終了のセミコロンがないと構文エラーになります。式を確認して修正してください。

関数で使用されている不明なメンバー名 メンバー式は存在しないメンバーを参照しています。式を確認して更新し、存在しないメンバーへの参照を削除してください。
環境変数が存在しません 式は環境変数を参照しています。Oracle Fusion Cloud Enterprise Performance Managementアプリケーションでは環境変数を作成できません。かわりに、環境変数と同じ名前と値で代替変数を作成し、それを式で使用してください。
式の解析エラー メンバー式が引用符で囲まれていないメンバー名を参照しているか、式がセミコロンで終わっていません。また、式で許可されていないforyearsumなどのキーワードや関数名がメンバー名に含まれている可能性があります。

メンバー名が適切に引用符で囲まれており、式がセミコロンで終わっていることを確認してください。また、その名前のメンバーがシステム内に存在することを確認してください。

問合せで使用されている不明なメンバー ASOキューブについて、メンバー式はMDX問合せ内に存在しないメンバーを参照しています。また、ディメンション、メンバー、属性ディメンションの名前に/ (バックスラッシュ)文字が含まれていないことを確認してください。
重複するメンバー名 メンバー式は存在しないメンバーを参照しています。式を確認し、存在しないメンバーを削除してください。
無効な割当 無効な割当: 等号の左辺の値は、メンバーまたは変数である必要があります。

メンバー式では、等号(=)を使用した代入演算の左辺には、既存のメンバーの名前を指定する必要があります。割当の左辺が有効なメンバー名であることを確認してください。

演算子エラー メンバー式に不適切にネストされたifelseifまたはendif構文が含まれているため、ネストが正しくなく、不均衡になっています。式を確認して修正し、これらの構文の問題に対処してください。
関数エラー メンバー式で関数が使用されていますが、余分なパラメータが渡されています。関数にPlanningの代替変数が含まれている場合は、それらの変数が利用可能であり、アンパサンド文字(&)で始まっていない値が設定されていることを確認してください。また、式を確認して、代替変数の前に余分な&記号がある場合は削除してください。式内の各代替変数の名前の前に、&が1つ付いていることを確認して、適切に解決してください。
数式の欠落 式を確認して修正し、構文エラーに関連する数式を削除してください。

検証エラーのサンプル

次のサンプルでは、​​[MEMBER_NAME]は検証に失敗したメンバーの名前を示します。

式検証エラーのサンプル: メンバー名、不明なメンバー、セミコロンの欠落、式の終了など:

  • Formula verification failed for member [MEMBER_NAME].Error compiling formula for [] (line 3): unknown member name ["[MEMBER_NAME]"] in function [operator @X]
  • Formula verification failed for member [MEMBER_NAME].Error parsing member name in formula
  • Formula verification failed for member [MEMBER_NAME].Error compiling formula for [] (line 1): semicolon missing
  • Formula verification failed for member [MEMBER_NAME].Error compiling formula for [] (line 19): unexpected end of expression: [...IF(...)]
  • Formula verification failed for member [MEMBER_NAME].Error compiling formula for [] (line 1): unexpected end of expression: [@ADD]

式検証エラーのサンプル: 代替変数のサンプル:

Formula verification failed for member [MEMBER_NAME].Substitution variable [[MEMBER_NAME]] doesn't exist

式検証エラーのサンプル: 括弧:

Formula verification failed for member [MEMBER_NAME].Error compiling formula for [] (line 1): [)] without [(]

式検証エラーのサンプル: 無効なデータ型、戻り値の型および割当:

  • Formula verification failed for member [MEMBER_NAME].Error compiling formula for [] (line 1): expected type [NUMBER] found [STRING] ([MEMBER_NAME]) in function [@SUB]
  • Formula verification failed for member [MEMBER_NAME].Error compiling formula for [] (line 12): invalid expression return type
  • Formula verification failed for member [MEMBER_NAME].Error compiling formula for [] (line 4): invalid assignment