Почему мой отчет службы отчетов SQL Server (SSRS) «появляется» для повторной сортировки данных? - PullRequest
0 голосов
/ 13 февраля 2012

Рассматриваемый отчет SSRS - это файл отчета клиента (.rdlc), который создается 1) запросом базы данных и применением возвращенного заполненного объекта System.Data.DataTable к отчету; 2) Вызов метода Export для объекта отчета, чтобы создать окончательный файл PDF.

Проблема: запрос сортирует данные одним способом, а отчет - другим!

Я знаю, что отчет SSRS не поддерживает сортировку, так как до вопрос, отсюда мое замешательство!

Я использовал разрывы отладки для просмотра правильно отсортированного DataTable, превращенного в неправильно отсортированный PDF. (Aaarrgghh)

В отчете просто перечислены продукты, их запасы и категории, например. Красное вино, белое вино и т. Д.

... и, что интересно, PDF-файл отсортирован в алфавитном порядке на основе первого буквенно-цифрового столбца данных, который является третьим физическим столбцом под названием «Категория».

Я использую C # .NET 4 и Visual Studio 2010.

Ответы [ 2 ]

3 голосов
/ 13 февраля 2012

Ваша проблема - вера в то, что «отчет SSRS не поддерживает сортировку» - просто не соответствует действительности.Вы можете сортировать данные в отчете.Это делается через свойства таблицы, а не через свойства набора данных, как можно подумать.

Щелкните в любом месте таблицы, щелкните правой кнопкой мыши в верхнем левом поле и выберите Свойства.Это отобразит свойства для всей таблицы с четвертой вкладкой «Сортировка».Вы должны обнаружить, что этот раздел был заполнен для вашего отчета.

Если этот раздел не заполнен, то вывод будет осуществляться в порядке результатов запроса для набора данных.Однако его можно переопределить с помощью свойств таблицы, чтобы один запрос мог поддерживать разные отчеты с разной сортировкой и группировкой.

0 голосов
/ 28 декабря 2015

кстати .. если кто-то еще сюда доберется и это не решение проблемы .. Я использую конструктор отчетов в VS (не SSRS .. но это кажется очень похожим), есть также возможность сортировки внутри ваша группа. То есть. в окне Группы строк (или группы столбцов) .. щелкните правой кнопкой мыши группу и выберите «Свойства группы» Там также есть раздел «Сортировка», который может изменить ваши ожидаемые результаты.

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

...