Связь 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 КБ) 532 просмотра

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

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

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

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

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

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

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

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

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

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

Prod: OTRS ITSM 5.0.14 on CentOS 7 x64 Linux with MySQL 5.7

Radiant System OTRS Intergrator RU
Radiant System OTRS Intergrator EN
Хотите внедрить OTRS? Спросите меня как!
Следите за нашими новостями на Facebook

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 КБ) 527 просмотров

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

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

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

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

Prod: OTRS ITSM 5.0.14 on CentOS 7 x64 Linux with MySQL 5.7

Radiant System OTRS Intergrator RU
Radiant System OTRS Intergrator EN
Хотите внедрить OTRS? Спросите меня как!
Следите за нашими новостями на Facebook

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

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

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

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

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

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

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 ITSM 5.0.14 on CentOS 7 x64 Linux with MySQL 5.7

Radiant System OTRS Intergrator RU
Radiant System OTRS Intergrator EN
Хотите внедрить OTRS? Спросите меня как!
Следите за нашими новостями на Facebook

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 Гуру
Сообщения: 4736
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 27 раз
Поблагодарили: 30 раз

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

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

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

Prod: OTRS ITSM 5.0.14 on CentOS 7 x64 Linux with MySQL 5.7

Radiant System OTRS Intergrator RU
Radiant System OTRS Intergrator EN
Хотите внедрить OTRS? Спросите меня как!
Следите за нашими новостями на Facebook

Ответить