Поделиться через


Редактирование шаблона резервирования таблицы расписания в Universal Resource Scheduling

Когда требование запланировано для ресурса, система создает запись резервирования. На доске расписаний отображаются резервирования, сгруппированные по ресурсам. Поля, отображаемые в резервировании доски расписания, называются шаблоном резервирования, который можно настроить с помощью полей из системных сущностей.

Изменение шаблона резервирования заказа на работу

Каждая сущность, включенная для планирования, может иметь свой шаблон резервирования. Когда планируется требование заказа на работу, шаблон резервирования показывает значения Имя и Длительность записи Резервирование резервируемого ресурса.

Значением по умолчанию является следующий фрагмент кода:

<div>{SchedulableEntityDisplayName} - {name}<br />Duration: <strong class="bold">{duration}</strong></div>

Чтобы отредактировать HTML-код, управляющий шаблоном резервирования, перейдите в раздел Типы расписаний в параметрах доски расписаний. Выберите сущность, для которой требуется изменить шаблон резервирования. Если вы откроете настройки на вкладке таблицы расписаний, вы измените настройки только для этой вкладки. Чтобы внести изменения во все вкладки, выберите Изменить значения по умолчанию и примените свои изменения там. Установите для параметра Пользовательский шаблон резервирования значение Вкл. и измените код HTML.

В поле Шаблон резервирования переопределите шаблон резервирования, введя HTML и CSS, которые могут ссылаться на поля из сущности Резервирование резервируемого ресурса и связанных сущностей. Обязательно проверьте настроенные шаблоны резервирования в нескольких браузерах, а также примите во внимание рекомендации в отношении специальных возможностей. JavaScript не поддерживается в шаблоне резервирования.

Совет

Используйте только системные сущности. Извлечение значений из настраиваемых сущностей не поддерживается.

На поля сущности Резервирования резервируемого ресурса можно ссылаться напрямую с использованием названия поля в фигурных скобках. Пример: {duration}.

Чтобы отобразить поле связанной сущности, найдите имя отношения N:1 и добавьте точку (.), за которой следует имя поля целевой сущности. Например, путь связи заказа на работу — msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder, а поле типа основного инцидента — msdyn_primaryincidenttype. В результате получается ссылка на поле {msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_primaryincidenttype}. Добавьте больше переходов в связь, соединив их с помощью дополнительной точки.

Пользовательские шаблоны применяются только к подсказкам в почасовом представлении таблицы расписаний и не влияют суточные, недельные или месячные представления.

Пример пользовательского шаблона резервирования

В этом примере мы создаем пользовательский шаблон резервирования для сущности заказа на работу. Следующий фрагмент кода извлекает значения из заказа на работу, который связан с резервированием.

<div style="line-height: 11px !important; width: 99%; overflow: hidden; display: block; text-overflow: ellipsis;">
    WO: 
    <b>{msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_name}</b><br/>
    Account: <b>{msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_account_msdyn_workorder_ServiceAccount.name}</b><br/>
    Incident: <b>{msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_primaryincidenttype}</b><br/>
    Duration: <b>{duration} minutes</b><br/>
</div>

Заметка

Ссылка на атрибуты встречи в шаблоне резервирования таблицы расписания не поддерживается, поскольку данные шаблона встречи зависят от наличия связанного резервирования.

Чтобы ссылаться на эти атрибуты, убедитесь, что с встречами связаны резервирования, а затем отключите настройку Включить встречи из раздела Параметры планирования. Отключение этого параметра скрывает на доске расписания все встречи, к которым не привязаны резервируемые ресурсы.

Расширенное задание стиля шаблона резервирования с помощью таблиц CSS

Вы можете добавить стили в пользовательский шаблон резервирования с помощью CSS. Перейдите в раздел Планирование ресурсов > Администрирование > Параметры планирования и задайте для параметра Отключить проверку шаблонов HTML значение Да, чтобы включить операторы CSS в шаблоны резервирования.

В этом примере мы расширяем пример пользовательского шаблона резервирования из предыдущего раздела. Мы используем CSS для добавления оценок и значков сервиса на основе условных значений в записях организаций и заказа на работу. Настройка добавила поле new_customerrating в сущность учетная запись и распространяет это поле на сущность заказа на работу с использованием целых значений в диапазоне от 1 до 10. Мы хотим, чтобы шаблон резервирования отображал рейтинг клиента серыми звездочками. Чтобы представить фактическую оценка клиента, мы также добавим пять оранжевых звезд, но только покажем процент этих звездочек, соответствующий оценке клиента от 1 до 10.

Мы также хотим, чтобы наш диспетчер видел, является ли заказ на работу сервисным вызовом или другим типом задания. Пользовательское поле new_isservicecall в сущности заказ на работу имеет два возможных значения: 0 или 1. Сохраняя предыдущий подход, мы сначала рисуем серый гаечный ключ как фон, накладываем сверху оранжевый ключ и ограничиваем его размер 0% (new_isservicecall = 0) или 100% (new_isservicecall = 1).

Добавьте следующий текст HTML и CSS в поле Шаблон резервирования в разделе Параметры вкладки таблицы расписаний.

<div style="line-height: 11px !important; width: 99%; overflow: hidden; display: block; text-overflow: ellipsis;">
<div class="back-stars" style="color: #AAAAAA; position: relative; display:inline-block;">
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
<div class="customerrating" style="width:{msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_account_msdyn_workorder_ServiceAccount.new_customerrating}0%; color: #FFBC0B; position: absolute; top: 0; left:0; overflow: hidden; display:-webkit-box">
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
</div>
</div>
<div class="repair-back" style="color: #AAAAAA; position: relative; display:inline-block; padding-left:10px; vertical-align:text-top;">
    <i class="fa fa-wrench" aria-hidden="true"></i>
<div class="repair" style="width:{msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.new_isservicecall}00%; color: #FFBC0B; position: absolute; top: 0; left:0; padding-left:10px; overflow: hidden; display:-webkit-box">
    <i class="fa fa-wrench" aria-hidden="true"></i>
</div>
</div>
<br/>
WO:
<b>{msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_name}</b><br/>
Account: <b>{msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_account_msdyn_workorder_ServiceAccount.name}</b><br/>
Incident: <b>{msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_primaryincidenttype}</b><br/>
Duration: <b>{duration} minutes</b><br/>
</div>

Шаблон резервирования на доске расписаний теперь содержит визуальное представление рейтинга клиента и типа работы.