CD_PARMDRE — Código do Parâmetro DRE
Tela de configuração: TCB012 — Parâmetros DRE por Conta
Localização: Grupo "Parâmetros DRE" (grpPARMDRE)
Tabela:PARMDRE.CD_PARMDRE
Componente:edtCD_PARMDRE(TDBEdit)
Tipo: INTEGER — Chave primária
Label na tela: "Base de Referência :"
Valor padrão: Gerado automaticamente pelo sistema (sequencial)
Conceito
CD_PARMDRE é o identificador único (chave primária) de cada linha de parâmetro DRE cadastrada na tabela PARMDRE. Cada registro representa uma linha da Demonstração do Resultado do Exercício (DRE) — definindo como o sistema deve agrupar, calcular e apresentar receitas, custos e despesas.
Na tela TCB012, o campo edtCD_PARMDRE exibe/edita esse código no painel superior (grpPARMDRE). O valor numérico identifica o parâmetro e é propagado automaticamente para as contas do plano de contas vinculadas.
Regras de Negócio
| Regra | Detalhe |
|---|---|
| Obrigatório | Obrigatório (NOT NULL). Na gravação, se estiver vazio, o sistema exibe a exceção E-0039 com a mensagem "do DRE" e move o foco para edtCD_PARMDRE. |
| Chave primária | PK da tabela PARMDRE. Não permite duplicidade. |
| Propagação automática | Ao salvar uma conta no grid inferior (tabPLANOCONTAS), se o CD_PARMDRE da conta estiver vazio, o sistema copia automaticamente o valor de tabPARMDRE.CD_PARMDRE para tabPLANOCONTAS.CD_PARMDRE. |
| Relacionamento com contas | Vincula contas do plano de contas (PLANOCONTAS.CD_PARMDRE, PLANOEMPRESA.CD_PARMDRE) e contas do modelo (PLANOMODELO.CD_PARMDRE) a este parâmetro DRE. |
| Integridade referencial | Chaves estrangeiras em PARMDRECONTA, PLANOCONTAS, PLANOEMPRESA e PLANOMODELO referenciam PARMDRE(CD_PARMDRE). |
Telas impactadas
| Tela | Nome | Uso de CD_PARMDRE |
|---|---|---|
| TCB012 | Parâmetros DRE por Conta | Tela de cadastro — edição direta do PK |
| TCB002 | Plano de Contas | Vinculação de contas ao parâmetro DRE |
| TCB007 | Modelo de Plano de Contas | Vinculação no modelo de plano |
| TCB008 | Plano de Contas (Árvore) | Vinculação na árvore de contas |
| CCB004 | Centro de Custo | Consulta agrupada por parâmetro DRE |
| RCB006 | Relatório DRE | Impressão do DRE agrupado por parâmetro |
| RCB010 | Relatório DRE (variação) | Impressão alternativa do DRE |
| RCB012 | Relatório DRE (detalhado) | Consulta detalhada por parâmetro |
| RCB016 | Relatório DRE MTF | DRE por modelo MTF |
| RCB018 | Relatório DRE (comparativo) | DRE comparativo |
Tabelas que utilizam CD_PARMDRE
| Tabela | Coluna | Tipo | Obrigatório | FK para |
|---|---|---|---|---|
PARMDRE | CD_PARMDRE | INTEGER | ✓ (PK) | — |
PARMDRECONTA | CD_PARMDRE | INTEGER | ✓ (PK) | PARMDRE(CD_PARMDRE) |
PLANOCONTAS | CD_PARMDRE | INTEGER | Não | PARMDRE(CD_PARMDRE) |
PLANOEMPRESA | CD_PARMDRE | INTEGER | Não | PARMDRE(CD_PARMDRE) |
PLANOMODELO | CD_PARMDRE | INTEGER | Não | PARMDRE(CD_PARMDRE) |
VALORPARMDRE | CD_PARMDRE | INTEGER | ✓ (PK) | PARMDRE(CD_PARMDRE) |
Parâmetros relacionados
| Parâmetro | Tela | Relação |
|---|---|---|
CD_DREBASE | TCB012 — campo edtCD_DREBASE | Define qual parâmetro DRE é a base de cálculo para o registro atual |
CD_PAI | TCB012 — campo pai do DRE | Hierarquia entre parâmetros DRE |
CD_MODELODRE | TCB012 — campo edtCD_MODELO | Modelo de DRE ao qual o parâmetro pertence |
CD_MODELOPLANO | TCB012 — campo plano | Modelo de plano de contas vinculado |
TP_CONTA | TCB012 — combo cmbTP_CONTA | Tipo da conta (O = Operacional, D = Dedutível, etc.) |
TP_CALCULO | TCB012 — combo cmbTP_CALCULO | Tipo de cálculo (+ = soma, - = subtração) |
Procedures impactadas
Rotinas Delphi com referência direta ao campo
| Rotina | Arquivo | Evidência |
|---|---|---|
TdmTCB012.tabPLANOCONTASBeforePost | UdmTCB012.pas | Valida obrigatoriedade e propaga para PLANOCONTAS |
TdmTCB002.tabPLANOCONTASCD_PARMDREValidate | UdmTCB002.pas | Valida o campo CD_PARMDRE no cadastro de contas |
TdmTCB007.tabPLANOMODELOCD_PARMDREValidate | UdmTCB007.pas | Valida o campo no modelo de plano |
TdmTCB008.tabARVORECD_PARMDREValidate | UdmTCB008.pas | Valida o campo na árvore de contas |
TfrmPlanoContas.GlobalToEmpresa | UfrmPlanoContas.pas | Inclui CD_PARMDRE na cópia global → empresa |
TfrmPlanoContas.EmpresaToGlobal | UfrmPlanoContas.pas | Inclui CD_PARMDRE na cópia empresa → global |
TfrmPlanoContas.VerificaPlanEmpresa | UfrmPlanoContas.pas | Compara CD_PARMDRE na sincronização empresa |
TfrmPlanoContas.VerificaPlanGlobal | UfrmPlanoContas.pas | Compara CD_PARMDRE na sincronização global |
TfrmPlanoContas.VerificaContaDuplicada | UfrmPlanoContas.pas | Inclui CD_PARMDRE na checagem de duplicidade |
TfrmPlanoContas.VerificaClassificacao | UfrmPlanoContas.pas | Inclui CD_PARMDRE na verificação de classificação |
Referências SQL diretas ao campo
| Procedure / View | Script | Descrição |
|---|---|---|
GERA_DRE | GERA_DRE.sql | Gera o DRE — itera sobre PARMDRE.CD_PARMDRE, calcula saldos por parâmetro |
GERA_DRE12MESES | GERA_DRE12MESES.sql | DRE acumulado 12 meses — retorna O_CD_PARMDRE |
GERA_DRE_COMPARATIVO | GERA_DRE_COMPARATIVO.sql | DRE comparativo — retorna O_CD_PARMDRE |
GERA_DRECC | GERA_DRECC.sql | DRE com centro de custo — retorna O_CD_PARMDRE |
GERA_DREMTF | GERA_DREMTF.sql | DRE MTF — retorna O_CD_PARMDRE |
GERA_DREMTFCC | GERA_DREMTFCC.sql | DRE MTF com centro de custo — retorna O_CD_PARMDRE |
GERA_DREMTFRCB016 | GERA_DREMTFRCB016.sql | DRE MTF para RCB016 — retorna O_CD_PARMDRE |
GERA_DREMTFREGIMECAIXA | GERA_DREMTFREGIMECAIXA.sql | DRE MTF regime de caixa — retorna O_CD_PARMDRE |
GERA_DREMTFREGIMECAIXACMVK7 | GERA_DREMTFREGIMECAIXACMVK7.sql | DRE MTF caixa CMVK7 — retorna O_CD_PARMDRE |
GERA_DRERCB016 | GERA_DRERCB016.sql | DRE para RCB016 — retorna O_CD_PARMDRE |
GERA_DREREGIMECAIXA | GERA_DREREGIMECAIXA.sql | DRE regime de caixa — retorna O_CD_PARMDRE |
GERA_DREREGIMECAIXACMVK7 | GERA_DREREGIMECAIXACMVK7.sql | DRE caixa CMVK7 — retorna O_CD_PARMDRE |
GERA_DRERES | GERA_DRERES.sql | DRE resumido — retorna O_CD_PARMDRE |
JV_GERA_DRE | JV_GERA_DRE.sql | Gera DRE (variante JV) — retorna O_CD_PARMDRE |
VIEW_PLANOCONTAS | VIEW_PLANOCONTAS.sql | View do plano — retorna CD_PARMDRE |
VIEW_PLANOCONTAS_EMPRESAS | VIEW_PLANOCONTAS_EMPRESAS.sql | View por empresa — retorna O_CD_PARMDRE |
PESQUISA_ARVORE | PESQUISA_ARVORE.sql | Pesquisa na árvore — parâmetro CD_PARMDRE |
PESQUISA_ARVOREMOD | PESQUISA_ARVOREMOD.sql | Pesquisa na árvore modelo — parâmetro CD_PARMDRE |
TRGBIUD_PLANOMODELO | TRGBIUD_PLANOMODELO.sql | Trigger de modelo — propaga CD_PARMDRE |
VIEW_SPEDJ150 | VIEW_SPEDJ150.sql | SPED J150 — utiliza V_CD_PARMDRE |
Candidatas por uso da tabela PARMDRECONTA
A tabela PARMDRECONTA (PK: CD_CONTA, CD_PARMDRE) vincula contas do plano de contas a cada parâmetro DRE. Qualquer script que faça JOIN ou consulta em PARMDRECONTA utiliza indiretamente CD_PARMDRE. Isso inclui os relatórios RCB006, RCB010, RCB012, RCB016 e RCB018, que fazem JOIN em PARMDRE e PARMDRECONTA para compor o DRE.
Simulação passo a passo
Visualizar / Cadastrar um parâmetro DRE
- Acesse o menu Contabilidade → TCB012 — Parâmetros DRE por Conta.
- No grid superior (
gridModelos), selecione o modelo de DRE desejado. - Os parâmetros DRE do modelo aparecem no grid de consulta (
gridPARMDRE). - Para criar um novo parâmetro, clique em Novo (
btnNovo). - O campo "Base de Referência" (
edtCD_PARMDRE) será preenchido automaticamente pelo sistema com o próximo código sequencial. - Preencha os demais campos: Descrição (
edtDS_PARMDRE), Tipo de Conta (cmbTP_CONTA), Tipo de Cálculo (cmbTP_CALCULO), Ordem (edtNR_ORDEM), DRE Base (edtCD_DREBASE). - No grid inferior (
gridContas), vincule as contas do plano de contas que este parâmetro deve agregar. - Ao salvar a conta, o sistema propaga automaticamente o
CD_PARMDREdo parâmetro para a conta, caso esteja vazio. - Clique em Salvar (
btnSalvar).
Resultado esperado: O registro é gravado na tabela PARMDRE com o CD_PARMDRE como chave primária. As contas vinculadas no grid inferior são salvas na tabela PARMDRECONTA com o mesmo CD_PARMDRE. O campo também é propagado para PLANOCONTAS.CD_PARMDRE quando a conta é salva a partir desta tela.
Excecao / Importante: Se o campo
CD_PARMDREdo parâmetro estiver vazio no momento de salvar uma conta, o sistema exibe a exceção E-0039 ("do DRE") e cancela a operação. Este cenário não deve ocorrer em condições normais, pois o código é gerado automaticamente ao inserir um novo parâmetro.
Fluxo de dados: Geração do DRE
Quando um relatório DRE é gerado (RCB006, RCB010, RCB012, RCB016, RCB018), o sistema:
- Itera sobre todos os registros da tabela
PARMDREordenados porNR_ORDEM. - Para cada
CD_PARMDRE, busca as contas vinculadas emPARMDRECONTA. - Calcula o saldo de cada conta via
RETORNA_SALDOPERIODO. - Acumula os valores de acordo com
TP_CALCULO(+= soma,-= subtração). - Se o parâmetro possui
CD_DREBASEdiferente do padrão, utiliza a base de cálculo do parâmetro referenciado. - Retorna o resultado com
O_CD_PARMDRE,O_DS_CONTA,O_NR_ORDEMe valores calculados.
O CD_PARMDRE é, portanto, a chave de agrupamento central para toda a estrutura de geração do DRE.