SimulacaoIMP_CR_CalcularParcial
Esta função tem como objetivo retornar os valores dos impostos calculados na baixa de um título do contas a receber, permitindo inclusive o envio de um valor de movimento diferente do valor em aberto do respectivo título.
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. Isto é necessário porque os cálculos de alguns impostos dependem 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_CR_CalcularParcial(Numero pCodEmp, Numero pCodFil, Alfa pNumTit, Alfa pCodTpt, 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 | Número | Código da Filial |
pNumTit | Alfa | Número do Título a Receber |
pCodTpt | Alfa | Código do Tipo de Título |
pDatPgt | Número | Data da Baixa |
pCodTns | Alfa | Transação de Baixa |
pVlrDsc | Número | Valor de Desconto |
pVlrMov | Número | Valor do movimento de baixa |
Parâmetros de saída:
Nome | Tipo | Descrição |
---|---|---|
pVlrPit | Número | Retorno do valor de PIS calculado |
pVlrCrt | Número | Retorno do valor de COFINS calculado |
pVlrCsl | Número | Retorno do valor de CSLL calculado |
pVlrIrf | Número | Retorno do valor de IR calculado |
pVlrOur | Número | 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_CR_Inicializar()" e no término do processo que seja chamada a rotina "SimulacaoIMP_CR_Finalizar()".
Exemplo de uso:
SimulacaoIMP_CR_Iniciar();
SimulacaoIMP_CR_CalcularParcial(1, "120219-B", "DM", 43145, "90350", 0, 1000, Retorno_VlrPit, Retorno_VlrCrt, Retorno_VlrCsl, Retorno_VlrIrf, Retorno_VlrOur);
nVlrPit = Retorno_VlrPit;
nVlrCrt = Retorno_VlrCrt;
nVlrCsl = Retorno_VlrCsl;
nVlrIrf = Retorno_VlrIrf;
nVlrOur = Retorno_VlrOur;
SimulacaoIMP_CR_Finalizar();