LoginSignup
3
6

More than 3 years have passed since last update.

実践ServiceNow - データセンタ訪問許可申請 - フローの作成

Posted at

概要

データセンタ訪問許可申請 ー 申請フォームの作成からの申請を処理するためのフローです。次の仕様のフローを作成します。
- 申請されたらフローを実行させる。
- 管理者が申請を許可/却下できる
- 許可した場合は申請を完了してクローズにする。
- 却下の場合は申請を却下してクローズにする。

ServiceNow申請処理の説明

フローを作成する前にServiceNowでの申請処理について簡単に説明します。
1. ServiceNowポータルから申請フォームを入力して「送信」ボタンを押下すると申請処理が実行されます。フローが定義されていない場合はデフォルトフローが実行されます。
data_center_entry_flow_1.png
1. ServiceNowの申請はオンライン買い物サイトのようです。買い物を行うと1つの注文で複数の物を買うことができるようにServiceNowの申請は1つの申請で複数の依頼ごとを受けることができます。申請を「リクエスト」又は「要求」と呼び、詳細を「アイテム」と言います。
フォームの「送信」ボタンを押下すると「要求」と「アイテム」が作成されます。データセンター訪問許可申請には1つの要求に1つのアイテムしかありませんがオン・ボーディングのように1つの申請(要求)に複数の作業(アイテム)があることもあります。
申請をクローズ(完了)にするには各アイテムを完了した後に要求を完了にします。フローでもこの2つの処理を行います。
要求は「要求番号」で管理されます。デフォルトでは「REQ」から始まる番号になります。
data_center_entry_flow_2.png
1. アイテム(ここでは「データセンター作業」)をクリックするとアイテムの詳細ページが表示します。アイテムはアイテム「番号」で管理されます。デフォルトでは「RITM」から始まる番号です。
data_center_entry_flow_3.png
1. アプリケーションナビゲータからから申請を閲覧することもできます。
アプリケーションナビゲータから「要求」を検索してセルフサービス下の「自分の要求」を選択すると自分が行った申請一覧が表示されます。
data_center_entry_flow_4.png
1.要求は「REQ」から始まる番号でスタータスのその要求の状態です。下の例では承認待ちのためにステータスは「オープン」です。
data_center_entry_flow_5.png
1. 要求を開くとページの下にその要求に関連したアイテム一覧が表示さます。
data_center_entry_flow_6.png
1. 今回は申請を許可又は却下した後にアイテム(RITMから始まる番号)とステータスを「完了してクローズ」にします。
data_center_entry_flow_7.png
1. アイテムをクローズした後に要求(REQから始まる番号)の要求ステータスを「完了してクローズ」又は「却下してクローズ」に設定します。
data_center_entry_flow_8.png

作成手順

今回は次のフローを作成します。
image.png

