(С опозданием на три года ...), но я считаю, что ответ на ваш второй вопрос заключается в том, что SSRS по сути обрабатывает данные из ваших наборов данных как несортированные; Я не уверен, игнорирует ли он какой-либо ORDER BY в sql или просто предполагает, что данные не отсортированы.
Чтобы отсортировать свои группы в определенном порядке, вам необходимо указать это в отчете:
- Выберите диаграмму,
- Во всплывающем окне данных диаграммы (где вы указываете группы категорий) щелкните правой кнопкой мыши свою группу и выберите Свойства группы категорий,
- Нажмите на опцию Сортировка, чтобы увидеть элемент управления для установки порядка сортировки.
Для только что созданного отчета порядок сортировки по категории по умолчанию был алфавитным для группы категорий, которая в основном представляла собой строковый код. Но иногда бывает полезно выполнить сортировку по другим характеристикам данных; например, в моем отчете указано среднее и максимальное время обработки сообщений, идентифицированных некоторым кодом (категорией). Устанавливая порядок сортировки группы на [MaxElapsedMs], Z-> A, он привлекает мое внимание к худшим типам сообщений.
Такой вид презентации не будет полезен для каждого отчета, но может стать отличным инструментом, который поможет читателям лучше понять данные; хотя в других случаях вы можете предпочесть, чтобы отчет имел один и тот же порядок при каждом запуске, и в этом случае сортировка по самой метке категории может быть лучше ... и я предполагаю, что есть обстоятельства, когда изменение порядка сортировки может повредить пониманию, например как будто категории подразумевают какой-то порядок (например, значения даты?)