Central de Compras - Cálculo
Central de Compras – Cálculo
O cálculo é feito por etapas, para cada filial abastecida pela Matriz de abastecimento, ordenadas da maior à menor prioridade e para cada produto da filial, conforme filtros aplicados na tela de parâmetros:
1. | Determina o saldo do produto na filial distribuidora: |
O saldo da filial distribuidora é calculado e armazenado em memória para uso durante todo o cálculo da Central de Compra na distribuição de saldo entre as filiais a abastecer.
É necessário armazenar em memória duas informações (referenciadas pelo código do produto):
a) Saldo inicial da filial distribuidora, calculado pela função SaldoSB2 ();
b) Saldo atualizado, iniciado nesta etapa com o mesmo valor do saldo inicial.
Importante: Executa-se esta etapa uma única vez por produto, durante todo o cálculo, apenas na inicialização do saldo da filial distribuidora.
2. | Determina a previsão de consumo para o produto na filial em questão: |
Se parametrizado por Demanda Gerada, o consumo é calculado pelas demandas geradas na rotina Gerar Demanda mais os dias de cobertura informados na parametrização inicial.
Se parametrizado por Média de Vendas, deve ser calculada a média de vendas (média aritmética) ocorridas no período informado na parametrização, desconsiderando as notas que não atualizaram estoque e remessas para terceiros e subtraindo devoluções ocorridas. A média obtida é incrementada conforme percentual informado na parametrização. Por fim, a média incrementada é multiplicada pelos dias de cobertura.
Se parametrizado por Previsão de Vendas, o consumo é a soma das quantidades de todas as previsões de venda existentes no período informado na parametrização.
3. | Determina o saldo na filial a abastecer para o produto em questão: |
O saldo é calculado considerando todos os armazéns de estoque do produto, exceto o armazém de transito – MV_LOCTRAN – a menos que seja parametrizado saldo em trânsito e considerando-se a parametrização efetuada.
Abaixo seguem os campo correspondentes na tabela de saldos:
• | Considera estoque B2_QATU |
• | Reservas B2_RESERVA |
• | Empenhos B2_QEMP + B2_QEMPSA |
• | Previsões de Entrada B2_SALPEDI |
• | Pedidos de Venda em Carteira B2_QPEDVEN |
• | Saldo em Trânsito B2_QATU do B2_LOCAL igual a MV_LOCTRAN |
• | Disponível Ponto de Entrada para informar os armazéns a considerar no cálculo. Este PE passa como parâmetros, a Filial e Produto e recebe como retorno um array de Armazéns a considerar no cálculo. |
• | Disponível Ponto de Entrada que retorna a quantidade de saldo em trânsito, quando não conste na regra do padrão (saldo em trânsito: B2_QATU do B2_LOCAL igual a MV_LOCTRAN). Este PE passa como parâmetros a Filial e Produto e recebe como retorno o valor a considerar em trânsito para a filial e produto em questão. |
4. | Calculo da necessidade do produto na filial a abastecer: |
A necessidade é a diferença entre o valor da previsão de consumo e o saldo da filial. Se este valor for negativo, a necessidade é considerada nula (0).
5. | Inicialização da necessidade informada: |
Este campo é inicializado sempre com o valor da necessidade calculada e pode ser editado pelo usuário.
6. | Inicialização do saldo na filial distribuidora: |
Este campo exibe o saldo do produto na filial distribuidora. Este valor é obtido pela variável de memória criada na etapa 1, na posição de saldo inicial.
7. | Calculo da quantidade a transferir: |
Se a necessidade é maior que zero, verifique se há saldo na filial distribuidora para efetuar a transferência. Utilize a variável de memória criada, na posição de saldo atualizado. Se há saldo disponível, a quantidade a transferir deve iniciar com o menor dos dois valores, (necessidade ou saldo atualizado). Da mesma forma, a variável de memória deve estar atualizada na posição de saldo atualizado subtraíndo-se o valor atribuído para redução do saldo. É respeitada a prioridade definida na Matriz de abastecimento.
8. | Calcular a quantidade a comprar: |
Se a diferença entre a necessidade calculada e a quantidade a transferir for maior que zero, este valor deve ser atribuído como quantidade a comprar. Ou seja é adquirido o saldo que a filial abastecida e a filial distribuidora não conseguirem atender.
9. | Inicializar documento de compra, comprar, entregar e fornecedor: |
Os campos Documento de compra, Comprar e entregar são inicializados conforme parametrização da rotina e disponíveis para edição.
Inicialize o fornecedor a partir do Fornecedor/Loja Padrão, informados no Cadastro do Produto. Ao não informa-lo, utilize o fornecedor da amarração Produto x Fornecedor (o critério de escolha épela maior nota).