フローの作成

  1. アプリケーションナビゲータから「flow」を検索して、「プロセス自動化」下のFlow Designerを選択します。
    data_center_entry_flow_10.png
  2. 新規のフローを作成します。
    「新規」ボタンを押下します。
    data_center_entry_flow_11.png
  3. フローの名前を入力します。
    今回は「データセンター作業申請」にします。入力した後に「送信」ボタンを押下します。
    data_center_entry_flow_12.png
  4. フローを実行する条件をトリガーで指定します。
    「トリガーを追加」をクリックします。
    data_center_entry_flow_13.png
  5. フォームから申請がある場合にフローを実行させるためトリガー条件を「サービスカタログ」にします。
    data_center_entry_flow_14.png
  6. これでトリガーは設定されました。「完了」ボタンを押下します。
    data_center_entry_flow_15.png
  7. フロー中の設定内容を分かりやすくするためにステップ毎に注釈を記入します。注釈アイコンをクリックします。
    data_center_entry_flow_16.png
  8. 「データセンター入館申請がある場合に実行する。」を入力します。
    data_center_entry_flow_17.png
  9. 実行処理を設定します。
    先ずは承認ステップを追加します。
    「アクション、フローロジック、またはサブフローを追加」をクリックします。
    data_center_entry_flow_18.png
  10. 「アクション」を選択して「ServiceNow Core」ー「Ask For Approval」を選択します。
    data_center_entry_flow_19.png
  11. 承認を対象にするレコードをフィールド「レコード」に設定します。Flow Designerの場合は右側メニューから当該フィールドをドラッグ&ドロップしてレコードを設定します。今回は「要求アイテムRecord」をフィールド「レコード」にドラッグ&ドロップします。
    data_center_entry_flow_20.png
  12. ドラッグ&ドロップするとフィールド「レコード」、「テーブル」、「承認フィールド」、「ジャーナルフィールド」が記入されます。
    data_center_entry_flow_21.png
  13. 承認者を設定します。
    一般の場合は特定のユーザを承認者に指定するのではなく、ユーザをグループにしてそのグループを承認者に指定します。今回も承認者をグループの誰かが承認したらよいとします。
    承認者ルールを「誰でも承認可能」に設定して、グループアイコンを選択します。
    data_center_entry_flow_22.png
  14. グループアイコンを選択します。
    data_center_entry_flow_23.png
  15. 今回は承認者グループを「ITI承認者」に設定します。自者インスタンスに作成されたグループを選択してください。
    data_center_entry_flow_24.png
  16. これで承認ステップを設定しました。
    「完了」ボタンを押下します。
    data_center_entry_flow_25.png
  17. 注釈を記述してます。
    注釈アイコンを選択します。
    data_center_entry_flow_26.png
  18. 注釈を記述してます。
    注釈アイコンを選択して「許可を依頼。」っと入力します。
    data_center_entry_flow_27.png
  19. 申請が許可されたかのif文を入れます。
    「アクション、フローロジック、またはサブフローを追加」をクリックします。
    data_center_entry_flow_28.png
  20. 「フローロジック」をクリックして「If」を選択します。
    data_center_entry_flow_29.png
  21. If文の説明を入力します。
    今回は「入館申請が許可されたか?」を入力します。
    data_center_entry_flow_30.png
  22. If文の条件を設定します。今回は申請が承認されたか却下されたかを判断します。
    上のAsk For Approvalステップの結果を利用します。
    右のメニューから承認ステップ「1. Ask For Approval」を展開して、「承認ステータス」をフィールド「条件1」までドラッグ&ドロップします。
    data_center_entry_flow_31.png
  23. 承認と却下の他にも取消しなど他ステータスもありうるので判定条件を「承認以外の場合」にします。
    「次の値ではない」を選択します。
    data_center_entry_flow_32.png
  24. 「承認済み」を選択します。
    data_center_entry_flow_33.png
  25. これでIfステップは設定されました。
    「完了」ボタンを押下します。
    data_center_entry_flow_34.png
  26. アイテムのクローズするステップを追加します。
    Ifステップの右下の「アクション」を選択しますimage.png
  27. 「ServiceNow Core」ー「Update Record」を選択します。
    data_center_entry_flow_35.png
  28. 申請されたレコードを処理するので「トリガー」下の「要求アイテムRecord」をフィールド「レコード」にドラッグ&ドロップします。
    data_center_entry_flow_36.png
  29. どのフィールドを何に設定するかは元となる要求アイテムページを参照します。
    data_center_entry_flow_7.png
  30. 要求アイテムページのフィールド「ステータス」を「完了してクローズ」に設定したいでUpdate要求アイテムステップのフィールドを「ステータス」に設定して値を「完了してクロース」を選択します。
    data_center_entry_flow_37.png
  31. これでアイテムレコードの更新処理は設定されました。「完了」ボタンを押下します。
    data_center_entry_flow_38.png
  32. 注釈を記述します。
    注釈アイコンを選択して「」ita.com/htshozawa/items/80e8f5a7af1741219eab">データセンタ訪問許可申請 ー 申請フォームの作成からの申請を処理するためのフローです。次の仕様のフローを作成します。
  33. 申請されたらフローを実行させる。
  34. 管理者が申請を許可/却下できる
  35. 許可した場合は申請を完了してクローズにする。
  36. 却下の場合は申請を却下してクローズにする。

