Update Occupant Features (Indoors Tools)
Summary
Updates the Occupants feature class that conforms to the ArcGIS Indoors Information Model.
This tool updates the Occupants feature class created using the Create Indoors Database tool. Updating occupant features may be necessary when new occupants need to be added, existing occupants need to be deleted, or existing occupant information needs to be modified based on changes to seating assignments or floor plans. The updated Occupants feature class can be used to support indoor analysis and functionality—such as searching, routing, and workspace reservations in Indoors Viewer and Indoors Mobile—and space planning in Indoors Space Planner.
Usage
The input occupant table must include the
KNOWNASandEMAILfields. You can also include the following fields to enhance the Space Planner app experience or additional fields that include information you want to be populated and maintained in the Occupants layer:ORG_LEVEL_1,ORG_LEVEL_2,JOB_TITLE,START_DATE, andSITE_ID.The table below lists the required and optional fields for the input occupant table.
Field
Description
Is required
KNOWNASThe first and last name most likely to be used when searching for an occupant.
Yes
EMAILThe occupant's email address.
Yes
ORG_LEVEL_1The occupant's department.
No
ORG_LEVEL_2The occupant's team.
No
JOB_TITLEThe occupant's job title.
No
START_DATEThe occupant's start date.
No
SITE_IDThe occupant's associated site. Values in this field must match those in the
SITE_IDfield in the Sites feature class from the Indoors model.No
Note:
The
SITE_IDfield will only be populated if you map theSITE_IDfield using the Occupant Attributes Mapping parameter. If this field is not mapped, the occupantSITE_IDfield value will remain NULL. All other fields will be mapped by default if the name of the field in the input table matches the name of the field in the Occupants layer.You can store multiple assignments for occupants in multiple columns in the input occupant table. The following is an example of an assignment with multiple columns:

