Installed with Asset Management
Several tables, user roles, UI policies, script includes, client scripts, and business rules are installed with Asset Management.
Demo data is available with asset management. The demo data provides information such as users, assets, and individual stockrooms.
Tables
Asset Management includes the following tables.
| Table | Description |
|---|---|
| Asset [alm_asset] | Stores general, financial, and contractual information about assets. |
| Asset Entitlement [alm_entitlement_asset] | Enables ServiceNow to categorize the Asset Entitlement table and enforce how entitlements behave. |
| Consumable [alm_consumable] | Stores data about consumable assets (previously known as parts). |
| Default Stockroom [alm_user_stockroom] | Stores the relationship between a user and their default stockroom. |
| Fixed Assets [alm_fixed_assets] | Stores fixed assets, which are containers that can hold multiple assets. |
| Fixed asset to asset [m2m_fixed_asset_to_asset] | Stores associations between fixed assets and assets. |
| Hardware [alm_hardware] | Stores general, financial, and contractual information about hardware assets. |
| License Entitlement [alm_entitlement] | Stores entitlements that permit users or machines to use a software license. |
| Software License [alm_license] | Stores general, financial, and contractual information about software license assets. |
| Stock Rule [alm_stock_rule] | Transfers stock or sends an email message to the asset manager when a specified asset drops below a set threshold. |
| Stockroom [alm_stockroom] | Stores information about stockrooms. |
| Stockroom Model [alm_m2m_stockroom_model] | Tracks all models that have ever been stocked in a stockroom. This table is automatically populated. |
| Stockroom Type [alm_stockroom_type] | Stores general information about stockroom types. |
| Transfer Order [alm_transfer_order] | Contains data about transfer orders, including the state and
stockrooms. Note: The inventory_user, asset, or procurement_user role can only
access the reports. You must activate the Procurement (com.snc.procurement)
plugin for the inventory_user, asset, and procurement_user roles. |
| Transfer Order Line [alm_transfer_order_line] | Contains data about individual assets being shipped with a transfer order. |
| User Entitlement [alm_entitlement_user] | Enables ServiceNow to categorize the User Entitlement table and enforce how entitlements behave. |
User roles
Asset Management includes the following user roles.
| Role | Contains roles | Tasks |
|---|---|---|
| asset (Asset Manager) |
|
|
| inventory_admin | inventory user |
|
| inventory_user | none |
|
| sam |
|
|
UI policies
Asset Management includes the following UI policies.
| Name | Table | Description |
|---|---|---|
| Hide asset tag and serial num | [alm_asset] | Hides the asset tag when the asset is pre-allocated and the quantity is greater than 1. |
| Hide/show parent stockroom on Stockroom Replenish | [alm_stock_rule] | Shows the Parent stockroom field only when the Restocking option field is set to Stockroom. |
| Make allocated to and assigned to required. | License Entitlement [alm_entitlement] | Makes the Allocated to and Assigned to fields required. |
| Make substatus read-only when not required | [alm_asset] | Sets the Substatus to read-only if the State is On order, In use, Consumed, or In maintenance. |
| Model bundle field hidden but present for UI Policy conditions purposes | [alm_asset] | Hides the Model Bundle field. Exists on page only for use by UI policies and client scripts. |
| Pre-allocated constraints | [alm_asset] | Hides unneeded fields and related lists when the asset is pre-allocated. |
| Quantity readonly until model and category qualify the asset and are not bundle | [alm_asset] | Sets the Quantity field to read-only for assets that aren’t consumable, software, or pre-allocated. Quantity is also read-only if the model or model category fields are empty. |
| Show 'Assigned to' | [alm_asset] | Shows the Assigned to field if the State field is notOn order, In stock, or In transit. |
| Show 'Reserved for' | [alm_asset] | Shows the Reserved for field if the State field is On order, In stock, or In transit. |
| Show 'Stockroom' | [alm_asset] | Shows the Stockroom field if either of the following conditions is true:
|
Script includes
Asset Management includes the following script includes.
| Name | Description |
|---|---|
| AssetandCI | Code for creating and managing the relationship between asset and CI records. |
| AssetAndCISynchronizer | Synchronization code between asset and CI records. |
| AssetUtils | Utility functions for asset management. Also checks if a license can be merged and then merges licenses if requirements are met. |
| AssetUtilsAJAX | AJAX-based utility functions for asset management. Call the AssetUtils script include from a client-side UI action. |
| Consumables | Code to change (for example, consume, split, and merge) consumables. |
| FixedAssetUtils | Methods for rolling up fixed asset costs. |
| PortalFilters | Filters used in the My Assets portal. |
| PreAllocatedAssets | Code to change pre-allocated assets. |
| StockRuleFilters | Reference qualifier code for filtering options on reference fields on stock rules. |
| StockRuleTransfer | Transfer order creation code for when stock rules are triggered. |
| TransferOrderDateTimeAjax | Date comparison utility for transfer orders. |
| TransferOrderFilters | Reference qualifier code for reference field filtering options on transfer orders. |
| TransferOrderFinder | Finds an appropriate transfer order to put a transfer order line into. |
| TransferOrderHelper | Function that checks if a transfer order has multiple transfer order lines. |
| TransferOrderLineFilters | Reference qualifier code for reference field filtering options on transfer order lines. |
| TransferOrderReceiver | Code for receiving a transfer order line. |
| TransferOrderReturn | Code for returning a transfer order line. |
| TransferOrderStageHandler | Code for changing transfer order stages and transfer order line stages. |
| TransferOrderStageHelper | Helper method to get numeric stages for transfer orders and transfer order lines. |
Client scripts
Asset Management includes the following client scripts.
| Name | Table | Description |
|---|---|---|
| Correct substatus | [alm_asset] | Updates the Substatus field when the Status field is modified. |
| Ensure no negative quantity | [alm_asset] | Clears the Quantity field when set to less than 1. |
| Error on pre-allocated substatus | [alm_consumable] | Prevents Substatus field from being set to be Pre-allocated for consumable assets. Also displays an error message. |
| Error on pre-allocated substatus | [alm_license] | Prevents Substatus field from being set to be Pre-allocated for license assets. Also displays an error message. |
| Null out allocated_to | [alm_entitlement] | Does the following when the Assigned to field is set:
|
| Null out assigned_to | [alm_entitlement] | Does the following when the Allocated to field is set:
|
| Salvage must be less than cost | [alm_asset] | Displays a warning if a salvage value greater than the cost of an asset is entered. |
| Set Cost of the Asset | [alm_asset] | Populates the Cost field when the Model field is set. |
| Set Loc/CC/Dep/Com from assigned to | [alm_asset] | Populates the Location, Cost center, Department, and Company fields when the Assigned to field is set. |
| Set Location from stockroom | [alm_asset] | Populates the Location field when the Stockroom field is set. |
| Update From Location from Stockroom | [alm_transfer_order] | Populates the From location field when the From stockroom field is set. |
| Update Model and Quantity based on Asset | [alm_transfer_order_line] | Populates the Model field when the Asset field is set. If the asset is a pre-allocated asset, this client script also populates the Quantity field. |
| Update To Location from Stockroom | [alm_transfer_order] | Populates the To location field when the To stockroom field is set. |
| Update UI on load and model change | [alm_transfer_order_line] | Runs checks, and updates the user interface, when the transfer order line form is loaded and when a model is selected. |
| Validate Delivery by Date | [alm_transfer_order] | Validates that the delivery date is in the future. |
| Verify Stock Available | [alm_transfer_order_line] | Verifies that stock exists to fulfill the quantity requested. |
| Verify Stock Available (Stockroom) | [alm_transfer_order_line] | Verifies that stock exists to fulfill the quantity requested when the From stockroom value changes. |
Business rules
Asset Management includes the following business rules.
| Name | Table | Description |
|---|---|---|
| Allocated more licenses than rights | Software License [alm_license] | Prevents creation or update of a license if the number of licenses allocated is larger than the total rights. |
| Asset Retirement | Asset [alm_asset] | Clears the Assigned to, Stockroom, and Reserved for fields and sets the retirement date to the current time when the asset is retired. |
| Automatically Change TOL State | Transfer Order Line [alm_transfer_order_line] | If a transfer order has the same From stockroom and To stockroom and it’s a
personal stockroom, this business rule:
If a transfer order has the same From stockroom and To stockroom and it
isn’t a personal stockroom, this business rule:
|
| Build bundle components on Insert | Asset [alm_asset] | Creates assets for the components related to a bundle if the model of the created asset is a bundle. |
| Clear Assigned To on update | Asset [alm_asset] | Clears the Assigned to field if the State field changes to On order, In stock, or In transit. |
| Clear fields irrelevant for preallocated | Asset [alm_asset] | Clears the value of fields that are irrelevant for pre-allocated assets. |
| Create Asset on insert | Configuration Items [cmdb_ci] | Creates a corresponding asset when a new configuration item with no asset is created. |
| Create asset on model change | Configuration Items [cmdb_ci] | Creates a new associated asset when the Model ID field changes. |
| Create CI on insert | Asset [alm_asset] | Creates a corresponding configuration item when a new asset with no configuration item is created. |
| Create Stockroom Model Relation | Asset [alm_asset] | Creates a record (if none exists) in the Stockroom Model table indicating the stockroom that holds the model when an asset is created or updated. |
| Delete all Transfer Order Lines | Transfer Order [alm_transfer_order] | Deletes all related transfer order lines when a transfer order is deleted. |
| Ensure Entitlements do not exceed rights | License Entitlement [alm_entitlement] | Checks that the total number of entitlements for the related license doesn’t exceed the number of rights given by the license when an entitlement is created. |
| GenerateAssets | Model Categories [cmdb_model_category] | Executes a scheduled script job to create assets for configuration items. |
| Inherit information from parent | Asset [alm_asset] | Assigns some parent values to the asset when assigning a new parent to an asset. |
| Managed Stockroom for Vendor | Stock Rule [alm_stock_rule] | Validates that a vendor replenishing stock rule has a stockroom selected and the stockroom has an related manager with a valid email address. |
| Mandate allocated to or assigned to | License Entitlement [alm_entitlement] | Makes a value in either the Allocated to field or the Assigned to field required. |
| Merge Records | Consumable [alm_consumable] | Merges consumables that have matching fields and aren’t In Transit into one record containing the total count. |
| Null out asset on insert and stay | Configuration Items [cmdb_ci] | Clears the Asset field on insert when the field includes an asset that has a CI. |
| Null out Ci on insert and stay | Asset [alm_asset] | Nulls out the asset field so a new asset is created for the CI when an insert is performed on an existing CI. |
| Populate reserved for field | Transfer Order Line [alm_transfer_order_line] | If the transfer order line has an related request line, this business rule populates the related asset's Reserved for field with the appropriate information from the request line. |
| Push Status to Asset/Consumable | Transfer Order Line [alm_transfer_order_line] | Changes the corresponding asset to reflect the current state of transit when a transfer order line moves to another state. |
| Release Asset on TOL cancel/delete | Transfer Order Line [alm_transfer_order_line] | Places the corresponding asset back into stock and unsources the part requirement when a transfer order line in the draft state is canceled or deleted. |
| Rollup TOL cancellation to TO | Transfer Order Line [alm_transfer_order_line] | Signals to the corresponding transfer order that the transfer order line has been canceled. |
| Salvage value must be less than cost | Asset [alm_asset] | Prevents saving an asset record if the salvage value is greater than the cost. |
| Sanity check on pre-allocated | Asset [alm_asset] | Prevents creation or update of pre-allocated assets if they don’t satisfy the conditions to be pre-allocated. |
| Set Class | License Entitlement [alm_entitlement] | Sets the class for this entitlement depending on the entitlement is assigned or allocated. |
| Set Transfer Order Type | Transfer Order [alm_transfer_order] | Sets the type of the transfer order depending on whether there’s a related service order or work order task. |
| Sync model category | Product Models [cmdb_model] | When the model category changes, this business rule creates assets if they didn’t previously exist for configuration items associated with the model. |
| Transfer Order Stockroom Rules | Transfer Order [alm_transfer_order] | Prevents the From stockroom field from being changed if the transfer order has multiple transfer order lines. |
| Transition reserved to assigned | Asset [alm_asset] | Populates the Assigned to field with the value from the Reserved for field when the asset is in the appropriate state. |
| Trickle information down to components | Asset [alm_asset] | Updates components of an asset to reflect any changes that have been made to the asset record. |
| Update Asset fields on change | Configuration Items [cmdb_ci] | Synchronizes fields so changes made on the Configuration Item form trigger the same update on the corresponding Asset form, ensuring consistent reporting. You must update statuses on the Asset form. |
| Update CI fields on change | Asset [alm_asset] | Synchronizes fields so changes made on the Asset form trigger the same update on the corresponding Configuration Item form, ensuring consistent reporting. |
| Update location as needed | Asset [alm_asset] | Updates the location of the asset, if the asset is set to a new stockroom or assigned to a new user. |
| Validate Field Agent Type | Stockroom [alm_stockroom] | Ensures that you don’t create a stockroom of the type Field Agent without Work Management or Field Service Management activated. Allows for only one personal stockroom per user. |
| Validate TOL and check availability | Transfer Order Line [alm_transfer_order_line] | Validates changes made to the transfer order line and checks the availability of the assets to be transferred in the specified stockroom. |
| Validate transfer order | Transfer Order [alm_transfer_order] | Validates that the Delivery by date isn’t earlier than the current date. |
| Validate Unique Users | Default Stockroom [alm_user_stockroom] | Prevents the creation of multiple records with the same user. |
| Verify Entitlement (Allocated) | License Entitlement [alm_entitlement] | Ensures that the allocation of the entitlement follows the allocation condition on the license when a condition exists. |
| Verify Entitlement (Assigned) | License Entitlement [alm_entitlement] | Ensures that the assignee of the entitlement follows the assignment condition on the license when a condition exists. |
| Verify Entitlements (Allocated) | Software License [alm_license] | Ensures that the allocations of all the license's entitlements follow the allocation condition on the license when a condition exists. |
| Verify Entitlements (Assigned) | Software License [alm_license] | Ensures that the assignees of all the license's entitlements follow the assignment condition on the license when a condition exists. |
| Verify Not Field Agent | Default Stockroom [alm_user_stockroom] | Verifies that the selected default stockroom isn’t of the Field Agent type. |