none
Problema com conversão. RRS feed

  • Pergunta

  •  Oi galera... Eu estou trabalhando num relatório e preciso trabalhar em uma 'expression' pra obter o resultado de um cálculo, o problema é que ninguém tá conseguindo me ajudar, vou passar um exemplo:

    _____________________________________________________________________________________________________________

                                       Vendas total                |   Vendas_1                        | Vendas_2                  |   Vendas_3                    | Qtd Itens Vendidos

    ______________________________________________________________________________________________________________

                                      100,00                                     0                                    100,00                                0                                            1

                                      550,00                                     50,00                              250,00                              250,00                                   8

                                      400,00                                      0                                    200,00                              200,00                                   3 

    _______________________________________________________________________________________________________________

    VALOR TOTAL:           1050,00                   |                50,00                           |   550,00                     |       450,00                           |        12

    _______________________________________________________________________________________________________________

    Segue a minha expression para "Vendas total"

    = FormatNumber(SUM (Int (IIf (Fields!Auditado.Value  >= Fields!Reducao.Value  and  Fields!Auditado.Value >= Fields!Vendas.Value, FormatNumber ( Fields!Auditado.Value), IIf (Fields!Reducao.Value >= Fields!Vendas.Value, FormatNumber(Fields!Reducao.Value), IIf (Fields!Reducao.Value < Fields!Vendas.Value, FormatNumber(Fields!Vendas.Value), FormatNumber(0,2)))))))

    O problema é: Ele me traz valores totalmente errados... Quem puder dar um help, por favor, estou meio que num mato sem cachorro, pois não há absolutamente nada sobre isso em português.


    Assunto = dúvida

    • Movido Roberto F FonsecaModerator sexta-feira, 20 de julho de 2012 02:40 Movido para um Forum mais adequado (De:SQL Server - Desenvolvimento Geral)
    sexta-feira, 20 de julho de 2012 00:20

Todas as Respostas

  • porque você precisa usar formatnumber em todas as referencias aos campos? voce pode fazer isso so no resultado final do sum e deixar a expressão muito mais facil de ler.

    Eu recomendo a voce quebrar a sua expressão e testar cada parte dela para ver se esta funcionando corretamente. Voce pode explicar o que vc esperaria que essa expressão estivesse fazendo?


    Boreki[MSFT] - SQL Server Reporting Services

    sexta-feira, 20 de julho de 2012 17:15
  • Boreki, eu consegui resolver a primeira questão... É a primeira vez que me deparo com essa síntaxe, estou muito perdido. Mas estou embaraçado mesmo é na segunda:

    =FormatNumber (IIf (ReportItems!Auditado_1.Value <> 0,FormatNumber(ReportItems!Auditado_1.Value/ReportItems!Itens_1.Value, 2), FormatNumber(0, 2)))

    Se o número for superior a 0, então eu divido o valor das vendas pela quantidade de itens vendidos, isso me dá o resultado da Columa Total itens(Total itens que eu esqueci de postar):

    Para agregar a soma, estou fazendo o seguinte:

    = FormatNumber( Cdec (SUM (IIf (Fields!Auditado.Value <> 0,  (Fields!Auditado.Value / Fields!Itens.Value), FormatNumber (0,2)))))

    Deveria me retornar a soma de todos os valores da coluna "Total Itens" mas a expressão só da erro na hora de visualizar o relatório... Poderia me ajudar?


    Assunto = dúvida

    sexta-feira, 20 de julho de 2012 17:27
  • Então, ela funciona perfeitamente sim. O problema é para somar. Ao somar todos os resultados dessa coluna ele da erro.

    Assunto = dúvida


    sexta-feira, 20 de julho de 2012 18:14
  • a pergunta persiste. Porque você esta usando formatNumber dentro da expressão? Format number retorna uma string formatada baseada no numero, você nunca deve usar isso dentro de uma função de agregação (como sum). Primeiro faca seus cálculos, depois formate da maneira que você quer mostrar.

    Boreki[MSFT] - SQL Server Reporting Services

    sexta-feira, 20 de julho de 2012 18:35
  • Como disse, estou aprendendo... Não tenho uma base.

    Obrigado pelo auxílio.


    Assunto = dúvida

    sexta-feira, 20 de julho de 2012 18:41
  • tranquilo. Funcionou?

    Boreki[MSFT] - SQL Server Reporting Services

    sexta-feira, 20 de julho de 2012 22:15
  • Ainda não. Eu tentei retirando FormatNumber, mas quando eu consigo compilar esse resultado em especial apresenta erro.

    Assunto = dúvida

    domingo, 22 de julho de 2012 14:47
  • Provável que seja a expressão. Porém, na primeira coluna que eu estava em dúvida (e consegui trazer o resultado) eu apenas peguei a mesma expressão que traz o resultado para a célula e coloquei em outra célula acrescentando o SUM, no meu ponto de vista isso deveria somar todos os valores e apresentá-los.

    Assunto = dúvida

    domingo, 22 de julho de 2012 14:50