Обновить объекты пользователей рабочих мест (Indoors)

Доступно для организации ArcGIS, имеющей лицензию на дополнительный модуль Indoors.

Краткая информация

Обновляет класс пространственных объектов пользователей рабочих мест, соответствующий информационной модели ArcGIS Indoors.

Этот инструмент обновляет класс пространственных объектов пользователей рабочих мест, созданный с помощью инструмента Создать базу данных Indoors. Обновление объектов пользователей рабочих мест может быть необходимо, если нужно добавить пользователей рабочих мест, удалить существующих пользователей рабочих мест или изменить информацию о существующих пользователях рабочих мест на основании изменений назначения рабочих мест или поэтажных планов. Обновленный класс пространственных объектов пользователей рабочих мест может использоваться для поддержки анализа и функциональных возможностей - таких как поиск, маршрутизация и резервирование рабочего места в Indoor Viewer и Indoors Mobile, и планирования пространства в Indoor Space Planner.

Использование

  • Значение параметра Целевые объекты пользователей рабочих мест должно быть векторным слоем, классом пространственным объектов или сервисом объектов, в котором инструмент будет добавлять, изменять или удалять записи пользователей рабочих мест, который должен соответствовать Класс пространственных объектов пользователей рабочих мест в модели Indoors.

  • Значение параметра Входные объекты секций должен быть векторным слоем, классом пространственных объектов или сервисом объектов, который соответствует Класс пространственных объектов секций в модели Indoors.

  • Значение параметра Входная таблица пользователей рабочих мест должно быть таблицей базы геоданных, листом рабочей книги Microsoft Excel (файл .xls или .xlsx), текстовым файлом с разделителями-запятыми (.csv) или таблицей OLE DB.

  • Входная таблица пользователей рабочих мест должна включать поля KNOWNAS и EMAIL. Дополнительно вы можете включить следующие поля, чтобы улучшить интерфейс приложения Space Planner или любые дополнительные поля, которые включают информацию для наполнения и поддержки в классе пространственных объектов пользователей рабочих мест: ORG_LEVEL_1, ORG_LEVEL_2, JOB_TITLE, START_DATE и SITE_ID.

    Вы можете хранить несколько назначения для пользователей рабочих мест в нескольких столбцах во входной таблице пользователей рабочих мест. Ниже приведен пример назначений с несколькими столбцами:

    Таблица с несколькими столбцами назначений

    В таблице ниже перечислены требуемые и дополнительные поля для входной таблицы пользователей рабочих мест.

    Примечание:

    Поле SITE_ID заполняется, только если вы ставите в соответствие поле SITE_ID элементам управления согласованием полей инструмента. Если поле не поставлено в соответствие, значение поля пользователей рабочих мест SITE_ID будет оставаться NULL.

    ПолеОписаниеДопустимы пустые значения
    KNOWNAS

    Первое и последнее имя, которое чаще всего будет использовано при поиске пользователя рабочего места.

    Нет

    EMAIL

    Адрес электронной почты пользователя рабочего места.

    Нет

    ORG_LEVEL_1

    Первый уровень организации.

    Да

    ORG_LEVEL_2

    Вторая уровень организации.

    Да

    JOB_TITLE

    Должность пользователя рабочего места.

    Да

    START_DATE

    Дата начала пребывания пользователя рабочего места.

    Да

    SITE_ID

    Связанная с пользователем рабочего места площадка. Значения в этом поле должны совпадать со значениями в поле SITE_ID класса объектов Sites из модели Indoors.

    Да

    Подробнее о загрузке данных о рабочих мест

  • Инструмент поддерживает загрузку пользователей рабочих мест, не назначенных пространству. Если поле, идентифицируемое параметром Идентификатор секции (таблица пользователей рабочих мест), имеет пустое значение или значение NULL, пользователь рабочего места будет загружен как не назначенный (им не будет назначена секция). Пользователи рабочих мест, назначенные секциями во входной таблице пользователей рабочих мест, которые определены как отели, незакрепленные рабочие месте или не назначенные секции в классе пространственных объектов секций, будут также загружены как неназначенные.

    Примечание:

    Если параметр Поле идентификатора секции пользователя рабочего места пуст (для файла.csv или таблицы Excel) или <Null> (для таблицы базы геоданных), то пользователь рабочего места будет загружен как неназначенный.

  • Параметр Идентификатор секции (входная таблица пользователей рабочих мест) поддерживает несколько полей из входной таблицы пользователей рабочих мест, которая хранит более одного назначения места пользователю. Только заданные поля будут использоваться для обновления класса пространственных объектов пользователей.

    Если параметр Идентификатор секции (входная таблица пользователей рабочих мест) назначения рабочих мест не обновляются в классе объектов пользователей рабочих мест. Вместо этого записи в классе объектов пользователей рабочих мест будут сопоставлены с записями во входной таблице пользователей рабочих мест, и атрибуты, сопоставленные в параметре Сопоставление атрибутов пользователей рабочих мест обновляются.

  • Информация о пользователях добавляется, удаляется и изменяется на основании уникального значения поля идентификатора пользователя рабочего места.

    Примечание:

    Идентификатор пользователя рабочего места может быть любым полем, которое содержит информацию для уникальной идентификации любого пользователя. Рекомендуемое поле - EMAIL.

  • Значение параметра Целевые объекты пользователей рабочих мест будет иметь следующие поля, заполненные соответствующими значениями из параметра Входная таблица пользователей рабочих мест на основе изменений назначений мест или изменений поэтажных планов:

    • UNIT_ID
    • UNIT_NAME (Если существует в значении Целевые объекты пользователей рабочих мест.)
    • LEVEL_ID
    • SITE_ID (Может быть сопоставлено со значениями из значения Входная таблица пользователей рабочих мест в параметре Сопоставление атрибутов пользователей рабочих мест.)
    Примечание:

    Если параметр Идентификатор секции (входная таблица пользователей рабочих мест) не указан, будут обновлены только поля, сопоставленные в параметре Сопоставление атрибутов пользователей рабочих мест.

  • Значение ASSIGNMENT_TYPE класса пространственных объектов Секций, которое используется Space Planner, будет обновлено для отображения статуса занятости секции. Если объект пользователей рабочей мест назначен секции, то для значения ASSIGNMENT_TYPE секции задано Office.

  • Если обновление сделано для данных поэтажного плана с помощью инструмента Импорт поэтажных планов в базу геоданных Indoors или Импорт BIM в набор данных Indoor, определяющего объекты секций, которым назначены пользователи рабочих мест - назначения, которые присвоены объектам секций, не существующих в текущем поэтажном плане, будут отменены. Такое же изменение будет применяться к пользователям рабочих мест, которые назначены секции, для которой значение поля ASSIGNMENT_TYPE, изменено на Не назначено после обновления поэтажного плана. Обновление данных пользователей рабочих мест для соответствия актуальному поэтажному плану не требует параметра Входная таблица пользователей рабочих мест.

  • Инструмент можно запускать периодически, чтобы обновить данные пользователей рабочих мест и изменения в назначении мест или поэтажных планах. Вы можете опубликовать инструмент как сервис геообработки и запустить инструмент с помощью Планировщика Microsoft или CRON.

  • Этот инструмент предоставляет временный итоговый текстовый файл, и он корректен в сеансе ArcGIS Pro. Чтобы поддерживать постоянную запись итогового текстового файла, вы должны сохранить его в папке вне сеанса ArcGIS Pro.

