Подотчеты VB.NET 2, основанные на одном наборе данных - PullRequest
0 голосов
/ 26 января 2011

Описание проблемы: у меня есть запрос iSeries в VB.NET/VS 2008, который мне нужно запустить с двумя отдельными значениями одного и того же параметра и представить в отчете для сравнения А / Б.Другими словами - я хочу увидеть отчет, в котором результат прогона с параметром = value1 находится слева, тот же запрос с параметром = value2 справа.

Моя первоначальная идея заключалась в том, чтобы использовать 2 таблицы дляотчет, в котором каждая таблица будет основана на результатах каждого запуска из DataSet (xsd), но я, кажется, могу указать только параметры на уровне ReportViewer, что означает, что у меня есть 2 идентичные таблицы вместо случаев A / B.

Очевидным вторым способом было создание 2 отдельных отчетов, каждый со своим собственным значением параметра, и получение их в качестве подотчета в основном.Тем не менее оба подотчета отображаются с «Ошибка: Подотчет не может быть отображен».Есть ли способ отловить ошибку, чтобы понять, почему?

Я провел несколько других экспериментов, но у меня есть проблема с тем фактом, что это не "аккуратное" решение.

Что такоенаилучшим способом (иначе говоря, лучшими практиками, отраслевым стандартом, как бы вы это ни называли) для создания такого A / B отчета?Я был уверен, что есть известный метод для этой работы, но, к моему удивлению, я не нашел ничего, кроме нескольких копий статей MSDN.

1 Ответ

1 голос
/ 08 ноября 2011

Чтобы использовать два отчета с одним и тем же набором данных, вам нужно добавить обработчик событий в свой код, чтобы перехватить событие SubreportProcessing. Когда это событие происходит, вы устанавливаете источник данных в свой набор данных. Другая вещь, на которую вам нужно обратить внимание - это сам отчет. Если вы используете Remotemode.Local для Reportviewer, у вас есть расширение .rdlc отчета, которое никогда не будет загружаться. Я держу отчеты с обоими расширениями. 1, который запускается для моего сервера отчетов, а другой - для запуска локальной программы в моей программе.

Надеюсь, это поможет!

С уважением, Вилли

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...