Discovery - How Location field is set for a CI | Why is the Location field empty on a CI? | How to set location for CIsSummaryThe current implementation sets Location details for CIs using two methods 1. If the CI has an Assignee (assigned_to field), discovery can source the location from the user's Location field post-update. e.g If a user "test" whose location = "INDIA" is set as the CI's assigned_to, the CI's location will be set to INDIA. Business rule script responsible for the behaviour: if(!current.assigned_to.location.nil()) { current.location = current.assigned_to.location;} Below is the link to check the business rule https://<YOUR_INSTANCE_NAME>.service-now.com/sys_script_list.do?sysparm_query=nameSTARTSWITHUpdate%20location%20as%20needed%5Ecollection%3Dcmdb_ci&sysparm_view= 2. When using a discovery schedule to discover the CI, Discovery will set the Location field of the CI from the Location set on the discovery schedule. Add the Location field to the form if it is missing from your view. Sensor script responsible for behaviour: * Retrieves the location of the current discovery. * @returns string|null The SysID of the Location for the current sensor or NULL if not found. */ getLocationID: function() { if (typeof(this._locationID) !== 'undefined') // initialized on demand by this method. return this._locationID; this._locationID = null; // initialize var scheduleGr = new GlideRecord('discovery_schedule'); if (!scheduleGr.get(g_status.scheduleID)) return null; if (!scheduleGr.location) return null; this._locationID = ''+scheduleGr.location.sys_id; return this._locationID; Below is the url to access sensor script responsible for above behaviour https://<YOUR-INSTANCE-NAME>.service-now.com/nav_to.do?uri=%2Fsys_script_include.do%3Fsys_id%3D778011130a0a0b2500c4595ad1d1d768 If the location was set by method #1, method #2 will not overwrite it and vice-versa. NOTE: Exact CI location cannot be fetched by discovery using an Out of Box feature.ReleaseALL