設計情報

投稿者:SPIRERS ナレッジ向上チーム 2022年1月31日 (月)

セミナー申し込み&管理システム【1】システム概要、セミナー申し込み詳細フロー

本ページでは利用頻度が高い機能についてのご紹介をしながら、セミナー申し込み&管理システムの作成方法に関して解説いたします。

作業工程は4部構成となっています。各種手順は下記よりご確認ください。

セミナー申し込み&管理システムの概要

今回作成するセミナー申し込み&管理システムの、登場人物、全体フローを、以下に記載をしています。
システム利用者
セミナー申し込み者
セミナー申し込み時に受信したQRコードを提示しセミナー受付を行う。
セミナー管理者
セミナー申し込み者リストの確認が可能であり、管理画面からセミナー開催前にリマインドメールを配信する
システムの全体像(申し込み側)
システムの全体像(管理者側)
以上が今回作成するシステムの全体像となります。

セミナー申し込みユーザー詳細フロー

セミナーに申し込みたいユーザー用に、DB、フォーム、一覧表、サンクス配信を設定します。

セミナー申し込み者は、まずセミナー情報を確認します。
セミナー情報確認後、ユーザーは該当セミナーに申し込みをします。申し込みした情報はセミナー申し込みDBに格納されます。
該当のセミナー情報に申し込みがあった際はその分だけ残席がマイナスされ、残席管理が可能となります。
①-1セミナーマスタDBの作成
セミナー内容や、日程、参加可能者の残席を管理するためのセミナー情報を登録するDBを作成します。
例として以下の構成でDBを作成します。
設定手順は以下の動画をご参照ください。

①-2セミナーマスタDBに更新トリガを作成
残席が0を下回らないように、残席が0以下の状況で申し込みした場合はエラーを表示させる必要があります。
この場合、エラー表示をさせるためにトリガ機能を利用します。
トリガ機能を使うことで、他の申し込み者が先に申し込みをして残席が0になった場合、指定の残席を超過して登録することを防ぎます。

▽トリガとは
登録(INSERT)や更新(UPDATE)が発生したタイミングで、指定の処理を発動させる機能です。
別フィールドに入力した値を結合させたり、数字同士であれば計算して合計用のフィールドに計算結果を格納させるといったことが対応可能です。
トリガ機能について

▽設定するトリガ式
以下のようなトリガ式を設定しておくことで「もし残席が0以下だった場合、エラー表示」をさせることが可能です。
設定手順は以下の動画を参照ください。
IF $semUnsoldSeat$ < 0
$semUnsoldSeat$ は残席フィールドの差替えキーワード
②セミナーマスタDBから一覧表を作成
①で作成したセミナーマスタDBからセミナー情報をWebで一覧表示させるために一覧表を作成します。
セミナー一覧は閲覧者を限定しないため、誰でも閲覧できるように公開範囲(権限設定)を一般公開にします。

③セミナー申し込みDBの作成
セミナー申し込み時のユーザー情報を格納するためにDBを作成します。
例として以下の構成でDBを作成します。
設定手順は以下の動画を参照ください。

④-1セミナー申し込みTRDBの作成
セミナー申し込み時、申し込みした分だけ残席数をマイナスする処理と、申し込み者の情報を登録するため、トランザクションDBを作成します。
例として以下の構成でDBを作成します。

▽トランザクションDBとは
複数のDBに対して、登録や更新、削除等の動作指示が可能なDBです
具体的な動作指示は④-2の【アクション】設定を追加することで実装が可能となります


④-2セミナー申し込みTRDBのアクション設定とマッピング設定
④-1で作成したセミナー申し込みTRDBにアクション設定を追加します。
例として以下の構成でアクションを作成します。
セミナー申し込みTRDBに登録されたデータのうち、申し込み者の名前や連絡先等の情報を【セミナー申し込みDB】、
残席カウントを取るために【セミナーマスタ】の各フィールドにアクション(登録)させるため、④-1で作成したセミナー申し込みTRDBにアクション設定内の【マッピング】項目をクリックし、それぞれのDBに紐づけ作業をします。
設定手順は以下の動画を参照ください。

⑤-1セミナー申し込みフォームを作成
セミナー申し込み用のフォームをセミナー申し込みTRDBから作成します。
フォーム内で表示する項目はフォームの【使用フィールド】より項目を選択することが可能です。
フォームの見た目上の設定や、登録時の全体設定など、フォーム作成時に設定を行います。

⑤-2セミナー申し込み一覧の単票にフォームを張り付け
②で作成した一覧表の単票ページに⑤-1で作成したフォームのソースコードをコピーペーストします。
単票内に申し込み用のフォームのソースを張り付けすることで、申し込みしたいセミナー情報(セミナ名等)を引き継ぎ、セミナー申し込み者の情報を登録することが可能となります。

▽単票とは
一覧表で表示されるデータの1件を選択し、そのデータの詳細情報をWebページに表示する機能です

⑥セミナー申し込み者へ参加申し込みメールを作成
セミナー申し込みタイミングで登録したユーザー情報宛に申し込み完了メール(サンクスメール)を配信するためにサンクス配信を設定します。
サンクス配信では誰に送るのかという【リスト】設定と、どんな文面を配信するのかという【封筒】設定をそれぞれ設定します。

▼リスト作成
セミナー申し込み者に申し込み完了のメールを送るため、作成元となるDBは【セミナー申し込みTRDB】を選択して作成します。
リストは以下の内容で設定します。
▽リスト作成の各項目についての詳細は以下をご参照ください
リスト作成について
▼封筒作成
文面や件名を設定するために封筒設定を行います。
文面は以下の通りで今回は設定します。
%val:usr:company%
%val:usr:name%様

「%val:usr:semName%」にお申込みいただきありがとうございます。

■セミナー情報
・セミナー名称
 %val:usr:semName%

・セミナー内容
 %val:usr:semDetail%

・開催日
 %val:usr:semDate%

・参加票
 %url/https:ath:QRPP%

当日の参加を心よりお待ちしております。
※▽%url/https:ath:QRPP%について
参加表の差替えキーワードは後程作成する【2】②で設定後に挿入します

⑦セミナー申し込みDBとセミナーマスタDBを間接連携する
セミナー申し込みDBとセミナーマスタDBをそれぞれのセミナーIDを用いて間接連携を行います。
DB連携とは、スパイラル上のDB内に存在する複数のデータを紐付ける機能です。
今回はセミナーIDを使って連携をすることで、セミナー申し込みDBのセミナー情報に紐づいた申し込み者情報を
別途作成するセミナー一覧で表示させることが可能です。
以下の情報で紐づけを行います。

▼ 参照元DB
セミナー申し込みDB:セミナーID

▼ マスタDB
セミナーマスタDB:セミナーID

▼連携方法
間接連携

以上でセミナー申し込み時の設定工程が完了となります。
解決しない場合はこちら コンテンツに関しての
要望はこちら