設計情報

投稿者: SPIRERS ナレッジ向上チーム 2025年8月29日 (金)

アンケート回答者にギフトコードを送信する方法

本記事では、プログラムを使用せず、スパイラルの標準機能のみでアンケートにご回答いただいたユーザーへ、
SPIRALで管理しているギフトコードをメールで送信する方法を紹介します。

全体像

予めギフトコードマスタDBにギフトコードを格納しておきます。
アンケート回答フォームよりアンケートを回答すると、ギフトコードマスタDBのギフトコードに紐づき、
アンケート回答DBにギフトコードが登録され回答者に通知がされます。

処理用TRDBにルックアップトリガの設定を行い、
ギフトコードマスタDBから未使用のギフトコードを取得しサンクスメールでギフトコードを送信します。

DB設定

以下3つのDBを作成します。
・ギフトコードマスタDB
・アンケート回答DB
・処理用TRDB

ギフトコードマスタDB
フィールド名 フィールドタイトル フィールドタイプ 自動生成設定 フィールドのデフォルト値 備考
ギフトコード giftcord 数字・記号・アルファベット(32 bytes) 設定なし 設定しない 入力必須・重複不可推奨
ルックアップキー lookup 数字・記号・アルファベット(32 bytes) 設定なし フィールドのデフォルト値に登録処理TRDBと同じ任意の値を設定 なし
識別キー id_key 数字・記号・アルファベット(32 bytes) 自動生成:使用する
値が存在しても、上書きする
生成する値:レコードID10桁
設定なし インデックス作成する
認証キー AuthKey 簡易パスワード 自動生成:使用する
値が存在しても、上書きする
生成する値:数字・アルファベット16桁
設定なし インデックス作成する
使用有無(ギフトコード) usableornot ブーリアン 設定なし 0を設定する ラベルの設定:0:未使用 1:使用済
共有フィールド設定を行う

アンケート回答DB
フィールド名 フィールドタイトル フィールドタイプ 自動生成設定 フィールドのデフォルト値 備考
登録日時 registDate 登録日時 設定なし 設定しない なし
メールアドレス email メールアドレス(大・小文字無視) 設定なし 設定しない なし
ギフトコード giftcode 数字・記号・アルファベット(32 bytes) 設定なし 設定しない なし

処理用TRDB
フィールド名 フィールドタイトル フィールドタイプ 自動生成設定 フィールドのデフォルト値 備考
TRDB_登録日時 registDate 登録日時 設定なし 設定しない 入力必須
メールアドレス email メールアドレス(大・小文字無視) 設定なし 設定しない なし
ギフトコード giftcode 数字・記号・アルファベット(32 bytes) 設定なし 設定しない なし
ルックアップキー lookupkey 数字・記号・アルファベット(32bytes) 設定なし フィールドのデフォルト値にギフトコードマスタDBと同じ任意の値を設定 なし
使用有無(ギフトコード) usableornot ブーリアン 設定なし 1を設定する ギフトコードマスタDBで共有フィールドで作成したフィールドを使用する
DB設定完了後にフィールドのデフォルト値を設定してください
識別キー id_key 数字・記号・アルファベット(32bytes) 設定なし 設定しない インデックスにチェックをつける
認証キー AuthKey 簡易パスワード 設定なし 設定しない インデックスにチェックをつける
使用有無(ルックアップ) usableornot_look ブーリアン 設定なし 0を設定する ラベルの設定:0:未使用 1:使用済

上記に記載のフィールドは今回のフローを構築する上で必要なフィールドになります。
アンケート項目等追加する場合には、アンケートフォームを処理用TRDBで作成するため、
アンケート回答DBと処理用TRDB両方に同じフィールドを追加してください。

処理用TRDBのルックアップトリガ設定

処理用TRDBからトリガメニューへ進み、「新規登録」トリガの「新規作成」をクリックします。

トリガ作成ウィンドウが表示されるので、トリガの種別を「ルックアップトリガ」、
作成方法を「新規作成」にチェックをつけ「作成」ボタンをクリックします。

基本設定画面が表示されますので、参照DBを「ギフトコードマスタDB」を選択してください。
発動条件は「無条件」のままでトリガ名を「ギフトコードルックアップトリガ」など入力し、
「保存して詳細設定へ」のボタンをクリックします。
詳細設定画面に遷移し、最初に抽出条件を設定する必要がありますので、
抽出条件を2つ設定してください。

<1つ目の条件>
参照DBの「ルックアップキー」とトリガDBの「ルックアップキー」の入力値が同じ場合と選択し、
「条件を追加」ボタンをクリックします。
<2つ目の条件>
参照DBの「使用有無(ギフトコード)」とトリガDBの「使用有無(ルックアップ)」の入力値が同じ場合と
選択し、「条件を追加」ボタンをクリックします。
詳細条件設定の「+」をクリックすると詳細条件を設定でき、条件は下記で設定します。
・トリガDBで設定された抽出条件のフィールドの値がNULLの場合
「エラー終了する。」
・複数レコード抽出された場合
「ソートを指定して先頭のレコードを参照データとする。」
ソート : 「ギフトコード」「昇順」
・1レコードも抽出されなかった場合
「エラー終了する。」
登録フィールドの設定は下記となります。

