LMIS フローを変更する
本章では、LMIS フローを変更する方法について説明します。
LMISが提供しているフローを変更すると、新しいフローとして保存されます。
保存したフローを従来のフローの代わりに使用する場合は、従来のフローを必ず無効化してください。
<目次>
フローの起動条件を変更する
LMIS フローは、プロセスのはじめから最後までを1つのフローで設定することを推奨します。
起動条件には、以下のような項目を利用した条件を設定することを推奨します。
問い合わせ種別、申請種別など(セルフサービスポータルをご利用の場合)
レイアウト名(LMIS コンシェルジュをご利用の場合)
レコードタイプ
本例では、インシデント管理にて、起動条件に「問い合わせ種別」を利用する例を説明します。
1.「インシデント管理_標準」フローを表示します。フローの起点の[レコードトリガーフロー]の[編集]をクリックします。
2.フローの開始条件が表示されます。エントリ条件を以下のように設定します。
項目 | 演算子 | 値 |
|---|---|---|
既存ワークフロー制御フラグ | 次の文字列と一致する | 「ON」を設定してください。 |
LMIS フローの起動制御 | 変更済み | 「True」を設定してください。 |
LMIS フローの起動制御 | 以上 | 「1」を設定してください。 |
問い合わせ種別 | 次の文字列と一致する | 任意の内容を設定します。 本例では「標準」を設定します。この場合、問い合わせ種別が「標準」のレコードでフローが起動します。 |
これで、フローの起動条件を変更する手順は完了です。
レコードを作成したときの処理を変更する
以下のような方法で、レコードを作成したときの状態を判定することができます。
エスカレーションされたレコード
「エスカレーションフラグ」項目:ON
コピーされたレコード
「コピー登録フラグ」項目:ON
セルフサービスポータルから登録されたレコード
「コミュニティ名」項目:空白
「問い合わせ元取引先」項目:レコードを登録した取引先
LMIS コンシェルジュから登録されたレコード
「コミュニティ名」項目:登録元のサイト名※サイト名の詳細は、マニュアル「LMISコンシェルジュ構築ガイド LMISコンシェルジュを作成する 」を参照してください。
「問い合わせ元取引先」項目:レコードを登録した取引先
メール連携やデータ連携ツール、Salesforce Dataloaderなどで登録されたレコード
標準で判定できる項目は用意されていません。
登録するレコード内容を判定できる項目を用意して、判定に使用してください。
本例では、変更管理レコードがエスカレーションされて作成されたときに、値を追加で設定する例を説明します。
1.「変更管理_標準」フローを表示します。「新規作成」の分岐条件を表示します。
本フローには、新規作成時の操作で「変更要求」に関する処理が設定済みです。
2.「変更要求」に関する処理の前後いずれかに[決定]要素を追加します。
本例では、「変更要求」の処理の前に処理を追加します。
3.[決定]要素の結果に、以下のように設定します。
項目 | 演算子 | 値 |
|---|---|---|
「エスカレーションフラグ」を設定します。 「{!$Record.SMOC__ox_sel_escalationFlg__c}」と入力できます | 次の文字列と一致する | 「ON」を選択します。 |
4.エスカレーションが実施されて作成された場合の分岐条件が作成されます。
「エスカレーションあり」の要素に[割り当て]要素を追加します。
5.[割り当て]要素に、レコードへの変更内容を入力します。
変数への割り当ては、必ず「UpsertRecord」変数に実施してください。
これで、レコードを作成したときの処理を変更する手順は完了です。
アクションを実行したときの処理を変更する
LMIS フローでは、アクションを判定するための便利な方法が標準で備わっています。
詳細は「LMIS フロー変数の早見表 」を参照してください。
本例では、イベント管理からインシデント登録アクションを実行したときの例を説明します。
1.「イベント管理_標準」フローを表示します。「ステータス」の分岐条件を表示します。
2.「確認待ち」ステータスで、インシデント登録アクションを実施したときの操作を設定します。
「確認待ち」の下部にある「アクション」をクリックします。
本例は「確認待ち」ステータスでアクションを実施したときの例です。
すべてのステータスで共通の操作を行いたい場合は、以下の場所でインシデント登録アクションの判定を実施します。
3.[結果]セクションで結果を以下の内容で追加します。
リソース | 演算子 | 値 |
|---|---|---|
「isAction_IncidentRegistration」変数を設定します。 詳細は「LMIS フロー変数の早見表 」を参照してください。 | 次の文字列と一致する | 「True」を設定します。 |
4.「インシデント登録」アクションが実施された場合の分岐条件が作成されます。
「インシデント登録」の要素に[割り当て]要素を追加します。
変数への割り当ては、必ず「UpsertRecord」変数に実施してください。
これで、アクションを実行したときの処理を変更する手順は完了です。
ステータス・承認処理を変更する
ステータスを追加、または削除してステータスの進行を変更したい場合は、
「次へ」アクションを使用して、次のステータスへ進行させるフローを作成します。
本例では、タスクのステータスを、開始・作業・レビュー・完了の4つに修正する例を説明します。
ステータスの作成については、「承認階層のステータスを追加する 」あわせて参照してください。
本例では、以下のようなステータス、ステータス値を使用します。「レビュー」ステータスを作成しているものとして、手順を説明します。
ステータス | ステータス値 | 説明 |
|---|---|---|
開始 | 0 | 本ステータスは標準で作成済みです。 |
作業 | 100 | 本ステータスは標準で作成済みです。 |
レビュー | 200 | 本ステータスを新規に作成してください。 |
完了 | 1000 | 本ステータスは標準で作成済みです。 |
1.「タスク_標準」フローを表示します。
2.「新規作成」時の設定内容を、以下に示します。
設定のポイント | 設定概要 |
|---|---|
承認処理の修正 | 承認処理を、「レビュー」ステータスで実施するように設定します。 本フローには、新規作成時の割り当て要素「作成時初期設定」がありますので、「承認開始ステータス値」の割り当て内容を「200」に変更します。 変数への割り当ては、必ず「UpsertRecord」変数に実施してください。 |
3.「更新」時の設定内容を、以下に示します。
設定のポイント | 設定概要 |
|---|---|
ステータス分岐 | ステータスの分岐処理に、「レビュー」ステータスの結果を追加します。 「レビュー」ステータスの判定は、「ステータス値」で行います。値には「200」を設定します。 |
ステータス進行 | 「開始」ステータスで、「次へ」アクションを実行したときの操作を設定します。 [割り当て]要素を使用して、進行先の「ステータス」と「ステータス値」を設定します。 変数への割り当ては、必ず「UpsertRecord」変数に実施してください。 |
「作業」ステータスで、「次へ」アクションを実行したときの操作を設定します | |
「作業」ステータスで、「承認依頼」アクションを実行したときの操作を設定します。 | |
「レビュー」ステータスで、「承認」アクションを実行したときの操作を設定します。 あらかじめ作成する予定の分岐条件も設定しておきます。 [承認]アクションの処理は、標準の承認処理の割り当て要素を複製すると便利です。 | |
「レビュー」ステータスで、「依頼取消」アクションを実行したときの操作を設定します。 本例では、再度実施する可能性のある承認者の再設定のために、「承認者の決定」を「True」に設定しています。 | |
「レビュー」ステータスで、「否認」アクションを実行したときの操作を設定します。 この操作は、「レビュー」ステータスで、「依頼取消」アクションを実行したときと同じ操作でよいので、さきほど作成した要素と「接続」して同じ操作を行う設定をします。 [要素を接続]をクリックして、同じ操作をさせる要素「否認」を選択します。 要素が接続されます。これで、「依頼取消」を実施したときに「否認」と同じ操作が実施されます。 |
設定後のフローは以下のようになります。
これで、ステータスや承認処理を変更する手順は完了です。
関連するレコードを変更する
本例では、インシデント管理の完了時に関連するイベント管理レコードを更新する例を説明します。
インシデント管理は、「対策」ステータスで承認を完了した際にステータスが「完了」となります。
本例では、「対策」ステータスから「完了」ステータスになった際に追加のフロー処理を設定します。
1.「インシデント管理_標準」フローを表示します。「ステータス」の分岐条件を表示します。
「対策」ステータスで、承認を完了したときに追加の操作を設定します。設定箇所は以下になります。
2.[レコードを更新]要素を追加します。以下のように設定します。
セクション/項目 | 値 |
|---|---|
更新するレコードを検索してその値を設定する方法 | 「フローをトリガーした インシデント管理 レコードに関連するレコードを更新」を設定してください。 |
関連レコードを選択/インシデント管理 に関連するレコード | 「トリガー SMOC__ox_obj_incident__c > 関連イベント」を設定してください。 「{!$Record.SMOC__ox_ref_evtNumber__r}」と入力できます。 |
検索条件を設定 | 更新を実施するイベント管理レコードの条件を設定します。 本例では、「ステータス」が「完了」以外のイベント管理を更新する設定を行います。 |
イベント管理の項目値を レコード に設定 | イベント管理レコードの更新内容を設定します。 |
設定後のフローは以下のようになります。
これで、関連するレコードを更新する手順は完了です。
フローからメールを送信する
本例では、問題管理の完了時にメールを送信する例を説明します。
問題管理は、「調査」ステータスで承認を完了した際にステータスが「完了」となります。
本例では、「調査」ステータスから「完了」ステータスになった際に追加のフロー処理を設定します。メール送信処理は、トリガーレコードの更新後に実施することが推奨されます。本例では、以下の手順でメール送信の設定を行います。
ステータスが完了になった際に、メール送信の実行を管理する変数を設定する
レコードの更新が完了後に、上記の変数が設定されている場合はメールを送信する
1.[新規リソース]ボタンをクリックして、メール送信の実行を管理する変数を作成します。以下のように設定します。
2.「問題管理_標準」フローを表示します。「ステータス」の分岐条件を表示します。
「調査」ステータスで、承認を完了したときに追加の操作を設定します。設定箇所は以下になります。
3.[割り当て]要素を追加します。以下のように設定します。
変数 | 演算子 | 値 |
|---|---|---|
「SendEmail」を設定します。 | 次の文字列と一致する | 「True」を設定します。 |
4.レコード更新後にメール送信処理を設定します。設定箇所は以下になります。
5.レコード更新処理の[決定]要素を追加します。[結果]の条件に、以下のように設定します。
リソース | 演算子 | 値 |
|---|---|---|
「SendEmail」を設定します。 | 次の文字列と一致する | 「True」を設定します。 |
6.メール送信処理を追加します。[メールアラートを送信]要素を追加して、使用するメールアラートを選択します。
メールを送信する際、[メールアラートを送信]要素のほかに、[メールを送信]アクションを使用することもできます。
本例では、[メールアラートを送信]要素を使用した例を説明します。
メールアラートを選択後に、以下のように設定します。
カスタムオブジェクト ID |
|---|
「UpsertRecord > カスタムオブジェクト ID」を設定します。 「{!UpsertRecord.Id}」と入力できます。 |
これで、フローからメールを送信する手順は完了です。
フローからサブフローを実行する
フローからサブフローを実行する内容については、「フローからサブフローを実行する 」を参照してください。
非同期に起動するフローを設定する
以下のようなケースで、レコードの保存後に非同期に起動するフローを作成する必要があります。
外部のサービスと連携する操作(「外部AIサービス連携サブフロー 」などの、外部サービスを使用するサブフローを実行する操作も含まれます)
「ユーザー」など、他のオブジェクトレコードと同時に操作できないレコードの操作
非同期に起動するフローの処理は、非同期パスに設定します。
非同期パスで行う処理には、以下の制約があります。
フローの非同期パス内でレコードの作成、更新、削除処理を実施した後に、外部のサービスへのコールアウトを実施することはできません。
外部サービスへのコールアウトを同一のフロー内で複数回実施すると、実行がタイムアウトして処理が中止されることがあります。
複数のコールアウトを実施する場合は、コールアウトごとにフローを分割してタイムアウトの発生を予防します。
本例では、タスク管理のフローに非同期パスを設定する例を説明します。
1.フローの起点の[レコードトリガーフロー]の[編集]をクリックします。
2.設定画面を下までスクロールします。[非同期パスを追加]項目を有効状態に変更します。
3.通常の[即時実行]パスに加えて、[非同期に実行]パス(非同期パス)が追加されます。
任意の処理を非同期パスに追加することができます。
フローの非同期パス内でトリガーレコードを更新すると、フローがループ起動することがあります。
トリガーレコードを更新する場合は、以下のように設定することで、ループ起動を防ぐことができます。
「LMIS フローの起動制御」項目に「Flow_Terminate」変数を設定します。
これで、非同期に起動するフローを設定する手順は完了です。
参考情報
承認処理に関する内容については、「承認者、承認フローの設定 」もあわせて参照してください。
各プロセスのステータスについては、「プロセスのステータス、ステータス値一覧 」を参照してください。
外部サービスと連携するサブフローについては、「外部AIサービス連携サブフロー 」もあわせて参照してください。