Datahubのクエリやテーブルを元にKARTE Messageのリストを作成してフィルタリストやキャンペーンで利用した際にエラーが発生する場合の原因と対処方法を説明します。
MessageでDatahubを使う場合の制約
エラーが発生する主な原因として、データの仕様に関する制約が挙げられます。具体的な制約は以下の通りです。
データテーブルのカラム名の制約
元リストのカラム名がDatahubのデータテーブルのカラム名の規約に違反しているとエラーになることがあります。
規約に違反するカラム名の例
カラム名の先頭が数字である(例:
1_foo)カラム名が日本語である(例:
商品名)
制約に違反している場合に発生する事象
規約に違反するカラム名を含むリストを使用すると、以下の事象が発生します。
フィルタリストの作成時にエラーになる: フィルタリストの保存時に「フィルタリストの作成に失敗しました」と表示されます
キャンペーンの公開時にエラーになる: キャンペーンの公開時に「キャンペーンの公開に失敗しました」と表示されます
データの取得時にエラーになる: キャンペーンの編集画面で「データの取得に失敗しました」と表示されます。埋め込み変数のプレビューや対象ユーザーの確認でもエラーになります
対処方法
リストの元になっているデータがDatahubのデータテーブルのカラム名の規約を満たすように更新を行ってください。
上記対応を推奨しますが、対応が難しい場合はフィルタリストを作成するクエリにて下記のようにカラム名をバッククォートで囲んだ上で、フィルタリストの更新を行っていただくことで改善する場合があります。
-- 変更前
SELECT
1_foo
FROM ...-- 変更後
SELECT
`1_foo`
FROM ...