今回は招待状を使ったポータルユーザの登録について、もうちょっと深掘りを。
だいぶ前に出したのですが、おさらい記事はこちらになります。
取引先担当者がポータルユーザになるまでの手順
ポータルユーザが自ら登録したケースではなく、招待状を送ってポータルを登録するケースを使用した場合、取引先担当者からポータルユーザになるには、以下の手順を踏む必要があります。
このやり方で業務化した場合に、以下の問題点が発生しうることになります。
- ポータル管理者がWebロールの付与を忘れやすい
- 招待コード発行後の連絡手段が確立されていない
- ポータルユーザが招待コードの入力ミスをする可能性がある
ポータル管理者もポータルユーザも人間なので、上記の手順だと人による操作に委ねられる点が多く、ヒューマンエラーを誘発しがちです。
特に、ポータルユーザはリテラシーが低い人も使用する可能性がありますので、できるだけ細かい操作や入力は避けたいところです。
ワークフローを使って自動化してみよう
上記の面倒な手順をワークフローを少しカスタマイズすることで、管理者やポータルユーザの手間を軽減することができます。
ワークフローで一部自動化して、システム化の範囲を広めました。
ここ最近のトレンドによりMSフローが推奨されていますが、使うのはワークフローです!
ワークフローを使用する過程で、ポータルのアドオンに同梱されているプロセスを使用したいのであえてワークフローを使います。
ワークフローは2つ作ります。
取引先担当者起点のオンデマンドワークフロー(以下、担当者WF)と招待状起点のワークフロー(以下、招待状WF)になります。
招待状WFは子ワークフローで、担当者WFから呼び出される形になります。
では、これから上記を実現するためのワークフローを作ってみましょう。
招待状WFの作成(子ワークフロー)
まずは、招待状WFから作成します。
招待状を起点とするため、エンティティは[招待状]を選択し、データ元となる招待状は親ワークフローから渡す形になります。
ワークフローは以下ステップで作成します。
招待コードのエンコード
招待コードをURL付きのメールに載せるために、招待状作成時に自動生成された招待コードをエンコードします。
既にプロセスが定義済みのため、それを使用します。
ステップの追加から[Portals]→[Encode Invitasion Code]を選択します。
プロセスには必須のパラメータが必要なので、招待状の招待コードを指定してあげましょう。
電子メールレコードの作成
招待コード付きのメールを作成します。
ここでは、メールの文面の定義となるため、電子メールレコードを作成します。
ステップの追加から[レコードの作成]→[電子メール]を選択します。
メールの文面等はお任しますが、ポータルのURLにエンコードした招待コードを付与するようにしましょう。
具体的には、URLの部分。
リンク先をパラメータ付きの以下URLに設定しましょう。
https://{ポータルユーザのドメイン}/register?returnUrl=%2F&invitation={エンコード済みの招待コード}
URLにエンコードした招待コードのパラメータを付与することで、リンクをクリックした時に招待コードが入力された状態になります。
招待コード送信
作成した電子メールレコードはまだ送信されていないため、送信します。
ここも同じように、ポータルで定義済みのプロセスを使用します。
ステップの追加から[Portals]→[Sand Invitation]を選択します。
ここも、必須パラメータがあるので、先ほど作った電子メールを指定してあげましょう。
招待状レコードの状態の変更
招待コードをメールで送信したので、招待状レコードに対してステータスを変更します。
ステップの追加から[状態の変更]で[招待状]エンティティを[送信済み]とします。
招待状WFのステップは以上です。
作成するとこのようになります。
子ワークフローとして機能するので、[子プロセスとして]のチェックも忘れないように。
担当者WFの作成(親ワークフロー)
続いて親側である担当者WFの作成。
こちらは取引先担当者を起点に、招待状を作成するのが目的です。
招待状レコードの作成
まずは、招待状のレコードを作成します。
既存のWF「招待状の作成」と同じように作ります。
ステップの追加から[レコードの作成]で[招待状]を選択します。
招待状の内容では、名前と種類が必須になっていますので値を指定します。
種類は「シングル」、名前は任意でOKですが取引先担当者の氏名を設定しています。
起点となる取引先担当者と関連性を持たせるため、[取引担当者の招待]に担当者も設定しましょう。
Webロールの割り当て
作成した招待状にWebロールを割り当てます。
Webロールははいつでも付与することはできますが、招待状に付与することによって、引き換え時に自動的に担当者にWebロールが割りあたります。
ステップの追加の[Portals]→[Assign Web Role]を選択。
パラメータの値はこのように指定します。
(招待状に「選手」Webロールを割り当てる時の例)
ここは役割に応じてフローを分けたり、取引先担当者のある値から割り当てるWebロールを変更するなど、うまく調整するようにしましょう。
ちなみに、今回はやりませんが、このプロセスを使うことで、招待状だけでなく取引先担当者や取引先企業にWebロールを付けることも可能です。
招待状送付
招待者に招待状を送ります。
と言っても、それ以降の処理は招待状WFでやってくれるので、子ワークフローを呼び出せばOKです。
ステップの追加の[子ワークフロー開始]から先ほど作成した招待状WFを呼び出します。
担当者WFの作成はこれで終了で、作成するとこのようになります。
上記2つのフローを作成したらアクティブ化しましょう。
バックグラウンド(同期)はどちらでもOKです。
実際に実行してみる
それでは作ったフローの検証。
まずは適当に取引先担当者を作成。
作成したら、ワークフローを実行。
招待状作成〜メールの送信まで自動化されます。
招待状の作成とともに、メールがこのように送信されます(迷惑メールに振り分けられているかもしれないので確認しましょう)。
メール内のリンクをクリックすると、招待コードが入力済みの状態となります。
コードの移し漏れが起こりづらくなります。
招待状の引き換え、つまりポータルユーザの登録まで済ますと、自動的にWebロールが付与されます。
これで、通知忘れ、Webロール付与忘れ、招待コード入力ミスの起こらない非常にスマートな招待状引き換えを実現することができました。
このテクニックは覚えておいて損はないでしょう。
コメント