Связь Ticket и Process в БД

Обсуждение вопросов и решений

Модератор: ykolesnikov

Ответить
Ducker
OTRS Новобранец
Сообщения: 7
Зарегистрирован: 06 сен 2018, 15:13
Благодарил (а): 2 раза

Связь Ticket и Process в БД

Сообщение Ducker » 06 сен 2018, 17:02

Добрый день.

Занимаюсь получением данных из OTRS для своего приложения. К сожалению, эндпоинт (на restapi) не рабочий. Есть только доступ к БД.
Мне необходимо вытащить тикеты, которые относятся к определенному процессу. Однако, я не могу найти никакой связи в самой БД между таблицами:
- ticket
- pm_process

В самой таблице "pm_process" есть BLOB поле config, назначение которого пока не понятно.

Буду признателен, за любую информацию по этому вопросу.

schum
OTRS Новобранец
Сообщения: 15
Зарегистрирован: 21 сен 2010, 09:45
Контактная информация:

Re: Связь Ticket и Process в БД

Сообщение schum » 06 сен 2018, 17:34

Добрый день.

Когда заявка добавляется в процесс, у нее заполняется динамическое поле ProcessManagementProcessID = ID процесс (см. рисунок).
Чтобы получить список заявок по нужному процессу, просто проверьте у них значение ProcessManagementProcessID.
Если заявка в ходе обработки не "прыгает" из процесса в процесс, то этого будет достаточно.
Вложения
картинка.jpg
картинка.jpg (305.38 КБ) 6425 просмотров

Ducker
OTRS Новобранец
Сообщения: 7
Зарегистрирован: 06 сен 2018, 15:13
Благодарил (а): 2 раза

Re: Связь Ticket и Process в БД

Сообщение Ducker » 06 сен 2018, 18:24

Спасибо за инфу. К сожалению, у меня нет никакого доступа к OTRS. Она находится на другой машине. Доступ у меня есть только к ее базе. Никакого веб-интерфейса.

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

Поэтому, возникает вопрос : Как получить все динамические поля для тикета ?
При условии, что в самой таблице ticket нет никакого поля для этого (внешнего ключа).

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Связь Ticket и Process в БД

Сообщение alexus » 06 сен 2018, 19:21

С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

Ducker
OTRS Новобранец
Сообщения: 7
Зарегистрирован: 06 сен 2018, 15:13
Благодарил (а): 2 раза

Re: Связь Ticket и Process в БД

Сообщение Ducker » 06 сен 2018, 22:01

Вот полная схема https://ftp.otrs.org/pub/otrs/doc/datab ... tabase.png, согласно которой "dynamic_field_value " и "dynamic_field " связаны между собой и только.

В самой "dynamic_field_value" есть поле "object_id", которое не является id тикета. Значения динамических полей я вижу в базе , но пока не знаю, как связать их с тикетом.
otrs.png
Часть схемы
otrs.png (20.95 КБ) 6420 просмотров

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Связь Ticket и Process в БД

Сообщение alexus » 06 сен 2018, 23:06

Вкуривать, вкуривать и ещё раз вкуривать! Ну и мыслить логически.
Вы хоть раз пробовали динамическое поле создавать? Если нет, зайдите в админку. Уверен, что глядя на это в целом
Снимок экрана 2018-09-06 в 22.03.25.png
Снимок экрана 2018-09-06 в 22.03.25.png (724.56 КБ) 6418 просмотров
и на столбец Объект в частности, Вы поймёте в каком столбце искать ID тикета (он же - Заявка).
Понимание приходит с опытом 8-)
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

Ducker
OTRS Новобранец
Сообщения: 7
Зарегистрирован: 06 сен 2018, 15:13
Благодарил (а): 2 раза

Re: Связь Ticket и Process в БД

Сообщение Ducker » 07 сен 2018, 13:14

У меня нет возможности зайти в админку, как и доступа к самой OTRS, иначе бы попытался настроить RestAPI на вытачу всей инфы. На выходных попробую дома поставить тестовую систему на докере и поиграться. Раньше, я никогда с ней не сталкивался.

Спасибо большое за разъяснение. Действительно, я немного проглядел. Это полиморфная связь. Теперь могу связать заявки с динамическими полями, а те, в свою очередь, с процессами.

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Связь Ticket и Process в БД

Сообщение alexus » 07 сен 2018, 13:45

Ducker писал(а):
07 сен 2018, 13:14
У меня нет возможности зайти в админку, как и доступа к самой OTRS, иначе бы попытался настроить RestAPI на вытачу всей инфы.
Странная, как минимум, ситуация. Но Вы ведь уже поняли, что это поле - object_id ))?
Ducker писал(а):
07 сен 2018, 13:14
Теперь могу связать заявки с динамическими полями, а те, в свою очередь, с процессами.
Всё верно.
Если Вам помогли с решением, поставьте лайки на сообщения. Доброе слово/лайк и собаке приятно :D !
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

Ducker
OTRS Новобранец
Сообщения: 7
Зарегистрирован: 06 сен 2018, 15:13
Благодарил (а): 2 раза

Re: Связь Ticket и Process в БД

Сообщение Ducker » 07 сен 2018, 18:05

Что бы не создавать новую тему.

У заявок есть поле "create_time" где записывается время ее создания. Для времени закрытии такого поля нет.
Закрытые заявки меняют "ticket_state_id" (в моем случае на 2 и 3). Как узнать, когда закрыли заявку?

Поставил себе ОТРС на локальную машину, что бы поиграться и посмотреть, как что меняется. Но даже в интерфейсе самой ОТРС не могу найти времени закрытия. Более того, время жизни (Age) тикетов продолжает расти даже у закрытых.

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Связь Ticket и Process в БД

Сообщение alexus » 07 сен 2018, 19:12

Ducker писал(а):
07 сен 2018, 18:05
Что бы не создавать новую тему.
Это лучше в отдельную тему.
С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

Ответить