Versões: | Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Microsiga Protheus 10 |
Compatível Países: | Todos |
Sistemas Operacionais: | Todos |
Compatível às Bases de Dados: | Todos |
Idiomas: | Espanhol , Inglês |
LOCALIZAÇÃO : O ponto de entrada 'A710QtdBxL' está localizado na função A711GeraSC(), substituindo a geração padrão da Autorização de Entrega através do MRP, e retornando a quantidade da necessidade que foi atendida pelo(s) Contrato(s) de Parceria(s), deixando o MRP criar uma Solicitação de Compras normal com a quantidade da diferença (Quantidade retornada pelo PE – Quantidade Necessidade).
Somente será gerada solicitação de compras, caso a quantidade retornada pelo PE seja inferior a Quantidade da Necessidade do produto no período determinado.
EM QUE PONTO : O ponto de entrada, somente será acionado nas seguintes situações:
- O parâmetro do MRP (Geração de SCs: Por OP ou Por Necessidade) configurada para “Por Necessidade”.
- O produto deverá possuir Contrato de Parceria válido.
MATA710.PRX
A710QTDBX - Solicitação de Compras ( < PARAMIXB[1]> , < PARAMIXB[2]> , < PARAMIXB[3]> ) --> nRet
Nome | Tipo | Descrição | Default | Obrigatório | Referência | ||||||||||||
PARAMIXB[1] | Numérico | Quantidade da necessidade do produto. | X | ||||||||||||||
PARAMIXB[2] | Numérico | Número do período para geração da necessidade. | X | ||||||||||||||
PARAMIXB[3] | Data | Data da necessidade do produto. | X |
-
nRet(numerico)
- Quantidade atendida pelo pool de fornecedores, onde a diferença entre (Quantidade atendida – Quantidade Necessidade), será gerada Solicitação de Compras.
Atenção:
O PE substitui a função padrão de criação da Autorização de Entrega através do MRP.
Portanto, no PE deverá conter um novo mecanismo para criação desses documentos. Para a construção do PE é aconselhável o acompanhamento de um Analista que conheça as funções padrões de criação da Autorização de Entrega.
User Function A710QtdBx()Local nQuant := ParamIxb[1] //Quantidade da necessidadeLocal nPeriodo := ParamIxb[2] //Numero do periodoLocal dData := ParamIxb[3] //Data da necessidade do produtoLocal nQuantBaixa := 0Local aSavAre := {GetArea(), SC3->(GetArea())} dbSelectArea('SC3')nQuantBaixa:=If((SC3->C3_QUANT-SC3->C3_QUJE) <= nQuant,(SC3->C3_QUANT SC3->C3_QUJE),nQuant)A711GravC7(nPeriodo,nQuantBaixa,SC3->C3_PRODUTO) // Funcao padrao para geracao da AERestArea(aSavAre[2])RestArea(aSavAre[1])Return(nQuantBaixa)