Параметры

ПодписьОписаниеТип данных
Целевые объекты пользователей рабочих мест

Целевой векторный слой, класс пространственных объектов или сервис объектов, в котором записи о пользователях рабочих мест добавляются, обновляются или удаляются. Входные данные должны содержать уникальные значения, которые идентифицируют каждого пользователя рабочего места и должны соответствовать классу пространственных объектов пользователей рабочих мест в модели Indoors.

Feature Layer
Входные объекты секций
(Дополнительный)

Входные полигональные объекты, соответствующие пространствам здания, в которых могут находиться пользователи рабочих мест. В информационной модели ArcGIS Indoors это должен быть слой Units. В качестве местоположений пользователя или пользователей рабочих мест будут использоваться центроиды пространств.

Feature Layer
Входная таблица пользователей рабочих мест
(Дополнительный)

Входная таблица, содержащая информацию о пользователях рабочих мест в здании.

Информация может храниться в таблице базы геоданных, листе рабочей книги Excel (.xls или .xlsx) или в файле .csv.

Table View
Идентификатор пользователя рабочего места (Целевые объекты рабочих мест)
(Дополнительный)

Поле в значении параметра Целевая объекты пользователей рабочих мест, которое будет использоваться в качестве первичного ключа для привязки пользователей рабочих мест к значениям параметра Входная таблица пользователей рабочих мест. Значения поля должны быть уникальными.

