При включении фильтрации в бэнде пропадает график

Обсуждение Stimulsoft Reports.NET
Ivan
Сообщения: 641
Зарегистрирован: 10 авг 2006, 05:40
Откуда: Stimulsoft Office

Re: При включении фильтрации в бэнде пропадает график

Сообщение Ivan »

Здравствуйте.

Мы разобрались с причиной проблемы.
В нашем продукте есть нюанс при работе с источниками данных.
Если бэнд использует какой-то источник данных, то сортировка/фильтрация этого бэнда применяется к этому источнику.
Если один источник данных используется сразу несколькими компонентами с разными фильтрами/сортировкой, то могут возникать конфликты.
В данном случае фильтр detail-бэнда применяется перед каждой строкой master-бэнда.
Но на мастер-бэнде рендерится чарт, у которого тоже заданы свои фильтры/сортировка, и в результате фильтры/сортировка источника данных сбиваются.
К сожалению, пока не получается решать эту проблему автоматически.

В данном случае, чтобы повторно применить фильтры/сортировку для detail-бэнда, надо прописать следующую строку кода в событии BeginRender бэнда Data2:

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

StiDataHelper.SetData(Data2, false);
Эта команда переинициализирует источник данных с фильтром/сортировкой указанного бэнда.

Ещё один вариант решения проблемы - сделать дубликат источника данных и использовать в чарте именно его.
Минус этого метода - двойной расход памяти на данные, это может быть критично при большом объёме данных.

Спасибо.
Вложения
ReportModified.mrt
(22.6 КБ) 306 скачиваний
Ответить