Pular para o conteúdo principal

ST_OBRIGASOCIOPESSOA - Obrigatoriedade de sócios para pessoa jurídica

Tela de configuração: ADM010
Localização: Aba Bloqueio/Cadastro Pessoa → checkbox "Sócio(s) - Pessoa Jurídica"
Tabela: PARMSISTEMA.ST_OBRIGASOCIOPESSOA
Valor padrão: N
Tipo: CHAR(1) — 'S' | 'N'

Telas impactadas​

TelaDescriçãoImpacto observável
TFA001Cadastro de Pessoa (fornecedor/cliente)Ao salvar pessoa jurídica (CNPJ > 14 dígitos), valida a existência de sócios quando habilitado.

Campos envolvidos​

CampoTabelaTipoObrigatórioPadrãoEditável
ST_OBRIGASOCIOPESSOAPARMSISTEMADOM_CHAR1 (CHAR(1))SimNSim (checkbox na ADM010)

Opções disponíveis​

O que fazDetalhe
Marcado (S)Obriga o cadastro de pelo menos um sócio ao salvar pessoa jurídica com CNPJ (NR_CNPJCPF com comprimento > 14).
Desmarcado (N)Permite salvar pessoa jurídica sem informar sócios.

S - Obrigatório informe sócios​

Simulação passo a passo​

  1. Acesse ADM010 — Parâmetros do Sistema.
  2. Abra a aba Bloqueio/Cadastro Pessoa.
  3. Marque o checkbox Sócio(s) - Pessoa Jurídica.
  4. Salve os parâmetros.
  5. Acesse TFA001 — Cadastro de Pessoa.
  6. Crie um novo cadastro (ex: fornecedor ou cliente Pessoa Jurídica).
  7. Preencha os dados básicos e informe um CNPJ válido (ex: 12.345.678/0001-90).
  8. Não preencha a aba de sócios.
  9. Clique no botão Salvar.

Resultado esperado: A tela é forçado para a aba de sócios (pagSOCIOS) e uma mensagem de erro é exibida: "É Obrigatório Informar os Sócios." — o registro não é salvo até que ao menos um sócio seja cadastrado.

Importante: Validação ocorre no AfterPost da tabela PESSOA (TdmTFA001.tabPESSOAAfterPost). O sistema checa se NR_CNPJCPF tem comprimento > 14 (caracteriza CNPJ). Se for CNPJ, abre o dataset tabPESSOASOCIO e verifica se tabPESSOASOCIOCD_PESSOA está vazio. Se vazio, lança exceção.

N - Não obrigatório (padrão)​

Simulação passo a passo​

  1. Acesse ADM010 — Parâmetros do Sistema.
  2. Na aba Bloqueio/Cadastro Pessoa, desmarque o checkbox Sócio(s) - Pessoa Jurídica.
  3. Salve os parâmetros.
  4. Acesse TFA001 — Cadastro de Pessoa.
  5. Crie um novo cadastro de pessoa jurídica com CNPJ.
  6. Não preencha a aba de sócios.
  7. Clique em Salvar.

Resultado esperado: O cadastro é salvo normalmente sem exigir sócios.


Regra de Validação​

CondiçãoResultado
ST_OBRIGASOCIOPESSOA = 'S' e Length(NR_CNPJCPF) > 14 e tabPESSOASOCIOCD_PESSOA vazioExceção: "É Obrigatório Informar os Sócios." — tela vai para a aba de sócios
ST_OBRIGASOCIOPESSOA = 'N'Nenhuma validação — sócios são opcionais
Length(NR_CNPJCPF) <= 14 (CPF)Validação ignorada — sócios não obrigatórios

Tabela Comparativa Resumida​

ValorSócio obrigatório?Aplicação
SSimPessoa Jurídica ao salvar (CNPJ > 14 dígitos)
NNãoNenhuma validação (padrão do sistema)

Tabela Comparativa Resumida​

ValorSócio obrigatório?Quando validaComportamento
SSimPessoa Jurídica (CNPJ > 14 dígitos) ao salvarExceção se não sócios cadastrados
NNão—Sócios são opcionais

Procedures impactadas​

Rotinas Delphi com referência direta ao parâmetro​

RotinaArquivoLinhaEvidência
TdmTFA001.tabPESSOAAfterPostsource/TFA001/UdmTFA001.pas2702if (ParmSistema.Values['ST_OBRIGASOCIOPESSOA'] = 'S') then

Candidatas por uso da tabela PARMSISTEMA​

As scripts SQL abaixo usam a tabela PARMSISTEMA mas não citam o campo ST_OBRIGASOCIOPESSOA literalmente. Validação necessária antes de afirmar impacto funcional direto:

Procedure/ViewArquivoLinha
ARRUMA_MASCARACONTAScripts/FROM PARMSISTEMA
ATUALIZA_CONTACONTABILScripts/FROM PARMSISTEMA
CALCULA_TEMPOPERMANENCIAScripts/FROM PARMSISTEMA
CONTABILIZA_CUPOMFISCALScripts/FROM PARMSISTEMA
ENDERECOPESSOA_BI0Scripts/FROM PARMSISTEMA
GERA_CONTACLIFORScripts/FROM PARMSISTEMA
GERA_DARFScripts/FROM PARMSISTEMA
GERA_PLANOFILIALScripts/FROM PARMSISTEMA
GERA_SPEDBLOCOLScripts/FROM PARMSISTEMA
GERA_SPEDCONTABILScripts/FROM PARMSISTEMA
GERA_SPEDCONTABIL_0000Scripts/FROM PARMSISTEMA
GERA_SPEDECFScripts/FROM PARMSISTEMA
GERA_SPEDECFBLOCOJScripts/FROM PARMSISTEMA
GERA_SPEDECFBLOCOK155Scripts/FROM PARMSISTEMA
GERA_SPEDECFBLOCOK355Scripts/FROM PARMSISTEMA
GERA_EDECFBLOCOL210Scripts/FROM PARMSISTEMA
`G