none
Função Count no Microsoft report Viewer RRS feed

  • Pergunta

  • Olá Pessoal,

    Estou tentando utilizar a função Count no MIcrosoft Report Viewer e não estou conseguindo.

    Ex: o relatório está agrupado por data, vendedor e cliente, quando coloco a expressão =count(Fields!Cliente.Value) ele me retorna um valor maior, quando vou analisar vejo que se o cliente se repete, ele conta novamente.

    Como faço para ele só contar se o cliente for diferente?


    "A tecnologia só é tecnologia para quem nasceu antes dela ter sido inventada." Abilio Aguiar
    • Movido Fernanda SimõesModerator segunda-feira, 29 de março de 2010 14:48 Movendo para um forum expecifico (De:VB.NET e Visual Basic)
    sexta-feira, 26 de março de 2010 14:21

Respostas

  • Já tetou agrupar os dados usado um "Group" no campo dos clientes?
    Assim, cada cliente será um cabeçalho com seus respectivos pedidos logo abaixo.

    Aí vc poderá contar os clientes.

    Outra solução é contar quantos clientes distintos tem no datatable antes de chamar o reportview, criar um parâmetro no reportview e passar o resultado dessa contagem como parâmetro para o reportview através do código.


    Se a resposta foi útil, por favor marque como útil. Leia a bíblia.
    terça-feira, 15 de junho de 2010 15:10
  • Utilize a expressao =CountDistinct no lugar de =Count, ela irá contar somente o numero de clientes diferentes.
    Boreki[MSFT] - SQL Server Reporting Services
    terça-feira, 15 de junho de 2010 20:11

Todas as Respostas

  • Prezado,

    Sei que já faz muito tempo, mas, conseguiu resolver sua dúvida?


    André Alves de Lima
    Visite o meu site: http://andrealveslima.spaces.live.com
    Me siga no Twitter: @andrealveslima
    domingo, 13 de junho de 2010 19:45
    Moderador
  • Olá André,

    Ainda não consegui resolver, ele retorna sempre a quantidade de linhas da consulta mesmo que o cliente seja repetido.


    "A tecnologia só é tecnologia para quem nasceu antes dela ter sido inventada." Abilio Aguiar
    segunda-feira, 14 de junho de 2010 12:09
  • Abilio,

    Como é a estrutura de campos da tabela que alimenta o relatório?


    André Alves de Lima
    Visite o meu site: http://andrealveslima.spaces.live.com
    Me siga no Twitter: @andrealveslima
    segunda-feira, 14 de junho de 2010 23:22
    Moderador
  • André,

    As tabelas são as seguintes:

    Tped_pedido_venda (Cabeçalho do pedido, Num_ped, Data_Ped, Cli_ped, vend_ped, Valor total)

    Tped_pedido_venda_item (Itens do Pedido, Num_ped_fk, Cod_mer, Nome_mer, Qtd_pedida, Valor Item, Valor_total_item)

    tvnd_Vendedor (Dados do vendedor, Nome_vnd)

    tcli_cliente (Dados do Cliente, Nome_cli)

    tmer_mercadoria (Dados Mercadoria, nome_mer)

    Criei uma view realizando um consulta unindo estas tabela, estão se o pedido tem 5 itens, a consulta me retorna 5 linhas mudando apenas os dados dos itens do pedido e repetindo os dados do Cabeçalho do pedido, Cliente e Vendedor)

    ai quando tento realizar o count por exemplo de clientes atendidos no periodo ele me retorna 5 clientes.


    "A tecnologia só é tecnologia para quem nasceu antes dela ter sido inventada." Abilio Aguiar
    terça-feira, 15 de junho de 2010 15:04
  • Já tetou agrupar os dados usado um "Group" no campo dos clientes?
    Assim, cada cliente será um cabeçalho com seus respectivos pedidos logo abaixo.

    Aí vc poderá contar os clientes.

    Outra solução é contar quantos clientes distintos tem no datatable antes de chamar o reportview, criar um parâmetro no reportview e passar o resultado dessa contagem como parâmetro para o reportview através do código.


    Se a resposta foi útil, por favor marque como útil. Leia a bíblia.
    terça-feira, 15 de junho de 2010 15:10
  • Utilize a expressao =CountDistinct no lugar de =Count, ela irá contar somente o numero de clientes diferentes.
    Boreki[MSFT] - SQL Server Reporting Services
    terça-feira, 15 de junho de 2010 20:11