Ir para conteúdo
  • 0

Fórmula para calculo de comissão


getswitch
Ir para solução Solucionado por Rodrigo R1 ,

Pergunta

  • Alunos

Bom dia

Estou com dificuldade para fazer uma fórmula para o calculo de comissão, preciso que na coluna "Comissão Imobiliária" apareça o porcentual equivalente do que o cliente pagou o valor de entrada(Valor de entrada = 20.000, Valor pago pelo cliente = 10.000, % de comissão = 2.000, Comissão Imobiliária da primeira parcela = 1.000) e o restante da comissão somente quando o cliente chegar no valor de entrada. Segue imagem abaixo para melhor entendimento. 

Na imagem a formula que utilizei calcula corretamente a primeira parcela, mas preciso que nesse exemplo 1.000 seja pago na primeira parcela e o restante apenas quando o acumulado pago chegar no valor da entrada.

Obrigado.

tabela clientes.png

Link para o comentário
Compartilhar em outros sites

12 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos
  • Solução

Oi @getswitch....

Bom....vamos lá...rsrsrs

Precisaremos dar alguns passos pra trás...rsrsrs

A primeira coisa a ser feita é ajustar o seu modelo:

image.png.84b36dbaadd55f0189ee01b82313476a.png

Nele tem apenas 2 tabelas que tem relacionamento bidirecional - o que não é interessante manter esse tipo de relacionamento entre tabelas.

Outro detalhe é que as 2 tabelas me parecem tabelas fato - mais um motivo para evitar esse relacionamento, pois não se deve relacionar tabelas fato.

Além do que, penso que seu modelo precisa das seguintes dimensões:

dcalendario,

dClientes, 

dImobiliaria,

dEmpreendimento,

dGestor,

dMétodoPagamento.

E penso que talvez 2 tabelas fato seriam suficientes para atender o seu modelo:

fVendasEmpreendimento - para informar o valor do imóvel e a entrada, por exemplo.

fpagamentoParcelas - para controle de pagamento das parcelas futuras.

Nas dimensões você irá deixar apenas a chave única e as características que pertencem a elas.

Nas fatos, você vai deixar apenas as chaves únicas de cada dimensão e as informações das vendas, como data, valor, parcelas, % comissão....

Isso estou falando pensando por alto mesmo...rsrsrs....pq tudo depende do modelo de negócios.

Mas posso te garantir que com o modelo bem estruturado assim, será muito mais fácil fazer as análises depois, via DAX.

Outra coisa que percebi é que você está criando várias colunas calculadas nas sua tabelas - em Excel fazemos assim, mas no PBI não é recomendado essa prática.

Isso não é performático e também não é a melhor alternativa. Tente evitar isso sempre!

Quando se envolve cálculos com valores, devemos sempre priorizar criar medidas - por serem dinâmicas.

Por essa razão, que está havendo essa divergência entre a solução que estou apresentando - via medidas - e você está fazendo a adaptação delas para usa-las em colunas.

Aí vai dar ruim mesmo....rsrsrs

Resumindo....

pra conseguirmos uma solução ideal para o seu case, será necessário realizar antes essas etapas acima.

Eu poderia até criar aqui a coluna calculada como você deseja....mas eu não estaria contribuindo em nada com seu aprendizado, entende?

Vai por mim....seguir o que eu escrevi acima vai ser bem melhor....esse é o caminho ideal, conforme é ensinado pelo Mestre Leonardo.

Espero que tenha conseguido contribuir.

Sucesso aí, amigo.

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Bom dia, @getswitch, tudo bem amigo?

Para a sua dúvida, talvez seja mais fácil fazer o cálculo da comissão a partir do valor acumulado.

Para isso eu fiz duas medidas de comissão:

1 - Comissão Primeira Parcela = [Valor Pago] * 0.10

2 - Comissão Total = [Valor Entrada] * 0.10

A partir daí, a medida final:

Comissão da Imobiliária = 

SWITCH(

true(),

[Valor Acumulado] = [Valor Pago], [Comissão Primeira Parcela],

[Valor Acumulado] >= [Entrada], [Comissão Total] - [Comissão 1],

0)

As medidas Valor Pago e Entrada são apenas somas das colunas.

Veja se assim daria certo no seu modelo.

Espero que tenha ajudado.

Sucesso aí, amigo.

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
2 horas atrás, Rodrigo R1 disse:

Bom dia, @getswitch, tudo bem amigo?

Para a sua dúvida, talvez seja mais fácil fazer o cálculo da comissão a partir do valor acumulado.

Para isso eu fiz duas medidas de comissão:

1 - Comissão Primeira Parcela = [Valor Pago] * 0.10

2 - Comissão Total = [Valor Entrada] * 0.10

A partir daí, a medida final:

Comissão da Imobiliária = 

SWITCH(

true(),

[Valor Acumulado] = [Valor Pago], [Comissão Primeira Parcela],

[Valor Acumulado] >= [Entrada], [Comissão Total] - [Comissão 1],

0)

