Pular para o conteúdo principal

CD_JURO - Tabela de Juro Padrão

Tela de configuração: FNC001 — Parâmetros Financeiro
Localização: Aba "Financeiro 1"
Tabela: PARMFINANC.CD_JURO
Tipo: INTEGER (DOM_INTEGER)
FK para: JURO(CD_JURO)
Componente: editCD_JURO (lookup com <F9>)

Descrição​

Define a tabela de juros (encargos) padrão da empresa para uso em contas a receber, contas a pagar, pedidos e duplicatas.

Quando um documento financeiro é criado sem uma tabela de juros específica, o sistema utiliza a tabela configurada neste parâmetro.

O campo armazena o código (CD_JURO) e exibe a descrição (DS_JURO) via lookup na tabela JURO.

Telas impactadas​

TelaDescriçãoImpacto
FNC001Parâmetros FinanceiroConfiguração do parâmetro
MFC002Manutenção de ContasAplica juros ao criar contas
CFC001Contas a ReceberFiltro/consulta por CD_JURO
CFC004Contas a PagarFiltro/consulta por CD_JURO
CNF001Entrada de Nota FiscalParcelamento com juros
CNF012Entrada de Nota (alternativa)Parcelamento com juros
MCO003Manutenção de PedidosVincula tabela de juros ao pedido
ESB001SimuladorFiltra por tabela de juros
CFC012Simulação FinanceiraFiltra por tabela de juros

Campos envolvidos​

CampoTabelaTipoDescrição
CD_JUROPARMFINANCINTEGERCódigo da tabela de juros padrão
DS_JUROPARMFINANCVARCHAR(60)Descrição (campo lookup, preenchido automaticamente)
CD_JUROJUROINTEGERChave primária da tabela JURO
DS_JUROJUROVARCHAR(60)Descrição do encargo
TP_JUROJUROCHAR(1)Tipo: 'F'=Fator fixo, 'T'=Taxa mensal, 'S'=Simples dia a dia, 'C'=Composto dia a dia
PC_JUROJURONUMERIC(3,2)Percentual mensal de juros
PC_MULTAJURONUMERIC(3,2)Percentual de multa fixa
VL_MULTAMORAJURONUMERIC(15,2)Valor fixo de multa
NR_TOLERANCIAJUROINTEGERDias de tolerância antes de calcular

Comportamento​

Lookup e validação​

O que fazDetalhe
EditávelCampo editável com busca <F9> na tabela JURO
ValidaçãoVerifica se o CD_JURO informado existe na tabela JURO
Descrição automáticaPreenche DS_JURO com a descrição retornada do lookup
LimparSe o campo for vazio, DS_JURO é limpo (null)

Simulação passo a passo​

  1. Acesse a tela FNC001 — Parâmetros Financeiro.
  2. Selecione a aba "Financeiro 1".
  3. Localize o campo "Dados do Parâmetro" (label do componente editCD_JURO).
  4. Digite um código de tabela de juros (ex: 1) ou pressione <F9>.
  5. Se pressionar <F9>, uma janela de busca da tabela JURO é aberta.
  6. Selecione a tabela de juros desejada (ex: 1 - JUROS MORA 1% A.M.).
  7. Salve o registro.

Resultado esperado: Após salvar, todas as operações financeiras da empresa que utilizam o parâmetro CD_JURO passarão a aplicar a tabela de juros selecionada — por exemplo, contas em atraso calcularão juros conforme TP_JURO e PC_JURO configurados na tabela.

Exceção / Importante: Se o código informado não existir na tabela JURO, o sistema bloqueia o salvamento com mensagem: "Tabela de Juro não cadastrado! [TFC003]".

Nota: Este parâmetro é por empresa (chave CD_EMPRESA em PARMFINANC). Cada empresa pode ter sua própria tabela de juros padrão.

Tables e entidades que referenciam CD_JURO​

TabelaContexto
CONTASEncargos aplicados nas contas a receber/pagar
CONDPAGTOJuros associados a condições de pagamento
PEDIDOJuros aplicados no pedido de venda
NOTAJuros na nota fiscal
CONFBOLETOJuros na configuração de boletos
SUBGRUPOJuros padrão por subgrupo de produtos
PARMSINCESTABILParâmetros de sinc. estabilização
PARMFINANCTabela origem do parâmetro

Procedures impactadas​

Stored procedures de cálculo​

ProcedureArquivoImpacto
CALCULA_JUROScripts/CALCULA_JURO.sqlCalcula valor de juros recebendo I_CD_JURO como parâmetro
CALCULA_CAPITALScripts/CALCULA_CAPITAL.sqlCálculo de capital com juros
CALCULA_JUROMORAScripts/CALCULA_JUROMORA.sqlCálculo de juros de mora
CALCULA_JUROMORA_RFC019Scripts/CALCULA_JUROMORA_RFC019.sqlCálculo de mora com parâmetro opcional
CALCULA_JUROVENDAScripts/CALCULA_JUROVENDA.sqlCálculo de juros de venda

Rotinas Delphi com referência direta ao campo​

