Использование отчётов для организации универсального поиска

Материал из BiTel WiKi

(Различия между версиями)
Перейти к: навигация, поиск
(Табличные отчёты)
Строка 33: Строка 33:
== Табличные отчёты ==
== Табличные отчёты ==
 +
 +
При клике на строки таблицы могут выполняться некоторые действия в зависимости от содержимого таблицы и содержимого в каждой строке. В данный момент имеются следующие возможности:
 +
 +
*Если в таблице присутствует столбец с заголовком cid (или же невидимый #cid, что одно и то же), то при клике на строку откроется соответствующий содержимому столбца cid договор. Как и в случае с jasper-отчётами это можно использовать для организации произвольного поиска договоров.

Версия 12:14, 3 августа 2010

В отчётах имеется возможность использовать перекрёстные ссылки для открытия объектов биллинга. Это можно применить для некоего "универсального поиска". Метод работает как для Jasper-отчётов, так и для табличных отчётов, только по-разному.

Jasper-отчёты

Как сделать универсальный поиск договоров и с любыми фильтрами и с любыми столбцами результата:

1) Делаем отчёт в модуле отчётов.

2) ???

3) PROFIT

Подробности (про это будет в доке):

В отчёте имеется возможность использовать гиперссылки. Это позволяет из одного отчёта быстро открывать другие связанные отчёты или разные сущности системы, например, договоры. Итак, можно использовать отчёты как пресловутый "универсальный поиск", а именно: формируем любые фильтры и логику поиска, связываем строки результата с отрываемыми договорами и всё -- можно получить список договоров по любому критерию с возможностью открыть нужный. На данный момент поддерживаются следующие типы ссылок:

  • bgbilling:reports://bitel.billing.module.services.reports.BGReportsPanel?param1=value1&param2=value2&... для открытия любого другого отчёта. Для этого нужно знать соответствующие параметры метода Report модуля reports (код отчёта итд).
  • bgbilling:reports://bitel.billing.module.contract.ContractEditor?<cid> для открытия вкладки с соответствующим договором.

Для упомянутой цели, как видно, нужен второй пункт.

Подсказка подробнее:

В свой отчёт в нужное поле (например, куда выводите заголовок договора) вставляете гиперссылку вида[code]bgbilling:reports://bitel.billing.module.contract.ContractEditor? + <cid договора для этой строки>[/code]Появляется на заголовке договора гиперссылка, которая открывает вкладку договора.

И еще надо выбрать из списка hyperlinkType = "Reference".

http://books.google.com/books?id=GeLCEnT1VpMC&pg=PA70&lpg=PA70&dq=ireport+hyperlink&source=bl&ots=abYcAGo8G4&sig=guV7KRxpML5ghrDEyNUvtXJK-vU&hl=ru&ei=7P5DTLmlFNOcOLea7JEN&sa=X&oi=book_result&ct=result&resnum=5&ved=0CDkQ6AEwBA#v=onepage&q=ireport%20hyperlink&f=false

Ссылка на форуме:

Универсальный поиск договоров? Готово.

Табличные отчёты

При клике на строки таблицы могут выполняться некоторые действия в зависимости от содержимого таблицы и содержимого в каждой строке. В данный момент имеются следующие возможности:

  • Если в таблице присутствует столбец с заголовком cid (или же невидимый #cid, что одно и то же), то при клике на строку откроется соответствующий содержимому столбца cid договор. Как и в случае с jasper-отчётами это можно использовать для организации произвольного поиска договоров.
Личные инструменты