ServiceNow申請処理の説明

フローを作成する前にServiceNowでの申請処理について簡単に説明します。
1. ServiceNowポータルから申請フォームを入力して「送信」ボタンを押下すると申請処理が実行されます。フローが定義されていない場合はデフォルトフローが実行されます。
data_center_entry_flow_1.png
1. ServiceNowの申請はオンライン買い物サイトのようです。買い物を行うと1つの注文で複数の物を買うことができるようにServiceNowの申請は1つの申請で複数の依頼ごとを受けることができます。申請を「リクエスト」又は「要求」と呼び、詳細を「アイテム」と言います。
フォームの「送信」ボタンを押下すると「要求」と「アイテム」が作成されます。データセンター訪問許可申請には1つの要求に1つのアイテムしかありませんがオン・ボーディングのように1つの申請(要求)に複数の作業(アイテム)があることもあります。
申請をクローズ(完了)にするには各アイテムを完了した後に要求を完了にします。フローでもこの2つの処理を行います。
要求は「要求番号」で管理されます。デフォルトでは「REQ」から始まる番号になります。
data_center_entry_flow_2.png
1. アイテム(ここでは「データセンター作業」)をクリックするとアイテムの詳細ページが表示します。アイテムはアイテム「番号」で管理されます。デフォルトでは「RITM」から始まる番号です。
data_center_entry_flow_3.png
1. アプリケーションナビゲータからから申請を閲覧することもできます。
アプリケーションナビゲータから「要求」を検索してセルフサービス下の「自分の要求」を選択すると自分が行った申請一覧が表示されます。
data_center_entry_flow_4.png
1.要求は「REQ」から始まる番号でスタータスのその要求の状態です。下の例では承認待ちのためにステータスは「オープン」です。
data_center_entry_flow_5.png
1. 要求を開くとページの下にその要求に関連したアイテム一覧が表示さます。
data_center_entry_flow_6.png
1. 今回は申請を許可又は却下した後にアイテム(RITMから始まる番号)とステータスを「完了してクローズ」にします。
data_center_entry_flow_7.png
1. アイテムをクローズした後に要求(REQから始まる番号)の要求ステータスを「完了してクローズ」又は「却下してクローズ」に設定します。
data_center_entry_flow_8.png

作成手順

今回は次のフローを作成します。
image.png

