1
resposta

Mensagem de erro na fórmula gerada

Ao solicitar no Copilot que criasse uma medida rápida, descrevendo "qual é a categoria do produto com mais quantidade", foi gerada a fórmula da medida, porém foi exibida a seguinte mensagem de erro sobre a própria medida criada automaticamente: "Não é permitido um sinalizador especial como um número de argumento 3 da função 'RANKX'." Ou seja, foi gerado uma fórmula com erro. Como posso resolver isto?

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Olá, Alvaro! tudo bem?

Essa medida que o Copilot dá como sugestão está trazendo a resposta correta: "Alimentos e bebidas", mas realmente ao tentar criar a medida está surgindo um erro.

O erro que você está enfrentando ocorreu porque o argumento ASC (ascendente) que você está passando para a função RANKX é considerado um sinalizador especial e não é permitido da maneira como está sendo usado.

Para corrigir esse problema, você pode reescrever seu código DAX de uma maneira um pouco diferente. Aqui está uma versão modificada do seu código:

Measure = 
CONCATENATEX(
    TOPN(
        1,
        VALUES('vendas_2022'[Categoria do produto]),
        CALCULATE(
            SUM('vendas_2022'[Quantidade])
        ),
        DESC
    ),
    'vendas_2022'[Categoria do produto],
    ", ",
    CALCULATE(
        SUM('vendas_2022'[Quantidade])
    )
)

Nesta versão corrigida, eu a função RANKX foi removida e a ordem dos argumentos em TOPN foi ajustada para calcular diretamente a soma da 'Quantidade' para cada categoria. TOPN(1, ...) irá retornar a categoria com a maior quantidade. Note que a direção da classificação (DESC para descendente) é especificada diretamente como argumento de TOPN.

É altamente recomendável revisar as sugestões fornecidas pelo Copilot. Além disso, você pode contar com o auxílio do ChatGPT para lidar com eventuais erros que possam surgir.

Qualquer dúvida pode chamar!

Bons estudos :)