Cálculo de Margem

De GeoSales
Revisão de 19h07min de 1 de fevereiro de 2017 por 10.0.0.184 (discussão) (→‎Cálculo do Custo)
Ir para navegação Ir para pesquisar

Histórico de Revisões

Data Quem Comentários
11/01/2017 Victor César Criação do Documento
27/01/2017 Jefferson Quesado Revisão Arquitetura
01/02/2017 Inaldo França Ajustes solicitados pela arquitetura

Necessidade

A Agrosema tem a necessidade de detectar se determinada venda está atingindo ou não a margem média de lucro por cada vendedor.

Solução

O Sistema realizará o calculo de rentabilidade para saber se a margem total do pedido está maior ou menor que a margem definida para cada vendedor. Se a margem obtida for menor o sistema exibirá um alerta informando que aquele pedido ficará bloqueado no ERP, caso a margem for maior o sistema não exibirá o alerta.

Para chegar na margem geral do pedido é preciso construir uma série cálculos, onde no final deverá ter a média de todos os produtos do pedido e identificar se a margem foi ou não atingida pelo vendedor.

Iremos dividir em dois momentos o cálculo, Primeiramente calcular o CUSTO de cada item, e depois a MARGEM Geral do Pedido.

Pré-Requisitos

  1. O Sistema deve ter a configuração ID_RENTABILIDADE com o valor S
  2. O Sistema deve possuir o cadastro de parâmetro ID_CALCULA_CUSTO configurado com S
  3. A Margem de cada vendedor deve estar cadastrada no ERP no campo A3_ZZMBMIN e integrada com o GeoSales na tabela VENDEDOR
  4. O Custo do Produto deve estar cadastrado no ERP no campo DA1_ZZCUST e integrado com o GeoSales na tabela PRODUTO_CUSTO
  5. O Juros do dia de cada Produto deve estar cadastrado no ERP no campo A3_ZZTXMES e integrado no GeoSales na tabela PRODUTO
  6. Integrar a tabela FAMILIA_PRODUTO_RENTABILIDADE

Cálculo

Como Exemplo iremos adotas as seguinte informações: Informações

  • Custo do produto Lorbson - R$400,00 (Essa informação será cadastrada no ERP)
  • Quantidade vendida: 1
  • Vencimento: Data de Hoje - (Essa campo é o mesmo que foi criado na funcionalidade de Bloqueio por Prazo)
  • Vendedor AGROSEMA - Margem Mínima de 15% (Essa informação será cadastrada no ERP)
  • Taxa de Juros de (1,8% a.m) / 30 = Taxa de Juros a.d = 0,06%. (Essa informação será cadastrada no ERP)
  • Valor total do pedido = R$ 516,75


Cálculo do Custo

  • O Custo será calculado através de Listeners, será criado uma tabela na base de dados para listar esses listeners e controlar a ordem de aplicação se houver a necessidade de realizar mais de um cálculo para achar o custo do Produto.

Estrutura da Tabela: APLICACAO_CUSTO

ID DS_LISTENER ORDEM ATIVO
CÓDIGO SEQUENCIAL DESCRIÇÃO DO LISTENER ORDEM DE APLICAÇÃO SE ESTÁ ATIVO OU NÃO.

Custo do produto no vencimento do pedido (No Prazo)

Taxa que será aplicada no custo do produto = (Vencimento - Data atual) (DIAS) * 0,06%

Custo do Produto = Custo do produto(Que vem do Protheus) + (Custo do produto * Taxa)

 400 + (400*0%) = R$400,00

Calculo da Margem

  • Após obter o custo de cada item a Margem de Lucro do Pedido
Calcular a Margem do Lucro:

 Margem de Lucro = 1 - (Soma dos Custos do Produto (Campo VL_CUSTO da tabela ITEM_PEDIDO) * Quantidade de Cada Item / Valor Total do pedido)

    1 - (400 / 516,75) = 0,2259 ou 22,59% se multiplicarmos por 100
  • Após obter esse percentual o mesmo será comparado com o campo PR_MARGEM.
    • Se a Margem for menor que o percentual do PR_MARGEM da tabela VENDEDOR exibir o seguinte alerta: “Pedido bloqueado. Motivo: Margem do pedido abaixo do permitido.”
    • Se a margem for maior que o percentual do PR_MARGEM da tabela VENDEDOR não exibir nenhum alerta.