トリガDBのフィールド「ギフトコード」:参照DBのフィールド「ギフトコード」
トリガDBのフィールド「識別キー」:参照DBのフィールド「識別キー」
トリガDBのフィールド「認証キー」:参照DBのフィールド「認証キー」
上記設定を行い画面下の「保存」ボタンをクリックしルックアップトリガの設定が完了となります。

処理用TRDBのアクション設定

処理用TRDBに更新アクションと新規アクションの2つ設定を行います。
最初にギフトコードマスタDBに登録されているギフトコードに使用済フラグを立てるアクションを設定します。
処理用TRDBのメニューの「アクション」からアクション一覧の「+」をクリックしてください。
アクション作成画面が表示されるので、アクション名を「使用済へ」など入力し、
発動条件を「無条件」にチェックをつけ、アクション対象DBを「ギフトコードマスタDB」を選択、
アクションを「更新(UPDATE)」にチェックをつけ、画面下の「新規作成」ボタンをクリックします。
アクション一覧に戻るので、作成したアクションの画面右側の歯車アイコンをクリックし、
「アクション設定」をクリックしてください。

検索キーフィールドの設定で「識別キー」の項目をトランザクションDB、
アクション対象DBどちらも「識別キー」を選択します。
フィールド選択の画面で「識別キー」が表示されない場合は、
インデックス設定からインデックスの作成が必要になりますので、作成してください。
検索キーフィールドの設定で「認証キー」の項目をトランザクションDB、
アクション対象DBどちらも「認証キー」を選択します。
こちらも「認証キー」が表示されない場合は、
インデックス設定からインデックスの作成が必要になりますので、作成してください。
「アクションの処理条件」に関しては、デフォルトの設定のままで問題ございません。
画面下部の「保存」をクリックし、設定完了となります。

続いてフィールドマッピングの設定を行います。
作成したアクションの画面右側の歯車アイコンをクリックし「フィールドマッピング」をクリックします。
TRDBフィールドの「使用有無(ギフトコード)」をクリックし、
対象DBフィールドの「使用有無(ギフトコード)」をクリックし、フィールドマッピングします。

対象DBフィールドの「使用有無(ギフトコード)」の使用の項目にチェックが付いたらフィールドマッピングできているので、 画面下部の「保存」をクリックしてください。
以上でギフトコードマスタDBに登録されているギフトコードに
使用済フラグを立てるアクション設定が完了となります。

続いてアンケート回答データをアンケート回答DBに新規登録を行うアクションを設定します。
アクション一覧の左上の「+」アイコンをクリックしアクション作成画面が開くので、
アクション名を「アンケート回答DBへ新規登録」など入力いただき
発動条件は無条件でアクション対象DBは「アンケート回答DB」を選択します。
アクションは「新規登録(INSERT)」にチェックをつけ画面下部の「新規作成」をクリックしてください。
作成したアクションの歯車アイコンをクリックし「フィールドマッピング」をクリックします。

フィールドマッピングの操作として、
TRDB側のフィールドをクリックし、対象DBのフィールドをクリックすることでマッピングすることができます。

  フィールドマッピング対象
TRDBフィールド 対象DBフィールド
TRDB_登録日時 登録日時
メールアドレス メールアドレス
ギフトコード ギフトコード

マッピングできましたら、画面下の「保存」ボタンをクリックしマッピング作業が完了となります。

フォーム設定

アンケートの回答を受け付けるフォームを処理用TRDBから新規発行します。
アンケートフォームの作成ついては、こちらのサポートサイトを確認ください。
フォーム

使用フィールド設定

フォーム発行しましたら、最初にフォーム設定の「使用フィールド」の設定を下記のように設定します。

使用フィールド設定
フィールド名 入力設定
登録日時 特殊入力
登録日時自動取得
メールアドレス 入力項目として使用する
ギフトコード 使用しない
ルックアップキー 使用しない
使用有無(ギフトコード) 使用しない
識別キー 使用しない
認証キー 使用しない
使用有無(ルックアップ) 使用しない

上記のフィールド以外に追加したフィールドがあれば、
必要に応じて設定してください。

サンクスメール設定

サンクスメールの設定に関しては、こちらのサポートサイトを確認いただき、設定を行ってください。
サンクス配信(サンクスメール)
メールの封筒の設定を行う際にメール文面設定でギフトコードの差し替えキーワードを
メール文面内に設定する必要があります。
ギフトコードの差し替えキーワードをメール文面に設定いただくことで
メール受信時にギフトコードに差し替わるので設定を忘れずに行ってください。

その他のフォーム設定

その他のフォーム設定については、必要に応じて設定を行ってください。

最後に

以上で設定が完了となります。
ギフトコードマスタDBに用意したギフトコードデータを登録し、アンケートフォームからテスト登録、動作確認を行ってください。
※動作チェック時、ギフトコードマスタDBのデータ登録の際は、「ギフトコード」以外のデータは自動で登録されるため、
「ギフトコード」のみご用意いただき、登録してください。
データ登録の方法についてはこちらのサポートサイトを確認ください。

データ一括登録/更新

解決しない場合はこちら コンテンツに関しての
要望はこちら