Закрытие наряда на работу

Добрый день.
Есть ли возможность создать уведомление исполнителю тикета о закрытии наряда на работу этого тикета?
Проще говоря, какую формулировку запроса OQL указать в поле “кому” при формировании вышеописанного действия?
Спасибо.

Создаешь триггер на начало состояния.
Выбираешь класс - Наряд на работу.
Статус - closed.

В поле кому пишешь что-то типа:
SELECT Person AS p JOIN Ticket AS t ON t.agent_id=p.id JOIN WorkOrder AS w ON w.ticket_id=t.id WHERE w.id=:this->ticket_id

Спасибо.

С триггерами проблемы нет.

Предложенный вариант значения поля “кому” возвращает в объекте созданного уведомления значение “нет получателей”…

Наверно ошибка в WHERE
Попробуй так:
SELECT Person AS p JOIN Ticket AS t ON t.agent_id=p.id JOIN WorkOrder AS w ON w.ticket_id=t.id WHERE w.ticket_id=:this->ticket_id

Или в чём-нибудь другом, потому что исход тот же…
У тебя-то подобная постановка запроса отрабатывает?

Нет, мы пока с нарядами не работаем.
А статус Запроса “Назначен” ? если нет, то и Агента не будет.
Можно вообще попробовать без WorkOrder
SELECT Person AS p JOIN Ticket AS t ON t.agent_id=p.id WHERE t.ticket_id=:this->ticket_id
или вместо Ticket использовать UserRequest и связывать их по ref
SELECT Person AS p JOIN UserRequest AS u ON u.agent_id=p.id WHERE u.ref=:this->ticket_ref

1 лайк

Да, конечно, тикет имеет назначенного агента.

Большое спасибо, всё получилось через связь по ref.
Только у нас наряды могут быть не только в запросах, поэтому оставил Ticket.

SELECT Person AS p JOIN Ticket AS t ON t.agent_id=p.id WHERE t.ref=:this->ticket_ref

Ref для этих целей лучше не использовать.
С id вариант выглядит так:
SELECT Person AS p JOIN Ticket AS t ON t.agent_id=p.id WHERE t.id=:this->ticket_id
Ваш наряд это this, а ticket_id - его связь с тикетом.

1 лайк

Перенастроил на вариант с id.

Спасибо каждому за помощь.

Добрый день.
Настраиваю уведомление не могу понять как добавить ссылку на тикет в котором открыт наряд.Чтобы можно из тела письма сразу перейти в тикет