はじめに

設定値配信では、ユーザー情報変数を通じて取得した値をアクションテーブルのkey/keysとして指定することで、アクションテーブルの内容を参照することが可能です。その際の注意点を以下にまとめます

使い方の概要

  • 基本的には、「Widget以外のアクションからアクションテーブルにアクセスする」をご参考下さい。
  • ユーザー情報変数を通じて取得した値をkey/keysとして、単一レコードもしくは複数のレコードが静的変数に格納され、それを設定値として参照できます。
  • アクションテーブルの特定のレコードの、指定の列の値だけを取り出すことは不可となります。アプリ側にて、参照する列を指定ください。

アクションテーブルクエリの引数にユーザー情報変数を利用する例

単一keyでの参照

  • アクションテーブルクエリとして=オペレータで指定した条件に対して、ユーザー情報変数で 最新の値 等の単一の値を指定可能です

  • 使用例

    • ユーザー属性の会社IDを参照し、アクションテーブル上の会社情報を参照
    • ユーザー属性のクーポンIDを参照し、アクションテーブル上のクーポン情報を参照
  • ※RAWモードかつ"#{val}"というダブルクォートで囲った形式でないとエディタ上でエラーになる可能性がございます

    • ダブルクォートで囲われた形式にならないとアクションテーブル上でエラーになりますが、ダブルクォートで囲うにはRAWモードにしないとエディタ上でエラーになるためです

複数keyでの参照

  • アクションテーブルクエリとしてIN/NOT INオペレータで指定した条件に対して、ユーザー情報変数で直近30件等の配列型の値を指定可能です
  • 使用例
    • 直近閲覧商品のIDを参照し、アクションテーブル上の商品マスタから該当商品情報を参照

複数key参照の具体例

  • いずれの方法も ["a","b","c"] という形式のvalidなJSON文字列を指定する方法があります
  • 以下では、複数キーとして ユーザー情報変数を指定する場合と、紐付けテーブルの値を指定する場合の二通りをご案内します

(1)アクションテーブル変数にユーザー情報変数を指定

ユースケース

  • 直近の閲覧/行動内容に応じたアクションテーブルの絞り込み
  • フォロー中のブランドでランキングの絞り込み
  • 直近閲覧商品に応じたレコメンドの絞り込み

アクションテーブルの設定

  • 参照時に指定される複数keyをアクションテーブルクエリとして設定
  • 説明のため、このアクションテーブルクエリで複数keyとして指定される変数名をkeysとします

接客の設定

  • 同一の設定値配信アクション上に、下記形式でユーザー情報変数とアクションテーブル変数の2点を設定します

ユーザー情報変数

  • 任意期間で直近30件のユーザー情報変数を設定し、JSONで出力にチェックを入れます

null

  • JSONで出力にチェックを入れることで、直近30件のデータが["a","b","c"]形式のJSON文字列として出力されます
  • RAWモードにチェックを入れる必要はありません

アクションテーブル変数

  • 上記で設定したユーザー情報変数をparams内で指定します

    • params内ではkey名にアクションテーブルクエリ側で設定した変数名のkeys、valueとして上記で設定したユーザー情報変数を設定してください
  • 設定例

{
  "method":"getByQuery",
  "table_name":"{{TABLE_NAME}}",
  "query_name":"{{QUERY_NAME}}",
  "params":{
   "keys": #{ユーザー情報変数}
  }
}

アクションテーブル変数の詳細な仕様については、下記ドキュメントをご確認ください。
Widget以外のアクションからアクションテーブルにアクセスする

出力例

  • アクションテーブル

null

null

  • 出力イメージ

null

(2)アクションテーブル変数に紐付けテーブルのデータを指定

ユースケース

  • ユーザーに紐付く複数keyに基づき、アクションテーブルの該当箇所を参照可能です
  • 各ユーザーへのオススメ商品のIDを紐付け、その商品IDに該当する商品情報を商品マスタのアクションテーブルから参照することが可能です

紐付けテーブルの設定

  • 紐付けテーブル上の値が ["a,","b","c"] という形式になるようにクエリ側で出力してください

    • 下記のクエリはサンプルとなります
  • array形式のIDを ["a,","b","c"] 形式にする場合は、適宜下記のようなSQLでSTRING_AGGとCONCATでも組み合わせてください。

  • ※紐付けテーブルには1カラムあたりに格納可能な文字列長が最大256byteという制約があるため、適宜文字列全体が256byte以下になるよう文字列を生成する必要があります

SELECT
  CONCAT(
    '["',
    STRING_AGG(array_ids, '","'),
    '"]'
  ) AS json_ids
FROM UNNEST(["apple", "banana", "gollira"]) AS array_ids

アクションテーブルの設定

  • ユーザー情報変数を指定する場合と同様です

接客の設定

ユーザー情報変数

  • 紐つけた値を最新の値として参照するよう設定してください
  • RAWモードにもJSONで出力にもチェックを入れる必要はありません
  • 紐つけたデータ自体が["a","b","c"]形式のJSON文字列になっているので、最新の値を参照することで上記形式として出力されます

アクションテーブル変数

  • ユーザー情報変数を指定する場合と同様です

出力例

  • 紐付けテーブル

null

  • アクションテーブル
    null

null

  • 出力イメージ

null