Problemas na Segurança do SC

Uma pergunta, especialmente para a NM:

Porque a aplicação de Grupos/Aplicações tem este comportamento?

As aplicações marcadas estão liberadas para o grupo em questão, mas não consigo alterá-las… como resolver isto? Pois tenho que ficar recorrendo diretamente ao banco de dados pra alterar.

No aguardo,

Bom, vasculhando a aplicação que gerencia os grupos X aplicações, vi que usa a macro sc_field_disabled_record. E testando somente a aplicação, o erro acontece da mesma forma. Então o que deduzo é que existe um bug com essa macro. Alguém mais pode confirmar isso?

‘Compilei’ novamente nesta última release um projeto antigo que tenho o esquema de senha do SC, e ele automaticamente esta ativando e
desativando corretamente ‘esquema grupo’ conforme o tipo de app, form são todos os check-box, grid só alguns, etc, conforme imagens abaixo:

  • Obs: Eu alterei manualmente o ‘esquema de segurança’ do SC para mostrar a ‘Descrição ordem alfabética’ em vez do nome do app original, fica máis fácil e lógico gerenciar a senhas no meu caso.

  • Pode ser algum novo bug referente a crianção ‘geração’ de nova app segurança do ‘zero’ que esta herdando algum bug, se o projeto for novo ‘zero’ feito recentemente.

Jailton bom dia,

Obrigado por checar. Bom, fiz vários testes aqui e descobri o seguinte:

1 - Se eu insiro manualmente uma aplicação na opção APLICAÇÕES, este problema acontece; se eu usar a Sincronização, aí funciona;
2 - Com isto acabei descobrindo um outro problema: Se eu coloco um form direto como opção de menu, ele executa corretamente, porém na hora de gravar ele fica mostrando a mensagem “PROCESSANDO, AGUARDE…” e não sai disso.
3 - Se eu desativar a segurança para essa aplicação (form) aí funciona corretamente, porém após salvar não consigo mais entrar em nenhuma outra aplicação, pois dá a mensagem “Usuário não autorizado”.

Então fica a pergunta: não posso mais colocar um form diretamente como ítem de um menu? Tenho mesmo que colocar uma grid que chame o form pra poder funcionar? Alguém já passou por isso?

Comigo acontece o seguinte: No login tem um trecho do código que controla essa parte do que cada aplicação pode fazer (Inserir, Excluir, Exportar, etc).

Com isso, eu até consigo entrar nas aplicações, porém mesmo com a inserção habilitada em Grupos x Aplicações, não consigo gravar minhas alterações. Apenas visualizar. Isso ocorre para as outras opções também. Se comentar esse trecho do código na aplicação de login, isso não ocorre mais.

Thyago,

No teu caso, pode ser que o SELECT que pega as permissões pra cada aplicação esteja errado. Seria bom testar externamente pra ver o que tá pegando.

Então Kleyber. Isso eu acho que é um bug mesmo porque onde eu trabalhava anteriormente, usava o módulo de segurança do sc e ocorria a mesma coisa, e lá era versão 7. Na minha licença, 8.1 também ocorre o mesmo erro.

Certo, Thyago. Tenta então pegar o SELECT que pega essas permissões e executa direto no banco, pra ver o que ele traz. Pois tem um detalhe: Não importa a versão do SC se o projeto é o mesmo. Então, se a aplicação está com erro na V7, ela vai com o mesmo erro para a V8.

Vou fazer isso e retorno aqui mais tarde!

Obrigado!

Kleyber, fiz o select que vc indicou porém ele realmente traz os campos priv_insert, priv_delete etc todos vazios. Ao acessar Grupos x Aplicações, os campos de insert, excluir, etc, estão todos desabilitados. Apenas o Acesso está ok.

Pessoal, alguém mais confirma o problema na macro sc_field_disabled_record? Acho que o meu problema está lá também!!

Pessoal, o problema que eu estava não refere-se a um bug e sim a Case Sensitive.

Acontece o seguinte, no cadastro das minhas aplicações, estava gravando o tipo da aplicação como Form. Porém, existe um código na aplicação de Grupos x Aplicações no evento onLoadRecord que contem um switch. Nesse código estava verificando se o tipo da aplicação era “form” e não “Form” como está sendo gravado na tabela. Fazendo isso, resolvi meu problema e consegui utilizar essa macro.

Obrigado a todos pela ajuda!