Request Management architecture
Summarize
Summary of Request Management architecture
Request Management in ServiceNow enables users to request and fulfill catalog items through defined workflows. The process begins from the Service Catalog where users select catalog items to order.
Show less
Requests are generated based on catalog items from the Catalog Item [sccatitem] table. When an item is requested, the system creates related records in a hierarchical structure involving requests, requested items, and catalog tasks. Variables entered by users are associated only with the Requested Item [screqitem] table and are not supported on extended tables.
Key Architectural Considerations
- Record producers should not be used to generate request management records such as Request [screquest], Request Item [screqitem], or Catalog Task [sctask].
- Business rules with the before trigger should not be created on tables Request [screquest], Request Item [screqitem], Cart [sccart], or Cart Item [sccartitem] to avoid conflicts with system processes.
Request Management Process
Ordering a Catalog Item Directly
- A temporary cart (sccart) is created when a catalog item is ordered directly without adding it to a permanent cart.
- The catalog item and user-entered variables are added as records to the Cart Item [sccartitem] table.
- Variables are stored in the Options [scitemoption] and Variable Ownership [scitemoptionmtom] tables.
- During checkout, records in Request [screquest] and Request Item [screqitem] tables are initialized and linked, then committed to the database.
- Variable records are updated to associate with the committed request item.
Submitting a Request After Adding Items to the Cart
- If multiple items are added to the cart before checkout, the system repeats the process for each item individually, ensuring each requested item is properly recorded and linked.
- The default cart is checked out, applying the same steps as ordering an item directly.
Submitting a Request Using an Order Guide
- For two-step order guide checkouts, a temporary cart is used for all items.
- For three-step order guide checkouts, the default cart is used.
- All other processing steps align with the direct order process described above.
Additional Notes
- The base workflow attached to the request is demo data and can be customized.
- Related tasks include creating catalog requests in Agent Workspace and from Universal Request interfaces.
Request Management allows catalog items to be requested and fulfilled based on defined flows.
Request Management hierarchy
Service Catalog is the starting point of the request management process. The request management process is triggered only when a catalog item from the Catalog Item [sc_cat_item] table is requested.
When a user submits a request for a catalog item, records are generated in the following hierarchy.
- The data model does not support a record producer generating request management objects
such as request, request item, and catalog task. Hence, do not use a record producer to
insert records in the following request management tables or their extensions:
- Request [sc_request]
- Request Item [sc_req_item]
- Catalog Task [sc_task]
- Do not write business rules with the
beforetrigger for the following tables:- Request [sc_request]
- Request Item [sc_req_item]
- Cart [sc_cart]
- Cart Item [sc_cart_item]
Request management process
- Catalog item is ordered directly without adding it to the cart
- When a catalog item is ordered or requested directly without adding it to the cart, the
following steps are performed:
- A temporary cart, sc_cart, is created.
- The catalog item along with the variables (values entered by the user) is added to the temporary cart as a record in the Cart Item [sc_cart_item] table.
- The variables are saved in the Options [sc_item_option] and Variable Ownership [sc_item_option_mtom] tables.
- The temporary cart is checked out by performing these steps.
- A record in the Request [sc_request] table is initialized but not committed in the database.
- A record in Request Item [sc_req_item] table is initialized but not committed in the database.
- The request reference for the Request Item [sc_req_item] table record is updated with the Request [sc_request] table record.
- The variables record in the Options [sc_item_option] and Variable Ownership [sc_item_option_mtom] tables are updated based on the Request Item [sc_req_item] table record.
- The Request Item [sc_req_item] table record is committed in the database.
- The Request [sc_request] table record is committed in the database.
- Request is submitted after adding the item to the cart
- If a catalog item is added to the cart and the request is submitted using the checkout
process, the default cart is checked out.
All steps mentioned in the preceding scenario, Catalog item is ordered directly without adding it to the cart, are applicable. However, if multiple catalog items are added to the cart, step b to step e are repeated for each item.
- Request is submitted using an order guide
- For a two-step order guide checkout, the temporary cart is used for all items. For a
three-step order guide checkout, the default cart is used for the items.
All steps mentioned in the preceding scenario, Catalog item is ordered directly without adding it to the cart, are applicable.