Como usar o login da segurança do SC na clausula WHERE (RESOLVIDO)

Utilizo a segurança do scriptcase no meu projeto.

Gostaria que, quando um usuário logasse em uma determinada aplicação fosse feita uma conferência…

Exemplo:

o login do usuario é joao
que então fosse listado na app de formulário apenas os registros em que o joao aparece no campo RESPONSÁVEL para que ele altere apenas os registros que são de sua responsabilidade…

Tentei colocar na clausula WHERE SQL algo assim

nomedatabela.camporesponsavel = sec_users.login

mais não deu certo.

Alguém pode me ajudar?

Gustavo bom dia,

Na tua aplicação de Login tem uma variável global chamada [usr_login] que tem o usuário logado no sistema. Daí você pode utilizar essa variável em qualquer lugar do teu sistema, pra fazer o filtro que desejas. Experimente e nos diga se deu certo.

Tem que criar nas tabelas que vai usar o filtro um novo campo: IncluidoPor = char(255), crie um índice key para este campo também na tabela.

Depois colocar no OnLoad do formulário desejado para gravar o Login:
OnLoad:
if (empty({IncluidoPor})) {
{IncluidoPor}=[usr_login];
}

Ai se quiser filtrar quando o usuário entrar neste formulário somente ele vai ver os registros, coloque no SQL, Bloco WHERE:
IncluidoPor = ‘[usr_login]’

E nas consultas GRIDS adicione WHERE IncluidoPor = ‘[usr_login]’ as Query

Vc pode também criar Perfis de Grupos e Perfis de Acesso… porque o usuário pode ter a necessidade de alterar não apenas o que ele criou mas aquilo que um determinado grupo ou grupos criar…

Exemplo:

Perfis de Grupo - Grupo Contabilidade, Grupo Estoque, Grupo Vendas etc etc etc
Grupos de Acesso - Loja Matriz, Filial 1, Filial 2, …

Feito isso você cria os Perfis de Acesso - Usuário Fulano de Tal pode acessar a Contabilidade da Matriz, Vendas de todas as Empresas do Grupo, etc etc… O Presidente pode acessar tudo de todas as Empresas… e por aí vai.

Para isso, além do campo IncluidoPor - sugerido pelo Jailton - você deverá criar também o campo PerfilAcesso em todas as tabelas do seu DB.

Esse exemplo funciona bem com as aplicações do tipo calendário… onde cada um terá acesso aos seus registros e aos registros de um ou mais grupos.

Lembrando que desta forma vc poderá colocar todos os registros de todas as Empresas no mesmo DB, evitando que se crie 1 DB para cada Empresa.

Detalhe: Essa construção tem que ser feita na mão, o sistema de segurança nativo do SC só trabalha com uma matriz linear de segurança.

Olá pessoal!

Obrigado.
Deu certo com a dica do Kleyber.

Vlw