データ・アクション・コード相互作用

データ・アクションは、ユーザー・インタフェース・フィールドが作成されたとき、およびユーザーがデータ・アクションを起動したときに、Oracle Analyticsコードと対話します。

新規データ・アクション・インスタンスのフィールドの作成

この対話は、Oracle Analyticsでデータ・アクション・ユーザー・インタフェース・フィールドをレンダリングするときに開始されます。 これを行うには、次のようにします:

  1. データ・アクションによって返されるGadgetInfosの親GadgetInfoとして機能するPanelGadgetInfoを作成します。
  2. データ・アクションでgetGadgetInfos()をコールします。
  3. 最初のステップで作成したPanelGadgetInfoの子として、データ・アクションGadgetInfosを追加します。
  4. PanelGadgetInfoをレンダリングするPanelGadgetViewを作成します。
  5. PanelGadgetViewのコンテナであるHTMLElementを設定します。
  6. HostedComponentツリーにすでにアタッチされているHostedComponentの子HostedComponentとしてPanelGadgetViewを登録します。

    これにより、 getGadgetInfos()から返された配列に表示される順序で、パネル・ガジェット内にデータ・アクション・ガジェットがレンダリングされます。

データ・アクションの起動

この対話は、ユーザーがOracle Analyticsユーザー・インタフェースを介して(たとえば、ビジュアライゼーションのデータ・ポイントのコンテキスト・メニューから)データ・アクションを起動すると開始されます。

ユーザーとの対話に応じて、コードは次のとおりです:

  1. データ・アクションID、データ・アクションの起動元のDataVisualizationおよびTransientVizContextオブジェクトを含むINVOKE_DATA_ACTIONイベントを公開します。
  2. このイベントは、DataActionManagerによって次の方法で処理されます:
    1. IDからデータ・アクション・インスタンスを取得しています。
    2. 指定されたDataVisualization内のマークされたデータ・ポイントに対するLogicalFilterTreesの取得。
    3. データ・アクションのターゲットに渡すためのすべての情報を含むDataActionContextの構成。
    4. データ・アクションでinvoke(oDataActionContext)をコール。