フローの作成

  1. アプリケーションナビゲータから「flow」を検索して、「プロセス自動化」下のFlow Designerを選択します。
    data_center_entry_flow_10.png
  2. 新規のフローを作成します。
    「新規」ボタンを押下します。
    data_center_entry_flow_11.png
  3. フローの名前を入力します。
    今回は「データセンター作業申請」にします。入力した後に「送信」ボタンを押下します。
    data_center_entry_flow_12.png
  4. フローを実行する条件をトリガーで指定します。
    「トリガーを追加」をクリックします。
    data_center_entry_flow_13.png
  5. フォームから申請がある場合にフローを実行させるためトリガー条件を「サービスカタログ」にします。
    data_center_entry_flow_14.png
  6. これでトリガーは設定されました。「完了」ボタンを押下します。
    data_center_entry_flow_15.png
  7. フロー中の設定内容を分かりやすくするためにステップ毎に注釈を記入します。注釈アイコンをクリックします。
    data_center_entry_flow_16.png
  8. 「データセンター入館申請がある場合に実行する。」を入力します。
    data_center_entry_flow_17.png
  9. 実行処理を設定します。
    先ずは承認ステップを追加します。
    「アクション、フローロジック、またはサブフローを追加」をクリックします。
    data_center_entry_flow_18.png
  10. 「アクション」を選択して「ServiceNow Core」ー「Ask For Approval」を選択します。
    data_center_entry_flow_19.png
  11. 承認を対象にするレコードをフィールド「レコード」に設定します。Flow Designerの場合は右側メニューから当該フィールドをドラッグ&ドロップしてレコードを設定します。今回は「要求アイテムRecord」をフィールド「レコード」にドラッグ&ドロップします。
    data_center_entry_flow_20.png
  12. ドラッグ&ドロップするとフィールド「レコード」、「テーブル」、「承認フィールド」、「ジャーナルフィールド」が記入されます。
    data_center_entry_flow_21.png
  13. 承認者を設定します。
    一般の場合は特定のユーザを承認者に指定するのではなく、ユーザをグループにしてそのグループを承認者に指定します。今回も承認者をグループの誰かが承認したらよいとします。
    承認者ルールを「誰でも承認可能」に設定して、グループアイコンを選択します。
    data_center_entry_flow_22.png
  14. グループアイコンを選択します。
    data_center_entry_flow_23.png
  15. 今回は承認者グループを「ITI承認者」に設定します。自者インスタンスに作成されたグループを選択してください。
    data_center_entry_flow_24.png
  16. これで承認ステップを設定しました。
    「完了」ボタンを押下します。
    data_center_entry_flow_25.png
  17. 注釈を記述してます。
    注釈アイコンを選択します。
    data_center_entry_flow_26.png
  18. 注釈を記述してます。
    注釈アイコンを選択して「許可を依頼。」っと入力します。
    data_center_entry_flow_27.png
  19. 申請が許可されたかのif文を入れます。
    「アクション、フローロジック、またはサブフローを追加」をクリックします。
    data_center_entry_flow_28.png
  20. 「フローロジック」をクリックして「If」を選択します。
    data_center_entry_flow_29.png
  21. If文の説明を入力します。
    今回は「入館申請が許可されたか?」を入力します。
    data_center_entry_flow_30.png
  22. If文の条件を設定します。今回は申請が承認されたか却下されたかを判断します。
    上のAsk For Approvalステップの結果を利用します。
    右のメニューから承認ステップ「1. Ask For Approval」を展開して、「承認ステータス」をフィールド「条件1」までドラッグ&ドロップします。
    data_center_entry_flow_31.png
  23. 承認と却下の他にも取消しなど他ステータスもありうるので判定条件を「承認以外の場合」にします。
    「次の値ではない」を選択します。
    data_center_entry_flow_32.png
  24. 「承認済み」を選択します。
    data_center_entry_flow_33.png
  25. これでIfステップは設定されました。
    「完了」ボタンを押下します。
    data_center_entry_flow_34.png
  26. 却下された場合のアイテムのクローズするステップを追加します。
    Ifステップの右下の「アクション」を選択しますimage.png
  27. 「ServiceNow Core」ー「Update Record」を選択します。
    data_center_entry_flow_35.png
  28. 申請されたレコードを処理するので「トリガー」下の「要求アイテムRecord」をフィールド「レコード」にドラッグ&ドロップします。
    data_center_entry_flow_36.png
  29. どのフィールドを何に設定するかは元となる要求アイテムページを参照します。
    data_center_entry_flow_7.png
  30. 要求アイテムページのフィールド「ステータス」を「完了してクローズ」に設定したいでUpdate要求アイテムステップのフィールドを「ステータス」に設定して値を「完了してクロース」を選択します。
    data_center_entry_flow_37.png
  31. これでアイテムレコードの更新処理は設定されました。「完了」ボタンを押下します。
    data_center_entry_flow_38.png
  32. 注釈を記述します。
    注釈アイコンを選択して「申請(sc_req_item)を処理済とする。」を入力します。
    data_center_entry_flow_39.png
  33. 却下処理を終了させます。
    「Update要求アイテムRecord」直下の「+」をクリックします。
    data_center_entry_flow_40.png
  34. 「フローロジック」をクリックして「終了」を選択します。If分岐の右側の処理に明示的に終了しないと継続して左側の処理も実行されますので注意してください。
    data_center_entry_flow_41.png
  35. 申請は許可された場合の処理を追加します。却下された場合と同じようにアイテムレコードをクローズします。
    If分岐の下にある「アクション、フローロジック、またはサブフローを追加」をクリックします。
    data_center_entry_flow_50.png
  36. 「アクション」をクリックして、「ServiceNow Core」ー「Update Record」を選択します。
    data_center_entry_flow_51.png
  37. フィールド「レコード」に「要求アイテムRecord」をドラッグ&ドロップします。
    data_center_entry_flow_52.png
  38. フィールドを「ステータス」に設定して値を「完了してクローズ」に設定します。これでアイテムレコード更新ステップは設定されました。「完了」ボタンを押下します。
    data_center_entry_flow_53.png
  39. 注釈を入力します。
    注釈アイコンを選択して、「申請(sc_req_item)を処理済とする。」を入力します。
    data_center_entry_flow_54.png
  40. 要求をクローズする設定を挿入します。
    トリガーは要求アイテムレコードを渡しますが要求レコードは渡されません。要求レコードを変更するには要求アイテムレコードのフィールド「リクエスト」を利用して取得します。
    申請が許可された場合も却下された場合も要求レコードは同じなのでIf文の上に要求レコードを取得するステップを挿入します。マウスポインタを「1. Ask For Approval」ステップと「2.If」ステップの間に移動すると「+」が表示されます。この「+」をクリックします。
    data_center_entry_flow_60.png
  41. レコードを取得するステップを挿入します。
    「アクション」をクリックして「ServiceNow Core」ー「Look Up Record」を選択します。
    「Look Up Records」と間違えないようにしてください。data_center_entry_flow_61.png
  42. 要求テーブル名は「sc_request」です。テーブルフィールドに「sc_request」を入力して表示される「要求[sc_request]」を選択します。
    data_center_entry_flow_62.png
  43. ServiceNowは内部でレコードを特定するのにSys IDと言うキーを利用しています。今回のこのSys IDキーを利用して要求レコードを取得します。
    条件に「sys」を入力して表示される「Sys ID」を選択します。
    data_center_entry_flow_63.png
  44. 要求アイテムページを参照して要求レコードフィールド名は「リクエスト」であることを確認します。
    data_center_entry_flow_64.png
  45. 右メニューの「要求アイテムRecord」を展開します。
    data_center_entry_flow_65.png
  46. 表示された項目「リクエスト」を条件の一致条件値フィールドにドラッグ&ドロップします。
    data_center_entry_flow_66.png
  47. これで要求レコード取得ステップは設定されました。
    「完了」ボタンを押下します。
    data_center_entry_flow_67.png
  48. 注釈を記述します。
    注釈アイコンをクリックして「申請アイレムから申請(sc_request)を取得。」を入力します。
    data_center_entry_flow_68.png
  49. 要求レコードのステータスを更新するステップを追加します。先ずは却下された場合のステップを追加します。
    マウスポインタを「4. Update Requested Item Record」と「5. 終了」ステップの間に移動すると「+」が表示されます。この「+」をクリックします。
    data_center_entry_flow_70.png
  50. 「アクション」をクリックして「ServiceNow Core」ー「Update Record」を選択します。
    data_center_entry_flow_71.png
  51. ステップ2で取得して要求レコードを更新するので右メニューの「2. Look Up Record」下の「要求Record」をフィールドにドラッグ&ドロップします。
    data_center_entry_flow_72.png
  52. 要求ページを参考にして更新するフィールドと値を確認します。今回はフィールド名「要求ステータブ」を更新します。
    data_center_entry_flow_73.png
  53. フィールドをクリックして「要求」を入力して表示される「要求ステータス」を選択します。
    data_center_entry_flow_74.png
  54. 設定する値を「却下してクローズ」にします。
    data_center_entry_flow_75.png
  55. これで要求レコードの更新ステップ処理は設定されました。「完了」ボタンを押下します。
    data_center_entry_flow_76.png
  56. 注釈を記述します。
    注釈アイコンをクリックして「申請(sc_request)の状況を却下とする。」を入力します。
    data_center_entry_flow_77.png
  57. 同じように許可された場合にも要求レコードをステータスも設定します。
    ステップ「7. Update要求アイテムRecord」下の「アクション、フローロジック、またはサブフローを追加」をクリックします。
    data_center_entry_flow_80.png
  58. 「アクション」をクリックして「ServiceNow Core」ー「Update Record」を選択します。
    data_center_entry_flow_81.png
  59. 「要求Record」をレコードフィールドにドラッグ&ドロップします。
    data_center_entry_flow_82.png
  60. フィールドを「要求ステータス」に選定します。
    data_center_entry_flow_83.png
  61. 値を「完了してクローズ」にします。
    data_center_entry_flow_84.png
  62. これで許可された場合の要求レコードの更新処理は設定されました。「完了」ボタンを押下します。
    data_center_entry_flow_85.png
  63. 注釈を記述します。
    注釈アイコンを選択して「申請(sc_request)の状況を閉じる。」を入力します。
    data_center_entry_flow_86.png
  64. フローを保存します。
    メニューから「Save」ボタンを押下します。
    data_center_entry_flow_90.png
  65. 以上でフローは定義されました。次にフローをテストします。

