TP_PLANOCONTABIL — Tipo do Plano de Contas Contábil
Tela de configuração: ADM010 — Parâmetros do Sistema Localização: aba Configurações, campo "Formato Cód. Barras Grade" (rótulo visual no DFM) Tabela:
PARMSISTEMA.TP_PLANOCONTABIL·CHAR(1) NOT NULLValor padrão:G(Global)
Resumo
Define se o Plano de Contas Contábil é único para todas as empresas (Global) ou independente por empresa. Esse parâmetro é lido por praticamente todas as telas do módulo contábil (RCB*, CCB*, MCB*) e por diversos scripts de geração de SPED, balancete e contabilização. Se estiver vazio, o sistema bloqueia a abertura dessas telas com a mensagem "Os parâmetros de Sistema não estão cadastrados!".
Telas impactadas
| Tela | Módulo | Impacto |
|---|---|---|
| RCB001 | Contábil | Lookup de contas via VIEW_PLANOCONTAS — se 'G' usa empresa 1, se 'E' exige empresa selecionada |
| RCB002 | Contábil | Pré-requisito bloqueante; força empresa=1 quando 'G'; exige empresa marcada quando 'E' |
| RCB003 | Contábil | Lê TP_PLANOCONTABIL ao iniciar |
| RCB004 | Contábil | Lê TP_PLANOCONTABIL ao iniciar |
| RCB005 | Contábil | Lê TP_PLANOCONTABIL ao iniciar |
| RCB006 | Contábil | Lê TP_PLANOCONTABIL ao iniciar |
| RCB007 | Contábil | Lê TP_PLANOCONTABIL ao iniciar |
| RCB010 | Contábil | Pré-requisito bloqueante; bloqueia abertura se vazio |
| RCB011 | Contábil | Pré-requisito bloqueante |
| RCB012 | Contábil | Pré-requisito bloqueante; exige empresa antes da conta quando 'E' |
| RCB013 | Contábil | Pré-requisito bloqueante |
| RCB014 | Contábil | Pré-requisito bloqueante; exige empresa antes da conta quando 'E' |
| RCB015 | Contábil | Pré-requisito bloqueante |
| RCB021 | Contábil | Pré-requisito bloqueante |
| CCB001 | Contábil | Lê TP_PLANOCONTABIL ao iniciar |
| CCB002 | Contábil | Lê TP_PLANOCONTABIL ao iniciar |
| CCB003 | Contábil | Lê TP_PLANOCONTABIL ao iniciar |
| CCB004 | Contábil | Lê TP_PLANOCONTABIL ao iniciar |
| MCB001 | Contábil | Lê TP_PLANOCONTABIL ao iniciar |
| MCB002 | Contábil | Lê TP_PLANOCONTABIL ao iniciar |
| MCB005 | Contábil | Lê TP_PLANOCONTABIL ao iniciar |
| MFI012 | Fiscal/Industrial | Lookup de conta contábil respeita o tipo |
| MFI013 | Fiscal/Industrial | Lookup e validação de conta contábil |
| ADM002 | Administração | Lê TP_PLANOCONTABIL via consulta |
Campos envolvidos
| Campo | Tabela | Papel |
|---|---|---|
TP_PLANOCONTABIL | PARMSISTEMA | Parâmetro principal — tipo do plano contábil |
CD_CONTA | PLANOCONTAS | Conta contábil validada conforme o tipo de plano |
CD_EMPRESA | EMPRESA | Empresa selecionada no grid — obrigatória quando 'E' |
Opções disponíveis
G — Global (Para Todas as Empresas)
| O que faz | Detalhe |
|---|---|
| Plano de contas único | Todas as empresas compartilham o mesmo plano de contas (empresa de referência = 1) |
| Lookup simplificado | Campos de conta contábil usam automaticamente CD_EMPRESA = 1 na VIEW_PLANOCONTAS |
| Não exige empresa selecionada | O usuário pode informar a conta sem antes marcar uma empresa no grid |
Simulação passo a passo
- Acesse ADM010 — Parâmetros do Sistema, aba Configurações.
- Selecione Global (Para Todas as Empresas) no campo Tipo do Plano de Contas.
- Clique em Salvar.
- Se já existirem contas contábeis cadastradas por empresa, o sistema exibe a mensagem: "Para alteração do parâmetro, será necessário Migrar o Plano de Contas. Deseja continuar com o Processo?".
- Confirme para abrir a tela de Migração de Plano de Contas (de Empresa para Global).
- Clique em Executar Migração e aguarde a conclusão.
- Abra qualquer tela do módulo contábil (ex.: RCB001, RCB002).
- Informe uma conta contábil no campo de conta — o sistema utiliza automaticamente a empresa 1 como referência.
Resultado esperado: O plano de contas passa a ser único para todas as empresas. Qualquer lookup de conta contábil funciona sem exigir empresa pré-selecionada.
E — Por Empresa
| O que faz | Detalhe |
|---|---|
| Plano de contas independente | Cada empresa possui seu próprio plano de contas |
| Exige empresa selecionada | Antes de informar uma conta contábil, o usuário deve marcar a empresa no grid de consolidação |
| Validação rígida | Se a empresa não estiver selecionada, exibe "O tipo do plano de contas é por empresa, portando a empresa deve ser informada antes da conta contábil." |
Simulação passo a passo
- Acesse ADM010 — Parâmetros do Sistema, aba Configurações.
- Selecione Por Empresa no campo Tipo do Plano de Contas.
- Clique em Salvar.
- Se já existirem contas contábeis cadastradas no plano global, o sistema exibe a mensagem: "Para alteração do parâmetro, será necessário Migrar o Plano de Contas. Deseja continuar com o Processo?".
- Confirme para abrir a tela de Migração de Plano de Contas (de Global para Empresa).
- Clique em Executar Migração e aguarde a conclusão.
- Abra uma tela contábil (ex.: RCB002 — Lançamentos Contábeis).
- Selecione a empresa desejada no grid de empresas antes de informar qualquer conta contábil.
- Informe a conta contábil — o sistema valida contra o plano daquela empresa específica.
Resultado esperado: Cada empresa passa a ter seu próprio plano de contas. Obriga a seleção de empresa antes da conta contábil em todas as telas do módulo contábil.
Exceção / Importante:
- Se o parâmetro estiver vazio (não configurado), as telas contábeis bloqueiam a abertura com a mensagem "Os parâmetros de Sistema não estão cadastrados!" e, em algumas telas (RCB002), o botão Novo é ocultado.
- A troca de
GparaE(ou vice-versa) dispara obrigatoriamente o processo de migração do plano de contas via telafrmPlanoContas, quando já existem dados no plano anterior. Se o usuário cancelar a migração, a alteração do parâmetro é revertida (rollback to savepoint).
Regra Geral de Migração
Quando o operador altera o valor do parâmetro na ADM010:
- O validador
tabPARMSISTEMATP_PLANOCONTABILValidateverifica se existem contas no plano atual (consultatabEMPRESAGLOBALpara mudança para 'G' outabGLOBALEMPRESApara mudança para 'E'). - Se houver dados, exibe confirmação de migração.
- Se confirmado, abre
frmPlanoContas— que adapta a interface conforme o sentido da migração (aba "Global → Empresa" ou "Empresa → Global"). - Se o usuário cancelar o formulário de migração (
mrOknão retornado), o sistema faz rollback para o savepointADM010e cancela a alteração do campo.
Procedures impactadas
Rotinas Delphi com referência direta
| Rotina | Arquivo | Descrição |
|---|---|---|
tabPARMSISTEMATP_PLANOCONTABILValidate | UdmADM010.pas | Valida alteração e dispara migração |
TdmADM010.tabPARMSISTEMAAfterInsert | UdmADM010.pas | Atribui padrão 'G' |
TfrmADM010.btnSalvarClick | UADM010.pas | Foca no combo após inclusão |
TfrmPlanoContas.FormShow | UfrmPlanoContas.pas | Oculta aba de migração conforme sentido |
iniciar (RCB001..RCB007, RCB010..RCB014) | URCB*.pas | Lê parâmetro ao abrir a tela |
iniciar (CCB001..CCB004) | UCCB*.pas | Lê parâmetro ao abrir a tela |
iniciar (MCB001, MCB002, MCB005) | UMCB*.pas | Lê parâmetro ao abrir a tela |
TfrmMFI012.edtCD_CONTAF120KeyDown | UMFI012.pas | Lookup condicional |
TfrmMFI013.edtCD_CONTAKeyDown | UMFI013.pas | Lookup condicional |
TdmMFI013.CD_CONTAValidate | UdmMFI013.pas | Validação de conta contábil |
Scripts SQL com referência direta ao campo
| Procedure/View | Arquivo | Uso |
|---|---|---|
VIEW_PLANOCONTAS | VIEW_PLANOCONTAS.sql | Parâmetro de entrada I_TP_PLANOCONTABIL — filtra contas por empresa ou global |
VIEW_PLANOCONTAS_EMPRESAS | VIEW_PLANOCONTAS_EMPRESAS.sql | Declara variável, consulta PARMSISTEMA |
ARRUMA_MASCARACONTA | ARRUMA_MASCARACONTA.sql | Verifica tipo para ajustar máscara |
ATUALIZA_CONTACONTABIL | ATUALIZA_CONTACONTABIL.sql | Se 'E' exige empresa, senão usa global |
CONTABILIZA_CUPOMFISCAL | CONTABILIZA_CUPOMFISCAL.sql | Lê tipo do plano para contabilização |
GERA_CONTACLIFOR | GERA_CONTACLIFOR.sql | Gera conta de cliente/fornecedor conforme tipo |
GERA_PLANOFILIAL | GERA_PLANOFILIAL.sql | Gera plano por filial |
GERA_SPEDBLOCOL | GERA_SPEDBLOCOL.sql | Geração SPED Bloco L |
GERA_SPEDCONTABIL | GERA_SPEDCONTABIL.sql | Geração SPED Contábil |
GERA_SPEDCONTABIL_0000 | GERA_SPEDCONTABIL_0000.sql | Registro 0000 do SPED Contábil |
GERA_SPEDECFBLOCOJ | GERA_SPEDECFBLOCOJ.sql | SPED ECF Bloco J |
GERA_SPEDECFBLOCOK155 | GERA_SPEDECFBLOCOK155.sql | SPED ECF Bloco K155 |
GERA_SPEDECFBLOCOK355 | GERA_SPEDECFBLOCOK355.sql | SPED ECF Bloco K355 |
GERA_SPEDECFBLOCOL210 | GERA_SPEDECFBLOCOL210.sql | SPED ECF Bloco L210 |
GERA_SPEDECFBLOCOY | GERA_SPEDECFBLOCOY.sql | SPED ECF Bloco Y |
GRAVA_REGISTROSPED0500 | GRAVA_REGISTROSPED0500.sql | Registro SPED 0500 |
INSERE_ITEMNOTACC | INSERE_ITEMNOTACC.sql | Contabilização de item de nota |
PLANOCONTASRECEITA_BIU | PLANOCONTASRECEITA_BIU.sql | Trigger BIU de plano de contas/receita |
REPROCESSA_CONTASPESSOA | REPROCESSA_CONTASPESSOA.sql | Reprocessa contas de pessoa |
RETORNA_CENTRORESULT | RETORNA_CENTRORESULT.sql | Retorna centro de resultado |
RETORNA_SPEDPLANORECEITA | RETORNA_SPEDPLANORECEITA.sql | Retorna plano de receita para SPED |
GERA_SPEDECF | GERA_SPEDECF.sql | Referência comentada (/*...*/) |
Candidatas por uso da tabela (sem referência direta ao campo)
As procedures abaixo referenciam PARMSISTEMA mas não citam TP_PLANOCONTABIL literalmente:
CALCULA_TEMPOPERMANENCIA, ENDERECOPESSOA_BI0, GERA_DARF, IMPORTA_ARQUIVOMAGNETICO, INCLUI_IMPOSTONOTACTB, PESSOA_BI, PESSOAFISICA_BI0, PROCESSA_PESSOASOVIS, REFERENCIAPESSOA_BI0, REGISTRA_MENSAGEM, REGISTRA_TERMOMODULO, RETORNA_BALANCETE, RETORNA_BALANCETECC, RETORNA_DADOSLICENCA, TRADUCAO_TERMO, VERIFICA_BLOQUEIOPESSOA.
Tabela Comparativa Resumida
| Valor | Significado | Exige empresa antes da conta? | Plano compartilhado? | Migração ao alterar? |
|---|---|---|---|---|
G | Global | Não | Sim (empresa 1) | Sim, se existir plano por empresa |
E | Por Empresa | Sim | Não (cada empresa tem o seu) | Sim, se existir plano global |
| Vazio | Não configurado | — | — | — (bloqueia abertura das telas contábeis) |