Field
Идентификатор пользователя рабочего места (входная таблица пользователей рабочих мест)
(Дополнительный)

Поле в значении параметра Входная таблица пользователей рабочих мест, которое будет использоваться в качестве первичного ключа для привязки пользователей рабочих мест к значениям параметра Входные объекты пользователей рабочих мест. Значения поля должны быть уникальными.

Field
Идентификатор секции (Входные объекты секций)
(Дополнительный)

Поле в значении параметра Входные объекты секций, которое хранит уникальный идентификатор места, соответствующий идентификатору секции из значения параметра Входная таблица пользователей рабочих мест. Значения поля должны быть уникальными.

Field
Идентификатор секции (входная таблица пользователей рабочих мест)
(Дополнительный)

Поле в значении параметра Входная таблица пользователей рабочих мест, которое будет использоваться в качестве первичного ключа для привязки назначения мест пользователей рабочих мест к значениям параметра Входные объекты секций. Если значение поля пустое, пользователь рабочих мест будет загружен как неназначенный.

Field
Сопоставление атрибутов пользователей рабочих мест
(Дополнительный)

Атрибутивные поля в параметре Целевые объекты пользователей рабочих мест, которые будут заполнены значениями полей из значения параметра Входная таблица пользователей рабочих мест. Поля должны существовать в значении параметра Целевые объекты пользователей рабочих мест перед запуском инструмента. Рекомендуется сопоставить поля из значения параметра Входная таблица пользователей рабочих мест полям из значения параметра Целевые объекты пользователей рабочих мест, у которых тот же тип поля.

Field Mappings
Вставить новых пользователей рабочих мест
(Дополнительный)

Определяет, будут ли уникальные записи пользователей рабочих мест для значения параметра Входная таблица пользователей рабочих мест добавлены в целевой слой объектов пользователей.

  • Отмечено - несопоставленные записи пользователей рабочих мест будут добавлены в целевой слой объектов пользователей рабочих мест. Это значение по умолчанию
  • Не отмечено - несопоставленные записи пользователей рабочих мест не будут добавлены в целевой слой объектов пользователей рабочих мест.
Boolean
Удаленные пользователи рабочих мест не включаются в Выходную таблицу пользователей рабочих мест
(Дополнительный)

Определяет, будут ли уникальные записи пользователей рабочих мест для значения параметра Входная таблица пользователей рабочих мест удалены из целевого слоя объектов пользователей.

  • Отмечено - несопоставленные записи пользователей рабочих мест будут удалены из целевого слоя объектов пользователей рабочих мест. Это значение по умолчанию
  • Не отмечено - несопоставленные записи пользователей рабочих мест не будут удалены из целевого слоя объектов пользователей рабочих мест.
Boolean

Производные выходные данные

ПодписьОписаниеТип данных
Обновленные объекты пользователей рабочих мест

Обновленная версия целевых объектов пользователей, использованная для этого инструмента.

Feature Layer

