Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Ocultar pasta

Bom dia, pessoal!

Preciso ocultar uma pasta para um determinado usuário. Porém este usuário não tem relação com a base de dados, ou seja se eu usar a redução de dados no section access ele não vai existir lá. Exemplo:

tenho as pastas comercial, financeiro, logistica.

O usuário comercial só pode ver a pasta comercial, o logistica somente a logistica e o financeiro somente o financeiro. Porém na minha base este usuário não existe na relação. Teria como controlar isso no script?

1 Solution

Accepted Solutions
Not applicable
Author

Paulo,

Não sei se é exatamente isso que você precisa, mas eu consegui fazer um controle de acesso das minhas pastas utilizando o passo a passo abaixo:


1.Botão direito na pasta, por exemplo "Comercial"

2.Propriedades da Pasta

3.Em Mostrar Pasta, escolha a opção Condicional

4.Inclua a função =OSUser()='dominio\nome_usuário', exemplo =OSUser()='work\felipe'

Com essa alteração apenas o usuário felipe, que faz parte do domínio work, terá acesso a pasta Comercial. Caso necessite permitir mais usuários basta incluir dessa forma:


=OSUser()='dominio\nome_usuário' and =OSUser()='dominio\nome_usuário'

Repita este procedimentos para todas as pastas(Comercial, Financeiro, Faturamento) que deseja controlar.

Abraço!

View solution in original post

14 Replies
aderlanrm
Partner - Specialist
Partner - Specialist

Olá Paulo,

Crie um arquivo com as mesma colunas da sua base de usuário e preencha os dados do usuário no arquivo, depois faça o load concatenando o arquivo, isso vai acrescentar os usuários que precisa mantando a mesma estrutura.

Abraço.

Enviado pelo meu wPhone

Aderlan Rodrigues
Analista, Arquiteto de Dados e Piloto Amador Drone FPV
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)
Not applicable
Author

Aderlan, bom dia!

Obrigado pelo retorno.

Sou iniciante ainda nesta questão de script. Não entendi exatamente.

Minha tabela de usuário é essa

ACCESSUSERIDPASSWORDVDVD2
ADMINADMINadmpreADMINADMIN
USER000005Rona5per000005000005
USER000161Fla1440b000161000161
USER000162marco162000162000162

e a tabela de faturamento é essa

VENDEDOR  FATURAMENTO

Minhas pastas são

COMERCIAL, FATURAMENTO, FINANCEIRO

Você poderia me colocar um exemplo?

aderlanrm
Partner - Specialist
Partner - Specialist

Olá Paulo,

Segue anexo exemplo e abaixo o script, observe que nas propriedades das abas tem uma condicional para exibir aba, ou seja, cada usuário só vai ver o que está em cada aba.

Section Access;

LOAD * INLINE [

    ACCESS,USERID,PASSWORD,ABAS

    ADMIN,ADMIN,admpre,

    USER,000005,Rona5per,1

    USER,000161,Fla1440b,2

    USER,000162,marco162,3

];

Section Application;

Abas:

LOAD * INLINE [

    ABAS, Descrição

    1, Financeiro

    2, Comercial

    3, Logística

];

Abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dados e Piloto Amador Drone FPV
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)
Not applicable
Author

Aderlan, bom dia!

Obrigado pelo retorno. Funcionou. Gostaria de ver se poderíamos mostrar mais de uma pasta por usuário. Até consegui, mas fica dentro da pasta. Gostaria que pasta aparecesse como cabeçalho ou seja, na parte superior aparecer comercial, financeiro,

como está na figura acima. Estou enviando anexo, com o que consegui fazer.

aderlanrm
Partner - Specialist
Partner - Specialist

Olá Paulo,

Olha que legal essa resposta do Carlos Henrique Nichi de Sa, sem dúvida vai ficar mais profissional a restrição de acesso.

section access

Se tiver alguma dúvida, posta ai que ajudamos nas correções, mas acredito que você vai pegar a lógica fácil.

Dica para calcula trimestre e quadrimestre:

ceil(Month(Data)/3)&'º Trim' as [Trimestre],

ceil(Month(Data)/4)&'º Quad' as [Quadrimestre],

Abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dados e Piloto Amador Drone FPV
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)
Not applicable
Author

Paulo,

Não sei se é exatamente isso que você precisa, mas eu consegui fazer um controle de acesso das minhas pastas utilizando o passo a passo abaixo:


1.Botão direito na pasta, por exemplo "Comercial"

2.Propriedades da Pasta

3.Em Mostrar Pasta, escolha a opção Condicional

4.Inclua a função =OSUser()='dominio\nome_usuário', exemplo =OSUser()='work\felipe'

Com essa alteração apenas o usuário felipe, que faz parte do domínio work, terá acesso a pasta Comercial. Caso necessite permitir mais usuários basta incluir dessa forma:


=OSUser()='dominio\nome_usuário' and =OSUser()='dominio\nome_usuário'

Repita este procedimentos para todas as pastas(Comercial, Financeiro, Faturamento) que deseja controlar.

Abraço!

Clever_Anjos
Employee
Employee

Se for apenas ocultar a pasta para um usuário fixo, vá em Sheet Properties / General / Show Sheet e coloque sua regra lá, algo como =OSUSER(0 <> 'DOMINIO\usuario'

aderlanrm
Partner - Specialist
Partner - Specialist

Paulo, deu tudo certo?

Não esqueça de marcar as resposta pra fechar o post, ajuda a quem tem outras dúvidas e a quem dedica tempo a ajudar a community.

Grande abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dados e Piloto Amador Drone FPV
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)
Not applicable
Author

Só corrigindo o Felipe,

para a versão qlikview 10, não foi necessário por o = no segundo OSUser, ficando dessa forma:

=OSUser()='dominio\nome_usuário' and OSUser()='dominio\nome_usuário'


Grato pela atenção.