Devido à descontinuação da versão 5.10.3, que ocorrerá em 30/09/2025, informamos que este manual não receberá atualizações a partir desta data. Para mais informações sobre a evolução do Gestão Empresarial | ERP, acesse a documentação sobre a PCVV - Política do Ciclo de Vida das Versões.

Informamos que as funcionalidades da Reforma Tributária estão disponíveis apenas a partir da versão 5.10.4 do Gestão Empresarial.
Acesse o Portal de Exigências Legais da Senior para saber como preparar o seu negócio!

MMCalcularValoresCP

Esta função, criada exclusivamente para modelos de relatórios do contas a pagar, visa calcular os valores multimoeda dos títulos: juros, multa, encargos, correção monetária (positiva), encargos, outros acréscimos, descontos, outros descontos e o valor líquido.

Sintaxe: Função MMCalcularValoresCP( Data aDatBas, Numero aTipVct, Numero aConDbc, Numero end aVlrJrs, Numero end aVlrMul, Numero end aVlrCor, Numero end aVlrEnc, Numero end aVlrOac, Numero end aVlrDsc, Numero end aVlrOde, Numero end aVlrLiq);

Parâmetros de entrada:

Nome Tipo Descrição
aDataBas Data Data base de cálculo (obrigatório)
aTipVct Numero Tipo de vencimento. Se for igual a 2 será utilizado o vencimento prorrogado, caso não seja, será utilizada a data de provável pagamento
aConDbc Numero Indica se considerará a data base na correção monetária. Se for igual a 1 considera a data base, caso não seja considera o vencimento (de acordo com o tipo)

Parâmetros de saída:

Nome Tipo Descrição
aVlrJrs Numero Valor calculado de juros
aVlrMul Numero Valor calculado de multa
aVlrCor Numero Valor calculado (positivo) de correção monetária
aVlrEnc Numero Valor calculado de encargos
aVlrOac Numero Valor calculado de outros acréscimos
aVlrDsc Numero Valor calculado de descontos
aVlrOde Numero Valor calculado de outros descontos, incluindo valor negativo de correção monetária
aVlrLiq Numero Valor líquido calculado para o título (valor aberto + juros + multa + encargos + correção monetária + encargos + outros acréscimos - descontos - outros descontos)

Exemplo:

MontaData(31, 12, 2020, xVencimentoMaximo);

xVlrLiquidoTotal = 0;

DataHoje(xDataBase);

 

Definir Cursor Cur_E301TCR;

Cur_E301TCR.Sql "SELECT E301TCR.CODEMP, E301TCR.CODFIL, E301TCR.NUMTIT, E301TCR.CODTPT, E301TCR.CODTNS, E301TCR.VCTORI, \

E301TCR.VCTPRO, E301TCR.DATDSC, E301TCR.VLRDSC, E301TCR.PERDSC, E301TCR.TOLMUL, E301TCR.PERMUL, E301TCR.VLRABE, E301TCR.PERJRS, E301TCR.JRSDIA, E301TCR.TIPJRS, \

E301TCR.TOLJRS, E301TCR.DATCJM, E301TCR.VLRORI, E301TCR.DATEMI, E301TCR.CODMOE, E301TCR.COTEMI, E301TCR.DATNEG, E301TCR.MULNEG, E301TCR.JRSNEG, E301TCR.DSCNEG, \

E301TCR.ANTDSC, E301TCR.COTNEG, E301TCR.DATNEG, E301TCR.OUTNEG, E301TCR.DATPPT, E301TCR.VLRABE, E301TCR.PRDDSC, E301TCR.COTFRJ, E301TCR.CODFRJ, E301TCR.DSCPON, \

E085CLI.INICOB, E085CLI.CEPINI \

FROM E301TCR, E085CLI WHERE \

E301TCR.CODCLI = E085CLI.CODCLI AND \

E301TCR.VLRABE > 0 AND E301TCR.VCTPRO <= :xVencimentoMaximo \

ORDER BY E301TCR.CODEMP";

Cur_E301TCR.AbrirCursor();

Enquanto(Cur_E301TCR.Achou) {

CalcularValoresCR("Cur_E301TCR", xDataBase,

2, @1 - Vencimento Prorrogado ou 2 - Provável pagamento@

0, @Considera data base na correção monetária: 1 - Sim ou 0 - Não@

VlrJrs, VlrMul, VlrCor, VlrEnc, VlrOac, VlrDsc, VlrOde, VlrLiq);

xVlrLiquidoTotal = xVlrLiquidoTotal + VlrLiq;

Cur_E301TCR.Proximo();

}

Cur_E301TCR.FecharCursor();

Definir Alfa xStrValor;

FormatarN(xVlrLiquidoTotal, "%3.2f", ",", xStrValor);

xStrValor = "Valor Total a Receber: " + xStrValor;

mensagem(retorna, xStrValor);

Utilização: Esta função utiliza os dados dos títulos disponíveis no SQLde detalhe do modelo para calcular os valores multimoeda de cada título. Assim, alguns campos dos títulos obrigatoriamente devem existir no SQL de um cursor para ser possível utilizar as novas funções (as funções irão consistir que esses campos existam no SQL):

CODEMP, CODFIL, NUMTIT, CODTPT, CODFOR, CODTNS, VCTORI, VCTPRO, DATDSC, VLRDSC, PERDSC, TOLMUL, PERMUL, VLRABE, PERJRS, JRSDIA, TIPJRS, TOLJRS, DATCJM, VLRORI, DATEMI, CODMOE, COTEMI, DATNEG, MULNEG, JRSNEG, DSCNEG, ANTDSC, COTNEG, DATNEG, OUTNEG, DATPPT, VLRABE.

Observações:

Este artigo ajudou você?