| Linha de Produto: | Microsiga Protheus® |
|---|---|
| Segmento: | Backoffice |
| Módulo: | Financeiro |
| Função: | Baixas a Pagar (FINA080) |
Este Ponto de Entrada (P.E.) tem como objetivo principal permitir a manipulação de valores residuais durante a baixa total de títulos no módulo Financeiro.
Ele é especialmente útil para tratar diferenças de arredondamento originadas pela variação da taxa de moeda.
Regra de Ativação: Este P.E. é executado exclusivamente na rotina FINA080 (Baixa a Receber), para localizações no Brasil, e apenas quando a taxa da moeda for diferente de 1,00. |
Ao ativar este Ponto de Entrada, o parâmetro MV_TOLERCP será desconsiderado pelo sistema, mesmo que seu valor configurado seja maior que zero.
2. Lógica de Retorno e Funcionamento
O Ponto de Entrada deve retornar obrigatoriamente um valor numérico. Esse valor define o limite de tolerância para o ajuste de arredondamento.
3. Exemplo Prático de Cenário
Imagine a inclusão de um título com os seguintes valores:
No momento da baixa (com uma nova taxa informada):
Comparativo de Comportamento:
Os dados são passados ao P.E. através do array PARAMIXB. Abaixo, a descrição detalhada de cada posição:
| Nome | Tipo | Descrição |
|---|---|---|
| PARAMIXB[1] | Numérico | Tipo de Movimento - 1 = Baixa, 2 = Cancelamento/Exclusão de Baixa |
| PARAMIXB[2] | Caracter | Código da filial onde o título está registrado. |
| PARAMIXB[3] | Caracter | Prefixo do título no Contas a Receber. |
| PARAMIXB[4] | Caracter | Número identificador do título. |
| PARAMIXB[5] | Caracter | Código da parcela do título. |
| PARAMIXB[6] | Caracter | Tipo do título (exemplo: NF, duplicata, etc.). |
| PARAMIXB[7] | Caracter | Código do fornecedor vinculado ao título. |
| PARAMIXB[8] | Caracter | Loja do fornecedor. |
| PARAMIXB[9] | Numérico | Valor do saldo do título disponível no momento exato da baixa. |
| PARAMIXB[10] | Numérico | Taxa utilizada no cálculo do saldo para a baixa. Em casos de cancelamento, o sistema retorna a taxa utilizada na inclusão original. |
Nome | Tipo | Descrição |
nValArren | Numérico | Valor Numérico. Esse valor define o limite de tolerância para o ajuste de arredondamento. |
#Include "protheus.ch"
//-------------------------------------------------------------------
/*/{Protheus.doc} user function F080ARRE
Este Ponto de Entrada (P.E.) tem como objetivo principal permitir a manipulação de valores residuais
durante a baixa total de títulos no módulo Financeiro.
Especialmente útil para tratar diferenças de arredondamento originadas pela variação da taxa de moeda.
@author Francisco Oliveira
@since 17/03/2026
@version 12.1.2510
@return nValArrend numerico. Valor calculado para arrendamento do titulo conforme regra de negócio.
/*/
//-------------------------------------------------------------------
User Function F080ARRE() As Numeric
Local nValArrend As Numeric
Local nTipMovim As Numeric
Local cFilTit As Character
Local cPrefixo As Character
Local cNumero As Character
Local cParcela As Character
Local cTipo As Character
Local cFornece As Character
Local cLoja As Character
Local nSaldo As Numeric
Local nTxMoeda As Numeric
nValArrend := 0
nTipMovim := PARAMIXB[1] // Tipo de Movimento - 1 = Baixa, 2 = Cancelamento/Exclusão de Baixa
cFilTit := PARAMIXB[2] // Filial do titulo
cPrefixo := PARAMIXB[3] // Prefixo do titulo
cNumero := PARAMIXB[4] // Numero do titulo
cParcela := PARAMIXB[5] // Parcela do titulo
cTipo := PARAMIXB[6] // Tipo do titulo
cFornece := PARAMIXB[7] // Fornecedor do titulo
cLoja := PARAMIXB[8] // Loja do fornecedor do titulo
nSaldo := PARAMIXB[9] // Saldo do titulo no momento da baixa
nTxMoeda := PARAMIXB[10] // Taxa da moeda usada no calculo do saldo para a Baixa. Se for Cancelamento/Exclusão de Baixa, a taxa será a cadastrada na inclusão.
If nTipMovim == 1 // Baixa
// Regra de negócio para baixa
nValArrend := 0.10 // Valor para arrendamento do titulo na baixa
Else // Cancelamento/Exclusão de Baixa
// Regra de negócio para Cancelamento/exclusão de baixa
nValArrend := 0.10 // Valor para arrendamento do titulo no Cancelamento/exclusão de baixa
Endif
Return nValArrend // Valor para arrendamento do titulo na baixa e/ou exclusão/extorno |