(Três anos atrasado ...), mas acredito que a resposta para sua segunda pergunta é que o SSRS trata essencialmente os dados de seus conjuntos de dados como não classificados; Não tenho certeza se ele ignora qualquer ORDER BY no sql ou se apenas assume que os dados não estão classificados.
Para classificar seus grupos em uma ordem específica, você precisa especificá-lo no relatório:
- Selecione o gráfico,
- Na janela pop-up Dados do gráfico (onde você especifica os Grupos de categorias), clique com o botão direito do mouse em seu grupo e clique em Propriedades do grupo de categorias,
- Clique na opção Classificação para ver um controle para definir a ordem de classificação
Para o relatório que acabei de criar, a ordem de classificação padrão na categoria era alfabética no grupo de categorias, que era basicamente um código de sequência. Mas, às vezes, pode ser útil classificar por alguma outra característica dos dados; por exemplo, meu relatório é do tempo médio e máximo de processamento de mensagens identificadas por algum código (a categoria). Ao definir a ordem de classificação do grupo para [MaxElapsedMs], Z-> A chama minha atenção para os tipos de mensagens com pior desempenho.
Esse tipo de apresentação não será útil para todos os relatórios, mas pode ser uma excelente ferramenta para orientar os leitores a entender melhor os dados; embora em outras ocasiões você possa preferir que um relatório tenha a mesma ordem sempre que for executado; nesse caso, a classificação no próprio rótulo da categoria pode ser melhor ... e acho que há circunstâncias em que alterar a ordem de classificação pode prejudicar o entendimento, como como se as categorias implicassem algum tipo de pedido (como valores de data?)