ST_RESTRICAOPESSOA — Restrição de Acesso por Tipo de Pessoa
Tela de configuração: ADM012 — Parâmetros do Usuário
Localização: Aba "Parâmetros do Usuário"
Tabela:PARMUSUARIO.ST_RESTRICAOPESSOA
Tipo:CHAR(1)
Valor padrão:N(Não)
Resumo
| O que faz | Detalhe |
|---|---|
| Restringe acesso a dados financeiros por tipo de pessoa | Quando ativado (S), impede que o usuário consulte histórico/contas de pessoas cujo CD_TIPOPESSOA seja igual ao definido como tipo restrito em PARMFINANC.CD_TIPOPESSOA |
| Valor padrão | N — sem restrição |
| Editavel | Sim, vinculado ao campo ST_RESTRICAOPESSOA da tabela PARMUSUARIO |
| Escopo | Por usuário (CD_USUARIO) e empresa (CD_EMPRESA) |
Telas impactadas
| Tela | Descrição | Impacto |
|---|---|---|
| ADM012 | Parâmetros do Usuário | Tela de configuração do parametro |
| ADM013 | Acesso de Usuários | Duplicacao de parametros entre usuarios |
| CFC004 | Consulta Financeira (contas) | Valida o filtro da pessoa — bloqueia acesso se tipo de pessoa for restrito |
| RFC022 | Relatorio de Contas | JOIN condicional com PARMUSUARIO para filtro de administrador com restricao |
| OFI001 | parâmetros de Oficina | Duplica o parametro na criacao de novo registro (AfterInsert) |
Campos envolvidos
| Campo | Tabela | Tipo | Valor Padrao |
|---|---|---|---|
ST_RESTRICAOPESSOA | PARMUSUARIO | CHAR(1) | 'N' |
CD_TIPOPESSOA | PARMFINANC | (definir empresa) | — tipo de pessoa restrito |
CD_TIPOPESSOA | PESSOA | — | tipo de pessoa do registro consultado |
Opcoes disponiveis
N — Nao (sem restricao)
| O que faz | Detalhe |
|---|---|
| Permite acesso livre | O usuario pode consultar o historico e contas de qualquer pessoa cadastrada |
| Comportamento padrao | Sim |
Simulacao passo a passo
- Acesse ADM012 — Parâmetros do Usuário.
- Selecione o usuario desejado.
- Na aba "Parâmetros do Usuário", localize o campo de restricao de pessoa.
- Selecione a opcao N — Não.
- Salve o registro.
Resultado esperado: O usuario consegue pesquisar e visualizar o historico financeiro de qualquer pessoa, independentemente do CD_TIPOPESSOA dela.
S — Sim (restricao ativa)
| O que faz | Detalhe |
|---|---|
| Restringe acesso a tipo de pessoa | Bloqueia consulta de historico/contas quando a pessoa possui o mesmo CD_TIPOPESSOA configurado em PARMFINANC.CD_TIPOPESSOA |
| Exige | PARMFINANC.CD_TIPOPESSOA configurado na empresa |
| Mensagem de erro | "Usuário não Possui Acesso ao Histórico desta Pessoa" |
Simulacao passo a passo
- Acesse ADM012 — Parâmetros do Usuário.
- Selecione o usuario para o qual deseja ativar a restricao.
- Na aba "Parâmetros do Usuário", localize o campo de restricao de pessoa.
- Selecione a opcao S — Sim.
- Salve o registro.
- Acesse a tela de consulta financeira (CFC004).
- Digite o codigo de uma pessoa cujo
CD_TIPOPESSOAseja igual ao definido em PARMFINANC.CD_TIPOPESSOA para a empresa. - Confirme a pesquisa.
Resultado esperado: O sistema exibe a mensagem "Usuário não Possui Acesso ao Histórico desta Pessoa" e limpa o campo de nome, impedindo a consulta.
Excecao / Importante:
- A restricao so e aplicada quando o
CD_TIPOPESSOAda pessoa consultada e igual aoCD_TIPOPESSOAdefinido emPARMFINANC(configurado na tela de parametros financeiros da empresa — verificarPARMFINANC.CD_TIPOPESSOA).- Se o usuario possuir
ST_RESTRICAOPESSOA = 'S'mas a pessoa consultada tiver umCD_TIPOPESSOAdiferente do configurado emPARMFINANC, o acesso e permitido normalmente.- A restricao vale para consulta de historico e contas financeiras via
CFC004.
Duplicacao de parametros (ADM013)
Ao duplicar parametros de um usuario para outro na tela ADM013 — Acesso de Usuários, o valor de ST_RESTRICAOPESSOA e copiado integralmente do usuario de origem para o de destino.
Exemplo: Se o usuario JOAO possui ST_RESTRICAOPESSOA = 'S' e o operador duplica os parametros para o usuario MARIA, Maria passara a ter a mesma restricao ativada.
Tabela Comparativa Resumida
| Opcao | Valor | Restricao de pessoa | Acesso historico |
|---|---|---|---|
| Nao | N | Desativada | Livre para todas as pessoas |
| Sim | S | Ativada | Bloqueado se CD_TIPOPESSOA da pessoa = CD_TIPOPESSOA de PARMFINANC |
Procedures impactadas
Rotinas Delphi com referencia direta ao campo
| Rotina | Arquivo | Evidencia |
|---|---|---|
TdmADM012.tabPARMUSUARIOAfterInsert | source/ADM012/UdmADM012.pas:247 | Atribui 'N' como padrao na criacao de novo registro |
TdmOFI001.tabPARMUSUARIOAfterInsert | source/OFI001/UdmOFI001.pas:432 | Atribui 'N' como padrao na criacao (modulo Oficina) |
TdmCFC004.tabFILTROCD_PESSOAValidate | source/CFC004/UdmCFC004.pas:183 | Consulta ST_RESTRICAOPESSOA e bloqueia acesso se = 'S' e tipo de pessoa confere |
TfrmADM013.btnDuplicaUsuarioClick | source/ADM013/UADM013.pas:473 | Inclui o campo no SELECT de duplicacao de parametros |
TfrmRFC022.btnImprimirClick | source/RFC022/URFC022.pas:1805 | JOIN condicional com PRU.ST_RESTRICAOPESSOA = 'S' para usuario admin |
Referencias SQL diretas ao campo
Nao foram encontradas referencias diretas ao campo ST_RESTRICAOPESSOA nos arquivos de Scripts/.
Candidatas por uso da tabela PARMUSUARIO
| Procedure/View | Arquivo | Observacao |
|---|---|---|
CANCELA_NOTAFISCAL | Scripts/CANCELA_NOTAFISCAL.sql:251 | Usa PARMUSUARIO, mas nao referencia ST_RESTRICAOPESSOA literalmente |
CONTROLE_CAIXA | Scripts/CONTROLE_CAIXA.sql:34 | Usa PARMUSUARIO, mas nao referencia o campo literalmente |
GERA_ETIQUETABALANCA | Scripts/GERA_ETIQUETABALANCA.sql:26 | Usa PARMUSUARIO, mas nao referencia o campo literalmente |
PERMISSAO_CAIXA | Scripts/PERMISSAO_CAIXA.sql:16 | Usa PARMUSUARIO, mas nao referencia o campo literalmente |
RETORNA_IMPRESSORAUSUARIO | Scripts/RETORNA_IMPRESSORAUSUARIO.sql:41 | Usa PARMUSUARIO, mas nao referencia o campo literalmente |
VALIDA_LIBERACAOUSUARIO | Scripts/VALIDA_LIBERACAOUSUARIO.sql:40 | Usa PARMUSUARIO, mas nao referencia o campo literalmente |
VIEW_DOCUMENTOSBLOQUEADOS | Scripts/VIEW_DOCUMENTOSBLOQUEADOS.sql:367 | Usa PARMUSUARIO, mas nao referencia o campo literalmente |
VERIFICA_BLOQUEIO | Scripts/VERIFICA_BLOQUEIO.sql:166 | Usa PARMUSUARIO, mas nao referencia o campo literalmente |
As demais rotinas em Scripts/ que usam PARMUSUARIO nao fazem referencia textual a ST_RESTRICAOPESSOA. Sem impacto direto identificado.