CD_PARMDLPA - Código do Parâmetro de DLPA
Tela de configuração: TCB014 — Parâmetros de DLPA (Demonstração de Lucros ou Prejuízos Acumulados) Tabela:
PARMDLPA.CD_PARMDLPATipo:DOM_INTEGER— inteiro, campo editável Valor padrão: nenhum (obrigatório)
Descrição
CD_PARMDLPA é o código identificador do parâmetro de DLPA dentro de um modelo de plano de contas. Junto com CD_MODELOPLANO, forma a chave primária da tabela PARMDLPA, distinguindo cada linha de configuração do DLPA (descrição, tipo de valor, saldo, conta contábil etc.).
O campo é obrigatório e não pode ser duplicado para o mesmo modelo de plano.
Campos envolvidos
| Campo | Tabela | Tipo | Obrigatório | Descrição |
|---|---|---|---|---|
CD_PARMDLPA | PARMDLPA | INTEGER | Sim | Código do parâmetro de DLPA |
CD_MODELOPLANO | PARMDLPA | INTEGER | Sim | Modelo do plano de contas (FK para MODELOPLANO) |
DS_PARMDLPA | PARMDLPA | VARCHAR(60) | Sim | Descrição do parâmetro |
ST_IMPRESSAO | PARMDLPA | CHAR(1) | Sim | Status de impressão |
TP_VALOR | PARMDLPA | CHAR(1) | Sim | Tipo de valor (ex: M = Manual, A = Conta) |
CD_CONTA | PARMDLPA | INTEGER | Condicional | Conta contábil (obrigatório quando TP_VALOR = 'A') |
ST_SALDO | PARMDLPA | CHAR(1) | Sim | Tipo de saldo (+, -, =) |
NR_ORDEM | PARMDLPA | INTEGER | Sim | Ordem de exibição no relatório |
Comportamento
Na tela TCB014
| O que faz | Detalhe |
|---|---|
| Edição | Campo editável apenas em inserção; após salvar, torna-se somente leitura |
| Obrigatório | Não pode ficar vazio ao salvar (erro W-0513) |
| Duplicidade | Não pode existir outro registro com o mesmo CD_PARMDLPA + CD_MODELOPLANO (erro W-1313) |
| Modelo obrigatório | O modelo de plano (CD_MODELOPLANO) deve estar preenchido para validação do código |
Relacionamentos
- Chave primária:
PK_PARMDLPA (CD_MODELOPLANO, CD_PARMDLPA) - FK de DLPA: a tabela
DLPAreferenciaPARMDLPAporRDLPA_PARMDLPA (CD_MODELOPLANO, CD_PARMDLPA)comON DELETE CASCADE
Simulação passo a passo
Incluir um novo parâmetro de DLPA
- Acesse a tela TCB014 — Parâmetros de DLPA.
- Clique no botão Novo.
- Digite o código do parâmetro no campo Código (ex.:
10). - Selecione o Modelo do Plano (ex.:
1). - Digite a Descrição (ex.:
Lucros Acumulados). - Defina os demais campos obrigatórios: Impressão, Tipo de Valor, Saldo e Ordem.
- Clique em Salvar.
Resultado esperado: O registro é gravado na tabela PARMDLPA. O campo Código torna-se somente leitura. Após o commit, o registro é localizado automaticamente no grid.
Exceção / Importante:
- Se já existir um registro com o mesmo
CD_PARMDLPApara o mesmo modelo, o sistema exibe o erroW-1313e bloqueia a gravação.- Se o código ficar vazio, o sistema exibe o erro
W-0513e foca no campo.- Se
TP_VALORfor preenchido comoA(Conta), o campoCD_CONTAtorna-se obrigatório (erroW-1257).
Alterar um parâmetro existente
- Acesse a tela TCB014 — Parâmetros de DLPA.
- Navegue até o registro desejado (ou use Procurar).
- Altere os campos editáveis (descrição, tipo de valor, saldo, ordem etc.).
- Clique em Salvar.
Resultado esperado: Somente os campos secundários são alterados; o Código permanece bloqueado (somente leitura).
Excluir um parâmetro
- Acesse a tela TCB014 — Parâmetros de DLPA.
- Posicione-se no registro desejado.
- Clique em Excluir e confirme.
- O sistema exclui o registro e efetua commit.
Resultado esperado: O registro é removido de PARMDLPA. Registros associados em DLPA também são excluídos automaticamente por ON DELETE CASCADE.
Telas impactadas
| Tela | Rotina | Impacto |
|---|---|---|
| TCB014 (Parâmetros de DLPA) | btnNovoClick, btnSalvarClick, btnLimparClick | CRUD principal do campo |
| RCB009 (DLPA) | btnImprimirClick, tabFILTRODT_FINALValidate | Utiliza CD_PARMDLPA em INSERT na tabela DLPA e em JOIN com PARMDLPA |
| RCB012 | ConsultaDLPA | JOIN entre DLPA e PARMDLPA usando CD_PARMDLPA |
Procedures impactadas
Rotinas Delphi com referência direta ao campo
| Rotina | Arquivo | Descrição |
|---|---|---|
TdmTCB014.tabPARMDLPACD_PARMDLPAValidate | source/TCB014/UdmTCB014.pas:129 | Valida duplicidade de CD_PARMDLPA + CD_MODELOPLANO |
TdmTCB014.tabPARMDLPABeforePost | source/TCB014/UdmTCB014.pas:60 | Verifica preenchimento obrigatório |
TdmTCB014.tabPARMDLPAAfterScroll | source/TCB014/UdmTCB014.pas:97 | Alterna ReadOnly conforme estado (insert vs browse) |
TfrmTCB014.btnSalvarClick | source/TCB014/UTCB014.pas:205 | Captura valor para Locate pós-commit |
TfrmTCB014.btnNovoClick | source/TCB014/UTCB014.pas:222 | Foca no campo ao iniciar inserção |
TfrmTCB014.btnLimparClick | source/TCB014/UTCB014.pas:184 | Foca no campo ao cancelar |
TfrmRCB009.btnImprimirClick | source/RCB009/URCB009.pas:217 | INSERT em DLPA incluindo CD_PARMDLPA |
TdmRCB009.tabFILTRODT_FINALValidate | source/RCB009/UdmRCB009.pas:168 | JOIN DLPA↔PARMDLPA por CD_PARMDLPA |
ConsultaDLPA | source/RCB012/UdmRCB012.pas:4752 | JOIN em relatório |
Scripts SQL
Não foi encontrada referência direta ao campo CD_PARMDLPA em procedures SQL armazenadas em Scripts/. O campo aparece apenas em:
- DDL: definição das tabelas
PARMDLPAeDLPA(chave primária e foreign key). - Queries inline nos Data Modules
.dfm(RCB009 e RCB012).
Tabela comparativa resumida
| Propriedade | Valor |
|---|---|
| Tipo | Inteiro (DOM_INTEGER) |
| Obrigatório | Sim |
| Editável | Somente em inserção |
| Chave | Sim — parte de PK_PARMDLPA junto com CD_MODELOPLANO |
| Duplicidade | Bloqueada (validação no validate) |
| Valor padrão | Nenhum |
| Cascade delete | Sim — DLPA é excluída em cascata |