Request Management のアーキテクチャ
Request Management を使用すると、定義されたフローに基づいてカタログアイテムを要求して実行できます。
Request Management の階層
Service Catalog は、Request Management プロセスの出発点です。Request Management プロセスは、カタログアイテム [sc_cat_item] テーブルからのカタログアイテムが要求されたときのみトリガーされます。
ユーザーがカタログアイテムに対する要求を送信すると、レコードは次の階層で生成されます。
注:
変数は、要求アイテム [sc_req_item] テーブルにのみ関連付けられます。変数は拡張テーブルではサポートされていません。
注:
Request Management を構成するとき:
- データモデルは、要求、要求アイテム、カタログタスクなどの Request Management オブジェクトを生成するレコードプロデューサーをサポートしません。したがって、レコードプロデューサーを使用して次の Request Management テーブルやその拡張テーブルにレコードを挿入しないでください。
- 要求 [sc_request]
- 要求アイテム [sc_req_item]
- カタログタスク [sc_task]
- 次のテーブルの
beforeトリガーを含むビジネスルールを作成しないでください。- 要求 [sc_request]
- 要求アイテム [sc_req_item]
- 買い物かご [sc_cart]
- 買い物かごアイテム [sc_cart_item]
Request Management のプロセス
- カタログアイテムが買い物かごに追加されずに直接注文される
- カタログアイテムを買い物かごに追加せずに直接注文または要求すると、次の手順が実行されます。
- 一時的な買い物かご sc_cart が作成されます。
- カタログアイテムと変数 (ユーザーが入力した値) が、買い物かごアイテム [sc_cart_item] テーブルのレコードとして一時的な買い物かごに追加されます。
- それらの変数は、オプション [sc_item_option] テーブルおよび変数所有権 [sc_item_option_mtom] テーブルに保存されます。
- 次の手順を実行して、一時的な買い物かごをチェックアウトします。
- 要求 [sc_request] テーブル内のレコードは初期化されますが、データベース内でコミットはされていません。
- 要求アイテム [sc_req_item] テーブル内のレコードは初期化されますが、データベース内でコミットはされていません。
- 要求アイテム [sc_req_item] テーブルの要求参照レコードが、要求 [sc_request] テーブルレコードで更新されます。
- オプション [sc_item_option] テーブルおよび変数所有権 [sc_item_option_mtom] テーブルの変数レコードが、要求アイテム [sc_req_item] テーブルレコードに基づいて更新されます。
- 要求アイテム [sc_req_item] テーブルレコードが、データベース内でコミットされます。
- 要求 [sc_request] テーブルレコードが、データベース内でコミットされます。
- アイテムを買い物かごに追加した後で要求が送信される
- カタログアイテムが買い物かごに追加され、要求がチェックアウトプロセスを使用して送信された場合、デフォルトの買い物かごがチェックアウトされます。
前のシナリオ (カタログアイテムが買い物かごに追加されずに直接注文される) で説明したすべての手順が適用されます。ただし、複数のカタログアイテムが買い物かごに追加されている場合は、アイテムごとに手順 b から手順 e が繰り返されます。
- 注文ガイドを使用して要求が送信される
- 2 ステップ注文ガイドのチェックアウトの場合は、すべてのアイテムに一時的な買い物かごが使用されます。3 ステップ注文ガイドのチェックアウトの場合は、アイテムにはデフォルトの買い物かごが使用されます。
前のシナリオ (カタログアイテムが買い物かごに追加されずに直接注文される) で説明したすべての手順が適用されます。
注:
要求に添付されたベースシステムワークフローはデモデータです。