Mudanças entre as edições de "Funcionalidade/Limite de crédito"
Linha 27: | Linha 27: | ||
==Solução declarativa== | ==Solução declarativa== | ||
− | Durante a tirada do pedido, interessa-se pelo limite de crédito caso essa venda faça com que o saldo fique abaixo do valor mínimo aceitável. Para saber se isso vai acontecer, precisa-se levar em consideração o limite do cliente <code>L</code>, o quanto desse limite o cliente já consumiu (desconsiderando o pedido atual) <code>C</code>, o valor do pedido atual <code>P</code> e calcular o valor mínimo aceitável <code>M</code>. | + | Durante a tirada do pedido, interessa-se pelo limite de crédito caso essa venda faça com que o saldo fique abaixo do valor mínimo aceitável. Para saber se isso vai acontecer, precisa-se levar em consideração o limite do cliente <code>L</code>, o quanto desse limite o cliente já consumiu (desconsiderando o pedido atual) <code>C</code>, o valor do pedido atual <code>P</code> e [[#Valor mínimo aceitável|calcular o valor mínimo aceitável]] <code>M</code>. |
Dessa forma, o pedido estará válido para o limite de crédito se e somente se: | Dessa forma, o pedido estará válido para o limite de crédito se e somente se: | ||
Linha 46: | Linha 46: | ||
====Pedidos, títulos e exportação==== | ====Pedidos, títulos e exportação==== | ||
− | + | Todo pedido de venda se torna títulos. Essa conversão é feita no ERP. Portanto, ao ser exportado um pedido, o GeoSales recebe de volta uma coleção de títulos em aberto. Portanto, na [[#Cálculo do saldo disponível|fórmula do quanto foi consumido]], levar em consideração um pedido exportado como fator de consumo de saldo <code>C</code> fica redundante com a parte de títulos em aberto <code>STa</code>. | |
+ | |||
+ | Em compensação, até o pedido ser exportado, ele não virou título, portanto esse pedido não faz parte de <code>STa</code> mesmo tendo consumido do saldo. Por isso, os valores dos pedidos não exportados <code>SPne</code> devem ser parte da composição de <code>C</code>. | ||
+ | |||
+ | ====Valor mínimo aceitável==== | ||
+ | O valor mínimo aceitável <code>M</code> é dado na forma de um [[#Excedente|percentual excedente]] <code>E</code>. Esse <code>E</code> é aplicado sobre o limite de crédito <code>L</code>: | ||
+ | |||
+ | <pre>abs(M) = abs(L*E)</pre> | ||
+ | |||
+ | Como foi informado na [[#Solução Declarativa|solução]], debitar do saldo <code>S</code> o valor do pedido <code>P</code> não pode ultrapassar <code>M</code>: | ||
+ | |||
+ | <pre>S - P >= M</pre> | ||
+ | |||
+ | Portando, o valor de <code>M</code> é negativo ou zero; como <code>L</code> é estritamente positivo e <code>E</code> é um porcentual, temos: | ||
+ | |||
+ | <pre>M = - L*E</pre> | ||
+ | |||
+ | Como é sabido que <code>M</code> é 0 exceto se especificado um excedente e <code>M</code> é um valor derivado, o valor padrão para <code>E</code>, nesses casos, é 0. | ||
[[Category:Funcionalidade]] | [[Category:Funcionalidade]] |
Edição das 20h15min de 2 de dezembro de 2016
Necessidade
Dependendo do tipo de venda, é necessário colocar um limite do quanto o cliente pode ficar com títulos em aberto.
Tipos de crédito
Alguns clientes possuem créditos distintos dependendo do Meio de Pagamento. Por exemplo, o cliente Martins possui 3000 reais de limite de crédito quando usa Cartão de crédito e 200 reais de Cheque Especial.
Também conhecido como limite de crédito por meio de pagamento.
Excedente
As vezes, é possível assumir alguns riscos. Esses riscos são assumidos quando o cliente ultrapassa o valor do limite de crédito, indo até um valor excedente máximo. Existem duas fontes da informação do quanto o cliente pode exceder o seu limite de crédito:
- diretamente na tabela cliente
- valor excedente global, na configuração de limite excedente
Caso o cliente possua um valor de excedente explícito, esse valor será usado (incluindo 0). Caso ele não possua esse valor, usa-se o global.
Por questões de nomenclatura de cálculo, o excedente modifica o valor mínimo aceitável
do saldo do cliente. Caso não se use o excedente, o valor mínimo aceitável
é 0.
A vista NALS
Apesar do nome, o a vista NALS é bem intuitivo: caso o pagamento seja a vista, Não Altera Limite Saldo.
Isso indica que, caso o cliente pague no momento da compra, essa compra não alterará o saldo do limite de crédito do cliente.
Delegação de risco
Existe uma configuração para tratar o risco de maneira manual. Diferente do valor excedente, que permite uma aceitação de risco automática, o pedido fica pendente para aprovação de um supervisor.
Essa configuração entre em jogo caso o pedido faça com que o limite de crédito fique abaixo do valor mínimo aceitável.
Solução declarativa
Durante a tirada do pedido, interessa-se pelo limite de crédito caso essa venda faça com que o saldo fique abaixo do valor mínimo aceitável. Para saber se isso vai acontecer, precisa-se levar em consideração o limite do cliente L
, o quanto desse limite o cliente já consumiu (desconsiderando o pedido atual) C
, o valor do pedido atual P
e calcular o valor mínimo aceitável M
.
Dessa forma, o pedido estará válido para o limite de crédito se e somente se:
(L - C) - P >= M
Onde L - C
é o saldo disponível para consumo S
.
Cálculo do saldo disponível
Conforme explicitado na solução, o saldo S
depende de dois valores:
- O limite de crédito global
- O quanto já foi consumido
O limite de crédito global é definido pelo cliente e pelo meio de pagamento usado no pedido (ver limite de crédito por meio de pagamento). A parte consumida depende dos pedidos que ainda não foram exportados e dos títulos em aberto. Assim, para a soma dos pedidos não exportados SPne
e para a soma dos títulos em aberto STa
, temos que:
C = SPne + STa
Assim como o limite de crédito é definido pelo meio de pagamento, os pedidos e títulos também são filtrados por essa condição (caso exista). Dependente da configuração, mesmo que os pedidos a vista sejam válidos para esse filtro de meio de pagamento, eles não são levados em consideração para o somatório.
Pedidos, títulos e exportação
Todo pedido de venda se torna títulos. Essa conversão é feita no ERP. Portanto, ao ser exportado um pedido, o GeoSales recebe de volta uma coleção de títulos em aberto. Portanto, na fórmula do quanto foi consumido, levar em consideração um pedido exportado como fator de consumo de saldo C
fica redundante com a parte de títulos em aberto STa
.
Em compensação, até o pedido ser exportado, ele não virou título, portanto esse pedido não faz parte de STa
mesmo tendo consumido do saldo. Por isso, os valores dos pedidos não exportados SPne
devem ser parte da composição de C
.
Valor mínimo aceitável
O valor mínimo aceitável M
é dado na forma de um percentual excedente E
. Esse E
é aplicado sobre o limite de crédito L
:
abs(M) = abs(L*E)
Como foi informado na solução, debitar do saldo S
o valor do pedido P
não pode ultrapassar M
:
S - P >= M
Portando, o valor de M
é negativo ou zero; como L
é estritamente positivo e E
é um porcentual, temos:
M = - L*E
Como é sabido que M
é 0 exceto se especificado um excedente e M
é um valor derivado, o valor padrão para E
, nesses casos, é 0.