arcpy.indoors.UpdateOccupantFeatures(target_occupant_features, {in_unit_features}, {in_occupant_table}, {occupant_id_from_target_occupant_features}, {occupant_id_from_input_table}, {unit_id_from_units_features}, {unit_id_from_input_table}, {occupant_attributes_mapping}, {allow_insert}, {allow_delete})
ИмяОписаниеТип данных
target_occupant_features

Целевой векторный слой, класс пространственных объектов или сервис объектов, в котором записи о пользователях рабочих мест добавляются, обновляются или удаляются. Входные данные должны содержать уникальные значения, которые идентифицируют каждого пользователя рабочего места и должны соответствовать классу пространственных объектов пользователей рабочих мест в модели Indoors.

Feature Layer
in_unit_features
(Дополнительный)

Входные полигональные объекты, соответствующие пространствам здания, в которых могут находиться пользователи рабочих мест. В информационной модели ArcGIS Indoors это должен быть слой Units. В качестве местоположений пользователя или пользователей рабочих мест будут использоваться центроиды пространств.

Feature Layer
in_occupant_table
(Дополнительный)

Входная таблица, содержащая информацию о пользователях рабочих мест в здании.

Информация может храниться в таблице базы геоданных, листе рабочей книги Excel (.xls или .xlsx) или в файле .csv.

Table View
occupant_id_from_target_occupant_features
(Дополнительный)

Поле в значении параметра target_occupant_features, которое будет использоваться в качестве первичного ключа для привязки пользователей рабочих мест к значениям параметра in_occupant_table. Значения поля должны быть уникальными.

Field
occupant_id_from_input_table
(Дополнительный)

Поле в значении параметра in_occupant_table, которое будет использоваться в качестве первичного ключа для привязки пользователей рабочих мест к значениям параметра target_occupant_features. Значения поля должны быть уникальными.

Field
unit_id_from_units_features
(Дополнительный)

Поле в значении параметра in_units_features, которое хранит уникальный идентификатор места, соответствующий идентификатору секции из значения параметра in_occupant_table. Значения поля должны быть уникальными.

Field
unit_id_from_input_table
[unit_id_from_input_table,...]
(Дополнительный)

Поле в значении параметра in_occupant_table будет использоваться как первичный ключ для связи назначения мест пользователям со значением параметра in_units_features. Если значение поля пустое, пользователь рабочих мест будет загружен как неназначенный.

Field
occupant_attributes_mapping
(Дополнительный)

Атрибутивные поля в параметре target_occupant_features, которые будут заполнены значениями полей из значения параметра in_occupant_table. Поля должны существовать в значении параметра target_occupant_features перед запуском инструмента. Рекомендуется сопоставить поля из значения параметра in_occupant_table полям из значения параметра target_occupant_features, у которых тот же тип поля.

Field Mappings
allow_insert
(Дополнительный)

Определяет, будут ли уникальные записи пользователей рабочих мест для значения параметра in_occupant_table добавлены в целевой слой объектов пользователей.

  • INSERT_OCCUPANTSНесопоставленные записи пользователей рабочих мест будут добавлены в целевой слой объектов пользователей рабочих мест. Это значение по умолчанию
  • NO_INSERT_OCCUPANTSНесопоставленные записи пользователей рабочих мест не будут добавлены в целевой слой объектов пользователей рабочих мест.
Boolean
allow_delete
(Дополнительный)

Определяет, будут ли уникальные записи пользователей рабочих мест для значения параметра in_occupant_table удалены из целевого слоя объектов пользователей.

  • DELETE_OCCUPANTSНесопоставленные записи пользователей рабочих мест будут удалены из целевого слоя объектов пользователей рабочих мест. Это значение по умолчанию
  • NO_DELETE_OCCUPANTSНесопоставленные записи пользователей рабочих мест не будут удалены из целевого слоя объектов пользователей рабочих мест.
Boolean

Производные выходные данные

ИмяОписаниеТип данных
updated_occupant_features

Обновленная версия целевых объектов пользователей, использованная для этого инструмента.

