Ir para conteúdo
  • 0

Erro ao apresentar na tabela


Márcio Garcia

Pergunta

14 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos

Olá @Márcio Garcia!

Veja se assim funciona :

CLiente FV = 
VAR _Tabela = 
SUMMARIZECOLUMNS(
    DIM_CLIENTE[Cod Cliente],
    DIM_REPRESENTANTE[Nome Sup],
    DIM_REPRESENTANTE[Nome Rca],
    "%FV" , DIVIDE([Realizado FV], [Realizado Atual])
)
RETURN
CALCULATE( 
    COUNTROWS(_Tabela),
    FILTER(_Tabela,
        _Tabela[%FV] <= 0.5)
)

 

Abç.

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

  • 0
  • Alunos

Ou assim :

 

CLiente FV = 
VAR _Tabela = 
SUMMARIZECOLUMNS(
    DIM_CLIENTE[Cod Cliente],
    DIM_REPRESENTANTE[Nome Sup],
    DIM_REPRESENTANTE[Nome Rca],
    "%FV" , DIVIDE([Realizado FV], [Realizado Atual])
)
VAR _Calc1 = COUNTROWS(_Tabela)
RETURN
CALCULATE(_Calc1,
    FILTER(_Tabela,_Tabela[%FV] <= 0.5)
)

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

  • 0
  • Alunos
5 minutos atrás, Nelson Kobayashi disse:

Ou assim :

 

CLiente FV = 
VAR _Tabela = 
SUMMARIZECOLUMNS(
    DIM_CLIENTE[Cod Cliente],
    DIM_REPRESENTANTE[Nome Sup],
    DIM_REPRESENTANTE[Nome Rca],
    "%FV" , DIVIDE([Realizado FV], [Realizado Atual])
)
VAR _Calc1 = COUNTROWS(_Tabela)
RETURN
CALCULATE(_Calc1,
    FILTER(_Tabela,_Tabela[%FV] <= 0.5)
)

Testei das duas formas e continuam dando esse mesmo problema.

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Parece que em algumas situações o Summarizedcolumns não está funcionando corretamente.
Vejam esse post aqui, a solução seria usar outros comandos, tipo summarize, addcolumns, etc.
https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/quot-SummarizeColumns-and-AddMissingItems-may-not-be-used-in/m-p/4098072

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

  • 0
  • Alunos

Olá @Márcio Garcia!

Fiz um teste simulado aqui e deu certo, extatamente do jeito que você escreveu a MEDIDA :

image.png.977386134dec4feeee6f6f77a4d815a5.png

 

Então fui pesquisar na documentação da Microsoft sobre essa correlação mencionada no erro, envolvendo SUMMARIZECOLUNS e ADDMISSINGITEMS :

https://learn.microsoft.com/pt-br/dax/addmissingitems-function-dax

Lendo a documentação me surgiu uma dúvida que vale a pena pesquisar no seu modelo: Experimente criar a SUMMARIZECOLUMNS como se fosse uma nova tabela, só que em vez de usar DIVIDE, crie as duas colunas separadas, a do "Realizado FV" e a do "Realizado Atual" e verifique se elas estão correlacionadas corretamente e se estão trazendo alguma informação.

A mensagem de erro diz "Erro na linha 3, posição 1"

image.png.2c2c6e12dc945500a4bf03b3b3f83299.png

 

A linha 3 é a SUMMARIZECOLUMNS :

image.png.41b16531307229cc3d8c73d8ab5f5ae8.png

 

No meu entendimento ele está sugerindo usar a ADDMISSINGITEMS para trazer as informações que foram cortadas pela SUMMARIZECOLUMNS ou a SUMMARIZECOLUMNS está trazendo algo inválido para o contexto de cálculo do seu visual.

Se puder mandar um exemplo em PBIX para a gente testar e avaliar acho que seria mais produtivo.

Abç.

 

 

 

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

  • 0
  • Admin

olá @Márcio Garcia
A função SUMMARIZECOLUMNS pode até rodar no Power BI Desktop, porém ao publicar vai quebrar seu visual. Para que isso não ocorra é necessário passar a função ADDCOLUMNS antes... Pode ser que no futuro corrijam este bug. 
Veja se a medida abaixo atende: 

 

 

 


Cliente FV =
VAR _Tabela =
    SUMX (
        ADDCOLUMNS (
            SUMMARIZECOLUMNS (
                DIM_CLIENTE[Cod Cliente],
                DIM_REPRESENTANTE[Nome Sup],
                DIM_REPRESENTANTE[Nome Rca]
            ),
            "%FV", DIVIDE ( [Realizado FV], [Realizado Atual] )
        ),
        DIVIDE ( [Realizado FV], [Realizado Atual] )
    )
