SimulacaoIMP_CalcularParcial
Esta função tem como objetivo retornar o valor de cada imposto calculado para o título (contas a pagar) passado por parâmetro, porém, permitindo enviar um valor de movimento diferente do valor em aberto do respectivo título.
Ela permite o envio de um parâmetro relacionado ao valor do movimento de baixa que se deseja simular para cálculo dos impostos.
O cálculo é baseado na data de pagamento (pDatPgt) e na transação de baixa, que deve ser transação de pagamento.
A função não baixa o título, apenas simula sua baixa. Isso porque o cálculo de alguns impostos depende dos valores já pagos.
A baixa do título será simulada de acordo com o valor enviado para a variável pVlrMov, considerando também o desconto passado pelo parâmetro pVlrDsc.
Sintaxe: Funcao SimulacaoIMP_CalcularParcial(Numero pCodFil, Alfa pNumTit, Alfa pCodTpt, Numero pCodFor, Numero pDatPgt, Alfa pCodTns, Numero pVlrDsc, Numero pVlrMov, ' + 'Numero end pVlrIns, Numero end pVlrIrf, Numero end pVlrIss, Numero end pVlrOur);
Parâmetros de entrada:
Nome | Tipo | Descrição |
---|---|---|
pCodFil | Numero | Filial do Título. |
pNumTit | Alfa | Número do Título. |
pCodTpt | Alfa | Código do tipo de Título. |
pCodFor | Numero | Código do fornecedor do Título. |
pDatPgt | Numero | Data da Baixa. |
pCodTns | Alfa | Transação de Baixa. |
pVlrDsc | Numero | Valor de Desconto. |
pVlrMov | Numero | Valor do movimento de baixa |
Parâmetros de saída:
Nome | Tipo | Descrição |
---|---|---|
pVlrIns | Numero | Retorno do valor de INSS calculado. |
pVlrIrf | Numero | Retorno do valor de IRRF calculado. |
pVlrIss | Numero | Retorno do valor de ISS calculado. |
pVlrOur | Numero | Retorno do valor de Outras Retenções (PIS/Cofins/CSLL/Outras Retenções). |
Utilização da Função (dependentes): A função depende que na inicialização do processo seja chamada a rotina "SimulacaoIMP_Inicializar()" e no término do processo que seja chamada a rotina "SimulacaoIMP_Finalizar()"
Exemplo:
SimulacaoIMP_Iniciar();
SimulacaoIMP_CalcularParcial(1,"9003BNA1", "DUP", 2 , 42893 , "90560", 0, 250, Retorno_VlrIns, Retorno_VlrIrf, Retorno_VlrIss, Retorno_VlrOur);
FvlrIns = Retorno_VlrIns;
FvlrIrf = Retorno_VlrIrf;
FvlrIss = Retorno_VlrIss;
FvlrOur = Retorno_VlrOur;
SimulacaoIMP_Finalizar();