Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Acesso restrito à um sheet ou button

olá pessoal,

gostaria da ajuda mais uma vez, tenho uma aplicacao e recebi a seguinte missao:

Um grupo de pessoas nao pode acessar uma area especifica da uma aplicacao (sheet 1 ou button1), sendo que essa aplicacao tem outras sheets...existe essa possibilidade de gerenciamento de acessos via console do qlikview ou alguma outra solucao???

11 Replies
Not applicable
Author

Bom dia,

Se você utilizar o Section Access para identificar a pessoa logada na aplicação, você pode utilizar as funções OSUser() e QVUser() para ocultar as abas/objetos.

Abraços

matzenbacher
Creator II
Creator II

Ola Tiago, utilizamos um sistema muito prático e facil de criar para esse tipo de controle, se quiser posso te dar umas dicas, me add no skipe ou gmail.

abs.

kaauan@gmail.com

kaauan.matzenbacher

Not applicable
Author

Olá,

Aqui na empresa não tenho acesso ao Skype...nem acesso ao chat do gmail...eh osso...

Se vc puder escrever ou enviar algum modelo...ficarei grato...

Obrigado!

matzenbacher
Creator II
Creator II

Tranquilo... vou criar um modelo de exemplo simplicado, assim que der eu posto aqui.

abs.

edu_oliveira
Partner - Contributor III
Partner - Contributor III

Tiago, bom dia.

Para este tipo de controle o indicado é criar uma Section Access, para que o Qlikview reconheça o usuário logado, ou por USERID ou NTNAME.

Nesta mesma Section Access, criar um campo onde o usuário vai receber o valor de 0 (Acesso negado) ou 1 (Acesso habilitado).

Depois utiliza este campo na propriedade "Mostrar" do objeto (= NomeCampo), podendo ser diretamente no botão ou na Aba.

Att.,

matzenbacher
Creator II
Creator II

E ai Tiago, como prometido...

Assim como o edu sugeriu, a utilização da Section Access e Section Aplicattion é uma boa forma de controlar tipos de acesso, segue o exemplo anexado.

*Basicamente voce tera um qvw(de controle)  que ira gerar um QVD  com usuários e senhas,

e um QVD com perfil de acesso.

Depois na aplicação, voce ira carregar esses qvds de acordo com o script na aplicação1.qvw, e  então, dependendo do usuário que abrir  a aplicação, ira carregar ou nao os objetos(ou pastas) de acordo com as suas respectivas condicionais

igual a 'S'

Detalhe importante:

Para funcionar, no qvw da aplicação, voce deve ir em:  CONFIGURAÇÕES / PROPRIEDADE DO DOCUMENDO / aba ABRINDO / marcar a caixa REDUÇÃO INICIAL DE DADOS BASEADA NA SEÇÃO DE ACESSO.

qualquer duvida posta aqui..

abs.


acesso.qvw

ACCESS,
USERID


,PASSWORD
ADMIN,
CARLOS


,111
USER,
PEDRO


,222
USER,
LUIZ


,333

USERID
,config1
,config2
,config3
CARLOS
,S

,S

,S


PEDRO
,N

,S

,N


LUIZ
,N

,N

,S


Not applicable
Author

Kaauan,

Nao  consegui fazer funcionar na minha aplicacao...

- Me explica uma coisa...na aplicacao eu devo carregar a tabela de usuarios/senhas?

- Eu devo carregar na aplicacao a tabela q tem correlacao entre usuarios e objetos?

e pq existe um qvd "perfil" salvo no endereco mencionado?

Caso exista alguma apostila ou manual falando passo a passo sobre section access q vc saiba, por favor me indique!

Obrigado pela ajuda até agora!

edu_oliveira
Partner - Contributor III
Partner - Contributor III

Tiago, bom dia.

Tenta o seguinte código e ações (Antes, é importantíssimo fazer um Backup da aplicação) :

//Inicio do código, logo após a declaração das variáveis.......

Section Access;

 

LOAD * INLINE [

    ACCESS, USERID,       PASSWORD, ABA1, ABA2,  NOME

    ADMIN,    EDUARDO,   E123,                1,      1,        EDUARDO

    ADMIN,    TIAGO,         T123,                 1,      1,        TIAGO

    ADMIN,    DESENV,      D123,                1,      1,        DESENV

    USER,     USUARIO1,   U123,                1,       0,       USUARIO1

    USER,     USUARIO2,   U123,                0,       1,       USUARIO2

    USER,     USUARIO3,   U123,                1,       0,       USUARIO3

];

Section Application;

//restante do seu código.

Em algum lugar no seu sistema você precisará ler uma Tabela com os nomes e os acessos das duas (ou mais) Abas.

Após esta leitura, em "Propriedades da Pasta\Geral\Mostrar Pasta", você vai setar o valor "Condicional", e completar o Campo com o valor '=ABA1' (ou ABA2, conforme sua situação).

Lembrando que o valor 1 será habilitada e o valor 0 será negado o acesso. Desta forma poderá controlar também Botões, Gráficos, etc...

Poderá fazer este controle aba a aba, por grupo de Abas ou Objetos (Ex. FINANCEIRO, RH, CONTROLADORIA, etc...).

O Código do Section Acces esta com uma tabela inline, mas poderá utilizar de qualquer outra fonte, apenas os nomes dos três primeiros compos terão que respeitar os nomes reservados pelo QV.

Tenta e me conta o resultado...

Att.,

Not applicable
Author

Edu,

Fiz conforme modelo enviado pelo Kaauan e sua orientacao, porem para alguns itens funcionou, mas para outros não, isso é normal de acontecer? Sendo que as configuracoes sao iguais entre todos os objetos...

Só para ficar mais claro para vcs, minha situacao é a seguinte:

Tenho um dash com varios botoes, cada um desses botoes abre uma aba, dai a necessidade é que cada usuario q abrir o dash ira ou nao ver os botoes que darao acessos a outras areas...

Obrigado mais uma vez