Связь Ticket и Process в БД
Модератор: ykolesnikov
Связь Ticket и Process в БД
Добрый день.
Занимаюсь получением данных из OTRS для своего приложения. К сожалению, эндпоинт (на restapi) не рабочий. Есть только доступ к БД.
Мне необходимо вытащить тикеты, которые относятся к определенному процессу. Однако, я не могу найти никакой связи в самой БД между таблицами:
- ticket
- pm_process
В самой таблице "pm_process" есть BLOB поле config, назначение которого пока не понятно.
Буду признателен, за любую информацию по этому вопросу.
Занимаюсь получением данных из OTRS для своего приложения. К сожалению, эндпоинт (на restapi) не рабочий. Есть только доступ к БД.
Мне необходимо вытащить тикеты, которые относятся к определенному процессу. Однако, я не могу найти никакой связи в самой БД между таблицами:
- ticket
- pm_process
В самой таблице "pm_process" есть BLOB поле config, назначение которого пока не понятно.
Буду признателен, за любую информацию по этому вопросу.
Re: Связь Ticket и Process в БД
Добрый день.
Когда заявка добавляется в процесс, у нее заполняется динамическое поле ProcessManagementProcessID = ID процесс (см. рисунок).
Чтобы получить список заявок по нужному процессу, просто проверьте у них значение ProcessManagementProcessID.
Если заявка в ходе обработки не "прыгает" из процесса в процесс, то этого будет достаточно.
Когда заявка добавляется в процесс, у нее заполняется динамическое поле ProcessManagementProcessID = ID процесс (см. рисунок).
Чтобы получить список заявок по нужному процессу, просто проверьте у них значение ProcessManagementProcessID.
Если заявка в ходе обработки не "прыгает" из процесса в процесс, то этого будет достаточно.
- Вложения
-
- картинка.jpg (305.38 КБ) 6579 просмотров
Re: Связь Ticket и Process в БД
Спасибо за инфу. К сожалению, у меня нет никакого доступа к OTRS. Она находится на другой машине. Доступ у меня есть только к ее базе. Никакого веб-интерфейса.
Теперь нужно связать тикеты и динамические поля. Проблема в том, что они тоже никак не связаны между собой (я имею в виду ключами, как, напиример тикет и сервис). Сама OTRS где то хранит эту связь отдельно.
Поэтому, возникает вопрос : Как получить все динамические поля для тикета ?
При условии, что в самой таблице ticket нет никакого поля для этого (внешнего ключа).
Теперь нужно связать тикеты и динамические поля. Проблема в том, что они тоже никак не связаны между собой (я имею в виду ключами, как, напиример тикет и сервис). Сама OTRS где то хранит эту связь отдельно.
Поэтому, возникает вопрос : Как получить все динамические поля для тикета ?
При условии, что в самой таблице ticket нет никакого поля для этого (внешнего ключа).
-
- OTRS Гуру
- Сообщения: 5192
- Зарегистрирован: 20 сен 2010, 18:17
- Откуда: Москва
- Благодарил (а): 92 раза
- Поблагодарили: 82 раза
Re: Связь Ticket и Process в БД
https://github.com/OTRS/otrs/blob/rel-6 ... .mysql.sql
TABLE dynamic_field_value
TABLE dynamic_field_value
С уважением,
Алексей Юсов
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? Спросите меня как!
Алексей Юсов
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? Спросите меня как!
Re: Связь Ticket и Process в БД
Вот полная схема https://ftp.otrs.org/pub/otrs/doc/datab ... tabase.png, согласно которой "dynamic_field_value " и "dynamic_field " связаны между собой и только.
В самой "dynamic_field_value" есть поле "object_id", которое не является id тикета. Значения динамических полей я вижу в базе , но пока не знаю, как связать их с тикетом.
В самой "dynamic_field_value" есть поле "object_id", которое не является id тикета. Значения динамических полей я вижу в базе , но пока не знаю, как связать их с тикетом.
-
- OTRS Гуру
- Сообщения: 5192
- Зарегистрирован: 20 сен 2010, 18:17
- Откуда: Москва
- Благодарил (а): 92 раза
- Поблагодарили: 82 раза
Re: Связь Ticket и Process в БД
Вкуривать, вкуривать и ещё раз вкуривать! Ну и мыслить логически.
Вы хоть раз пробовали динамическое поле создавать? Если нет, зайдите в админку. Уверен, что глядя на это в целом и на столбец Объект в частности, Вы поймёте в каком столбце искать ID тикета (он же - Заявка).
Понимание приходит с опытом
Вы хоть раз пробовали динамическое поле создавать? Если нет, зайдите в админку. Уверен, что глядя на это в целом и на столбец Объект в частности, Вы поймёте в каком столбце искать ID тикета (он же - Заявка).
Понимание приходит с опытом
С уважением,
Алексей Юсов
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? Спросите меня как!
Алексей Юсов
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? Спросите меня как!
Re: Связь Ticket и Process в БД
У меня нет возможности зайти в админку, как и доступа к самой OTRS, иначе бы попытался настроить RestAPI на вытачу всей инфы. На выходных попробую дома поставить тестовую систему на докере и поиграться. Раньше, я никогда с ней не сталкивался.
Спасибо большое за разъяснение. Действительно, я немного проглядел. Это полиморфная связь. Теперь могу связать заявки с динамическими полями, а те, в свою очередь, с процессами.
Спасибо большое за разъяснение. Действительно, я немного проглядел. Это полиморфная связь. Теперь могу связать заявки с динамическими полями, а те, в свою очередь, с процессами.
-
- OTRS Гуру
- Сообщения: 5192
- Зарегистрирован: 20 сен 2010, 18:17
- Откуда: Москва
- Благодарил (а): 92 раза
- Поблагодарили: 82 раза
Re: Связь Ticket и Process в БД
Странная, как минимум, ситуация. Но Вы ведь уже поняли, что это поле - object_id ))?
Всё верно.
Если Вам помогли с решением, поставьте лайки на сообщения. Доброе слово/лайк и собаке приятно !
С уважением,
Алексей Юсов
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? Спросите меня как!
Алексей Юсов
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? Спросите меня как!
Re: Связь Ticket и Process в БД
Что бы не создавать новую тему.
У заявок есть поле "create_time" где записывается время ее создания. Для времени закрытии такого поля нет.
Закрытые заявки меняют "ticket_state_id" (в моем случае на 2 и 3). Как узнать, когда закрыли заявку?
Поставил себе ОТРС на локальную машину, что бы поиграться и посмотреть, как что меняется. Но даже в интерфейсе самой ОТРС не могу найти времени закрытия. Более того, время жизни (Age) тикетов продолжает расти даже у закрытых.
У заявок есть поле "create_time" где записывается время ее создания. Для времени закрытии такого поля нет.
Закрытые заявки меняют "ticket_state_id" (в моем случае на 2 и 3). Как узнать, когда закрыли заявку?
Поставил себе ОТРС на локальную машину, что бы поиграться и посмотреть, как что меняется. Но даже в интерфейсе самой ОТРС не могу найти времени закрытия. Более того, время жизни (Age) тикетов продолжает расти даже у закрытых.
-
- OTRS Гуру
- Сообщения: 5192
- Зарегистрирован: 20 сен 2010, 18:17
- Откуда: Москва
- Благодарил (а): 92 раза
- Поблагодарили: 82 раза
Re: Связь Ticket и Process в БД
С уважением,
Алексей Юсов
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? Спросите меня как!
Алексей Юсов
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? Спросите меня как!