Eu tenho uma tabela que estou tentando relatar no SSRS-2014.
Uma versão reduzida da tabela: -
TABLE_NAME FEE_NAME FEE_VALUE
PDE 1st year 100.00
PDE 2nd year 120.00
PDE 3rd year 130.00
PDE 4th year 140.00
PDE 5th Year 150.00
PGB 1st year 500.00
PGB 2nd year 520.00
PGB 3rd year 530.00
PGB 4th year 440.00
PGB 5th Year 850.00
PUS 1st year 100.00
PUS 2nd year 120.00
PUS 3rd year 130.00
PUS 4th year 140.00
PUS 5th Year 150.00
PCA 1st year 100.00
PCA 2nd year 120.00
PCA 3rd year 130.00
PCA 4th year 140.00
PCA 5th Year 150.00
PJP 8th year 600.00
PJP 10th year 820.00
PJP 11th year 40.00
PJP 12h year 140.00
PJP 14th Year 750.00
Como posso exibir os dados para que sejam: -
Table Name 1st year 2nd year 3rd year 4th year 5th year 6th year 7th year 8th year 9th year 10th year 11th year 12 year 13th year 14th year
PDE 100.00 120.00 130.00 140.00 150.00
PGB 500.00 520.00 530.00 440.00 850.00
PJP 600.00 820.00 40.00 140.00 750.00
E assim por diante.
As colunas de ano variam de 1 a 20 e nem sempre haverá um valor para cada ano.
Eu tentei usar: -
=Lookup(ReportItems!Textbox3.Value, Fields!FEE_NAME.Value, Fields!FEE_DIS1.Value, "Fees")
usar o ano na linha de cabeçalho da tabela SSRS para pesquisar o FEE_NAME do conjunto de dados, mas recebo uma linha para cada entrada no conjunto de dados, mas cada linha mostra o mesmo valor (correto).
Eu tentei usar CASE no SQL: -
CASE WHEN FEES.FEE_NAME = '3rd year' THEN FEE_VALUE END AS [3rd year],
Novamente, obtenho o valor que quero e, em seguida, esvazio as linhas para o restante das linhas TABLE_NAME.
Também examinei a tabela Pivot (SQL) e uma Matrix (SSRS), mas só quero retornar o valor da taxa correspondente e exibi-lo na coluna do ano relevante, enquanto o que li até agora, o Pivot e o SSRS precisam de um agregado.
Espero que isso faça sentido.
Felicidades.
Você pode fazer isso no SQL ou usando uma tabela de matriz no SSRS. Normalmente, prefiro fazê-lo no SQL, mas isso geralmente não é o mais conveniente para os outros. Você está correto ao precisar usar uma função agregada com qualquer tipo de funcionalidade de pivô. No seu caso, você deve usar um
sum()
agregado.Embora isso pareça um pouco contra intuitivo, funcionará bem, pois há apenas uma única entrada aqui por
fee_name
. O que você obtém é uma lista de valores, onde a única coisa na lista é o valor desejado. Uma lista como,[10]
somará10
.