Pular para o conteúdo principal

ST_MAISENDERECOPESSOA - Mais de um Endereço por Pessoa (Comportamento)

Tela de configuração: ADM010 — Parâmetros do Sistema
Localização: Aba "Bloqueio/Cadastro Pessoa"
Tabela: PARMSISTEMA.ST_MAISENDERECOPESSOA
Valor padrão: N (Desmarcado)
Componente: chkMaisEnderecoPessoa (Checkbox)

Este parâmetro obriga que uma pessoa (cliente/fornecedor) possua mais de um endereço cadastrado antes de permitir salvar o cadastro na tela de Pessoa (TFA001).

Telas impactadas​

TelaNomeImpacto
TFA001Cadastro de PessoaValidação ao excluir e ao salvar; exige endereço adicional

Campos envolvidos​

CampoTabelaTipoDefaultEditável
ST_MAISENDERECOPESSOAPARMSISTEMACHAR(1)'N'Sim (via ADM010)

Procedures impactadas​

Rotinas Delphi com referência direta​

RotinaArquivoLinhaEvidencia
TfrmTFA001.btnExcluirClicksource/TFA001/UTFA001.pas1450if(ParmSistema.Values['ST_MAISENDERECOPESSOA'] = 'S') then
TfrmTFA001.btnSalvarClicksource/TFA001/UTFA001.pas2107SELECT ST_EMAILPESSOA, ST_MAISENDERECOPESSOA FROM PARMSISTEMA

Candidatas por uso da tabela​

As rotinas abaixo usam a tabela PARMSISTEMA, mas não citam o campo ST_MAISENDERECOPESSOA literalmente. Não foi encontrada referência direta ao campo em Scripts/:

Procedure/ViewArquivoLinha
ENDERECOPESSOA_BI0Scripts/ENDERECOPESSOA_BI0.sql14
Demais procedures em Scripts/* que acessam PARMSISTEMA——

Opções disponíveis​

N - Desmarcado (Padrão: nenhuma exigência de múltiplos endereços)​

O que fazDetalhe
Exigência de endereço extraNão exige mais de um endereço
Comportamento na TFA001Salvar/excluir normalmente, sem validação de quantidade de endereços

Simulação passo a passo​

  1. Acesse ADM010 (Parâmetros do Sistema) → aba Bloqueio/Cadastro Pessoa.
  2. Localize a opção Mais de um Endereço por Pessoa e deixe-a desmarcada.
  3. Salve os parâmetros.
  4. Acesse TFA001 (Cadastro de Pessoa).
  5. Cadastre uma pessoa com apenas um endereço (endereço principal).
  6. Salve o cadastro.

Resultado esperado: O sistema salva o cadastro normalmente, sem exigir endereços adicionais.

S - Marcado (Exige mais de um endereço por Pessoa)​

O que fazDetalhe
Exigência de endereço extraExige no mínimo 2 endereços no cadastro da pessoa
Comportamento na exclusãoImpede exclusão se a pessoa tiver 2 ou menos endereços
Comportamento na gravaçãoImpede salvamento sem端ereços suficientes

Simulação passo a passo​

  1. Acesse ADM010 (Parâmetros do Sistema) → aba Bloqueio/Cadastro Pessoa.
  2. Localize a opção Mais de um Endereço por Pessoa e marque-a.
  3. Salve os parâmetros.
  4. Acesse TFA001 (Cadastro de Pessoa).
  5. Selecione uma pessoa existente ou cadastre uma nova.
  6. Acesse a aba Endereços da pessoa.
  7. Cadastre apenas 1 endereço principal e tente salvar ou excluir o registro.

Resultado esperado: O sistema exibe a mensagem: "O Cadastro da Pessoa precisa ter mais do que um Endereço! Verifique! [TFA001/ADM010]". O foco é direcionado para a grid de endereços, e se houver apenas 1 endereço, o botão Novo é acionado automaticamente.

Simulação passo a passo — cenário válido (2 ou mais endereços)​

  1. Com o parâmetro marcado (S), acesse TFA001 e abra o cadastro de uma pessoa.
  2. Na aba Endereços, adicione um segundo endereço (ex: endereço de entrega).
  3. Preencha os campos obrigatórios do segundo endereço.
  4. Salve o cadastro.

Resultado esperado: O sistema salva o cadastro normalmente, pois a pessoa possui mais de um endereço (RecordCount > 2, contando o registro em inserção).

Exceção / Importante: A validação considera RecordCount <= 2. Isso ocorre porque, ao adicionar um novo endereço em modo de inserção (dsInsert), o dataset já conta o registro "fantasma". Portanto, para passar na validação a pessoa precisa ter pelo menos 1 endereço existente + 1 sendo adicionado = 2 endereços. O usuário final deve interpretar como "mínimo de 2 endereços cadastrados".

Regra Geral de Funcionamento​

SituaçãoST_MAISENDERECOPESSOA = 'N'ST_MAISENDERECOPESSOA = 'S'
Salvar pessoa com 1 endereço✅ Permitido❌ Bloqueado
Salvar pessoa com 2+ endereços✅ Permitido✅ Permitido
Excluir pessoa com ≤ 2 endereços✅ Permitido❌ Bloqueado
Excluir pessoa com 3+ endereços✅ Permitido✅ Permitido