Feature Layer

Пример кода

Пример 1 UpdateOccupantFeatures ( окно Python)

В следующем скрипте окна Python показано, как используется функция UpdateOccupantFeatures в режиме прямого запуска. В этом примере входные и выходные данные должны находиться в одной базе геоданных.

import arcpy
arcpy.indoors.UpdateOccupantFeatures('C:/ExampleCampus.gdb/Indoors/Occupants', 
                                    'C:/ExampleCampus.gdb/Indoors/Units', 'C:/OccupantsData/2022Occupants.xlsx/2022Q2$',
                                    'EMAIL', 'EMAIL',
                                    'UNIT_ID', 'SPACE_ASSIGNMENT', 'KNOWNAS "Known As" true false false 255 Text 0 
                                    0,First,#,C:/OccupantsData/2022Occupants.xlsx/2022Q2$,KNOWNAS,0,255;SITE_ID "Site ID" true true false 255 Text 
                                    0 0,First,#',
                                    True, True)
Пример 2 UpdateOccupantFeatures (автономный скрипт)

В следующем автономном скрипте показано использование функции UpdateOccupantFeatures.

# Import system modules import arcpy
# Set local variables 

target_occupant_features = r'C:\ExampleCampus.gdb\Indoors\Occupants'
in_unit_features = r'C:\ExampleCampus.gdb\Indoors\Units'
in_occupant_table = r'C:\OccupantSpreadsheets\BuildingL.xlsx\OccupantsSeatingAssignment$'
occupant_id_from_target_occupant_features = 'EMAIL' 
occupant_id_from_input_table = 'EMAIL' 
unit_id_from_units_features = 'UNIT_ID'
unit_id_from_input_table = "SPACE_ASSIGNMENT"
occupant_attributes_mapping = 'KNOWNAS "Known As" true false false 255 Text 0 0,First,#,
C:\OccupantSpreadsheets\BuildingL.xlsx\OccupantsSeatingAssignment$,KNOWNAS,0,255;CONTACT_PHONE "Contact Phone" true true false 255 Text 0 0,First,#,
C:\OccupantSpreadsheets\BuildingL.xlsx\OccupantsSeatingAssignment$,CONTACT_PHONE,0,255;CONTACT_EXTENSION "Contact Extension" true true false 255 Text 0 0,First,#,
C:\OccupantSpreadsheets\BuildingL.xlsx\OccupantsSeatingAssignment$,CONTACT_EXTENSION,-1,-1;SITE_ID "Site ID" true true false 255 Text 0 0,First,#;JOB_TITLE "Job Title" true true false 255 Text 0 0,First,#,
C:\OccupantSpreadsheets\BuildingL.xlsx\OccupantsSeatingAssignment$,JOB_TITLE,0,255;ORG_LEVEL_1 "Department" true true false 255 Text 0 0,First,#,
C:\OccupantSpreadsheets\BuildingL.xlsx\OccupantsSeatingAssignment$,ORG_LEVEL_1,0,255;ORG_LEVEL_2 "Team" true true false 255 Text 0 0,First,#,
C:\OccupantSpreadsheets\BuildingL.xlsx\OccupantsSeatingAssignment$,ORG_LEVEL_2,0,255;START_DATE "Start Date" true true false 8 Date 0 0,First,#,
C:\OccupantSpreadsheets\BuildingL.xlsx\OccupantsSeatingAssignment$,START_DATE,-1,-1' 

allow_insert = True
allow_delete = True

# Run the tool 
arcpy.indoors.UpdateOccupantFeatures(target_occupant_features, in_unit_features, in_occupant_table,
                                     occupant_id_from_target_occupant_features, occupant_id_from_input_table,
                                     unit_id_from_units_features, unit_id_from_input_table, occupant_attributes_mapping,
                                     allow_insert, allow_delete)

Информация о лицензиях

  • Basic: Нет
  • Standard: Нет
  • Advanced: Обязательно Indoors

Связанные разделы