Планирование помещения и связанных ресурсов
Universal Resource Scheduling (URS) позволяет организациям планировать взаимодействия между клиентами и ресурсами компании. В случаях, когда клиент должен приехать в офис организации, с помощью функции планирования помещений можно координировать использование физических помещений и связанных ресурсов.
Типичные примеры использования этой функции:
Резервирование физических помещений
- Резервирование помещения для мероприятия или праздника
- Резервирование помещения для занятий
- Резервирование поста на станции техобслуживания
- Резервирование морского или речного судна
Резервирование встречи с человеком в помещении
- Ремонт ноутбука в розничном магазине Майкрософт
- Консультации по управлению активами в отделении банка
- Организация приема у врача с участием медсестры
В этой статье мы рассмотрим несколько сценариев планирования помещений.
Предварительные условия
- Универсальное планирование ресурсов (URS) v3.0
- Field Service версии 8.0 (для заказов на работу, если это требуется)
Как правило, чтобы использовать планирование помещений, вы создаете ресурс объекта, настраиваете требование, которое требует ресурсов помещений, и резервируете требование.
Сценарий 1. Планирование помещения
В этом сценарии планировщикам нужно найти ближайшие клиники и назначить пациенту прием.
Чтобы реализовать этот сценарий, мы создадим ресурс помещения, представляющий кабинет врача, создадим требование, представляющее запрос пациента на визит в ближайшую клинику, а затем зарезервируем встречу, чтобы увидеть помещение и резервирование в таблице расписаний.
1. Создание ресурса помещения
Сначала выберите Универсальное планирование ресурсов > Ресурсы и создайте ресурс помещения со следующими атрибутами.
- Тип ресурса: Помещение.
- Начальное/конечное расположение: адрес подразделения. Родительская организация должна иметь широту и долготу, которые определяют местоположение помещения. Это позволяет учитывать расположение помещения при отображении результатов в помощнике по расписанию.
- Отображать в таблице расписаний = "Да"
- Включить для поиска доступности = "Да"
- (Необязательно) Укажите рабочие часы
- (Необязательно) Добавьте нужные характеристики, территорию, роли ресурсов и т. д, чтобы это помещение можно было отличать от других помещений. Например, если в кабинете врача есть рентгеновская установка, информацию об этом можно добавить в качестве характеристики ресурса помещения. От этого может зависеть, как ресурсы будут фильтроваться в таблице расписаний и какие ресурсы будут доступны при поиске помещения в помощнике по расписанию.
2. Создание требования для помещения
После этого создайте требование, которое будет вызывать ресурс помещения.
Перейдите к пункту Универсальное планирование ресурсов > Группы требований > +Новое. Настройте следующие поля.
- Введите Имя.
- Укажите даты От и До.
- Задайте Длительность.
- Выделите требование и выберите Открыть форму, а затем в поле Тип ресурса укажите Помещение, в результате чего будут выполнены следующие действия.
- Результаты в помощнике по расписанию буду отфильтрованы так, чтобы были видны только ресурсы выбранных типов (пользователь, организация, контакт, оборудование, пул, бригада или Помещение, как в данном случае).
- Это значит, что должно выполняться требование ресурса помещения, и помощник по расписанию будет искать помещения (а не сотрудников или оборудование).
- Требование будет соответствовать полю типа ресурса в сущности ресурса.
- Если оставить это поле пустым, будет вестись поиск по всем ресурсам.
- В поле Расположение работы укажите Помещение, что означает следующее.
- Взаимодействие происходит в запланированном помещении, а при расчетах будут учитываться расстояние и время в пути. Дополнительные сведения см. в разделе "Особенности настройки" этой статьи.
- Введите широту и долготу.
- Эти значения могут вводиться вручную или с помощью бизнес-процессов.
- Эти значения задают расположение клиента и служат для отображения помещения относительно расположения клиента в результатах помощника по расписанию. Это не расположение помещения, поскольку координаты помещения подставляются из параметров подразделения этого ресурса.
3. Резервирование требования
После создания ресурса помещения и требования, которое будет вызывать это помещение, можно переходить к планированию. Требования, являющихся частью группы, могут планироваться с помощью кнопки Резервировать, которая запустит помощник по расписанию, но не путем перетаскивания. Требования помещений, которые не являются частью группы, (одиночные требования) можно вручную перетаскивать к помещению в таблице расписаний. Но их также можно планировать и с помощью помощника по расписанию.
Помощник по расписанию учитывает доступность ресурсов, а также другие ограничения, например характеристики, подразделения, категории, и т. д.
Выберите Резервировать в форме требования или группы требований, как показано на следующем снимке экрана.
Расчеты времени в пути и расстояния на последнем рисунке показывают время и расстояние между ресурсом помещения (определяется расположением подразделения) и местонахождением клиента (определяется значениями широты и долготы в требовании). Фильтр по радиусу в помощнике по расписанию действует на основе этих расчетов.
Если установить фильтр Без учета расположения, расчеты времени в пути и расстояния будут удалены их результатов в помощнике по расписанию.
4. Добавление ресурса помещения в таблицу расписаний
Планирование помещений похоже на планирование остальных ресурсов. Вы можете перетаскивать требования, чтобы создавать резервирования, перетаскивать эти резервирования, чтобы изменять время и ресурс, а также получать список доступных помещений в помощнике по расписанию с учетом установленных ограничений.
Для просмотра ресурсов помещений в таблице расписаний примените фильтр по типу ресурса и (или) подразделению.
Ресурсы помещений также отображаются на карте таблицы расписаний с учетом расположения соответствующего подразделения.
Сценарий 2. Планирование помещения с 5 одинаковыми кабинетами
В этом сценарии в больнице есть 5 одинаковых кабинетов, поэтому планировщику не нужно резервировать каждый из них отдельно. Однако он должен следить за тем, чтобы в любом временном окне был назначен прием не более чем 5 пациентам.
Для этого мы добавим к ресурсу помещения параметр вместимости (емкости).
1. Создание ресурса помещения
Создайте ресурс помещения, как было описано в сценарии 1 выше, или выберите существующую запись ресурса помещения.
В верхней ленте записи ресурса помещения выберите Показать рабочие часы.
2. Задание мощности ресурса помещения
При выборе часов выберите Показать мощность и введите значение 5. По умолчанию значение мощности равно 1.
Установка мощности равной 5 означает, что при резервировании с использованием помощника по расписанию помещение будет считаться доступным, пока оно не будет зарезервировано 5 раз.
На последнем снимке экрана видно, что на одно это же время зарезервировано два разных требования помещения. Если бы мы не увеличили мощность, то после первого резервирования помещения на определенное время, оно бы больше не отображалось в результатах помощника по расписанию как доступное.
Заметка
Планирование с использованием мощности не предназначено для многократного резервирования одного и того же требования. Оно служит для резервирование различных требований. Изменение резервирования ранее зарезервированного требования приведет к отмене имеющегося резервирования.
3. Создание требования для помещения
После этого создайте требование, которое будет вызывать ресурс помещения.
Перейдите к пункту Универсальное планирование ресурсов > Группы требований > +Новое. Настройте следующие поля.
- Введите Имя.
- Укажите даты От и До.
- Задайте Длительность.
- Выделите требование и выберите Открыть форму, а затем в поле Тип ресурса укажите Помещение, в результате чего будут выполнены следующие действия.
- Результаты в помощнике по расписанию буду отфильтрованы так, чтобы были видны только ресурсы выбранных типов (пользователь, организация, контакт, оборудование, пул, бригада или Помещение, как в данном случае).
- Это значит, что должно выполняться требование ресурса помещения, и помощник по расписанию будет искать помещения (а не сотрудников или оборудование).
- Требование будет соответствовать полю типа ресурса в сущности ресурса.
- Если оставить это поле пустым, будет вестись поиск по всем ресурсам.
- В поле Расположение работы укажите Помещение, что означает следующее.
- Взаимодействие происходит в запланированном помещении, а при расчетах будут учитываться расстояние и время в пути. Дополнительные сведения см. в разделе "Особенности настройки" этой статьи.
- Введите широту и долготу.
- Эти значения могут вводиться вручную или с помощью бизнес-процессов.
- Эти значения задают расположение клиента и служат для отображения помещения относительно расположения клиента в результатах помощника по расписанию. Это не расположение помещения, поскольку координаты помещения подставляются из параметров подразделения этого ресурса.
Сценарий 3. Планирование помещения и связанного ресурса
В этом сценарии планировщики должны назначить врача на конкретный кабинет на конкретное время.
Для настройки этого сценария необходимо создать ресурс помещения, ресурс врача (ресурс с типом "пользователь", "контакт" или "организация"), связать врача с помещением, а затем создать группу требований, которая запрашивает одновременно врача и помещение.
Чтобы группы ресурсов могли совместно работать в одном помещении, можно связать с помещением или пулом помещений другие ресурсы с помощью сущности связи ресурсов (msdyn_bookableresourceassociations).
Ресурсы, например пользователей, оборудование и пулы ресурсов, можно связывать с помещениями и пулами помещений с привязкой к датам. Это значит, что ресурсы будут выполнять работу в заданных помещениях в заданные диапазоны дат, поэтому они будут недоступны для выездной работы на территории клиента. Это важно понимать в связи с использованием параметра То же дерево ресурсов.
1. Создание ресурса помещения
Сначала создайте ресурс, представляющий кабинет врача. Ресурс должен иметь тип Помещение. На следующем снимке экрана показан пример ресурса помещения.
2. Создание ресурса врача
Создайте ресурс, представляющий врача. Установите тип ресурса Пользователь, Организация или Контакт в зависимости от конкретной ситуации.
Заметка
Тип ресурса "Пользователь" обычно применяется для сотрудников, которые работают с данными Dynamics 365, а типы ресурсов "Контакт" и "Организация" используются для подрядчиков, работу которых нужно планировать, но у которых нет доступа к данным.
В качестве расположения начала и окончания нужно указать Адрес подразделения, и в качестве подразделение следует выбрать то же подразделение, что и у ресурса помещения (в данном случае это будет кабинет врача). Делать это не обязательно, но рекомендуется.
3. Связывание ресурса врача с ресурсом помещения
В ресурсе помещения выберите Связанные > Связь резервируемых ресурсов (ресурс 2). Эта связанная сущность называется связями ресурсов (msdyn_bookableresourceassociations).
Установите связь с ресурсом, представляющим врача.
На следующем снимке экрана Abraham McCormick представляет врача, который связан с ресурсом кабинета врача Doctors Office North Seattle.
4. Создание группы требований
После этого создайте группу требований, одно требование в которой будет запрашивать кабинет врача (тип ресурса "Помещение), а второе — врача (тип ресурса "Пользователь"/"Контакт"/"Организация").
Задайте для параметра Расположение работы в каждом из требований Помещение, чтобы показать, что работа будет выполняться в кабинете врача.
Заметка
Параметр Выбрать > Все в группе требований означает, что должны быть выполнены оба требования.
Для параметра Часть того же выберите Дерево ресурсов. В результате ресурсы из разных расположений не будут рекомендоваться для работ, проводимых в помещении. Например, врач, связанный с помещением Б, не должен назначаться в помещение А. Дополнительные сведения об этом параметре см. в разделе "Особенности настройки" этой статьи.
Планирование группы требований создает резервирование ресурса помещения и ресурса врача.
Заметка
Как и в сценарии 1, здесь рассчитываются время в пути и расстояние, которое клиенту необходимо преодолеть, чтобы добраться до помещения. Для врача время в пути не учитывается, так как предполагается, что врач будет находиться на месте в нужное время.
Сценарий 4. Планирование помещения с 5 специализированными кабинетами
В этом сценарии планировщики должны отслеживать все кабинеты в клинике и по-отдельности назначать их пациентам.
Для настройки этого сценария необходимо создать пул помещений, которые представляют отдельные кабинеты в клинике.
1. Создание ресурса пула помещений
Сначала создайте ресурс, представляющий клинику целиком, т. е. выбрав Тип ресурса = "Пул" и Типа пула = "Помещение".
В этом примере мы назовем пул "Health Clinic", как показано на следующем снимке экрана.
2. Создание ресурсов помещений для отдельных кабинетов
После этого создайте ресурсы помещений, которые будут представлять кабинеты.
Для каждого ресурса установите параметр Тип ресурса равным Помещение.
Для параметров Начальное и конечное расположение укажите Адрес подразделения, а также выберите подразделение, к которому относятся создаваемые кабинеты.
3. Добавьте каждый ресурс кабинета в качестве дочернего в пул ресурсов клиники
Перейдите к пулу ресурсов и выберите Связанные > Дочерние ресурсы.
Добавьте каждый ресурс кабинета в качестве дочерней записи родительского пула (клиника), как показано на следующем снимке экрана.
4. Создание группы требований
Создайте требование, которое будет обращаться к одному или нескольким помещением. В этом примере мы будем искать 2 конкретных кабинета в одной клинике.
Установите для параметра Часть того же значение Расположение, чтобы все кабинеты имели одинаковый физический адрес.
Каждое требование должно обращаться к ресурсам типа помещения, как показано на следующем снимке экрана.
Еще раз отметим, что в поле Расположение работы каждого требования должно быть указано Помещение, а значения широты и долготы требования должны задавать расположение клиента (пациента).
Заметка
Поля широты и долготы во всех требованиях внутри одной группы должны быть одинаковыми; изменение одного требования приведет к изменению остальных требований.
5. Резервирование группы требований
Выберите Резервировать в группе требований, чтобы запустить помощник по расписанию.
На этом снимке экрана рекомендуются два конкретных кабинета с общим расположением. Время в пути и расстояние рассчитываются на основе расположения клиента (значения широты и долготы в записях требования) и расположения ресурса помещения (адрес подразделения).
Сценарий 5. Планирование помещения с 5 специализированными кабинетами и 5 связанными ресурсами
В этом сценарии планировщикам нужно назначать конкретные кабинеты в клинике пулу доступных педиатров, которые в ней работают.
Чтобы настроить этот сценарий, необходимо создать пул помещений и пул врачей, а затем связать их друг с другом с помощью Связей ресурсов (msdyn_bookableresourceassociations).
1. Создание пула помещений
Воспользуйтесь процессом, описанным в сценарии 4, чтобы создать ресурс пула помещений, представляющий клинику.
2. Создание ресурса помещения для каждого кабинета
Теперь создайте ресурсы помещений, представляющие отдельные кабинеты в пуле клиники.
После этого добавьте каждый кабинет в качестве дочернего ресурса в пул помещений (клинику). Подразделение пула помещений и отдельных кабинетов должно быть одинаковым.
3. Создание пула педиатров
Создайте новый пул ресурсов, представляющих педиатров.
Для параметра Тип ресурса укажите Пул, а для параметра Тип пула выберите значение Контакты, Пользователи, Организации, поскольку врачи являются сотрудниками.
Как и в случае других записей ресурсов, добавьте характеристики, которые позволят различать ресурсы. В нашем примере для ресурсов врачей можно добавить навык "педиатрия".
Для параметра Наследовать производительность от участников группы выберите значение Да. Это значит, что производительность пула будет зависеть от количества врачей в нем.
Создайте ресурсы отдельных врачей и добавьте их в пул педиатров в качестве дочерних ресурсов.
5. Связывание пула врачей с пулом помещений
Теперь перейдите к исходному пулу помещений (клиника) и выберите Связанные > Связь резервируемых ресурсов.
Для поля Ресурс 2 задайте пул педиатров, как показано на следующем снимке экрана.
6. Создание группы требований для кабинетов и врачей
Перейдите к пункту Универсальное планирование ресурсов > Группы требований > +Новое.
В этом примере мы создали группу требований, которая запрашивает два кабинета (помещения) и педиатра.
Параметр Часть того же со значением Дерево ресурсов гарантирует, что кабинеты и педиатры относятся к одному ресурсу помещения в качестве дочерних или через связь ресурсов.
Для каждого требования помещения укажите тип ресурса "Помещение".
От типов ресурсов, выбранных в требовании педиатра, зависят результаты помощника по расписанию.
Если в требовании выбран тип ресурсов "Пул" и тип пула "Пользователи, Организации, Контакты", в результатах будет показан пул педиатров.
Это позволит вам резервировать педиатров и назначить конкретного врача на более позднее время. Наличие педиатров в результатах зависит от производительности (которая связана с числом враче в пуле). Пул позволяет планировщика назначать приемы на основе производительности без необходимости каждый раз выбирать конкретного врача.
Если в требовании выбран тип ресурса "Пользователи, Организации, Контакты" (не пулы), в результатах буду отображаться конкретные врачи, как показано на следующем снимке экрана.
Заметка
С помощью предпочтений выполнения организуйте результаты помощника по расписанию в удобные часовые периоды.
Особенности настройки
Выбор подходящего расположения работы на основе требований
Рассмотрим следующие типы расположений работы:
- Помещение
- На месте
- Без учета расположения
Расположение работы Помещение предполагает взаимодействие в помещении, а время в пути при этом рассчитывается на основе расстояния между местоположением клиента и адресом помещения. Местоположение клиента определяется на основе полей широты и долготы в требовании. Также это означает, что по крайней мере одно помещение или пул помещений должны попадать в результаты поиска в помощнике по расписанию.
Расположение работы На месте предполагает взаимодействие у клиента, а время в пути рассчитывается на основе расстояния между местоположением клиента и местоположением ресурса (как правило, это выездной специалист), которое зависит от расписания ресурса на этот день. Местоположение клиента определяется на основе полей широты и долготы в требовании. В этом случае ресурсы помещений и пулов помещений не попадают в результаты поиска.
Значение Без учета расположения предполагает, что взаимодействие осуществляется удаленно, а расположения клиента и ресурса не учитываются при планировании. Время в пути смысла не имеет и не рассчитывается. Ресурсы помещений все равно могут попадать в результаты поиска в помощнике по расписанию, но время в пути не будет отображаться и учитываться при ранжировании.
Параметр "Часть того же" в группах требований
Расположение: предлагаются только команды ресурсов, работающих в одном расположении. При этом используется описанная в этом документе логика определения расположения, основанная на сущностях связей ресурсов (msdyn_bookableresourceassociations) и групп резервируемых ресурсов (bookableresourcegroup). При выборе этого параметра имеет значение только физическое расположение (подразделение) ресурсов, независимо от конкретного помещения или пула помещений, с которыми связаны остальные ресурсы.
Дерево ресурсов: этот параметр накладывает дополнительное ограничение на результаты поиска. Он означает, чтоб собираемые рабочие группы должны быть связаны с одним и тем же помещением или пулом помещений, чтобы они предлагались именно в виде рабочих групп. Предположим, например, что у нас есть физическое расположение А.
В расположении А находятся два помещения: помещение 1 и помещение 2. Если ресурс 1 связан с помещением 1 и выбран параметр "То же дерево ресурсов", то можно собрать только одну рабочую группу — помещение 1 + ресурс 1. Помещение 2 и ресурс 1 не могут быть возвращены. Однако это сочетание становится допустимым, если выбран параметр "То же расположение".
Аналогично обстоят дела и с пулами помещений. Предположим, есть одно физическое расположения А. В расположении А находятся два помещения: помещение 1 и помещение 2, а также пул помещений 1. Если ресурс 1 связан с пулом помещений 1 и выбран параметр "То же дерево ресурсов", то можно собрать только одну рабочую группу — пул помещений 1 (или одно из его дочерних помещений) + ресурс 1.
Заметка
Если в связи требований (msdyn_requirementrelationship) не выбран ни один из этих параметров, а в качестве расположения работ указано помещение, то поиск в помощнике по расписанию будет вестись так, как если бы был выбран параметр "То же дерево ресурсов".
Подразделение: еще более строгий вариант, ограничивающий результаты одним подразделением. В этом случае все ресурсы будут иметь одинаковое родительское подразделение. Сущности группы резервируемых ресурсов и связи резервируемых ресурсов при этом не проверяются. Проверяется только родительское подразделение.
Если в реализации используются требования, которые не учитывают расположение, то этот параметр можно использовать без одного из двух остальных параметров; однако в этом случае будут полностью игнорироваться упомянутые сущности (связи и группы). Такой подход имеет смысл применять в простых ситуациях, когда все ресурсы находятся в одном расположении и сложные алгоритмы поиска помещения с учетом расположения работ не требуются.
Заметка
Схемы поля Часть того же называется msdyn_requirementrelationship.
В каких случаях следует использовать "помещение с мощностью", "несколько помещений" и "пул помещений"
Помещение с мощностью: этот вариант реализуется путем добавления параметра мощности (вместимости) к отдельному помещению. Его удобнее всего использовать, когда при планировании важно избежать двойного резервирования, а помещения являются универсальными или их распределение может координироваться в момент прибытия клиентов.
Несколько помещений: этот вариант реализуется путем создания нескольких ресурсов помещений и их связывания друг с другом через подразделение. Его имеет смысл использовать, когда каждым помещением нужно управлять индивидуально.
Пул помещений: этот вариант реализуется путем создания пула помещений и добавления в него помещений. Его удобно использовать, когда нужно (1) управлять мощностью (вместимостью) помещений путем увеличения и уменьшения числа помещений в пуле и (2) использовать локальное планирование, когда резервирования сначала назначаются пулу и лишь потом распределяются между его элементами. Пример: гостиница (пул помещений) сначала бронируется на определенные дни, а постояльцы распределяются по номерам (элементы пула) только по прибытии.
После обновления Field Service v7.x до v8.x ресурсы помещений могут отсутствовать в результатах помощника по расписанию из-за параметров фильтра по умолчанию. Чтобы исправить эту проблему, выберите Field Service>Таблица расписаний. Дважды щелкните вкладку таблицы расписаний, а затем выберите Открыть параметры по умолчанию в правом верхнем углу. Прокрутите вниз до раздела Другие параметры. В поле Запрос на получение ресурсов установите значение 3.0.0.0, как показано на следующем снимке экрана. В полях Макет фильтра и Шаблон ячейки ресурса также установите значение 3.0.0.0.
Дополнительные примечания
- Если требования не являются частью группы требований, а в поле Расположение работы у них указано Помещение, в помощнике по расписанию для них будут предлагаться только ресурсы помещения или пулы помещений.
- Ресурс невозможно связать с двумя помещениями (путем связывания или добавления в пул) одновременно.
- В настоящее время невозможно визуализировать в таблице расписаний все ресурсы, связанные с определенным помещением. Самый простой способ решения этой проблемы — фильтрация по подразделению.
- Планирование отдельного требования к помещению вручную не приводит к созданию записей для всех связанных с этим помещением ресурсов.
Расположение пула помещений
Расположение пула помещений подставляется из родительского подразделения. Если ресурс помещения является частью пула помещений, то расположение помещения подставляется из ресурса пула. Например, если создать помещение с расположением/подразделением расположение А, а затем добавить это подразделение в пул с расположением Б, то помещение будет считаться относящимся к расположению Б, пока оно находится в пуле.
Расположение резервирования
При выборе и резервировании рабочей группы в записи резервирования сохраняются широта и долгота зарезервированного помещения (или пула помещений). Расположение работы также будет задано на основе данных, указанных при резервировании в помощнике по расписанию. В следующих ситуациях расположение работы, широта и долгота будут задаваться а основе резервирования:
- если резервирования создаются без помощника по расписанию;
- если в качестве расположения работы в требовании указано помещение;
- если в требовании есть значения широты и долготы.