The tool supports loading occupants that are not assigned to a space. If the field identified in the Unit Identifier (Input Occupant Table) parameter has a NULL or empty value, the occupant will be loaded as unassigned (they will not be assigned to a unit). Occupants assigned to units in the input occupant table that are defined as hotels, hot desks, or not assignable units in the Units feature class will also be loaded as unassigned.
Note:
If the Occupant Unit Identifier Field parameter is empty (for a
.csvfile or an Excel sheet) or <NULL> (for a geodatabase table) and no home office is defined for the occupant, the occupant will be loaded as unassigned.The Home Office Identifier parameter supports loading occupants that are assigned to a home office. Use this parameter to define the field and field values in the input occupant table that indicates an occupant is assigned to a home office.
If the Home Office Identifier parameter is specified and the Target Occupant Features parameter value contains occupants who are assigned to a home office, they will be updated based on the information in the input table. If no parameter value is provided, occupants assigned to home offices in the Occupants layer will not be updated when you run the tool.
You can also use Space Planner to manage home office assignments.
A user can be assigned to multiple units in a single tool run.
Occupant information is added, deleted, and modified based on the unique occupant identifier field value.
Note:
The occupant identifier can be any field that contains information to uniquely identify each occupant. The recommended field is
EMAIL.The Target Occupant Features parameter value will have the following fields populated with corresponding values from the Input Occupant Table parameter value based on seating assignment changes or floor plan changes:
UNIT_IDUNIT_NAME(If the field exists in the Target Occupant Features parameter value.)LEVEL_IDSITE_ID(The field can be mapped with values from the input occupant table in the Occupant Attributes Mapping parameter.)
Note:
If no value is provided for the Unit Identifier (Input Occupant Table) parameter, only fields mapped in the Occupant Attributes Mapping parameter will be updated.
The Units layer's
ASSIGNMENT_TYPEvalue will be updated to display the occupancy status of the unit. If an occupant feature is assigned to a unit, that unit'sASSIGNMENT_TYPEvalue is set to Office. This field is used by Space Planner.If an update is made to the floor plan data after adding occupants to the Indoors model, the following occurs when the Update Occupant Features tool is run again:
If a unit no longer exists after a floor plan update, any occupants that are assigned to that unit will be unassigned.
If a unit's
ASSIGNMENT_TYPEfield value has changed toNot Assignableafter a floor plan update, any occupants assigned to the unit will be unassigned.If an occupant feature is no longer located within the unit to which they are assigned after a floor plan update, the occupant feature will be moved back to the assigned unit centroid.
Note:
Updating occupant data to align with an updated floor plan does not require an input to the Input Occupant Table parameter.
You can run the tool periodically to update occupant data and change seating assignments or floor plans. You can also publish the tool as a geoprocessing service and run the tool using Microsoft Scheduler or CRON.
This tool creates a summary text file in the temp directory that is valid in the ArcGIS Pro session. To maintain a permanent record of the summary text file, you must save it in a folder outside the ArcGIS Pro session.
Parameters
| Label | Explanation | Data type |
|---|---|---|
|
Target Occupant Features |
The target feature layer, feature class, or feature service to which occupant records will be added, updated, or deleted. The input must contain unique values that identify each occupant and must conform to the Occupants feature class in the Indoors model. |
Feature Layer |
|
Input Unit Features (Optional) |
The input polygon features representing building spaces that may be occupied. The input must be a feature layer, feature class, or feature service that conforms to the Units feature class in the Indoors model. The centroid of each space will be used as the point location of the occupant or occupants. |
Feature Layer |
|
Input Occupant Table (Optional) |
The input table that contains information about building occupants. The input table must be a geodatabase table, a sheet in a Microsoft Excel workbook ( |
Table View |
|
Occupant Identifier (Target Occupant Features) (Optional) |
The field in the Target Occupant Features parameter value that will be used as the primary key to associate occupants with the Input Occupant Table parameter values. The field values must be unique. |
Field |
|
Occupant Identifier (Input Occupant Table) (Optional) |
The field in the Input Occupant Table parameter value that will be used as the primary key to associate occupants with the Target Occupant Features parameter values. The field values must be unique. |
Field |
|
Unit Identifier (Input Units Features) (Optional) |
The field in the Input Unit Features parameter value that stores the unique space identification information that will match the unit identifier from the Input Occupant Table parameter value. The field values must be unique. |
Field |
|
Unit Identifier (Input Occupant Table) (Optional) |
The field or fields in the Input Occupant Table parameter value that will be used as the primary key to associate occupant space assignment with the Input Unit Features parameter value. If a field value is empty, the occupant will be loaded as unassigned. This parameter supports multiple fields from an input occupant table that stores more than one space assignment of an occupant. Only the fields provided will be used to update the Occupants feature class. If no parameter value is provided, the occupant's seating assignments will not be updated in the Occupants feature class. Instead, the records in the Occupants feature class will be matched to records in the input occupant table, and attributes mapped in the Occupant Attributes Mapping parameter will be updated. |
Field |
|
Occupant Attributes Mapping (Optional) |
The attribute fields in the Target Occupant Features parameter value that will be populated with field values from the Input Occupant Table parameter value. The fields must exist in the Target Occupant Features parameter value before running the tool. It is recommended that you map fields from the Input Occupant Table parameter value to fields from the Target Occupant Features parameter value that have the same field type. |
Field Mappings |
|
Insert new occupants (Optional) |
Specifies whether unmatched occupant records for the Input Occupant Table parameter value will be added to the target occupant features layer.
|
Boolean |
|
Delete occupants not included in the Input Occupant Table (Optional) |
Specifies whether unmatched occupant records for the Input Occupant Table parameter value will be deleted from the target occupant features layer.
|
Boolean |
|
Home Office Identifier (Optional) |
A SQL query that defines the field and field value from the input occupant table that indicates an occupant is assigned to a home office. |
SQL Expression |
Derived output
| Label | Explanation | Data type |
|---|---|---|
|
Updated Occupant Features |
The updated version of the target occupant features used for this tool. |
Feature Layer |
Environments
Licensing information
- Basic: No
- Standard: No
- Advanced: Requires ArcGIS Indoors Pro or ArcGIS Indoors Maps