Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

A formula não está funcionando?

A formula apresentada no vídeo não está funcionando aqui. Eu só selecionei tudo, copiei e colei. Não está com os "espaços_", mas eu também já coloquei em tudo e não funcionou. Porque será?

----FORMULA----

CLASSIFICACAO = SWITCH(DANO[DANO]; 
"Calota dianteira direita"; "Baixo";
"Calota dianteira esquerda"; "Baixo";
"Calota traseira direita"; "Baixo";
"Calota traseira esquerda"; "Baixo";
"Parachoque dianteiro direito"; "Baixo";
"Parachoque traseiro direito"; "Baixo";
"Parachoque dianteiro frontal"; "Baixo";
"Parachoque traseiro frontal"; "Baixo";
"Parachoque dianteiro esquerdo"; "Baixo";
"Parachoque traseiro esquerdo"; "Baixo";
"Farol dianteiro esquerdo"; "Médio";
"Farol dianteiro direito"; "Médio";
"Lanterna traseira esquerda"; "Médio";
"Lanterna traseira direita"; "Médio";
"Porta traseira direita"; "Médio";
"Porta traseira esquerda"; "Médio";
"Porta dianteira direita"; "Médio";
"Porta dianteira esquerda"; "Médio";
"Janela dianteira direita"; "Alto";
"Janela traseira direita"; "Alto";
"Janela dianteira esquerda"; "Alto";
"Janela traseira esquerda"; "Alto";
"Teto"; "Alto";
"Capo"; "Alto";
"Parabrisa traseiro"; "Alto";
"Parabrisa dianteiro"; "Alto";
"Espelho esquerdo"; "Alto";
"Espelho direito"; "Alto";
"Portamalas"; "Médio"
)

----ERRO----

A sintaxe de ';' está incorreta. (DAX(SWITCH(DANO[DANO];"Calota dianteira direita"; "Baixo":"Calota dianteira esquerda"; "Baixo";"Calota traseira direita"; "Baixo";"Calota traseira esquerda"; "Baixo";"Parachoque dianteiro direito"; "Baixo";"Parachoque traseiro direito"; "Baixo";"Parachoque dianteiro frontal"; "Baixo";"Parachoque traseiro frontal"; "Baixo";"Parachoque dianteiro esquerdo"; "Baixo";"Parachoque traseiro esquerdo"; "Baixo";"Farol dianteiro esquerdo"; "Médio";"Farol dianteiro direito"; "Médio";"Lanterna traseira esquerda"; "Médio";"Lanterna traseira direita"; "Médio";"Porta traseira direita"; "Médio";"Porta traseira esquerda"; "Médio";"Porta dianteira direita"; "Médio";"Porta dianteira esquerda"; "Médio";"Janela dianteira direita"; "Alto";"Janela traseira direita"; "Alto";"Janela dianteira esquerda"; "Alto";"Janela traseira esquerda"; "Alto";"Teto"; "Alto";"Capo"; "Alto";"Parabrisa traseiro"; "Alto";"Parabrisa dianteiro"; "Alto";"Espelho esquerdo"; "Alto";"Espelho direito"; "Alto";"Portamalas"; "Médio";))).
4 respostas

Bom dia,

Caso esteja com a versão atualizada do Power BI foi implementado a versão nova o padrão de formulas internacional (americano). Nesse padrão ";" não existe como separado como possivelmente está nos cursos.

Para corrigir sem grande questão pode-se fazer o seguinte:

Abra Menu Arquivo>Opções e Configurações>Opções>Configurações Regionais.

Nesse menu tem uma opção chamada Separador Dax que está por padrão na primeira opção:

"(recomendado) Usar os separadors do DAX padrão virgula...."

Caso queria resolver sem mudar o arquivo pode alterar para o de Baixo:

"Usar Separadores com DAX localizados:....."

Será necessário reiniciar o Power BI.

Boa tarde Rafael, Primeiramente obrigado pela ajuda.

Eu até pensei que poderia ser algo relacionado a versão realmente, mas o curso não informa isso ou eu não encontrei. Bom, então se entendi bem no padrão americano a linguagem DAX utiliza virgulas no lugar de "ponto e virgula" usado no padrão brasileiro, certo?

Apesar de o padrão com virgulas estar recomendado nas configurações, ele é o padrão do mercado hoje ou seria melhor aprender com "ponto e virgula" mesmo?

solução!

Boa Tarde,

Não e bem isso... o que acontece e que quando a Microsoft criou o Excel e seus módulos inicialmente ela fez "tudo" traduzido de forma regional. Isso até praticamente a versão 2010 pelo que sei.

Então se pegar um office no Brasil (PT-BR) por exemplo a formula "SE" é facilmente conhecido porem no Inglês original a forma é "IF". No caso do DAX Foi um linguagem criada e inserida no Power Query e Power Pivot e vem acompanhando o Excel o desde o Inicio e sempre em inglês. Portanto quem aprendeu aprendeu com os comando em inglês e o que a Microsoft está tentando fazer é "padronizar".

Pois imagina você monta algo no Excel ou no Power Bi no brasil e abri ele em Portugal ou nos EUA durante uma viagem ou até manda para alguém alterar algo. A pessoa teria que alterar todas as formulas para o padrão da linguagem da região.

Então esse parâmetro é focado em "educar" os programadores a seguirem o padrão internacional pois assim o que muda e linguagem de menu em si que pode facilmente ser alterada.

Não existe correto nesse assunto e um padrão da Microsoft que não existe uma documentação que possa dizer será assim ou tem que ser assim. Os cursos da Alura foram os primeiros que eu vi então aprendi com ";" e boa... eu entendo que se me acostumar agora com somente a " , " será melhor pois meu objetivo e fazer materiais e projetos internacionais.

Qualquer um dos 2 funcionará porem ai tens que pensar no seu objetivos pessoais e aprender de uma ou de outra forma.

Muito obrigado Rafael, obrigado pelas orientações. Foi bem completo!