Подключение внешней БД, поиск клиентов по произвольному полю

Запросы на решение проблем

Модератор: ykolesnikov

Ответить
xpasha
OTRS Новобранец
Сообщения: 185
Зарегистрирован: 22 авг 2011, 12:30

Подключение внешней БД, поиск клиентов по произвольному полю

Сообщение xpasha » 25 фев 2013, 16:18

Всем добрый день,

Я уже создавал здесь подобную тему. Сказать, что что-то прояснилось - почти ничего.

Вот ссылка на старую тему:
viewtopic.php?f=5&t=1521&p=7744&hilit=Oracle#p7740

Все ответы мне были обещаны в файле config.pm, такого файла я не нашел, а вот Kernel/Config.pm существует. Только в нем нет того разнообразия настроек, что было обещано. Там одна функция в которой параметры обращения к штатной БД MySQL. Где же все это? и Маппинги полей и другое, что могло по словам авторов в старом топике дать ответы на все вопросы. Давали ссылки на доку, ну прочитал я ее в который раз, дан в качестве примера кусок перлового кода, где производится обращение в некую базу и маппинг полей через некие функции. Но куда этот код поместить?
В доке ни слова. Можно ли создать дополнительные поля и поместить их в форме поиска клиента при заведении заявки, чтобы оператор принявший заявку искал клиента не по емейл как это по дефолту сделано, а по фамилии, адресу, телефону, чему-то еще, тоже в доке ничего так сразу не находится.

Помогите разобраться с этими вопросами пожалуйста. Одними ссылками на доку вопрос не решается, дока для тех кто видимо знает изнутри на уровне идеологии и связи классов и переменных мало-мальски OTRS.
OTRS 3.3.4
CentOS 6.5, MySQL 5.1.X
OTRS 3.3.6 тестовая

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

Re: Подключение внешней БД, поиск клиентов по произвольному

Сообщение alexus » 25 фев 2013, 17:27

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

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? Спросите меня как!

xpasha
OTRS Новобранец
Сообщения: 185
Зарегистрирован: 22 авг 2011, 12:30

Re: Подключение внешней БД, поиск клиентов по произвольному

Сообщение xpasha » 28 фев 2013, 14:08

То есть получается, вы этим хотите сказать, что все примеры кода подключения внешней БД необходимо помещать в файл Kernel/Config.pm? Поясните пожалуйста, в этом разделе документации по вашей ссылке нет прямого указания сделать так.

А нет ли у вас конкретных бы примеров кастомизации панели поиска пользователя при создании заявки ну или хотя бы отсылки к доке как они делаются?
OTRS 3.3.4
CentOS 6.5, MySQL 5.1.X
OTRS 3.3.6 тестовая

xpasha
OTRS Новобранец
Сообщения: 185
Зарегистрирован: 22 авг 2011, 12:30

Re: Подключение внешней БД, поиск клиентов по произвольному

Сообщение xpasha » 28 фев 2013, 14:17

С тем, что пример нужно поместить в Kernel/Config.pm стало ясно, но в примере подключения к базе нет вызова какого-либо SQL выражения, откуда тогда берутся эти данные. Напоминает головоломку, типа сиди и думай, сравнивай сопоставляй каким же образом в этом коде выдергиваются данные и передаются OTRS.
OTRS 3.3.4
CentOS 6.5, MySQL 5.1.X
OTRS 3.3.6 тестовая

xpasha
OTRS Новобранец
Сообщения: 185
Зарегистрирован: 22 авг 2011, 12:30

Re: Подключение внешней БД, поиск клиентов по произвольному

Сообщение xpasha » 28 фев 2013, 14:27

Каюсь, догадаться, что все помещается в Kernel/Config.pm можно было, а в доке есть маленький фрагмент по добавлению поля в MAP, который предписывается поместить в Config.pm, незнаю было ли он тогда, когда я писал свой первый пост на который давал ссылку, но тогда я читая доку про помещение параметров в config.pm ничего найти не мог. Теперь вот непонятна структура самого примера, как же в нем достаются данные из базы.
Да и второй вопрос актуален, как сделать чтобы при создании заявки можно было использовать не только поле e-mail.
Не вот эта строчка выводит поле на панель заявки?

[ 'UserEmail', 'Email', 'email', 1, 1, 'var', '$Env{"CGIHandle"}?Action=AgentTicketCompose&ResponseID=1&TicketID=$Data{"TicketID"}&ArticleID=$Data{"ArticleID"}', 0 ],

в ней единственной содержится ссылка на какой-то CGI-Handle, а в панели создания заявки поиск как раз по емейл идет.

Подскажите, я на правильном пути, или может через веб эта кастомизация возможна?
OTRS 3.3.4
CentOS 6.5, MySQL 5.1.X
OTRS 3.3.6 тестовая

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

Re: Подключение внешней БД, поиск клиентов по произвольному

Сообщение alexus » 01 мар 2013, 00:38

Комментарий для стандартного CustomerMap, который Вы уже, видимо, догадались скопипастить из Defualts.pm вот такого вида

Код: Выделить всё

    # var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly, http-link-target, link class(es)
дает нам всем подсказку, что каждая означает каждая позиция

Код: Выделить всё

[ 'UserEmail', 'Email', 'email', 1, 1, 'var', '$Env{"CGIHandle"}?Action=AgentTicketCompose&ResponseID=1&TicketID=$Data{"TicketID"}&ArticleID=$Data{"ArticleID"}', 0 ],
1 - UserEmail - это наименования стандартной переменной в OTRS
2 - Email - это фактическое наименование Label для поля в интерфейсе
3 - email - имя поля базы данных в таблице с клиентами
4 - 1 - shown always - отображать всегда в интерфейсе (отображаются только НЕ ПУСТЫЕ поля, что означает "0", думаю ясно) (БИНГО! То что нужно! ;) )
5 - 1 - required - значит поле обязательное
.........
ну и т.д. и т.п.
С уважением,
Алексей Юсов

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? Спросите меня как!

Ответить