式: 詳細な例

この詳細な例は、式ビルダーを使用してカスタム・ビジネス・ロジックを作成する方法を詳細に示しています。

式ビルダーの詳細は、次のトピックを参照してください。

この例では、Oracle Financials Cloud一般会計アプリケーションの勘定科目ディメンションからCorporate Planningアプリケーションの勘定科目ディメンションに、ノードをドラッグできるようにします。そのために、各アプリケーションのノード・タイプ間で、ノード・タイプ・コンバータを設定しました。(ノード・タイプの変換に関する詳細は、ノード・タイプ・コンバータの操作を参照してください)。次の式を作成して、Planningアプリケーションの勘定科目タイプ・プロパティを変換します。

Oracle Financials Cloud一般会計アプリケーションの勘定科目タイプが「Asset」(資産)、「Liability」(負債)または「Owner's Equity」(自己資本)の場合は、Corporate Planningアプリケーションの勘定科目タイプ・プロパティを「Expense」(費用)に設定します。他の種類の勘定科目タイプの場合は、Corporate Planning勘定科目タイプ・プロパティを「Non-Expense」(費用外)にする必要があります

最初に、設定したノード・タイプ・コンバータでプロパティを確認してみます。

  1. 「ノード・タイプ」から、Corporate Planningの「勘定科目」ノード・タイプをクリックし、インスペクタでノード・タイプを開きます。
  2. 「コンバータ」タブをクリックします。
  3. 「コピーするプロパティ」パネルで、「ターゲット」列の「勘定科目タイプ」プロパティを探します。
  4. 「編集」をクリックします。
  5. 「操作」列で、ドロップダウン・メニューから「変換」を選択します。
  6. 「ソース」列で、「式の定義」 式の定義 (またはテーマに応じて式の定義)をクリックします。
    「変換」および「式の定義」がハイライトされているノード・タイプ・インスペクタ

    式ビルダーが表示されます。

次に、勘定科目タイプを変換する式を作成します。

式の作成

変換式を作成するには:

  1. 「文」のパレットからエディタ上部の青い矢印にIF文をドラッグします。
    IF文がエディタにドラッグされている式ビルダー
  2. 「演算子」から2つのOR演算子をエディタのIF条件にドラッグします。
    IF文がOR演算子で3つに区切られているエディタ

    各IF文と文のブロックの周りに赤いアウトラインが表示されていることに注意してください。これは、それらが有効でないことを意味します。各IF文には、ブール型であることが期待される条件があり、各文のブロックにはreturn文が含まれていることが期待されます。式ビルダーでは、作成した式がリアルタイムで評価されるため、これらの検証エラーは、式へのフィールドの追加を続行すると解決されます。

  3. 最初のIF条件で式の項の選択をクリックし、ドロップダウン・メニューから「sourceNode」を選択します。
    「式の項の選択」がハイライトされ、ソース・ノードが表示されているIF文
  4. 「sourceNode」の横にあるドットをクリックし、ドロップダウン・メニューから「properties」を選択します。
    「sourceNode」、クリックするドットおよび「properties」が表示されているIF条件

    注:

    式のフィールドの横にあるドットをクリックすると、ドロップダウン・メニューには、そのフィールドに適用可能なオブジェクト、メソッドおよび属性のみが表示されます。
  5. 「properties」の横にあるドットをクリックし、ドロップダウン・メニューから「FCGL.Account Type」を選択します。
    関連するすべてのプロパティが表示されている「properties」ドロップダウン

    注:

    プロパティ変換のプロパティが表示される場合は、ソース・ノードのノード・タイプがわかっているため、そのノード・タイプのプロパティのみが表示されます。ただし、派生プロパティのプロパティを表示する場合は、ノード・タイプが不明なため、アプリケーションに有効なすべてのプロパティが表示されます。
  6. 「FCGL.Account Type」の横にあるドットを選択し、ドロップダウン・メニューから「equals」を選択します。
    If式が「FCGL Account Type」と等しいsourcenodeプロパティを読み取るようになりました

    最初のIF条件に検証の赤い枠線が表示されなくなったことに注意してください。これは、equals文を追加したことで、条件に必要なブール値が含まれるようになったためです。

  7. リテラル・テキスト・フィールドに、「A」(資産)を入力します。
    「A」が入力されたことを示すリテラル・フィールド
  8. ステップ3-7を繰り返して、「FCGL.Account Type equals L」(負債)および「FCGL.Account Type equals O」(自己資本)のIF条件を追加します。
    IF文にはステップに記載されている3つの条件が表示されています

    すべてのIF条件にブール値が含まれるようになり、検証の問題を示す赤い枠線が表示されなくなりました。ただし、文のブロックには依然としてreturn文がありません。したがって、検証エラーを示す赤い枠線が引き続き表示されています。

  9. 文のブロックで文の挿入をクリックし、ドロップダウン・メニューから「return」を選択します。
    return文がハイライトされている文のブロック

    return文を追加すると、文のブロックに検証の赤い枠線が表示されなくなることに注意してください。

  10. returnブロックに「Expense」と入力します。
    return文にはテキスト・フィールドに入力された「Expense」が表示されています
  11. 下のreturnブロックに「Non-Expense」と入力します。
    2番目のreturnブロックには「Non-Expense」が表示されています

    注:

    最初のIF文の後に手動でElse If文を入力する必要はありません。IF文がTrueに評価されない場合は、次の文に自動的に進みます。
  12. 「適用」をクリックします。

    式ビルダーが閉じて、ノード・タイプ・インスペクタが表示されます。