As medidas Valor Pago e Entrada são apenas somas das colunas.

Veja se assim daria certo no seu modelo.

Espero que tenha ajudado.

Sucesso aí, amigo.

Testei sua ideia e acho que vai funcionar, tive apenas um problema, o valor da minha variável "ValorPrimeiraParcela" está correto quando eu utilizo para mostrar a primeira parcela, porem quando uso na formula "Comissao Total" - "ValorPrimeiraParcela" o valor sai diferente.

problema formula.png

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Amigo, mas nessa sua medida vc colocou pra retornar o valor da primeira parcela no segundo argumento do segundo switch - também não entendi porque usar 2 switch..rsrsrs

Confere aí por gentileza a minha sugestão, com a sua medida.

Sugestao: quando for usar as medidas, não precisa informar a tabela onde elas estão.

Assim, deixa as outras medidas mais enxutas e facilita a compreensão.

Aguardo seu retorno.

 

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
5 minutos atrás, Rodrigo R1 disse:

Amigo, mas nessa sua medida vc colocou pra retornar o valor da primeira parcela no segundo argumento do segundo switch - também não entendi porque usar 2 switch..rsrsrs

Confere aí por gentileza a minha sugestão, com a sua medida.

Sugestao: quando for usar as medidas, não precisa informar a tabela onde elas estão.

Assim, deixa as outras medidas mais enxutas e facilita a compreensão.

Aguardo seu retorno.

 

hahaaha, eu coloquei o valor da primeira parcela no segundo argumento do segundo switch para mostrar que no primeiro ele é 600 e na terceira parcela ele aparece como 400. Isso não entendi o porquê.

O primeiro SWITCH serve para selecionar o tipo de pagamento de comissão, que pode ser A,B ou C.

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Ele é 400 porque é um iteração linha a linha. Aí ele considera o valor que está na parcela, que é 4.000, que 10% é 400. 

Por isso, que no segundo argumento vc coloca o valor total da comissão - o valor da primeira comissão, (que já foi paga) como fiz acima. 

Veja que são condições diferentes no Switch, pra atender sua necessidade: uma verifica o valor da parcela paga x acumulado e a outra verifica o valor da entrada X acumulado, entendeu?

Ajusta a medida como eu te enviei e verifica se o valor confere, por favor.

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
7 minutos atrás, Rodrigo R1 disse:

Ele é 400 porque é um iteração linha a linha. Aí ele considera o valor que está na parcela, que é 4.000, que 10% é 400. 

Por isso, que no segundo argumento vc coloca o valor total da comissão - o valor da primeira comissão, (que já foi paga) como fiz acima. 

Veja que são condições diferentes no Switch, pra atender sua necessidade: uma verifica o valor da parcela paga x acumulado e a outra verifica o valor da entrada X acumulado, entendeu?

Ajusta a medida como eu te enviei e verifica se o valor confere, por favor.

Fiz conforme a sua fórmula e o somatório da coluna "Comissão Imobiliária" passou o "Valor Total Comissão".

formula comissao.png

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

É mesmo amigo, vc tem razão...rsrsrs....me desculpa...rsrs

E na minha explicação acima falei exatamente o que estava acontecendo: da análise linha a linha. mas não me dei conta que isso iria acontecer na parcela final...rsrsrsrs

Enfim....o que precisamos agora é "setar" o valor da parcela de número 1.

Para isso precisamos definir uma coluna que a identifique.

Temos a coluna "Parc" - mas ela pode não ser ideal, caso o parcelamento seja diferente de 3.

A ideia seria fazer o seguinte para o valor da primeira parcela:

Comissão Fixa Primeira Parcela = Calculate([Comissão Primeira Parcela], SuaTabela[Parc] = "1/3")

Dessa forma, irá retornar o valor referente a primeira parcela para todas as linhas. E aí poderemos usar essa medida na subtração do segundo argumento do SWITCH.

Mas tem um outro detalhe...rsrs: se tiver um parcelamento diferente de 3, essa condição não será atendida.

Então sugiro ajustar também sua tabela para que ela tenha uma coluna "Parcelas" e outra de "Parcelamento", assim:

Cliente Parcelas Parcelamento
A 1 3
A 2 3
A 3 3
B 1 4
B 2 4
B 3 4
B 4 4
C 1 2
C 2 2
D 1 3
D 2 3
D 3 3

Aí iremos ajustar a medida novamente para que ela considere o valor da comissão quando a parcela for igual a 1, entendeu? Isso evitará futuros problemas no seu modelo.

Obs.: Pensando bem...rsrsrs....talvez nem seja necessária essa coluna de "parcelamento" no seu modelo....rsrsrs....mas deixei para ficar mais detalhada a minha explicação. A quantidade de parcelas você pode conseguir depois com uma contagem de linha da sua tabela.

Espero que agora tenhamos chegado no seu resultado esperado.

