設計情報

投稿者: SPIRERS ナレッジ向上チーム 2025年9月4日 (木)

はじめてのSPIRAL ver.1 – 基本機能 ~ トランザクションDB ~

本記事では、SPIRAL ver.1での「トランザクションDB」におけるアクションとトリガ/抽出ルールの活用方法について、実務を想定した事例を交えてご紹介します。

トランザクションDBとは?

SPIRAL ver.1では、通常DBに加えて「トランザクションDB」を用いることで、フォームからの登録・更新・削除といった動的データを記録・管理することができます。

「アクション」と「トリガ / 抽出ルール」それぞれの機能と特性はこちら:
機能 特性
アクション トランザクション発生時に行う処理(DB更新や通知)
トリガ/抽出ルール どのタイミングで、どんな条件で、どのデータを対象とするかの設定

トランザクションDBの全体像
トランザクションDBは、「トランザクションデータ」を使って「マスタデータ」に対し、複数のアクション(処理)を実行します。
また、その履歴を保存することで処理の証跡を残し、マスタデータを削除してしまった際のデータ復元に使用することができます。
トランザクションDBの削除について
トランザクションDBは性質上、データを削除することはできませんが、個人情報をマスクすることが可能です。

トランザクションDBに登録された個人情報のマスク方法については、サポートサイトをご覧ください。
トランザクションDBに登録された個人情報をマスクしたい

活用方法:セミナー申込データのマスタ反映

セミナー申込データのマスタDBへの反映
セミナーを管理するマスタDBと、ユーザーが申込フォームからセミナーに申し込むトランザクションDBを用意します。
このような条件で、データを処理します。

処理
ユーザーが申込フォームからセミナーに申し込んだら、マスタDBの空席数を減らしたい。
空席数が0のときはエラー終了したい

