データ・アクション・コード相互作用
データ・アクションは、ユーザー・インタフェース・フィールドが作成されたとき、およびユーザーがデータ・アクションを起動したときに、Oracle Analyticsコードと対話します。
新規データ・アクション・インスタンスのフィールドの作成
この対話は、Oracle Analyticsでデータ・アクション・ユーザー・インタフェース・フィールドをレンダリングするときに開始されます。 これを行うには、次のようにします:
- データ・アクションによって返される
GadgetInfosの親GadgetInfoとして機能するPanelGadgetInfoを作成します。 - データ・アクションで
getGadgetInfos()をコールします。 - 最初のステップで作成した
PanelGadgetInfoの子として、データ・アクションGadgetInfosを追加します。 PanelGadgetInfoをレンダリングするPanelGadgetViewを作成します。PanelGadgetViewのコンテナであるHTMLElementを設定します。HostedComponentツリーにすでにアタッチされているHostedComponentの子HostedComponentとしてPanelGadgetViewを登録します。これにより、
getGadgetInfos()から返された配列に表示される順序で、パネル・ガジェット内にデータ・アクション・ガジェットがレンダリングされます。
データ・アクションの起動
この対話は、ユーザーがOracle Analyticsユーザー・インタフェースを介して(たとえば、ビジュアライゼーションのデータ・ポイントのコンテキスト・メニューから)データ・アクションを起動すると開始されます。
ユーザーとの対話に応じて、コードは次のとおりです:
- データ・アクションID、データ・アクションの起動元の
DataVisualizationおよびTransientVizContextオブジェクトを含むINVOKE_DATA_ACTIONイベントを公開します。 - このイベントは、
DataActionManagerによって次の方法で処理されます:- IDからデータ・アクション・インスタンスを取得しています。
- 指定された
DataVisualization内のマークされたデータ・ポイントに対するLogicalFilterTreesの取得。 - データ・アクションのターゲットに渡すためのすべての情報を含む
DataActionContextの構成。 - データ・アクションで
invoke(oDataActionContext)をコール。