VAR _Filtro =
    FILTER ( _Tabela, [%FV] <= 0.5 )
RETURN

CALCULATE( 
    COUNTROWS(_Tabela),
    FILTER(_Tabela,
        _Tabela[%FV] <= 0.5)
)

 

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

  • 0
  • Alunos
15 horas atrás, Tiago Craici - Xperiun disse:

olá @Márcio Garcia
A função SUMMARIZECOLUMNS pode até rodar no Power BI Desktop, porém ao publicar vai quebrar seu visual. Para que isso não ocorra é necessário passar a função ADDCOLUMNS antes... Pode ser que no futuro corrijam este bug. 
Veja se a medida abaixo atende: 

 

 

 


Cliente FV =
VAR _Tabela =
    SUMX (
        ADDCOLUMNS (
            SUMMARIZECOLUMNS (
                DIM_CLIENTE[Cod Cliente],
                DIM_REPRESENTANTE[Nome Sup],
                DIM_REPRESENTANTE[Nome Rca]
            ),
            "%FV", DIVIDE ( [Realizado FV], [Realizado Atual] )
        ),
        DIVIDE ( [Realizado FV], [Realizado Atual] )
    )
VAR _Filtro =
    FILTER ( _Tabela, [%FV] <= 0.5 )
RETURN

CALCULATE( 
    COUNTROWS(_Tabela),
    FILTER(_Tabela,
        _Tabela[%FV] <= 0.5)
)

 

Realmente tem algo estranho, no desktop funciona, porém online não vai. Testei essa ideia mas não rolou também, infelizmente não consigo compartilhar o pbix.

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

tenta fazer com summarize ao invés de summaricolumns.

CLiente FV =
VAR _Tabela =
ADDCOLUMNS(
    SUMMARIZE(
        SuaTabelaFato,
        DIM_REPRESENTANTE[Nome Sup],
        DIM_REPRESENTANTE[Nome Rca]
    ),
    "%FV" , DIVIDE([Realizado FV], [Realizado Atual])
)
RETURN
CALCULATE(
    COUNTROWS(_Tabela),
    FILTER(_Tabela,
        _Tabela[%FV] <= 0.5)
)
  • Like 2
Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
2 horas atrás, Edson Igari disse:

tenta fazer com summarize ao invés de summaricolumns.

CLiente FV =
VAR _Tabela =
ADDCOLUMNS(
    SUMMARIZE(
        SuaTabelaFato,
        DIM_REPRESENTANTE[Nome Sup],
        DIM_REPRESENTANTE[Nome Rca]
    ),
    "%FV" , DIVIDE([Realizado FV], [Realizado Atual])
)
RETURN
CALCULATE(
    COUNTROWS(_Tabela),
    FILTER(_Tabela,
        _Tabela[%FV] <= 0.5)
)

Adaptei um pouco a ideia, mas deu certo!

Cliente FV <50% v2 =
VAR _Tabela =
ADDCOLUMNS(
    SUMMARIZE(
        FATO_ITEM_NOTA,
        DIM_CLIENTE[Nome Cliente],
        DIM_REPRESENTANTE[Nome Sup],
        DIM_REPRESENTANTE[Nome Rca]
    ),
    "%FV", [% Realizado FV]
)
VAR _Filtro =
FILTER(
    _Tabela,
    AND([%FV] < 0.5, [%FV] > 0)
)
RETURN
CALCULATE(
    COUNTROWS(_Filtro)
)

Porém me gerou outro problema kkkk Agora tem clientes que não estão mostrando e não estou entendendo por que.

image.png.a4ff89d5c2f6b82db687b691745698a9.png

image.png

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Pode ser a granularidade da fato interferindo no contexto. Tenta alterar o summarize para um crossjoin.

 

Cliente FV <50% v2 =
VAR _Tabela =
ADDCOLUMNS(
    CROSSJOIN(
        VALUES(DIM_CLIENTE[Nome Cliente]),
        SUMMARIZE(
            DIM_REPRESENTANTE[Nome Sup],
            DIM_REPRESENTANTE[Nome Rca]
        )
    ),
    "%FV", [% Realizado FV]
)
VAR _Filtro =
FILTER(
    _Tabela,
    AND([%FV] < 0.5, [%FV] > 0)
)
RETURN
CALCULATE(
    COUNTROWS(_Filtro)
)


 

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...