RotinaArquivoImpacto
TfrmFNC001.editCD_JUROKeyDownsource/FNC001/UFNC001.pas:743Busca <F9> na tabela JURO
TdmFNC001.tabPARMFINANCCD_JUROValidatesource/FNC001/UdmFNC001.pas:520Valida existência do código
TfrmCFC001.RetornaSQLFiltrosource/CFC001/UCFC001.pas:2627Filtro de contas por CD_JURO
TfrmCFC004.btnProcurarClicksource/CFC004/UCFC004.pas:315Filtro de contas a pagar por CD_JURO
TfrmCNF001.btnParcelaNotaClicksource/CNF001/UCNF001.pas:3881Limpa CD_JURO ao parcelar nota
TfrmCNF001.btnDuplicarClicksource/CNF001/UCNF001.pas:4803Copia CD_JURO ao duplicar nota
TfrmMFC002.btnSalvarClicksource/MFC002/UMFC002.pas:518Grava CD_JURO ao criar conta
TfrmMCO003.btnSalvarClicksource/MCO003/UMCO003.pas:2275Grava CD_JURO no pedido

Referências SQL em scripts​

ScriptArquivoImpacto
GERA_DUPLICATASScripts/GERA_DUPLICATAS.sqlUsa CD_JURO na geração de duplicatas
GRAVA_CONTASScripts/GRAVA_CONTAS.sqlRecebe V_CD_JURO para gravar contas
PROCESSA_FATURAScripts/PROCESSA_FATURA.sqlInclui CD_JURO no processamento
GERA_NOTAFISCALPEDIDOScripts/GRAVA_NOTAFISCALPEDIDO.sqlPropaga CD_JURO ao gerar NF
RETORNA_VALORPARCELAMENTOScripts/RETORNA_VALORPARCELAMENTO.sqlJoin com JURO para cálculo
PARCELA_FINANCIAMENTOScripts/PARCELA_FINANCIAMENTO.sqlJoin com JURO para parcelas
PARCELA_FINANC_MNF017Scripts/PARCELA_FINANC_MNF017.sqlIdêntico ao anterior
CONFIRMA_ORDEMSERVICOScripts/CONFIRMA_ORDEMSERVICO.sqlCD_JURO na confirmação de OS
FECHA_CONTRATOLEITEScripts/FECHA_CONTRATOLEITE.sqlCD_JURO no fechamento de contrato
EXPORTACAO_SOVISScripts/EXPORTACAO_SOVIS.sqlExporta dados de JURO por cliente
TRGADU_CONDPAGTOScripts/TRGADU_CONDPAGTO.sqlTrigger audit em CONDPAGTO

Candidatas por uso da tabela​

Estas procedures usam PARMFINANC mas não citam CD_JURO literalmente. Validar antes de afirmar impacto direto.

Procedure/ViewArquivo
CANCELA_CONTASScripts/CANCELA_CONTAS.sql
CONTABILIZA_REPARCELAMENTOScripts/CONTABILIZA_REPARCELAMENTO.sql
CONTROLE_CAIXAScripts/CONTROLE_CAIXA.sql
ESTORNA_MOVTOCAIXAScripts/ESTORNA_MOVTOCAIXA.sql
EXECUTA_PROCESSOScripts/EXECUTA_PROCESSO.sql
GRAVA_MOVTOCAIXAScripts/GRAVA_MOVTOCAIXA.sql
PROCESSA_REPARCELAMENTOScripts/PROCESSA_REPARCELAMENTO.sql
RETORNA_HISTORICOBAIXAScripts/RETORNA_HISTORICOBAIXA.sql

Exemplo prático​

Cenário: Empresa 1 configura a tabela de juros padrão.

  1. Configuração de uma tabela de juros (tela TFC003):

    CD_JURODS_JUROTP_JUROPC_JUROPC_MULTANR_TOLERANCIA
    1JUROS MORA 1% A.M.T1,002,005
  2. Na tela FNC001, defina CD_JURO = 1 para a Empresa 1.

  3. Ao gerar uma conta a receber com vencimento em 10/01/2025 e pagamento em 25/01/2025:

    • Dias em atraso: 15 dias
    • Tolerância: 5 dias → 10 dias calculados
    • Juros: 10 dias × (1,00% / 30) ≈ 0,33% sobre o valor do documento
    • Multa: 2,00% se dias em atraso > tolerância
  4. Em layouts de duplicata como LDP001, LDP002, LDP010, o valor calculado aparece via:

    SELECT O_VL_JURO
    FROM CALCULA_JURO(C.CD_EMPRESA, C.DT_VENCIMENTO + 1, C.DT_VENCIMENTO, C.CD_JURO, C.VL_DOCUMENTO)

Relacionamentos visuais​

PARMFINANC.CD_JURO ──FK──> JURO.CD_JURO
├── TP_JURO (tipo de cálculo)
├── PC_JURO (% mensal)
├── PC_MULTA (% multa)
├── VL_MULTAMORA (valor fixo multa)
└── NR_TOLERANCIA (dias carência)
│
▼
CALCULA_JURO() → calcula valor do encargo
│
▼
CONTAS, PEDIDO, NOTA, CONDPAGTO
(aplicação no documento financeiro)