Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Pessoal, boa tarde.
Estou com dificuldades de implementar um controle de acesso utilizando Section Access.
Tenho um QVW que será acessado por vários gerentes de bases e gerentes regionais.
O objetivo é permitir que cada gerente visualize dados específicos de sua base ou de sua regional (várias bases). Não há restrição de acesso às pastas do QVW, todas estarão disponíveis. É só os dados que precisam ser ocultos, para um gerente não ver os dados da base/regional de outro no mesmo QVW.
Meu script da seção de acesso é:
Section Access; // Start of section access part
STAR IS *;
Load * Inline [
USERID,ACCESS,COD_REGIONAL,COD_BASE
IGNEZ,admin,*,* // acessa dados de todas as regionais e bases
JOAO,user,1,* // acessa dados de todas as bases da regional 1
MARIA,user,2,* // acessa dados de todas as bases da regional 2
JOSE,user,*,21 // acessa dados apenas da base 21
];
Section Application; // End of section access part
Regionais:
SQL
SELECT COD_REGIONAL,NM_REGIONAL
FROM CRP_REGIONAL;
Base:
SQL
SELECT COD_REGIONAL,COD_BASE,,NM_BASE
FROM CRP_BASE;
No QVW, montei um objeto tabela com 4 colunas das 2 tabelas acima, para visualizar os dados. Recarreguei, salvei, fechei e reabri o documento como usuário IGNEZ, que deve visualizar todos os registros das tabelas. Porém, apenas as informações da base 21 (o único código de base declarado) está visivel.
Alguém pode me ajudar?
Obrigada,
Ignez
Eu fiz o down aqui, e não deu esse erro não.
Segue Script
SET ThousandSep='.';
SET DecimalSep=',';
SET MoneyThousandSep='.';
SET MoneyDecimalSep=',';
SET MoneyFormat='R$ #.##0,00;-R$ #.##0,00';
SET TimeFormat='hh:mm:ss';
SET DateFormat='DD/MM/YYYY';
SET TimestampFormat='DD/MM/YYYY hh:mm:ss[.fff]';
SET MonthNames='jan;fev;mar;abr;mai;jun;jul;ago;set;out;nov;dez';
SET DayNames='seg;ter;qua;qui;sex;sáb;dom';
STAR IS *;
Section Access; // Start of section access part
Load * Inline [
USERID,ACCESS,CD_REGIONAL,COD_BASE
IGNEZ,ADMIN,,
JOAO,USER,1,
MARIA,USER,2,
JOSE,USER,2,21
];
Section Application; // End of section access part
Regionais:
LOAD COD_BASE,
NM_BASE,
UF,
CIDADE,
CD_REGIONAL,
NM_REGIONAL
FROM
C:\BASES.xlsx
(ooxml, embedded labels, table is Plan1);
USERID,ACCESS,COD_REGIONAL,COD_BASE
IGNEZ,ADMIN,*,* // acessa dados de todas as regionais e bases
JOAO,USER,1,* // acessa dados de todas as bases da regional 1
MARIA,USER,2,* // acessa dados de todas as bases da regional 2
JOSE,USER,*,21 // acessa dados apenas da base 21
];
Section Application; // End of section access part
Raphael, boa tarde.
Mesmo colocando o nível de acesso em letra maiúscula, ainda não consigo efetuar a filtragem dos registros corretamente. Se eu acesso com IGNEZ, JOAO ou MARIA, apenas a base 21 é exibida.
Alguma outra idéia?
Tente fazer um Join da tabela Base para Regionais.
Caso não dê certo mande um Exemplo para a gente ajudar!
Raphael,
Fiz o join mas não resolveu.
Envio um QVW com o que quero fazer. Para ficar mais fácil, substituí a parte que carregava dados de uma tabela SQL Server por uma planilha. Só que, agora, nenhum filtro é aplicado quando eu abro o documento.
Só copiar e colar....eu gosto de usar PASSWORD...mas pode apagar que vai funcionar
STAR IS *;
Section Access; // Start of section access part
Load * Inline [
USERID,ACCESS,PASSWORD,CD_REGIONAL,COD_BASE
IGNEZ,ADMIN,123,,
JOAO,USER,123,1,
MARIA,USER,123,2,
JOSE,USER,123,2,21
];
Section Application; // End of section access part
Issosorio, boa tarde.
Não deu certo. A única mudança foi a solicitação de senha na abertura do arquivo, mas a exibição das informações continua do mesmo jeito.
Segue QVW
Altera só o caminho XLS
Issosorio,
Ao abrir seu QVW, aparece a mensagem:
Essa eu não entendi!!!!
Eu fiz o down aqui, e não deu esse erro não.
Segue Script
SET ThousandSep='.';
SET DecimalSep=',';
SET MoneyThousandSep='.';
SET MoneyDecimalSep=',';
SET MoneyFormat='R$ #.##0,00;-R$ #.##0,00';
SET TimeFormat='hh:mm:ss';
SET DateFormat='DD/MM/YYYY';
SET TimestampFormat='DD/MM/YYYY hh:mm:ss[.fff]';
SET MonthNames='jan;fev;mar;abr;mai;jun;jul;ago;set;out;nov;dez';
SET DayNames='seg;ter;qua;qui;sex;sáb;dom';
STAR IS *;
Section Access; // Start of section access part
Load * Inline [
USERID,ACCESS,CD_REGIONAL,COD_BASE
IGNEZ,ADMIN,,
JOAO,USER,1,
MARIA,USER,2,
JOSE,USER,2,21
];
Section Application; // End of section access part
Regionais:
LOAD COD_BASE,
NM_BASE,
UF,
CIDADE,
CD_REGIONAL,
NM_REGIONAL
FROM
C:\BASES.xlsx
(ooxml, embedded labels, table is Plan1);