Documente Academic
Documente Profesional
Documente Cultură
com
Sobre me
• Parada
• 2 pausas de 15 minutos
• Almoço 30 minutos
• Estilo de Treinamento:
• Ouça e veja então AÇÃO
paulorsantos.com
Funções DAX
• DAX DATA ANALYSIS EXPRESSIONS • Funções de agregação
• Coleção de funções, operadores e • Funções de contagem
constantes que podem ser usados • Funções lógicas
em uma fórmula ou expressão, para
calcular e retornar um ou mais • Funções de informações
valores. • Funções de texto
• Funções de data
• Funções semelhantes às do Excel
paulorsantos.com
1
2
• Caso ainda não saiba como criar uma medida, segue abaixo um
pequeno passa a passo, simples. Todas as fórmulas que utilizaremos
aqui seguirá este mesmo padrão.
Operadores
Operadores O que faz? Exemplo Resultado
+ Somar =2+5 7
- Subtrair =8-3 5
* Multiplicar = 15 * 3 45
/ Dividir = 20 / 2 10
^ Potência =2^3 8
& Concatenar = “Paulo" & " " & “Santos" Paulo Santos
Comparadores
Comparadores O que faz? Exemplo Resultado
= Igual =4=6 False
< Menor =3<6 True
> Maior =3>8 False
<= Menor ou Igual = 3 <= 5 True
>= Maior ou igual = 3 >= 5 False
<> Diferente = 3 <> 5 False
&& E = 3 < 5 && 3 < 4 False
|| OU = 3 < 5 || 3 < 2 True
Total Vendas=
Sum(Tabela[Venda]) Total de Vendas por Total Vendas
XX $ 1.530,00
Total $10.530,00
Coluna Calculada x Medida paulorsantos.com
[Margem Correta] =
SUM ( Tabela[Lucro] ) / SUM ( Tabela[Venda] )
Tabela[Margem] =
Tabela[Lucro] / Tabela[Venda]
paulorsantos.com
paulorsantos.com
paulorsantos.com
Funções de Calculo
COUNTROWS paulorsantos.com
• Conta o número de campos de uma coluna que não estão vazias. Ela conta
não somente as linhas contendo valores numéricos, mas também as linhas
contendo valores não vazios, inclusive texto, datas e valores lógicos.
• Sintaxe: COUNTA(<coluna>)
• Para finalizarmos as funções de Contagem, temos a função COUNTA. Ela
basicamente conta todos os tipos de campo de uma coluna.
• Diferente da função COUNT (que conta apenas números), a função
COUNTA conta textos, datas, números, contanto os campos que não
estejam vazias.
• Total de Registros = COUNTA(Vendas[ID Cliente])
• Valor retornado: 388.992
MAX paulorsantos.com
• Retorna a soma de uma expressão avaliada para cada linha de uma tabela.
• Sintaxe: SUMX (<tabela>;<expression>)
• A função SUMX é um mestre na linguagem DAX. Supondo que você quer
multiplicar/dividir uma coluna por outra, ou somar/subtrair uma por outra,
ou ainda elevar uma coluna ao quadrado da outra, é só usar a função
SUMX!
• Ela recebe como parâmetro principal, na qual você informa qual operação
deverá ser efetuada em cada linha. Com isso, cria-se uma “coluna
temporária” que é somada para retornar o resultado final.
• Neste caso, apuramos o Lucro subtraindo o Preço de Venda e o Preço de
Custo em cada linha, e depois totalizando.
• Total Lucro X = Sumx(Vendas;[Vlr Total Vendas]-[Total Custo X])
• Valor retornado: 90.702
AVERAGE paulorsantos.com
• Organização
• Performance, melhorando o desempenho da medida.
• Os resultado não são recalculados Date vAR =
• Crie uma dcalandario com variável GENERATE(
CALENDAR ( DATE ( 2019; 1; 1 );DATE ( 2019; 12; 31
) );
VAR currentDay = [Date]
VAR day = DAY( currentDay )
VAR month = MONTH ( currentDay )
VAR year = YEAR ( currentDay )
RETURN ROW (
Vamos voltar SumX e Recriar Var "day"; day;
"month"; month;
"year"; year )
)
paulorsantos.com
•Funções lógicas
Função (IF) paulorsantos.com
=IF(AND (13>7;9<5),
“Verdade”; Retorna “Falso”
“Falso”
Função (IF) paulorsantos.com
• Neste caso, caso não tenha nenhuma data na coluna “Data Status”,
significa que o funcionário está ativo.
Função IF 1 =
IF ( MAX ( Funcionarios[Data Status] ) = BLANK (); "Funcionário Ativo"; "" )
Função (IF) paulorsantos.com
Função IF 2 =
IF (
'Funções'[01-Função IF 1] = BLANK ();
"";
IF (
MAX ( Funcionarios[Status] ) <> "Demissão"
&& YEAR ( MAX ( Funcionarios[Admissão] ) ) < 2010;
"Muito experiente";
IF (
MAX ( Funcionarios[Status] ) <> "Demissão"
&& YEAR ( MAX ( Funcionarios[Admissão] ) ) < 2016;
"Experiente";
"Pouco experiente"
)
)
)
Função (IF) paulorsantos.com
Neste caso, utilizamos a função juntamente com o IF, utilizada para verificar se o
funcionário está inativo e se entrou como inativo em 2017. São duas condições
verificadas e, sendo as duas verdadeiras retornará a mensagem de “Inativos em 2017”.
Função AND =
IF (
AND (
MAX ( Funcionarios[Data Status] ) <> BLANK ();
YEAR ( MAX ( Funcionarios[Data Status] ) ) = 2017);
"Inativos em 2017";
"")
Função (OR) paulorsantos.com
=OR (12>7,10<5)
=IF(OR (12>7;10<5) Retorna “Verdade”
“Verdade”;
“Falso”
Função (OR) paulorsantos.com
Função OR =
IF (
OR (
MAX ( Funcionarios[Status] ) = "Licença Maternidade";
MAX ( Funcionarios[Status] ) = "Auxílio Doença");
"Inativo";
"")
Função (IFERROR) paulorsantos.com
Dentre as funções lógicas no Power BI, esta é função puramente DAX. É de grande
ajuda para simplificar o uso do IF. O que quero explicar aqui é que a função SWITCH
evita utilizar um punhado de IFs.
A função avalia uma expressão em relação a uma lista de opções e retorna um desses
resultados de acordo com o contexto. Função SWITCH =
SWITCH (
Sintaxe: SWITCH (<expressão>; <valor>; <resultado>; MAX ( CalendarioDAX[Mês] );
1; "Janeiro";
<valor1>; <resultado1>; …; <caso contrário>) 2; "Fevereiro";
3; "Março";
4; "Abril";
5; "Maio";
6; "Junho";
7; "Julho";
8; "Agosto";
9; "Setembro";
10; "Outubro";
11; "Novembro";
12; "Dezembro";
"Mês não encontrado")
OUTRAS FUNÇÕES LÓGICAS paulorsantos.com
Função Descrição
TRUE Sintaxe: TRUE()A fórmula retorna o valor lógico TRUE (VERDADEIRO).
•https://docs.microsoft.com/pt-br/dax/data-
analysis-expressions-dax-reference
•https://dax.guide/