トランザクションDB
最終更新日:2024年07月25日
トランザクションDBは、登録データをトランザクションデータとして受け付け、通常DBに格納しているマスタデータに最適に反映することができるデータベースです。
目次
1.マスタデータとトランザクションデータ
(1)マスタデータ
マスタデータは情報管理における基本データで、主に人、モノ、場所等のデータを管理します。取引先の企業、商品、会員、従業員、店舗など、存在する上で重複しない唯一のデータ等を指します。
(2)トランザクションデータ
トランザクションデータは、マスタデータによる行動やマスタデータ自体の登録や変更、削除等の手続き処理を指すデータです。例えば、顧客のセミナー申し込みやキャンセル、会員情報の変更、社員の転居届けといったデータ等を指します。
このトランザクションDBにあらゆるマスタの行動、履歴データを流しこむことで、マスタデータを適切な状態でデータベースとして管理し、無駄のないデータ管理と効率的な運用を実現できます。
2. トランザクションDBの全体像
トランザクションDBは、「トランザクションデータ」を使って「マスタデータ」に対し、複数のアクション(処理)を実行します。
また、その履歴を保存することで処理の証跡を残し、マスタデータを削除してしまった際のデータ復元に使用することができます。
(1)トランザクションDB
トランザクションDBとは、トランザクションデータを管理するDBです。
フォームや外部システムからの取り込み、操作画面から登録するデータで、複数の通常DBにアクションを実行し、登録の証跡である手続きデータを保存します。
トランザクションデータは、1DBあたり100万件※1程度保存できます。
保存可能件数を超えた場合は、古いデータからログに出力し、DBから削除※2します。
ログファイルの保管期限は400日です。画像型フィールド、ファイル型フィールドは、ログ出力されません。
※1ログ出力およびデータ削除処理は日次で実行されるため、100万件を超える場合があります。
※2ログ出力およびDBから削除されるデータ件数は、登録状況に応じて変動します。
(2)アクション
アクションとはトランザクションDBに登録されたデータをもとに、データが登録されたタイミングで実行される処理のことです。
条件にあわせて、指定のアクション(新規登録・更新・削除・更新登録)を通常DBに実行します。
■ アクションの考え方
アクションは、新規登録、更新、更新登録、削除の処理毎に設定します。
設定では、「発動条件」、「アクション対象DB」、「アクション」を指定します。
アクションが複数ある場合は、設定時に指定した順番でアクションを実行します。
次へ…次のアクションへ進む / エラー終了…アクションをDBに反映しないで終了する / 正常終了…アクションをDBに反映して終了する
■ トランザクションの考え方
トランザクションDBに登録処理を開始したところから、条件にマッチした全てのアクションが実行終了するまでを、トランザクションと言います。
途中のアクションでエラーが発生した場合、トランザクション内の一連の処理はロールバックします。
■ アクション設定
- 発動条件
トランザクションDBに登録されたデータのうち、「トランザクションDBの抽出ルール」に該当する場合にのみ、アクションを発動します。
例えば、メルマガ希望にチェックが入っている場合だけにメルマガDBに登録や更新するといった設定ができます。
- アクション対象DB
アクションする対象のDBです。指定できるDBは通常DBです。
- アクション
アクション対象DBに対するデータの新規登録、更新、更新登録、削除を指定します。
また、アクション対象DBのデータの状態によって詳細な処理を指定できます。
新規登録(INSERT)
アクション対象DBにデータを新規登録します。
チェック項目 | 処理 |
---|---|
フォーマットチェック |
・フォーマットエラーが発生する場合 エラー終了 / 登録せずに、正常終了 / 登録せずに、次のアクションへ / NULLに変換し、次のチェックへ ・フォーマットエラーが発生しない場合 次のチェックへ |
入力必須チェック |
・入力必須フィールドに対してNULLで登録しようとする場合 エラー終了 / 登録せずに、正常終了 / 登録せずに次のアクションへ / NULLを維持し次のチェックへ(※) ・入力必須フィールドに対してNULL以外で登録しようとする場合 次のチェックへ |
重複不可チェック |
・重複エラーが発生する場合 エラー終了 / 登録せずに、正常終了 / 登録せずに、次のアクションへ ・重複エラーが発生しない場合 次のチェックへ |
新規登録時 |
・新規登録が可能な場合 エラー終了 / 登録せずに、正常終了 / 登録せずに、次のアクションへ / 登録して次のアクションへ |
(※) アクション先DB上で、該当フィールドに対して「フィールドのデフォルト値」や「フィールド値自動生成トリガ」、「トリガ」等を設定している場合にご利用ください。
更新(UPDATE)
アクション対象DBのデータを更新します。
更新するデータは、「検索キーフィールド」(※1)に指定するデータを照合して特定します。
チェック項目 | 処理 |
---|---|
フォーマットチェック |
・フォーマットエラーが発生する場合 エラー終了 / 更新せずに、正常終了 / 更新せずに、次のアクションへ / NULLに変換し、次のチェックへ ・フォーマットエラーが発生しない場合 次のチェックへ |
識別キーチェック |
・識別キーがNULLの場合 エラー終了 / 更新せずに、正常終了 / 更新せずに、次のアクションへ ・識別キーがNULL以外の場合 次のチェックへ |
認証キーチェック |
・認証キーがNULLの場合 エラー終了 / 更新せずに、正常終了 / 更新せずに、次のアクションへ ・認証キーがNULL以外の場合 次のチェックへ |
更新対象チェック |
・更新対象が存在しない場合 エラー終了 / 更新せずに、正常終了 / 更新せずに、次のアクションへ ・更新対象が1行の場合 エラー終了 / 更新せずに、正常終了 / 更新せずに、次のアクションへ / 次のチェックへ ・更新対象が2行以上の場合 エラー終了 / 更新せずに、正常終了 / 更新せずに、次のアクションへ / 次のチェックへ |
入力必須チェック |
・入力必須フィールドに対して、NULLで更新しようとする場合 エラー終了 / 更新せずに、正常終了 / 更新せずに、次のアクションへ / NULLを維持し、次のチェックへ(※2) ・入力必須フィールドに対して、NULL以外で更新しようとする場合 次のチェックへ |
重複不可チェック |
・重複エラーが発生する場合 エラー終了 / 更新せずに、正常終了 / 更新せずに、次のアクションへ ・重複エラーが発生しない場合 更新して次のチェックへ |
(※1) 「検索キーフィールド」に指定するためには該当フィールドに対してインデックスを設定する必要があります。
(※2) アクション先DB上で、該当フィールドに対して「トリガ」を設定している場合にご利用ください。
更新登録(UPSERT)
アクション対象DBのデータを更新、あるいは新規登録します。
更新するデータは、「検索キーフィールド」(※1)に指定するデータを照合して特定します。
チェック項目 | 処理 |
---|---|
フォーマットチェック |
・フォーマットエラーが発生する場合 エラー終了 / 更新登録せずに、正常終了 / 更新登録せずに、次のアクションへ / NULLに変換し次のチェックへ ・フォーマットエラーが発生しない場合 次のチェックへ |
識別キーチェック |
・識別キーがNULLの場合 エラー終了 / 更新登録せずに、正常終了 / 更新登録せずに、次のアクションへ / NULLを維持し次のチェックへ ・識別キーがNULL以外の場合 次のチェックへ |
認証キーチェック |
・認証キーがNULLの場合 エラー終了 / 更新登録せずに、正常終了 / 更新登録せずに、次のアクションへ / NULLを維持し次のチェックへ ・認証キーがNULL以外の場合 次のチェックへ |
更新対象チェック |
・更新対象が存在しない場合 エラー終了 / 更新登録せずに、正常終了 / 更新登録せずに、次のアクションへ / 次のチェックへ ・更新対象が1行の場合 エラー終了 / 更新登録せずに、正常終了 / 更新登録せずに、次のアクションへ / 次のチェックへ ・更新対象が2行以上の場合 エラー終了 / 更新登録せずに、正常終了 / 更新登録せずに、次のアクションへ / 次のチェックへ |
入力必須チェック |
・入力必須フィールドに対してNULLで更新登録しようとする場合 エラー終了 / 更新登録せずに、正常終了 / 更新登録せずに、次のアクションへ / NULLを維持し次のチェックへ(※2) ・入力必須フィールドに対してNULL以外で更新登録しようとする場合 次のチェックへ |
重複不可チェック |
・重複エラーが発生する場合 エラー終了 / 更新登録せずに、正常終了 / 更新登録せずに、次のアクションへ ・重複エラーが発生しない場合 更新登録して次のチェックへ |
(※1) 「検索キーフィールド」に指定するためには該当フィールドに対してインデックスを設定する必要があります。
(※2) アクション先DB上で、該当フィールドに対して「トリガ」を設定している場合にご利用ください。
削除(DELETE)
アクション対象DBのデータを削除します。
削除するデータは、「検索キーフィールド」(※1)に指定するデータを照合して特定します。
チェック項目 | 処理 |
---|---|
識別キーチェック |
・識別キーがNULLの場合 エラー終了 / 削除せずに、正常終了 / 削除せずに、次のアクションへ ・識別キーがNULL以外の場合 次のチェックへ |
認証キーチェック |
・認証キーがNULLの場合 エラー終了 / 削除せずに、正常終了 / 削除せずに、次のアクションへ ・認証キーがNULL以外の場合 次のチェックへ |
削除対象チェック |
・削除対象が存在しない場合 エラー終了 / 削除せずに、正常終了 / 削除せずに、次のアクションへ ・削除対象が1行の場合 エラー終了 / 削除せずに、正常終了 / 削除せずに、次のアクションへ / 削除して次のアクションへ ・削除対象が2行以上の場合 エラー終了 / 削除せずに、正常終了 / 削除せずに、次のアクションへ / 削除して次のアクションへ |
(※1) 「検索キーフィールド」に指定するためには該当フィールドに対してインデックスを設定する必要があります。
エラー終了
エラー終了します。 アクション対象DBを指定する必要はありません。チェック項目はなく、以下の処理が実行されます。
チェック項目 | 処理 |
---|---|
(なし) |
トランザクションDBにデータは登録しない。 エラー終了するまでに実行した処理は、通常DBに反映しない。 フォームから登録した場合は、システムエラーページに遷移する。 |
正常終了
正常終了します。 アクション対象DBを指定する必要はありません。チェック項目はなく、以下の処理が実行されます。
チェック項目 | 処理 |
---|---|
(なし) |
トランザクションDBにデータを登録する。 フォームから登録した場合は、サンキューページに遷移する。 |
フィールドマッピング
トランザクションデータを対象DBにアクションする際に、どのデータをどのフィールドに登録、更新、更新登録、削除するかを設定します。
基本的に、マッピングは同じフィールドタイプ間、または対応可能なフィールドタイプ間で適用できます。
■ マッピング時の注意
(1)セレクト系フィールドのマッピングについて
セレクト、マルチセレクト、マルチセレクト(128項目)、ブーリアンのフィールドをマッピングする場合、
トランザクションDBとアクション対象DBでフィールドを共有しておく必要があります。
(2)異なるフィールドタイプ間でのマッピングについて
異なるフィールドタイプ間でのマッピングは以下の範囲で可能です。
ただし、アクション対象DBのフィールドにてフォーマットエラーになる(バイト数が超過する、データ形式が異なる等)場合は、フィールドタイプによっては自動的に値が切り捨てられる場合があります。
(マッピング対応可能なフィールドタイプ一覧)
アクション元TRDB | アクション先DB | 備考 |
---|---|---|
メールアドレス(大・小文字無視) メールアドレス(大・小文字区別) |
メールアドレス(大・小文字無視) メールアドレス(大・小文字区別) |
|
数字・記号・アルファベット(32bytes) | 電話番号 | フォーマットエラーの場合は設定した処理へ |
テキストフィールド(128bytes) |
電話番号 都道府県 |
フォーマットエラーの場合は設定した処理へ |
数字・記号・アルファベット(6bytes) 数字・記号・アルファベット(32bytes) |
数字・記号・アルファベット(6bytes) 数字・記号・アルファベット(32bytes) |
入りきらない値は後ろから切り捨て |
整数 実数 通貨 |
整数 実数 通貨 |
・実数→整数で小数点のあるデータの場合、 小数点第一位の値を四捨五入して格納 ・実数→通貨で小数点のあるデータの場合、 小数点第三位の値を四捨五入して格納 ・その他、フォーマットエラーの場合は設定した処理へ |
登録日時 日付(○年○月○日 ○時○分○秒) 日付(○年○月○日 ○時○分) 日付(○年○月○日 ○時) 日付(○年○月○日) 日付(○年○月) |
登録日時 日付(○年○月○日 ○時○分○秒) 日付(○年○月○日 ○時○分) 日付(○年○月○日 ○時) 日付(○年○月○日) 日付(○年○月) |
・入りきらない桁は切り捨て ・足りない桁は最小値を設定 |
テキストフィールド(32bytes) テキストフィールド(32bytes)かな テキストフィールド(32bytes)カナ テキストフィールド(32bytes)ローマ字 テキストフィールド(64bytes) テキストフィールド(64bytes)かな テキストフィールド(64bytes)カナ テキストフィールド(64bytes)ローマ字 テキストフィールド(128bytes) テキストエリア(256bytes) テキストエリア(512bytes) テキストエリア(1024bytes) テキストエリア(2048bytes) テキストエリア(4096bytes) テキストエリア(8192bytes) |
テキストフィールド(32bytes) テキストフィールド(64bytes) テキストフィールド(128bytes) テキストエリア(256bytes) テキストエリア(512bytes) テキストエリア(1024bytes) テキストエリア(2048bytes) テキストエリア(4096bytes) テキストエリア(8192bytes) |
・入りきらない値は後ろから切り捨て ・テキストエリア→テキストフィールドの場合、 改行コードは削除される |
テキストフィールド(32bytes)かな テキストフィールド(64bytes)かな |
テキストフィールド(32bytes)かな テキストフィールド(64bytes)かな |
入りきらない値は後ろから切り捨て |
テキストフィールド(32bytes)カナ テキストフィールド(64bytes)カナ |
テキストフィールド(32bytes)カナ テキストフィールド(64bytes)カナ |
入りきらない値は後ろから切り捨て |
テキストフィールド(32bytes)ローマ字 テキストフィールド(64bytes)ローマ字 |
テキストフィールド(32bytes)ローマ字 テキストフィールド(64bytes)ローマ字 |
入りきらない値は後ろから切り捨て |
■ 演算子でデータを更新するアクション
対象DBに更新するアクションでは、数値系のフィールド※に対して、演算子を利用できます。演算子は、対象DBに入っている数値データとトランザクションDBの数値データで演算する更新処理です。
※演算子が利用できるフィールド
整数 / 実数 / 通貨
演算子 | 意味 |
---|---|
+= | 既に入っている値に加算して格納 |
-= | 既に入っている値に減算して格納 |
*= | 既に入っている値に乗算して格納 |
例えば、セミナーの申込みを受け付けた際に、セミナーの申込者数を1件ずつカウントアップすることができます。
3. 制限機能
(1)フィールド属性について
トランザクションDBで指定できるフィールド属性は「入力必須」属性だけです。「主キー」と「重複不可」属性は指定できません。
※トランザクションDBに設定した属性を後から変更することはできません。
(2)フィールドタイプについて
トランザクションDBは、アクションを設定したり、登録の証跡を残す目的のデータベースのため、以下のフィールドタイプの機能を制限しています。
フィールドタイプ | 制限内容 |
---|---|
不正アドレスフラグ | 不正アドレスチェックでフラグを立て、データを更新できない。 |
モバイルドメインフラグ | モバイルドメインチェックでフラグを立て、データを更新できない。 |
重複フラグ | 重複レコードチェックでフラグを立て、データを更新できない。 |
配信エラー | 配信エラー処理や配信設定から、データを更新できない。 |
エラーカウント | 配信エラー処理や配信設定から、データを更新できない。 |
クリックカウント | カウントリセットや配信設定から、データを更新できない。 |
HTMLメール開封チェック | カウントリセットや配信設定から、データを更新できない。 |
オプトアウト |
配信設定から、データを更新できない。 オプトアウトURLの利用はできない。 |
(3)機能について
トランザクションDBは、アクションを設定したり、登録の証跡を残す目的のデータベースのため、以下の機能を制限しています。
[DB]
機能 | 制限内容 |
---|---|
データメンテナンス | 「整数型フィールド再ナンバリング」「画像マスタDBクリーニング」を使用不可 |
DBオペレーション | データの更新・削除を使用不可 |
DB連携 |
直接連携使用不可 ※データの更新が発生するオプションを一部制限 |
データ削除 | 使用不可 |
データ登録 | 更新を使用不可 |
カウントリセット | 使用不可 |
不正アドレスチェック | 使用不可 |
モバイルドメインチェック | 使用不可 |
重複レコードチェック | 使用不可 |
配信エラー処理 | 使用不可 |
登録元管理 | 使用不可 |
[Web]
機能 | 制限内容 |
---|---|
フォーム管理 | 「旧機能を使った登録ページ設定」を使用不可 |
マイエリア | 「4:IDログイン(非認証)」を除く全認証方法を使用不可 |
ステップアンケート | 使用不可 |
[メール]
機能 | 制限内容 |
---|---|
EXPRESS配信 | 使用不可 |
EXPRESS2 | 使用不可 |
SEQUENCE配信 | 使用不可 |
TIMELY配信 | 使用不可 |
[ガジェット]
機能 | 制限内容 |
---|---|
RSSが付いているカウンター | 使用不可 |
みてみて何でもランキング | 使用不可 |
ならべて見せようショーケース | 使用不可 |
4. 課金とオプションについて
トランザクションDBの利用に際するオプション価格一覧は以下のとおりです。 (オプション価格一覧)
No. | 項目 | 単位 | 標準設定数 | 上限設定数 | 価格 |
---|---|---|---|---|---|
1 | 月間トランザクション数超過費用 |
1トランザクション毎 ※1 |
- | - |
0.5円 ※2 |
2 | トランザクションDB数拡張 設定費用 | 1設定 | - | - | 10,000円 |
3 | トランザクションDB数拡張 月次利用料 | 10DB毎 | 20DB | 50DB | 10,000円 |
4 | トランザクションDB格納件数拡張 設定費用 ※3 | 1設定 | - | - | 10,000円 |
5 | トランザクションDB格納件数拡張 月次利用料 |
100万件毎 ※4 |
100万件 | 500万件 | 50,000円 |
6 | トランザクションDBアクション数拡張 設定費用 | 1設定 | - | - | 10,000円 |
7 | トランザクションDBアクション数拡張 月次利用料 | 5アクション毎 | 5アクション | 10アクション | 10,000円 |
※1 当月の契約レコード件数を無料分とし、超過したトランザクション数を超過分とする。
※2 超過費用100円未満は切り捨て。
※3 上限を下げる場合は下げた次の日に10万件毎にログファイルを出力します。
※4 上限の拡張は、同一アカウントで使用する全てのトランザクションDBに適用されます。
※5 1設定とは1作業(1回のご依頼)あたりの費用です。
例)1回に10DBを拡張する場合の費用 10,000円、1回に50DBを拡張する場合の費用 10,000円
月間トランザクション数
トランザクション数とは、トランザクションDBに対する登録レコード数です。月間トランザクション数は1ヶ月あたりのトランザクションを指します。月間トランザクション数は当月の契約レコード件数を無料で利用でき、超過する場合は月間トランザクション数の超過費用として、1トランザクションあたり0.5円(超過費用100円未満は切り捨て)を請求いたします。
例えば、契約レコード件数が5,000件の月に、月間トランザクション数が5,221件だった場合は、超過したトランザクション数221件分の費用として100円が請求されます。
5.トランザクションDBに関する通知
トランザクションDBでは「ログが出力された場合」や「月間の無料利用分の残りが少ない場合」に利用状況をメールで通知いたします。
文面につきましては下記をご参照ください。
トランザクションDB ログファイル出力通知
件名 :[SPIRAL:{ログイン名}]トランザクションDB ログファイル出力通知
送信先:担当者ID、アカウントのご利用管理者様、連絡先1、連絡先2に登録されているメールアドレス
文面 :
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
スパイラル トランザクションDB ログファイル出力通知
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
スパイラルでご利用のトランザクションDBのレコード件数が一定量を超えた為、
データをDBから削除し、ログに出力したことをお知らせします。
■アカウント
==================================================
XXXXX
■トランザクションDB
==================================================
XXXXX
■ログ日時
==================================================
ログ出力日時 :XXXXXXX
ログ削除日時 :XXXXXXX
※ログは削除日まで操作画面のDBグループの
トランザクションDBからダウンロードできます。
月間トランザクション数 利用状況通知
件名 :[SPIRAL:{ログイン名}]月間トランザクション数利用状況の通知
送信先:担当者ID、アカウントのご利用管理者様、連絡先1、連絡先2に登録されているメールアドレス
文面 :
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
スパイラル 月間トランザクション数 利用状況通知
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
スパイラルでご利用のトランザクションDBにおいて、
月間の無料利用分が残り10%を切ったことをお知らせします。
■アカウント
==================================================
XXXXXX
■月間トランザクション数(XXXX年XX月XX日XX時時点)
==================================================
利用件数 :XXXX
無料利用分:XXXX
※月間トランザクション数とは
アカウント内の全てのトランザクションDBに対する月単位
(1日から末日まで)の登録処理の件数です。
※月間トランザクション数の無料利用分と超過分について
月間トランザクション数は、ご利用いただいた月の契約レコード件数と
同数のトランザクションまで無料で利用できます。無料分を超過する場合は、
月間トランザクション数超過分として請求いたします。
6. その他
(1)トランザクションDBからサンキューメールを送る際にマスタデータにエラー反映をする方法
サンクスメールの配信エラー情報をDBに取得したい場合は、トランザクションDBとマスタDBで、DB連携し、マスタのエラーカウント(配信エラー)フィールドにエラー情報を記録するようにします。マスタDBにエラー情報を記録するには、「メールアドレス」とマスタDBの「エラーカウント(配信エラー)」フィールドを使う「仮想DB(連携型)」を作成し、このDBにサンクスメール用の配信リストを作成します。
(2)トランザクションDBに格納している個人情報の削除依頼が発生した場合
個人情報マスク機能で、トランザクションデータをマスクし、個人情報を閲覧できないようにすることができます。個人情報マスクは、マスクするデータを含んだトランザクションDBのDB詳細から利用できます。本機能でマスクできるのはトランザクションDBのデータだけです。アクション先のマスタDBのデータはマスクされません。
操作方法については「トランザクションDBに登録された個人情報をマスクしたい」をご参照ください。
(3)トランザクションDBに、登録、更新、更新登録、削除をする際に、動作が重い場合
登録データ数の多いトランザクションDBに、登録、更新、更新登録、削除をする場合、動作が重くなる可能性があります。その際は、データメンテナンスのクリーニングを実施することで動作が改善されます。
(4)トランザクションDBから通常DBに対する登録で、残りレコード数がマイナス表記になる場合
トランザクションDBから通常DBに対してデータを登録する場合、通常DBの登録レコード数が割り当てレコード件数を超え、使用可能レコード数がマイナス表記になることがあります。通常DBの割り当てレコード件数を超えると、DBオペレーション、データ登録、フォーム管理を利用して、通常DBに対して直接データを登録することができなくなります。通常DBに対してデータを登録したい場合は、割り当てレコード件数を変更してください。
(5)登録済みレコード数(DB割当)が契約レコード件数より大きい場合、操作画面の利用が制限されます。
トランザクションDBから通常DBに対してデータを登録する場合、登録済みレコード数(DB割当)が契約レコード件数を超えることがあります。この場合、スパイラルにログインする際にエラーが表示され、操作画面の利用が制限されます。その場合は、管理グループにある「レコー ド数変更」より適切な契約レコード件数に変更してください。
(6)数値系フィールドの演算で、マスタDBに登録可能な演算結果の範囲
アクションで更新で設定する数値系フィールドの演算で、演算結果が以下の範囲を超えた場合、マスタDBに正しく結果を登録できません。
マスタDBに登録可能な演算結果の範囲:-2147483648から+2147483647まで
(7)ファイル型フィールドを使用する場合、アカウント総容量の上限を超えて費用が発生する可能性があります。
ファイル型フィールドにはアカウントごとに10GB(標準提供)の総容量上限がございます。
トランザクションDBでファイル型フィールドを使用して総容量上限に達した場合、続けてご利用いただくためには拡張オプションのお申込みが必要です。
詳しくは、下記ページをご参照ください。
関連リンク ファイル型フィールドの解説 / ファイル型フィールド拡張オプション
(8)フィールド数上限とレコードサイズ上限を増やしたい場合
標準のフィールド数の上限は「150個」、全フィールドのレコードサイズ合計の上限は「16,384bytes」です。
こちらの上限はオプションにお申込みいただくことでフィールド数上限「300個」、レコードサイズ上限「30,000bytes」に拡張することが可能です。
(9)画像フィールドを追加した際のレコードについて
トランザクションDBに画像型フィールドを追加しても画像マスタDBのレコードは消費されません。
7.【事例】セミナーマスタと申込者情報の同期で、締切情報をリアルタイムに表示
トランザクションDBの利用事例と設定例として、セミナー申込をトランザクションDBで受け付け、マスタのDBに格納されているセミナー情報の申込数に反映させる方法についてご紹介します。
トランザクションDBでセミナーへの参加申込を受け付ければ、申込者マスタDBへのメンバー登録とともに、残席数を管理するセミナーマスタDBへの席数の減算処理を行うことができ、残席数が「0」に達したところでセミナー一覧ページへの表示を自動で中止し、かわりの案内を表示させることが可能となります。
フロー
アクションの流れ
ポイント
1.演算子「-1」で、セミナーの残席を減らす
トランザクションDBにデータを登録する際、整数フィールドに固定値「1」が登録されるように設定し、
アクション でセミナーマスタDBを更新し、残席数から固定値「1」を演算子「-=」を使って減算します。
2.残席数0で、セミナー情報を非表示にする
セミナーマスタDBに一覧表・単票を作成し、検索フォームの設定で「DBの抽出ルール」で「残り席数が1未満 以外」を抽出するルールを指定します。
残り席数が0席のセミナーが、自動的にセミナー一覧に表示されなくなります。
募集完了したセミナーについての問合せを受け付ける場合は、別途、一覧表・単票を作成します。
その際「DBの抽出ルール」で「残り席数が1未満」を抽出するルールを指定し、募集完了したセミナーの一覧を表示し、次回のご案内などをおこなえます。
3.各セミナーの申込者一覧や各申込者の参加セミナー一覧を表示
一覧表・単票で各セミナーの情報から申込者の一覧や申込者の情報から申込者が過去に参加したセミナーの一覧を表示できます。
各セミナーの情報から申込者の一覧を表示するには、セミナーマスタDBと申込情報統合DBに一覧表・単票を作成し、
セミナーマスタDBの単票に申込情報統合DBの一覧表を挿入する差替えキーワード(マスタフィルタ「%sf:usr:***:table:mstfilter%
」)を使います。
申込者の情報から申込者が過去に参加したセミナーの一覧を表示するには、申込者DBと申込情報統合DBに一覧表・単票を作成し、
申込者DBの単票に申込情報統合DBの一覧表を挿入する差替えキーワード(マスタフィルタ「%sf:usr:***:table:mstfilter%
」)を使います。
(手順1)トランザクションDBの発行
「DB」>「トランザクションDB」に進み、トランザクションDBを発行します。
「新規作成」ボタンもしくは「トランザクションDBを新規作成してください」をクリックして、トランザクションDBの新規作成に進みます。
トランザクションDBの基本設定を行います。「名前」と「タイトル」を入力し、「構成設定」ボタンをクリックします。
フィールドの構成を行います。左の「フィールド系統」のリストから、使用するフィールドを選択し、右の構成リストに加えます。
使用するフィールドの構成が整ったら、「フィールド名」を適宜変更します。
また、画面右の歯車ボタンをクリックすると、そのフィールドの詳細設定を行うことができます。
(詳細設定)
設定後、「新規作成」ボタンをクリックします。トランザクションDBの作成が完了です。
(手順2)通常DBの発行とデータ登録
(1)通常DBの発行
「DB」>「通常DB」に進み、通常DBを発行します。
「新規作成」ボタンもしくは「通常DBを新規作成してください」をクリックして、通常DBの新規作成に進みます。
基本設定を行います。「名前」と「タイトル」、「レコード数」を入力し、「構成設定」ボタンをクリックします。
フィールドの構成を行います。左の「フィールド系統」のリストから、使用するフィールドを選択し、右の構成リストに加えます。
使用するフィールドの構成が整ったら、「フィールド名」を適宜変更します。
設定後、「新規作成」ボタンをクリックします。通常DBの作成が完了です。
(2)データ登録
続いて、作成した通常DBにデータを登録します。 「通常DB一覧」にて作成したDBの画面右の歯車ボタンをクリックし、「設定」をクリックします。
「MENU」>「操作関連」の「データ操作(DBオペレーション)」に進みます。
「新規登録」タブで、セミナーのデータを登録します。
↓
(手順3) フォームの発行と設定
(1)フォームの発行
「Web」>「フォーム」に進み、フォームを作成します。
「新規作成」ボタンクリックして、フォームの新規作成に進みます。
まず、フォームの基本情報を設定します。
「DB」では作成したトランザクションDBを選択し、フォームの「名前」と「タイトル」を入力します。
次に、「デバイスの種類」、「フォームの種類」を選択します(ここでは、マルチデバイス用フォーム、新規登録を選択します)。
設定に問題がなければ、「新規作成」ボタンをクリックします。作成後は「引き続き設定を行う」を選択します。
(2)フォームの設定
続いて、フォームの詳細設定を行います。
1. 使用フィールド
「MENU」>「フォーム設定」の「使用フィールド」に進みます。
使用するフィールドの入力設定を行います。ここでは、「TRDB_登録日時」については「登録日時自動取得」を、 「申込数」については「固定値」を選択します。
設定後、「変更」ボタンをクリックします。
2. フィールド別チェック
続いて、フィールド別の詳細設定を行います。「MENU」>「フォーム設定」の「フィールド別チェック」に進みます。
ここでは、使用フィールドの設定で固定値で入力されるように設定した「申込数(整数)」の設定を行います。
「フォームの表示」を「表示なし」、「固定値」の値を「1」に設定します。設定に問題がなければ、「変更」ボタンをクリックします。
その他、必要に応じてフォームの設定を行ってください。
【参考ページ】
・フォーム
(手順4)トランザクションDBの設定
(1)アクション作成
続いて、「DB」>「トランザクションDB」に進み、『1. トランザクションDBの発行』で発行したトランザクションDBの設定を行います。
画面右の歯車ボタンをクリックし、該当のトランザクションDBの詳細設定を行います。
「MENU」>「設定関連」>「アクション」に進みます。
「アクション」右にある「+」ボタンをクリックし、アクションの新規作成を行います。
まず、アクションの「基本情報」を設定します。
「アクション名」を入力し、「発動条件」と「アクション」、「アクション対象DB」を選択します。
次に、「アクション発動時の処理」を必要に応じて設定します。 「アクション発動時の処理」の詳細については、2. トランザクションDBの全体像を参照して下さい。
上記の設定に問題がなければ「新規作成」をクリックします。
(2)アクションの詳細設定
続いて、作成したアクションの詳細設定を行います。画面右の「操作」(歯車ボタン)をクリックし、「アクション設定」に進みます。
・検索キーフィールドの設定
「検索キーフィールド」の設定を行います。
今回は「識別キー」に「セミナー」のフィールドを指定します。
「識別キー」を指定するためには、該当のフィールドにインデックスを設定する必要があるため、
トランザクションDB、およびアクション対象DBそれぞれにおいて「セミナー」フィールドにインデックスを作成します。
↓(インデックス作成画面が開きます)
↓
インデックスを作成後、元の画面に戻ると識別キーとして「セミナー」が選択できるようになります。
アクション対象DBでも同様に、「セミナー」にインデックスを作成し、それぞれ「識別キー」として選択してください。
設定後、「保存」ボタンをクリックします。
(3)フィールドマッピング
続いて、画面右の「操作」(歯車ボタン)をクリックし、「フィールドマッピング」に進みます。
フィールドマッピングでは、トランザクションDBに登録されたデータをアクション対象DBのどのフィールドに対してアクションするか、 フィールドを紐付ける設定です。
今回は、トランザクションDBの「申込数」とアクション対象DBの「申込数」を紐付けて、トランザクションDBにデータが登録されたときにアクション対象DBの該当フィールドに「+=」の演算がなされる設定を行います。
まず、画面左の「TRDBフィールド」リストで「申込数」をクリックします。
次に、画面右の「演算子」から「+=」を選択し、色付けられた対象DBフィールドの「申込数」をクリックして、フィールドマッピングの「使用」の属性にチェックが入ることを確認します。
設定に問題がなければ、「保存」ボタンをクリックします。
以上で必要な設定は完了です。
※null(空白)のフィールドがあった場合ついてnull値(空白)でDBに更新をかける場合は「NULL更新」の項目にチェックを入れてください。
「NULL更新」にチェックが付いていないと、未入力を無視し登録されている値を保持する仕様となっております。
(手順5) 動作確認
実際に、フォームからデータを登録し、動作を確認します。
フォームで登録されたデータは、トランザクションDBのアクションを経由して、アクション対象DBへ処理されます。
「データ操作(DBオペレーション)」にてDBに登録されたデータを見て、「申込数」が増えていることを確認してください。