Pular para o conteúdo principal

ST_BLOQUEIOPESSOA - Bloqueia Alteração no Cadastro de Pessoa em Outras Empresas

Tela de configuração: ADM010 — Parâmetros do Sistema Localização: aba Configurações Tabela: PARMSISTEMA.ST_BLOQUEIOPESSOA (CHAR(1)) Valor padrão: N (Não)

Descrição​

Controla se o usuário pode alterar dados de uma Pessoa (cliente/fornecedor) cujo cadastro original pertence a outra empresa do grupo. Quando ativado, impede que usuários de empresas diferentes daquela que cadastrou a pessoa modifiquem seus dados.

Telas impactadas​

TelaDescriçãoImpacto
TFA001Cadastro de PessoaBloqueia edição e impede gravação de alterações
TFA083Cadastro Rápido de PessoaBloqueia edição do campo empresa de cadastro

Campos envolvidos​

CampoTabelaDescrição
CD_EMPRCADASTROPESSOACódigo da empresa que realizou o cadastro original da pessoa

Opções disponíveis​

S - Sim (Bloqueia alteração)​

O que fazDetalhe
Bloqueia ediçãoTorna o campo Empresa de Cadastro (CD_EMPRCADASTRO) somente leitura quando a empresa logada difere da empresa que cadastrou a pessoa
Impede gravaçãoNo TFA001, ao tentar salvar, exibe erro e aborta a operação

Simulação passo a passo​

  1. Acesse ADM010 → Parâmetros do Sistema → aba Configurações.
  2. Defina ST_BLOQUEIOPESSOA como Sim.
  3. Salve o parâmetro.
  4. Acesse TFA001 - Cadastro de Pessoa com um usuário logado na Empresa B (código 2).
  5. Localize uma pessoa que foi cadastrada pela Empresa A (código 1).
  6. Observe que o campo Empresa de Cadastro fica bloqueado para edição (somente leitura).
  7. Tente alterar qualquer outro dado da pessoa e clique em Salvar (<F9>).
  8. O sistema exibe a mensagem: "Não é Permitido Alterar os Dados desta Pessoa, pois ela Pertence a outra Empresa. Verifique!" e a alteração é rejeitada.

Resultado esperado: Pessoas cadastradas por outra empresa não podem ser alteradas por usuários de empresas diferentes. O campo empresa de cadastro fica bloqueado e a gravação é impedida.

Exceção / Importante: No TFA083 - Cadastro Rápido de Pessoa, o bloqueio é aplicado apenas ao campo Empresa de Cadastro (ReadOnly). A exceção de gravação com mensagem de erro ocorre somente no TFA001 - Cadastro de Pessoa.

N - Não (Permite alteração)​

O que fazDetalhe
Permite ediçãoO campo Empresa de Cadastro (CD_EMPRCADASTRO) permanece editável independentemente da empresa logada
Permite gravaçãoUsuários de qualquer empresa podem alterar dados de pessoas cadastradas por outras empresas

Simulação passo a passo​

  1. Acesse ADM010 → Parâmetros do Sistema → aba Configurações.
  2. Defina ST_BLOQUEIOPESSOA como Não.
  3. Salve o parâmetro.
  4. Acesse TFA001 - Cadastro de Pessoa com um usuário logado na Empresa B (código 2).
  5. Localize uma pessoa cadastrada pela Empresa A (código 1).
  6. Altere dados normalmente e clique em Salvar (<F9>).
  7. A alteração é gravada com sucesso.

Resultado esperado: Qualquer usuário pode visualizar e alterar dados de pessoas cadastradas por qualquer empresa do grupo, sem restrição.

Regra Geral​

A verificação compara o campo CD_EMPRCADASTRO da tabela PESSOA com a empresa logada (Sessao.empresa.cd_empresa). Se o parâmetro for S e os valores forem diferentes, a edição é bloqueada. O bloqueio é aplicado tanto na navegação (AfterScroll) quanto na gravação (BeforePost no TFA001).

Tabela Comparativa Resumida​

ValorNomeEdiçãoGravaçãoMensagem de Erro
SSimBloqueada (ReadOnly)Impedida (TFA001) / Permitida (TFA083)Sim (TFA001)
NNãoLiberadaPermitidaNão

Procedures impactadas​

Rotinas Delphi com referência direta ao campo​

RotinaArquivoDescrição
iniciarsource/TFA001/UTFA001.pasLê ST_BLOQUEIOPESSOA do PARMSISTEMA e armazena em iAlteraPessoa
iniciarsource/TFA083/UTFA083.pasLê ST_BLOQUEIOPESSOA do PARMSISTEMA e armazena em iAlteraPessoa

Referências de uso da variável no Data Module​

Método/EventoArquivoDescrição
tabPESSOAAfterScrollsource/TFA001/UdmTFA001.pasTorna CD_EMPRCADASTRO ReadOnly quando empresa logada difere
tabPESSOABeforePostsource/TFA001/UdmTFA001.pasLevanta exceção ao tentar salvar alteração de pessoa de outra empresa
tabPESSOAAfterScrollsource/TFA083/UdmTFA083.pasTorna CD_EMPRCADASTRO ReadOnly quando empresa logada difere

Scripts SQL​

Nenhuma procedure/view SQL faz referência direta ao campo ST_BLOQUEIOPESSOA. As procedures que utilizam a tabela PARMSISTEMA acessam outros campos e não são impactadas funcionalmente por este parâmetro.