Observação

  • Na fórmula que foi enviada pelo Reginaldo da AGROSEMA teriam mais dois passos, mas foi identificado a nível de sistema ele é redundante, uma vez que não iremos exibir o total do lucro do pedido esses calculo NÃO são necessários
Terceiro Cálculo
Calcular o Total do Lucro:

  Total do Lucro = (Valor total do pedido * Margem de Lucro)

      516,75 * 0,2259 = R$116,73
Quarto Cálculo
 Margem Geral do pedido

  Margem = (Soma do Lucro de cada item do pedido / Valor total do pedido) * 100

    (116,73 / 516,75) * 100 = 22,59%

Regras de Negócio

[RN1]– Regra de Alerta do pedido

Para exibir alerta de que o pedido será bloqueado no ERP, o resultado da MARGEM deve ser maior ou igual a margem mínima definida por vendedor. No caso supracitado a margem do vendedor é de 15%. Como a margem do pedido foi de 22,59%, o pedido vai passar sem bloqueios.

[RN2] – A mensagem que será exibida será: “Pedido bloqueado. Motivo: Margem do pedido abaixo do permitido.”

[RN3] – Criar o campo PR_MARGEM na tabela VENDEDOR para especificar a margem de cada vendedor.

[RN4] – Criar o campo PR_JUROS na tabela PRODUTO para informar o juros de cada produto

[RN5] – Criar uma configuração ID_ALERTA_MARGEM para ativar o alerta para o calculo de Margem

Integração

No momento da integração os campos e tabelas abaixo devem ser preenchidos, conforme descrito:

[RN6] – O campo PR_MARGEM na tabela VENDEDOR deve ser preenchida com a informação do ERP que da Tabela SA3 da coluna A3_ZZMBMIN.

[RN7] – O campo VR_CUSTO na tabela PRODUTO_CUSTO deve ser preenchida com a informação do ERP que da Tabela DA1 da coluna DA1_ZZCUST.

[RN8] – O campo PR_JUROS na tabela PRODUTO deve ser preenchida com a informação do ERP que da Tabela SA3 da coluna A3_ZZTXMES.

[RN9] - Integrar a tabela FAMILIA_PRODUTO_RENTABILIDADE

Cenários

Cenário Feliz

Dados

  • Vendedor: João
  • Produto: Semente A
  • Custo (R$): 400
  • Vencimento: 30 dias (1,33%)
  • Margem Vendedor Joao: 15%
  • Tx Juros: 0,06% (a.d)
  • Total Pedido (R$): 516,75

Operação

  • Vendedor João cria o pedido;
  • Selecionar o Item: Semente A
  • O vendedor salva o Pedido

Assertivas

  • Pedido enviado para o ERP com sucesso.

Cenário de Alerta

Dados

  • Vendedor: João
  • Produto: Semente B
  • Custo (R$): 200
  • Vencimento: 60 dias (2,40%)
  • Margem Vendedor João: 15%
  • Tx Juros: 0,06% (a.d)
  • Total Pedido (R$): 230

Operação

  • Vendedor João cria o pedido;
  • Selecionar o Item: Semente B;
  • O vendedor salva o Pedido

Assertivas

  • A mensagem que será exibida “Pedido bloqueado. Motivo: Margem do pedido abaixo do permitido.”
  • Pedido enviado para o ERP com sucesso.

Aprovação

Considero aprovada a documentação da funcionalidade especificada acima, e autorizo a implementação da mesma no Sistema GeoSales, em nome da Organização a qual estou vinculado.

Setor Aprovado Por Data Assinatura
Tecnologia da Informação Reginaldo Possari
Comercial André Franco