Continuo à disposição em ajuda-lo, amigo.

 

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
15 horas atrás, Rodrigo R1 disse:

É mesmo amigo, vc tem razão...rsrsrs....me desculpa...rsrs

E na minha explicação acima falei exatamente o que estava acontecendo: da análise linha a linha. mas não me dei conta que isso iria acontecer na parcela final...rsrsrsrs

Enfim....o que precisamos agora é "setar" o valor da parcela de número 1.

Para isso precisamos definir uma coluna que a identifique.

Temos a coluna "Parc" - mas ela pode não ser ideal, caso o parcelamento seja diferente de 3.

A ideia seria fazer o seguinte para o valor da primeira parcela:

Comissão Fixa Primeira Parcela = Calculate([Comissão Primeira Parcela], SuaTabela[Parc] = "1/3")

Dessa forma, irá retornar o valor referente a primeira parcela para todas as linhas. E aí poderemos usar essa medida na subtração do segundo argumento do SWITCH.

Mas tem um outro detalhe...rsrs: se tiver um parcelamento diferente de 3, essa condição não será atendida.

Então sugiro ajustar também sua tabela para que ela tenha uma coluna "Parcelas" e outra de "Parcelamento", assim:

Cliente Parcelas Parcelamento
A 1 3
A 2 3
A 3 3
B 1 4
B 2 4
B 3 4
B 4 4
C 1 2
C 2 2
D 1 3
D 2 3
D 3 3

Aí iremos ajustar a medida novamente para que ela considere o valor da comissão quando a parcela for igual a 1, entendeu? Isso evitará futuros problemas no seu modelo.

Obs.: Pensando bem...rsrsrs....talvez nem seja necessária essa coluna de "parcelamento" no seu modelo....rsrsrs....mas deixei para ficar mais detalhada a minha explicação. A quantidade de parcelas você pode conseguir depois com uma contagem de linha da sua tabela.

Espero que agora tenhamos chegado no seu resultado esperado.

Continuo à disposição em ajuda-lo, amigo.

 

Fiz sua sugestão e parece que o filtro da função CALCULATE não está funcionando. Já testei usar a coluna "Parc" também e não filtrou. Sabe por qual motivo isso pode estar acontecendo?

Screenshot_1.thumb.jpg.54659c8007c5c81b511874267eec5bfc.jpg

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
2 horas atrás, Rodrigo R1 disse:

Oi @getswitch....

Bom....vamos lá...rsrsrs

Precisaremos dar alguns passos pra trás...rsrsrs

A primeira coisa a ser feita é ajustar o seu modelo:

image.png.84b36dbaadd55f0189ee01b82313476a.png

Nele tem apenas 2 tabelas que tem relacionamento bidirecional - o que não é interessante manter esse tipo de relacionamento entre tabelas.

Outro detalhe é que as 2 tabelas me parecem tabelas fato - mais um motivo para evitar esse relacionamento, pois não se deve relacionar tabelas fato.

Além do que, penso que seu modelo precisa das seguintes dimensões:

dcalendario,

dClientes, 

dImobiliaria,

dEmpreendimento,

dGestor,

dMétodoPagamento.

E penso que talvez 2 tabelas fato seriam suficientes para atender o seu modelo:

fVendasEmpreendimento - para informar o valor do imóvel e a entrada, por exemplo.

fpagamentoParcelas - para controle de pagamento das parcelas futuras.

Nas dimensões você irá deixar apenas a chave única e as características que pertencem a elas.

Nas fatos, você vai deixar apenas as chaves únicas de cada dimensão e as informações das vendas, como data, valor, parcelas, % comissão....

Isso estou falando pensando por alto mesmo...rsrsrs....pq tudo depende do modelo de negócios.

Mas posso te garantir que com o modelo bem estruturado assim, será muito mais fácil fazer as análises depois, via DAX.

Outra coisa que percebi é que você está criando várias colunas calculadas nas sua tabelas - em Excel fazemos assim, mas no PBI não é recomendado essa prática.

Isso não é performático e também não é a melhor alternativa. Tente evitar isso sempre!

Quando se envolve cálculos com valores, devemos sempre priorizar criar medidas - por serem dinâmicas.

Por essa razão, que está havendo essa divergência entre a solução que estou apresentando - via medidas - e você está fazendo a adaptação delas para usa-las em colunas.

Aí vai dar ruim mesmo....rsrsrs

Resumindo....

pra conseguirmos uma solução ideal para o seu case, será necessário realizar antes essas etapas acima.

Eu poderia até criar aqui a coluna calculada como você deseja....mas eu não estaria contribuindo em nada com seu aprendizado, entende?

Vai por mim....seguir o que eu escrevi acima vai ser bem melhor....esse é o caminho ideal, conforme é ensinado pelo Mestre Leonardo.

Espero que tenha conseguido contribuir.

Sucesso aí, amigo.

Rodrigo, muito obrigado pela ajuda e pelos ensinamentos, com certeza você me ajudou muito. 🙂

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