フローのテスト

フローが正しく動作するかテストします。

  1. テストで利用する要求アイテム番号を確認します。
    ポータルからの申請したページを開いて「番号」の値をメモします。
    要求アイテム番号は「RITM」から始まる番号です。
    data_center_entry_flow_91.png
  2. 要求アイテム番号を確認して後にフロー定義ページに戻りメニューから「Test」を選択します。
    data_center_entry_flow_92.png
  3. メモした番号を入力して「テストを実行」ボタンを押下します。
    data_center_entry_flow_93.png
  4. 実行されると「テストの実行が終了しました。確認してください:flow実行の詳細」リンクが表示されます。実行結果を表示するにはリンクをクリックします。
    data_center_entry_flow_94.png
  5. フローが正常に実行されていることを確認します。
    エラーが無い場合は「テスト実行-完了」っと表示されます。
    data_center_entry_flow_95.png
  6. ポータルからテストで利用した要求アイテムを開いてStateが「Closed Complete」に変わっていることを確認します。
    data_center_entry_flow_96.png
  7. 要求アイテムに関連した要求ページを開くとRequest stateフィールドが「Closed Rejected」に変更されています。
    data_center_entry_flow_97.png

フローをフォームに関連付ける

フォームから申請された場合にフローが実行されるようにします。

  1. フォームとフローを関連付けるには先ずフローを有効にします。
    メニューから「Activate」ボタンを押下します。
    data_center_entry_flow_100.png
  2. 確認ダイアログが表示されます。
    「Activate」ボタンを押下します。
    data_center_entry_flow_101.png
  3. フローが「アクティブ」になったことを確認します。
    data_center_entry_flow_102.png
  4. フォームからフローを実行するようにします。
    フォームを開きます。
    アプリケーションナビゲータから「アイテム」を検索して「カタログ定義」下の「アイテムの管理」を選択します。
    data_center_entry_flow_110.png
  5. 今回はデータセンタ作業申請フォームから申請された時にフローを実行するため、「データセンター作業申請」を選択します。
    data_center_entry_flow_111.png
  6. 「Process Engine」タブを選択してフィールドFlowの虫眼鏡をクリックします。
    data_center_entry_flow_112.png
  7. 定義した「データセンター作業申請」を選択します。
    data_center_entry_flow_113.png
  8. 「Update」ボタンを押下して設定を保存します。
    data_center_entry_flow_114.png
  9. これで申請された場合にフローが実行されます。申請を行って試してみてください!

以上

3
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
6