事前準備
  • セミナーマスタDB(通常DB)
  • 通常DBを発行し、このように設定します。
    フィールド名 フィールドタイプ差し替えキーワード 差し替えキーワード
    セミナーID 数字・記号・アルファベット(32bytes) seminarID
    セミナー名 セレクト seminarName
    残席数 整数 seatsLeft

  • 「セミナー名」の設定
  • 「セミナー名」フィールドをセレクトにし、トランザクションDBとの「共有フィールド」として作成します。セミナー名をラベル設定で追加できます。

  • 申込データを受けるトランザクションDBを作成します。
  • フィールド名 フィールドタイプ差し替えキーワード 差し替えキーワード
    TRDB_登録日時 登録日時 registedDate
    セミナー名 セレクト(共有) seminarName
    申込数 整数 appliedAmount
    登録メールアドレス メールアドレス(大・小文字無視) email

  • セミナー申し込みフォームをトランザクションDB側に設置し、以下の項目を設定します。
  • 1. 「使用フィールド」の「申込数」には、特殊入力として「固定値」を設定します。

    2. 「フィールド別チェック」を設定し、「申込数」に登録時の固定値「1」が自動的に入力されるようにします。
    これで、事前準備は完了です。

    トランザクションDBの設定手順

    アクション作成
    処理内容:セミナーマスタDBの空席数を1件減らす
    ・トランザクションDBの「アクション」からアクションを作成します。

    トランザクションDBの設定関連から、「アクション」を選び、アクション一覧から、「+」ボタンをクリックします。
    ここでは、トランザクションDBの「アクション」からアクションを作成します。

    「アクション情報」に 「アクション名」と「発動条件」、「アクション対象DB」、「アクション」を入力します。
    今回のアクションは、既存のセミナー情報に対して申込みを行い、その結果として残席数が変更されるため、アクションとしては「更新(UPDATE)」を選択します。

    そして、「アクションの処理条件」を選択します。
    アクションの処理条件は、フォーマット、識別キー、認証キーなどのチェックを行ってからの処理を行うかどうかを設定します。
    様々なシチュエーションを想定し、設定することができます。

    ここでは、様々な状況におけるアクションの「エラー終了」などの設定を行うことができます。

    アクションの作成が完了すると、
    設定後、アクション一覧画面では「設定未完了」と表示されます。

    ここで、操作の下にある歯車をクリックし、「アクション設定」を開きます。
    「検索キーフィールド」の設定が可能になっているので、フィールドを選択します。
    ※「検索キーフィールド」とは、更新対象レコードを特定するためのキー項目です。
    IDやユニークな名称を使用し、対象DB側にも同じフィールドが必要です。

    なお、「検索キーフィールド」に指定するためには該当フィールドに対してインデックスを設定する必要があります。
    今回は「識別キー」のみ設定し、「セミナー名」を指定します。

  • アクションを行うトランザクションDBと更新されるDBの2つでインデックス設定を行います。

  • 次に、アクションの中身を設定します。

  • アクション設定の「フィールドマッピング」を開きます。
  • このようにマスタDBの「残席数」がアクションDBの「申込数」によって減少する設定を行います。
    「演算子」は「なし」、「+=」、「-=」、「×=」から選択できます。

    これでアクションの設定は完了です。
    今回は「-=」を選択し、「保存」ボタンをクリックします。


    動作確認
    マスタDBの「データ操作」より各セミナーに「残席数」の設定を行います。

  • フォームからセミナーを申し込みます。

  • もう一度マスタDBで「データ操作」を開くと、
    セミナーAの残席数が1件減っていることが確認できます。
  • ※注意
    アクションのみを設定している場合、残席数が0でもセミナーに申し込みができてしまい、
    画像のように残席数がマイナスになってしまいます。
    これを防ぐのが、「トリガ」設定です。

    トリガ作成
    なぜトリガは必要なのか?
    トリガを設定することによって、残席数が0未満になった場合に、エラー終了するように設定します。
    これにより、残席数が0のセミナーには申し込めなくなり、満席後の誤申込みを防止できます。

    トリガは、DBの登録や更新などのイベントに対して、
    特定の条件を満たした場合に自動的に処理を実行する仕組みです。

    これにより、リアルタイムでのデータ整合性を保つことができます。
  • まず、マスタDBの「トリガ」から「更新」のトリガを新規作成します。

  • 次に、トリガの種類では「演算トリガ」を選びます。
    作成方法は「新規作成」を選んで、『作成』ボタンを押してください。

    次に、基本設定で「トリガ名」を入力し、「保存してフィールド設定へ」をクリックします。

    作成が完了したら演算式を入力します。

    演算結果格納フィールドでは「エラー終了」を選択し、追加をクリックします。
    次に、IF文でフィールドとして「残席数」を選び、値が0未満となる条件式を入力します。
    今回は「残席数」が0未満のときエラー終了するようにします。

  • この設定が完了した状態で「残席数」を0にしてもう一度フォームから申込登録します。
  • 今度は登録完了時に代わりにエラー画面が開きました。

    これで「残席数」が0のセミナーには申し込めない設定を行うことができました。

    演算トリガについての詳しい説明はサポートサイトをご覧ください。
    演算トリガ
    抽出ルール作成
    最後に、「抽出ルール」を使った応用設定として、特定ドメイン宛てにのみメールを送信する方法をご紹介します。
    例えば、@spiral.co.jpのメールアドレスで登録された場合にのみ、サンクスメールを送信したい場合は以下のように設定します。

  • セミナーTRDBのトップ画面から、「抽出ルール」を開き、「新規作成」をクリックします。
  • 「フィールド毎の抽出設定」から以下のような設定を行います。
    「フィールド名」から「登録者メールアドレス」を選択し、「追加」ボタンをクリックします。
    下に表示された抽出ルールから「編集」をクリックすると、「フィールドの抽出ルール 新規作成」ポップアップが表示されます。
    名前を入力し、抽出条件から「ドメイン」を選択します。
    ドメイン名を設定します。
    ※選択したフィールドのタイプによって抽出条件は異なります。


    設定できたら、「新規作成」をクリックします。

  • 申込フォームのサンクスメール設定でリストを作成します。
  • 画面上部の「メール」タブから「リスト作成」をクリックし、先ほど設定したトランザクションと抽出ルールを選択します。
    次に、リスト名、受取人メールアドレスフィールド、ドメイン抽出を入力し、「新規作成」をクリックすれば設定完了です。

    このリストを使用することにより、「@spiral.co.jp」のドメインで登録した人にのみメールが送られるよう設定することができました。

    抽出ルールについての詳しい説明はサポートサイトをご覧ください。
    抽出ルール

    まとめ

    SPIRAL ver.1におけるトランザクションDBのアクション機能を活用すれば、ユーザーの動きに合わせたリアルタイム処理が可能になります。
    業務効率化や顧客対応の高速化に大きく貢献しますので、ぜひ積極的に活用してみてください。

    ※詳細な操作画面やステップは、サポートサイトをご参照ください。
    トランザクションDB
    解決しない場合はこちら コンテンツに関しての
    要望はこちら