01. DADOS GERAIS
Linha de Produto: | Microsiga Protheus® |
---|---|
Segmento: | Serviços |
Módulo: | Financeiro |
Rotina: | FINA080 - Baixa a Pagar Manual |
02. DESCRIÇÃO
O ponto de entrada F80L9816 foi disponibilizado para atender a Lei 9.816 de 1999, onde é possível que seja informada a taxa do câmbio a ser utilizada na formação da base de calculo do IRRF, que não é necessariamente a taxa utilizada na baixa do título a pagar. Ele será executado nas baixa manuais do contas a pagar e em sua respectiva rotina automática (Execauto - FINA080).
Observação:
O ponto de entrada F80L9816 esta disponível para execução durante a baixa manual (FINA080) de qualquer título, cabe a quem for implementar criar os critérios e regras para o uso da nova taxa.
Para as demais rotinas, como por exemplo a baixa automática (FINA090), deve ser utilizado o ponto de entrada FBXL9816 (disponível no programa FINXIMP com data igual ou superior a 29/12/2023).
Importante
Parâmetros:
ParamIXB[1] - Chave do título - SE2→(E2_FILIAL+E2_PREFIXO+E2_NUM+E2_PARCELA+E2_TIPO+E2_FORNECE+E2_LOJA)
ParamIXB[2] - Data do Pagamento
ParamIXB[3] - Data do Débito
ParamIXB[4] - Código da Operação = 4 - Baixa Manual
Além dos parâmetros informados no ponto de entrada, pode-se utilizar de qualquer informação disponível do Título a Pagar (campos da tabela SE2) e Fornecedor (campos da tabela SA2) que esta sendo processado, pois os registros estarão posicionados.
Retorno:
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
nTaxa | Numérico | Taxa a ser utilizada para compor a base de cálculo do IRRF. No caso de não haver mudança da taxa padrão do sistema, retornar 0 (zero) | Sim |
03. EXEMPLO DE UTILIZAÇÃO
#INCLUDE "PROTHEUS.CH" User Function F80L9816() Local cChave := ParamIXB[1] Local dDtBaixa := ParamIXB[2] Local dDtDebito := ParamIXB[3] Local nOpc := ParamIXB[4] Local dDtTaxa := dDataBase Local aArea := GetArea() Local aAreaSED := NIL Local nTaxa := 0 dDtTaxa:=dDtBaixa-2 If SA2->A2_TIPO=='X' .And. SE2->E2_MOEDA > 1 dbSelectArea('SED') aAreaSED := SED->(GetArea()) SED->(dbSetOrder(1)) SED->(dbSeek(xFilial('SED')+SE2->E2_NATUREZ)) If SED->ED_CALCIRF=='S' //-- Retorna taxa na data solicitada nTaxa:=RecMoeda(dDtTaxa,SE2->E2_MOEDA) EndIF RestArea(aAreaSED) EndIF RestArea(aArea) Return(nTaxa)
04. DEMAIS INFORMAÇÕES
IRRF - Taxa Cambial no cálculo do imposto para fornecedor estrangeiro
F080TXIR - Ponto de entrada para informar taxa em baixas manuais (rotina automática)
05. ASSUNTOS RELACIONADOS