Подскажите как правильно сделать:
Есть простой fr (sq + ds) отчет который выводит все Счета.
Хочу установить фильтр (в sq)
, чтобы менеджеры при открытии отчета видели только свои Счета.
На какое событие в ds установить:
К примеру, как передать параметр :ContactID в sq (см. рисунок) для фильтра (на какое событие ds скрипта?). Пробовал разные варианты, но фильтрации не происходит. Если же в самом фильтре (в sq)прописать значение для параметра , то фильтр срабатывает.
Как правильно реализовать данный пример?
Нравится
Попробуйте применять фильтр в обработчике события OnDatasetBeforeOpen Вашего датасета для отчета:
var ContactID = Connector.CurrentUser.ContactID;
ApplyDatasetFilter(ds_InvoiceManager, 'ContactID', ContactID, true);
"Савельева Алла" написал:Попробуйте применять фильтр в обработчике события OnDatasetBeforeOpen Вашего датасета для отчета:
var ContactID = Connector.CurrentUser.ContactID;
ApplyDatasetFilter(ds_InvoiceManager, 'ContactID', ContactID, true);
Именно так я и делал, но при ds_InvoiceManager.Open(); цикл опять повторяется в данном обработчике и открытие отчета FastReport не происходит.
В случае, если это не отчет FR, то все нормально срабатывает.