Ir para conteúdo
  • 0

Contar o números de colunas dos últimos datasets em um período filtrado em um slicer.


hmattje
Ir para solução Solucionado por Bruno Abdalla de Souza ,

Pergunta

  • Alunos

Olá, estou com um desafio que não estou consigo destravar.

Problema: preciso criar um gráfico de barras para mostrar a contagem de "column" por "category", mas preciso contar apenas as colunas do registro mais recente para cada "Dataset" de acordo com o filtro do slicer de data.
Não posso usar distinctcount da coluna, pois existem diferentes "Category" para as mesmas "Column". 
Como vocês podem ver na imagem abaixo, tenho uma amostra de resultados com diferentes datas filtradas em um slicer.
image.png.76f17265e7ef210d68a499f55ab49801.png

Já tentei várias abordagens, mas não consegui fazer, será que poderiam me ajudar com esta fórmula.
Vou deixar anexado um exemplo de dados no power bi.
Obrigado.

Exemplo.pbix

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos
  • Solução

Tente isso:
 

DistinctCount Columns = 
SUMX(
    ADDCOLUMNS(
        VALUES(Registration[Dataset]),
        "Contagem",
        VAR vDataMax =
            CALCULATE(
                MAX(Registration[Date]),
                ALLEXCEPT(Registration, Registration[Dataset])
            )
        RETURN
        COUNTROWS(
            FILTER(
                SUMMARIZE(
                    Registration,
                    Registration[Date],
                    Registration[Dataset],
                    Registration[Column],
                    Registration[Type]
                ),
                Registration[Date] = vDataMax
            )
        )
    ),
    [Contagem]
)

 

20221122_ContarDistintosColumnPorCategoria.pbix

  • Like 1
Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Obrigado pela resposta, mas ainda não é o resultado esperado.
O resultado para o filtro da imagem abaixo deve ser considerado as linhas em amarelo. Então o resultado seria:
Retain: 3, porque existe 2 Retain no dia 13 para o dataset D2 e 1 para o dia 10 para o dataset D1.
Tokenize: 3, porque existe 2 Tokenize no dia 10 para o dataset D1 e 1 para o dia 13 para o dataset D2.


image.png.0284495d84b790de6c28d63f02694f5b.png

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
31 minutos atrás, Bruno Abdalla de Souza disse:

Tenho que pegar a última data de cada dataset? Seria isso?

Isso ai, somente os últimos registros(mais atuais) para cada dataset que está sendo filtrado no slicer.

Editado por hmattje
Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
19 minutos atrás, Bruno Abdalla de Souza disse:

Tente isso:
 

DistinctCount Columns = 
SUMX(
    ADDCOLUMNS(
        VALUES(Registration[Dataset]),
        "Contagem",
        VAR vDataMax =
            CALCULATE(
                MAX(Registration[Date]),
                ALLEXCEPT(Registration, Registration[Dataset])
            )
        RETURN
        COUNTROWS(
            FILTER(
                SUMMARIZE(
                    Registration,
                    Registration[Date],
                    Registration[Dataset],
                    Registration[Column],
                    Registration[Type]
                ),
                Registration[Date] = vDataMax
            )
        )
    ),
    [Contagem]
)

 

20221122_ContarDistintosColumnPorCategoria.pbix 49.06 kB · 1 download

Acredito que estamos próximos, nas simulações que fiz aqui para alguns períodos funcionou, já para outros não.
Veja o teste que não funcionou.

Filtro de data entre 01/01/2022 a 12/01/2022 o Resultado deveria ser
Retain: 2
Tokenize: 2 
Constant: 2
Não identifica o Tokenze e não conta corretamente.
image.png.c7ad3cf8fa68b97a787e0c26dee8c990.png
 

Para este outro período 01/01/2022 a 09/01/2022 o resultado deveria ser
Retain: 2
Tokenize: 2
Mas fica em branco.
image.png.1439a8e813f1e3b1af0e227e846d5ffd.png

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
48 minutos atrás, Bruno Abdalla de Souza disse:

Tente isso:
 

DistinctCount Columns = 
SUMX(
    ADDCOLUMNS(
        VALUES(Registration[Dataset]),
        "Contagem",
        VAR vDataMax =
            CALCULATE(
                MAX(Registration[Date]),
                ALLEXCEPT(Registration, Registration[Dataset])
            )
        RETURN
        COUNTROWS(
            FILTER(
                SUMMARIZE(
                    Registration,
                    Registration[Date],
                    Registration[Dataset],
                    Registration[Column],
                    Registration[Type]
                ),
                Registration[Date] = vDataMax
            )
        )
    ),
    [Contagem]
)

 

20221122_ContarDistintosColumnPorCategoria.pbix 49.06 kB · 2 downloads

Adicionei a parte em negrito e parece que foi.
Não tenho palavras para agradecer. Muito obrigado.

 

DistinctCount Columns =
SUMX(
    ADDCOLUMNS(
        VALUES(Registration[Dataset]),
        "Contagem",
        VAR vDataMax =
            CALCULATE(
                MAX(Registration[Date]),
                ALLEXCEPT(Registration, Registration[Dataset]), 'Date'[Date] <= Max('Date'[Date])
            )
        RETURN
        COUNTROWS(
            FILTER(
                SUMMARIZE(
                    Registration,
                    Registration[Date],
                    Registration[Dataset],
                    Registration[Column],
                    Registration[Type]
                ),
                Registration[Date] = vDataMax
            )
        )
    ),
    [Contagem]
)
  • Like 1
Link para o comentário
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
×
×
  • Criar Novo...