Workbookに沿って学んでみよう!の第3回です。
第2回はこちら。
Add Logic(ロジックを追加するコーナー)の2つめ。難易度は中級、所要時間は30分だそうです。
Tutorial #4: Using Workflow and Approvals
(ワークフローと承認を利用する)
あなたの組織は内部的な手続きを標準化したり、ビジネスプロセスを自動化することによってより効率的に業務を行うことができます。
手続きやプロセスを自動化するために、ワークフロールールや承認プロセスを用いることが可能です。
時間の節約になるだけでなく、ビジネス慣習を越えた堅牢制を実現することもできます。
元の文:but you also enforce consistency across your business practices
ワークフローを構築することで、時間や、条件、数式をもとにメールでのアラートやタスクや項目の更新、外部へのメールといったアクションを引き起こすことが可能になります。
承認プロセスを用いれば、あなたの組織の承認を簡単なものから複雑なものまで全て自動化することができるようになるでしょう。
このチュートリアルでは、100マイル以上のマイレージが追加、更新されたときに稼働するワークフロールールを作成し、テストします。メールでのお知らせが届くようにします。
チュートリアルの第2部では200マイル以上のマイレージを申請した場合にはすべて承認を要求するような承認プロセスを作成し、テストします。この場合もメールでのお知らせが届くようにします。
【前提条件】
※基礎知識
このチュートリアルを学習するには、salesforceの管理者としての基本的な知識があると役に立ちます。
基本的なマイレージ記録アプリケーションを作成しておく必要があります。
チュートリアル1(3ページ)もしくは、チュートリアル2(9ページ)を参照してください。
(これは前々回で準備できているはず、、、です。)
Step 1: Create a User to Recieve Approval Requests
(承認要求を受け取るユーザを作成する)
まず始めに(このチュートリアルの後で行う)承認要求を承認する役割のユーザを作成します。
1. 【設定】→【ユーザの管理】→【ユーザ】をクリック
2. 全てのユーザページにて、【新規ユーザ】をクリック
3. 名(First Name)に「Bob」
4. 姓(Last Name)に「Smith」
5. 別名(Alias)に「bsmith」と入れるとあるんですが、ココは日本ですので
3. 姓に「ジョブ」
4. 名に「ウェブ」
5. 別名に「JW」と入れてみます。
6. 電子メールの部分には、Bob Smith(JW)経由で承認リクエストを受け取る、あなたのメールアドレスを入れます。
7. ユーザー名部分はBob Smith(JW)の為にユニークになるようなユーザ名を入れます。(電子メールが自動ではいります。変更するとエラーになるのでそのままにしましょう。)
8. マネージャー欄にはあなたの初めのユーザー–DeveloperEdition組織を登録したときに作成したユーザを入れます。
9. プロファイルは「標準ユーザー」を選択します(デフォルトです)。
10. 【保存】をクリックします。
新しいユーザーを作成する確認のメールを受け取る必要があります。
与えられた仮パスワードでログインし、メッセージに従ってパスワードを変更する必要があります。
Step 2: Create Email Templates
(メールテンプレートを作成する)
次にこのあとのステップで作成するワークフロールールと承認プロセスによって使用するためのメールテンプレートを作ります。
メールテンプレートは通常のメッセージを伝えるひな形です。
最初のメールテンプレートはこのチュートリアルのワークフローの部分で100マイルを越えるマイレージが作成されたときに
お知らせとして送られるメールのために使われます。
2番目のメールテンプレートはこのチュートリアルの承認プロセスの部分で作られます。
メールテンプレートを保存しておくフォルダを作ります。
1. 【設定】→【コミュニケーションテンプレート】→【電子メールテンプレート】をクリック
2. 電子メールテンプレート画面で、フォルダのドロップダウンリストの隣にある、【新規フォルダの作成】をクリック
3. 「電子メールテンプレートフォルダの表示ラベル」に「Mileageシステムメールテンプレート」
4. 「フォルダの一意の名前」に「MileageTracker_Email_Templates」
5. 残りはデフォルトのまま【保存】ボタンを押します。
1つ目のテンプレートを作ります
1. 「Mileageシステムメールテンプレート」フォルダ内で、【新規テンプレート】ボタンをクリック
2. 電子メールテンプレートウィザードのステップ1で、「テキスト」を選択し、【次へ】をクリックしウィザードのステップ2に続く
3. 「有効」にチェックをいれる
4. 「電子メールテンプレート名」に「Large Mileage Notification」(※Large Mileageの訳にちょうど良い言葉を思いつかなかったのでそのままです。。)
5. 「テンプレートの一意の名前」に「Large_Mileage_Notification」
6. 「件名」に「Large Mileage Notification」
7. 「電子メール内容」に「 {!Mileage__c.OwnerFullName} が {!Mileage__c.LastModifiedDate} に{!Mileage__c.Miles__c} のMileageを登録しました。」
8. 【保存】ボタンをクリックします。
2つ目のテンプレートを作ります
1. 【設定】→【コミュニケーションテンプレート】→【電子メールテンプレート】をクリック
2. フォルダのドロップダウンリストから「Mileageシステムメールテンプレート」を選択
3. 【新規テンプレート】ボタンをクリック
4. 電子メールテンプレートウィザードのステップ1で、「テキスト」を選択し、【次へ】をクリックしウィザードのステップ2に続く
5. 「有効」にチェックをいれる
6. 「電子メールテンプレート名」に「Large Mileage 承認のお知らせ」(※Large Mileageの訳にちょうど良い言葉を思いつかなかったため、コチラもそのままです。)
5. 「テンプレートの一意の名前」に「Large_Mileage_Approbal_Notification」
6. 「件名」に「Large Mileage 承認のお知らせ」
7. 「電子メール内容」に「 {!Mileage__c.OwnerFullName} が {!Mileage__c.LastModifiedDate} に{!Mileage__c.Miles__c} の承認すべきMileageを登録しました。」
Step 3: Create Workflow
(ワークフローを作成する)
ここでは100マイルを越えるマイレージが登録されたときに稼働するワークフローを作成します。
指定された受取人とそのマイレージを登録したひとにお知らせのメールが行きます。
1. 【設定】→【作成】→【ワークフローと承認申請】→【ワークフロールール】とクリック
2. 「ワークフローの理解」ページを見たら【次へ】ボタンをクリック(該当ページが表示されなければそのまま次のステップに進みます)
3. 「すべてのワークフロールルール」の画面内で【新規ルール】をクリック
4. ワークフロールールウィザードのステップⅠで、オブジェクトの選択は「Mileage」を選び、【次へ】をクリックしてステップ2へ進みます
5. 「ルール名」に「Large Mileage Rule」
6. 「説明」に「100マイルを越える場合はお知らせを送る」
7. 「評価条件」はデフォルトのまま「レコードが作成されたときまたはルール条件を満たしていなかったレコードが編集されたときだけ」
8. 「ルール条件」が「Mile > 100」となるように選択
9. 【保存&次へ】をクリック
10. ワークフロールルールウィザードのステップ3、「ワークフローアクションの指定」にて【ワークフローアクションの追加】をクリック
「新規電子メールアラート」を選択します。
メモ:もし初めに作成した電子メールテンプレートが見つからない場合は、テンプレート作成時に「有効」が選択されていたか確認してください。
11. 「説明」に「100マイルを越えるマイレージが登録されたらメールを送る」
12. 「電子メールテンプレート」に「Large Mileage Notification」
13. 「受信者種別」で「検索」を「ユーザー」とし、「選択済みメール受信者」に前もって作成しておいた「ジョブウェブ」を選択。
14. 【保存】をクリック
15. 「ワークフローアクションの指定」画面で【完了】をクリック
16. 「ワークフロールール」画面で、【有効化】をクリック。ワークフロールールの有効化を忘れてしまうことはありがちなミスです。
ルールを有効化しなければレコードが作成されたり更新された時に評価されません。
Step 4: Test the Workflow
(ワークフローをテストする)
ここでは作ったばかりのワークフローをテストしてみましょう。
1. 「Mileage」タブをクリック
2. 【新規】ボタンをクリックして新しいマイレージレコードを作成します。
3. フォームを埋めて行きます。マイルの部分は100より大きいことを確認してください。
4. 【保存】ボタンをクリック。これでワークフロールールが指定された受取人に100マイルを越えるマイレージが登録されたことを知らせるメールが送られることになります。
Step 5: Create an Approval Process
(承認申請プロセスを作成する)
ワークフロールールがどれだけ簡単に作成できて、強力であるかを見てきました。
ステップ3では大量(?)のマイレージの登録について管理するお知らせできるワークフローを作成しました。
このステップでは、マネージャーからマイレージの返済を承認してもらうための承認申請プロセスを作成します。
ワークフロールールと同様に、承認申請プロセスの作成も実に簡単です。
まずはじめに、Mieageレコードに承認申請中であることを示す項目を作成する必要があります。
1. 【設定】→【作成】→【オブジェクト】をクリック
2. 「Mileage」をクリック
3. カスタムオブジェクト画面の「カスタム項目&リレーション」セクションで、【新規】ボタンをクリック
4. カスタム項目の新規作成ウィザードのステップⅠで、データ型に「選択リスト」を選択し
【次へ】ボタンをクリックしてステップ2に進みます。
5. 「項目の表示ラベル」に「承認ステータス」
6. 選択リストの値に、「保留」「承認」「否認」を入力します。
7. 他はデフォルトのまま、【次へ】をクリック
8. カスタム項目の新規作成ウィザードのステップ3にて全てのプロファイルで「参照のみ」とするために
「参照のみ」チェックボックスを選択し【次へ】をクリック
9. カスタム項目の新規作成ウィザードのステップ4にてデフォルトのまま【保存】をクリック
さて、マイレージの値が200より大きい場合にマネージャーによる承認が必要であるという承認プロセスを作成します。
1. 【設定】→【作成】→【ワークフローと承認申請】→【承認プロセス】をクリック
2. 「承認プロセスを管理するオブジェクト」のドロップダウンリストで「Mileage」を選択
3. 【承認プロセスの新規作成】をクリック、ドロップダウンリストから「ジャンプスタートウィザードを使用」を選択
4. 「名前」に「Large Mileage 承認プロセス」
5. 「承認割り当て電子メールテンプレート」に「Large Mileage 承認のお知らせ」
6. 「入力条件の指定」に「Miles > 200」となるように選択
7. 「標準またはカスタムの階層関係項目を使用して自動的に承認者を割り当てる」を選択し、「マネージャー」を選択します。
8. 【保存】ボタンをクリック
承認プロセスは作成されましたが、まだ使えるようにはなっていません。
まずはじめに、レコードが初期登録、承認、否認の際に何が起こるのかを定義せねばなりません。
1. 先ほど作成した承認プロセスを進めていくと、ジャンプスタートウィザード確認画面にいると思いますが、
そこで【承認プロセスの詳細ページの参照】ボタンをクリックします。
2. 以下の表に従って、各アクションを定義して行きます。(【新規アクションの追加】ボタンクリック→【項目自動更新】ボタンクリック)
| セクション | 名前 | 更新する項目 | 選択リストオプション |
| 申請時のアクション | 承認申請時のステータスをセットする | 承認ステータス | 「特定値」を選択し、「保留」を選択 |
| 最終承認時のアクション | 最終承認のステータスをセットする | 承認ステータス | 「特定値」を選択し、 「承認」を選択 |
| 最終却下時のアクション | 最終却下のステータスをセットする | 承認ステータス | 「特定値」を選択し、 「否認」を選択 |
3. それぞれ項目更新のアクションを定義したら、【保存】をクリック
4. 【承認プロセス】をクリックして、承認プロセスの一覧に戻ります
5. 承認プロセスを有効化するために、【有効化】をクリック
Step 6: Test the Approval Process
(承認プロセスをテストする)
承認プロセスをテストする前に、ホームページに承認要求があった項目が表示できるようにしましょう。
1. 【設定】→【カスタマイズ】→【ホーム】→【ホームページのページレイアウト】をクリック
2. あなたのホームページのページレイアウトの隣にある【編集】をクリック
3. 「未承認申請」を選択します。
4. 【保存】をクリックします。
※すでにデフォルトがそうなっているので、特に何もする必要はないようです。
アプリケーションの開発の間は、管理者としてログインしていると思います。
マイレージのレコードを登録し、承認プロセスをテストするためには管理者アカウントからログアウトして、
標準ユーザとしてログインし直す必要があります。
1. 先ほど作成した「ジョブウェブ」ユーザとしてログインします。
2. 「Mileage」タブをクリック
(「ジョブウェブ」ユーザが「標準ユーザ」じゃないとアクセスできませんので注意)
3. 【新規】をクリックして200マイルを越えるマイレージデータを作成します。
4. 【保存】をクリック
5. アプリケーションからログアウトします
承認要求を送られたことをお知らせするべく
ジョブウェブのマネージャー(つまり、DeveloperEditionの管理者アカウント宛)にメールが送られます。
管理者アカウントでアプリケーションにログインすると、ホームタブに保留中の承認申請が表示されているはずです。
マネージャーがマイレージを承認するまでレコードはロックされます。
承認項目はマネージャーが承認または否認をすることで編集され、ワークフローが続きます。
メモ:承認ステータスは参照のみであることに注意してください。
実アプリケーション内ではこれらの項目は必要になるまでVisualforceを利用することで隠しておくことができます。
Summary
まとめ・・ですが、同じことを書いているだけなので今回も省略します。
##なぜか、承認プロセスがうまくいかなかったのですがこれについては調査しておきます。




最近のコメント