Доступно начиная с версии ExeMES 2.1
Настройки цветовой индикации заданий в интерфейсе ExeSched — это метод кастомизации визуального представления информации, который использует различные цвета для обозначения производственных заданий на диаграмме Ганта, при этом цвет задания может зависеть от различных условий, которые задаются пользователем в пользовательских скриптах. Такой подход помогает пользователям быстро воспринимать и анализировать данные, улучшая эффективность работы и упрощая принятие решений.
Метод цветовой индикация заданий использует скрипты языка Lua, версии 5.3. Скрипт - инструкция, в которой пользователь может задать алгоритм определения цвета задания:
if job.can_pause == true then return 'green' else return '#563d7c end
Указанный выше пример логики скрипта закрасит задание зеленым цветом (значение «green»), если задание может быть поставлено на паузу (переменная «job.can_pause») и фиолетовым (код «#563d7c») если задание не может быть поставлено на паузу.
Пользователь может создавать неограниченное количесво скриптов и переключаться между ними в режиме отображения, цветовая индикации заданий будет применяться ко всем заданиям, отображенным на диаграмме Ганта.
По умолчанию в ExeSched созданы 4 скрипта индикации заданий:
- ByJobState: скрипт возвращает цвет задания в зависимости от его статуса;
- ByOverdueDays: скрипт возвращает цвет задания в зависимости от количества просроченных дней;
- ByProducedQuantityPercent: скрипт возвращает цвет задания в зависимости от количества произведенной продукции (расчет по процентному соотношению от требуемого количества);
- ByRequiredQuantity: скрипт возвращает цвет задания в зависимости от количества произведенной продукции (расчет по целому значению произведенной продукции).
В логике скриптов Lua могут быть использованы следующие сущности и атрибуты ExeMES:
Сущность | Атрибут | Тип данных | Описание |
---|---|---|---|
Job | job | Object | Задание |
start_time | DateTime | Время начала задания | |
finish_time | DateTime | Время завершения задания | |
ent_id | Integer | Идентификатор рабочего центра | |
job_id | String | Идентификатор задания | |
scenario_id | String | Идентификатор сценария планирования | |
process_id | String | Идентификатор процесса | |
wo_id | String | Идентификатор производственного заказа | |
oper_id | String | Идентификатор операции | |
item_id | String | Идентификатор материала | |
seq_no | Integer | Порядковый номер задания внутри операции | |
qty_reqd | Number | Требуемое количество материала к производству | |
qty_prod | Number | Произведенное количество материала | |
run_ent_id | Number | Идентификатор рабочего центра, на котором запущено задание | |
init_sched_ent_id | Number | Идентификатор рабочего центра, для которого задание изначально запланировано (The entity to which the job is initially scheduled.) - оригинальное описание | |
target_sched_ent_id | Number | Идентификатор рабочего центра, для которого задание запланировано планировщиком или пользователем ExeSched | |
latest_start_time | DateTime | Самое позднее время начала для удовлетворения требуемого времени окончания задания | |
req_finish_time | DateTime | Требуемое время завершения задания | |
act_start_time | DateTime | Фактическое время начала задания | |
act_finish_time | DateTime | Фактическое время завершения задания | |
sched_start_time | DateTime | Плановое время начала задания | |
sched_finish_time | DateTime | Плановое время завершения задания | |
state | String | Статус задания | |
display_seq | Integer | Идентификатор, определяющий последовательность отображения задания в пользовательском интерфейсе | |
can_pause | Boolean | Может ли задание быть поставлено на паузу | |
setup_duration | TimeSpan | Рассчитанное время переналадки | |
wo | wo | Object | Производственный заказ |
scenario_id | String | Идентификатор сценария планирования | |
wo_desc | String | Описание производственного заказа | |
process_id | String | Идентификатор процесса | |
item_id | String | Идентификатор материала | |
release_time | DateTime | Дата выпуска | |
req_finish_time | DateTime | Требуемая дата завершения | |
req_qty | Number | Требуемое количество материала на заключительной операции |
Добавление скрипта цветовой индикации заданий
Для добавления скрипта цветовой индикации заданий выполните следующие действия:
- Нажмите на кнопку в панели инструментов:
- Выберите вкладку «Настройки цветовой индикации»:
Нажмите на кнопку
, введите в поле «ИД» имя нового скрипта:Скрипт должен иметь уникальное имя (ИД), в случае добавления скрипта с уже существующим именем появится окно с ошибкой:
Выберите существующую категорию в поле «Категория» из выпадающего списка или укажите наименование новой категории скрипта:
Категория скрипта позволяет группировать скрипты. При выборе значения из выпадающего списка «Категория» отобразятся только скрипты выбранной категории:
Нажмите кнопку , в окне редактирования скриптов напишите скрипт с логикой индикации заданий:
Скрипт должен возвращать строковое значение, соответсвующее названию цвета CSS или шестнадцатеричный код цвета.
Выбор кода цвета может быть выполнен с использованием палитры. Код выбранного цвета отобразится справа.
- После завершения написания скрипта нажмите кнопку
- Нажмите на кнопку появится сообщение об обновлении скриптов цветовой индикации заданий: новый скрипт добавится в список: ,
Копирование скрипта цветовой индикации заданий
Для копирования скрипта цветовой индикации заданий выполните следующие действия:
- Нажмите на кнопку в панели инструментов:
- Выберите вкладку «Настройки цветовой индикации»:
- Нажмите на кнопку напротив копируемого скрипта:
- Введите в поле «ИД» имя нового скрипта:
Скрипт должен иметь уникальное имя (ИД), в случае добавления скрипта с уже существующим именем появится окно с ошибкой:
- Выберите существующую категорию в поле «Категория» из выпадающего списка или укажите наименование новой категории скрипта:
Категория скрипта позволяет группировать скрипты. При выборе значения из выпадающего списка «Категория» отобразятся только скрипты выбранной категории:
- Нажмите на кнопку , появится сообщение об обновлении скриптов цветовой индикации заданий: новый скрипт добавится в список:
Удаление скрипта цветовой индикации заданий
Для удаления скрипта цветовой индикации заданий выполните следующие действия:
- Нажмите на кнопку в панели инструментов:
- Выберите вкладку «Настройки цветовой индикации»:
- Нажмите на кнопку , напротив нужного скрипта: появится сообщение об удалении скрипта:
Переключение цветовой индикации заданий
Для переключения цветовой индикации заданий выполните следующие действия:
- Нажмите на выпадающий список «Цветовая индикация» на панели инструментов:
- В выпадающем меню выберите скрипт индикации заданий:
- Задания на диаграмме Ганта заполнятся цветом в соответствии с логикой выбранного скрипта: