ST_PESSOACPF - CPF da Pessoa para aba de Dados de Pessoa Física
Tela de configuração: ADM010 — Parâmetros do Sistema Localização: Aba "Bloqueio/Cadastro Pessoa" Tabela:
PARMSISTEMA.ST_PESSOACPFComponente:chkST_PESSOACPF(checkbox) Valor padrão:N(Desmarcado) Tipo:CHAR(1)—'S'ou'N'
Telas impactadas
| Tela | Nome | Impacto |
|---|---|---|
| TFA001 | Cadastro de Pessoa | Copia o CPF/CNPJ da pessoa para a tabela PESSOAFISICA ao acessar a aba "Dados de Pessoa Física" |
Campos envolvidos
| Campo | Tabela | Tipo |
|---|---|---|
ST_PESSOACPF | PARMSISTEMA | DOM_CHAR1 DEFAULT 'N' NOT NULL |
NR_CNPJCPF | PESSOA | Campo principal de CPF/CNPJ da pessoa |
NR_CPF | PESSOAFISICA | Campo de CPF específico da pessoa física |
Opções disponíveis
| O que faz | Valor | Comportamento |
|---|---|---|
| Desmarcado (padrão) | N | Não sincroniza automaticamente o CPF/CNPJ com a aba de Pessoa Física |
| Marcado | S | Ao acessar a aba "Dados de Pessoa Física", se o CPF/CNPJ da pessoa tiver 14 dígitos, o valor é copiado automaticamente para PESSOAFISICA.NR_CPF |
N — Desmarcado (Padrão)
O sistema não copia automaticamente o conteúdo do campo NR_CNPJCPF da pessoa para a tabela PESSOAFISICA ao acessar a aba de dados de pessoa física.
Simulação passo a passo
- Acesse ADM010 — Parametros do Sistema.
- Abra a aba Bloqueio/Cadastro Pessoa.
- Desmarque a opção "CPF da Pessoa p/ aba de Dados de Pessoa Física".
- Salve os parâmetros.
- Acesse TFA001 — Cadastro de Pessoa.
- Cadastre ou edite uma pessoa preenchendo o CPF/CNPJ com 11 dígitos (CPF).
- Acesse a aba Dados de Pessoa Física.
Resultado esperado: O sistema abre a aba de Pessoa Física normalmente. O campo NR_CPF na tabela PESSOAFISICA não recebe automaticamente o valor do CPF/CNPJ da pessoa. O usuário precisa preenchê-lo manualmente se necessário.
S — Marcado (Sincroniza CPF/CNPJ 14 dígitos com Pessoa Física)
Quando marcado, ao acessar a aba "Dados de Pessoa Física" na tela TFA001, se o campo NR_CNPJCPF da pessoa possuir 14 caracteres (formato de CNPJ), o sistema copia esse valor para o campo NR_CPF da tabela PESSOAFISICA. Além disso, ao salvar (Post) a pessoa, se o CPF/CNPJ tiver 14 dígitos, o sistema faz INSERT ou UPDATE na tabela PESSOAFISICA com esse valor no campo NR_CPF.
Simulação passo a passo
- Acesse ADM010 — Parametros do Sistema.
- Abra a aba Bloqueio/Cadastro Pessoa.
- Marque a opção "CPF da Pessoa p/ aba de Dados de Pessoa Física".
- Salve os parâmetros.
- Acesse TFA001 — Cadastro de Pessoa.
- Cadastre uma pessoa com CPF/CNPJ =
12.345.678/0001-90(14 dígitos, formato CNPJ). - Salve o cadastro da pessoa.
- Acesse a aba Dados de Pessoa Física.
Resultado esperado: O sistema copia automaticamente 12.345.678/0001-90 para o campo NR_CPF da tabela PESSOAFISICA. A tabela PESSOAFISICA recebe um INSERT com CD_PESSOA e NR_CPF preenchidos. Se o registro já existir, a tabela PESSOAFISICA é atualizada com o mesmo CPF.
Exceção / Importante: A cópia automática somente ocorre quando o campo
NR_CNPJCPFpossui exatamente 14 dígitos (formato CNPJ). Se o valor tiver 11 dígitos (formato CPF), a sincronização não é executada, pois o sistema entende que já se trata de um CPF válido e não precisa espelhar na pessoa física.
Exceção / Importante: Na aba de Pessoa Física (
pagPESSOAFISICA), o sistema também executa a cópia ao navegar para a aba, colocando o datasetPESSOAFISICAem modo de edição (Edit) antes de copiar o valor. Isso significa que oNR_CPFé populado mesmo que o usuário não tenha salvado a pessoa ainda — basta trocar de aba.
Procedures impactadas
Rotinas Delphi com referência direta ao campo
| Rotina | Arquivo | Linha | Descrição |
|---|---|---|---|
TfrmTFA001.PaginasChange | source/TFA001/UTFA001.pas | 3556 | Ao trocar para a aba "Pessoa Física", consulta ST_PESSOACPF. Se 'S' e NR_CNPJCPF tem 14 dígitos, copia para PESSOAFISICA.NR_CPF |
TdmTFA001.tabPESSOAAFTERPost | source/TFA001/UdmTFA001.pas | 2735 | No AfterPost da tabela PESSOA, consulta ST_PESSOACPF. Se 'S' e NR_CNPJCPF tem 14 dígitos, faz INSERT ou UPDATE em PESSOAFISICA |
Candidatas por uso da tabela PARMSISTEMA
Rotinas SQL em Scripts/ que consultam PARMSISTEMA, mas não referenciam diretamente o campo ST_PESSOACPF. Não foi encontrado impacto funcional direto nas scripts listadas.
| Procedure/View | Arquivo | Linha |
|---|---|---|
ARRUMA_MASCARACONTA | Scripts/ARRUMA_MASCARACONTA.sql | 22 |
ATUALIZA_CONTACONTABIL | Scripts/ATUALIZA_CONTACONTABIL.sql | 25 |
CALCULA_TEMPOPERMANENCIA | Scripts/CALCULA_TEMPOPERMANENCIA.sql | 24 |
CONTABILIZA_CUPOMFISCAL | Scripts/CONTABILIZA_CUPOMFISCAL.sql | 58 |
ENDERECOPESSOA_BI0 | Scripts/ENDERECOPESSOA_BI0.sql | 14 |
GERA_CONTACLIFOR | Scripts/GERA_CONTACLIFOR.sql | 105 |
GERA_DARF | Scripts/GERA_DARF.sql | 139 |
GERA_PLANOFILIAL | Scripts/GERA_PLANOFILIAL.sql | 15 |
GERA_SPEDBLOCOL | Scripts/GERA_SPEDBLOCOL.sql | 36 |
GERA_SPEDCONTABIL | Scripts/GERA_SPEDCONTABIL.sql | 156 |
GERA_SPEDCONTABIL_0000 | Scripts/GERA_SPEDCONTABIL_0000.sql | 60 |
GERA_SPEDECF | Scripts/GERA_SPEDECF.sql | 127 |
GERA_SPEDECFBLOCOJ | Scripts/GERA_SPEDECFBLOCOJ.sql | 29 |
GERA_SPEDECFBLOCOK155 | Scripts/GERA_SPEDECFBLOCOK155.sql | 43 |
GERA_SPEDECFBLOCOK355 | Scripts/GERA_SPEDECFBLOCOK355.sql | 44 |
GERA_SPEDECFBLOCOL210 | Scripts/GERA_SPEDECFBLOCOL210.sql | 43 |
GERA_SPEDECFBLOCOY | Scripts/GERA_SPEDECFBLOCOY.sql | 28 |
GRAVA_REGISTROSPED0500 | Scripts/GRAVA_REGISTROSPED0500.sql | 26 |
IMPORTA_ARQUIVOMAGNETICO | Scripts/IMPORTA_ARQUIVOMAGNETICO.sql | 617 |
INCLUI_IMPOSTONOTACTB | Scripts/INCLUI_IMPOSTONOTACTB.sql | 55 |
Tabela comparativa resumida
| Valor | Nome | Copia CNPJ para PESSOAFISICA? | Quando copia? |
|---|---|---|---|
N | Desmarcado (padrão) | Não | Nunca |
S | Marcado | Sim | Quando NR_CNPJCPF tem 14 dígitos, ao navegar para aba Pessoa Física ou ao salvar a pessoa |