Histórico da Página
...
Nota | ||
---|---|---|
| ||
Para que um usuário que não é administrador da empresa possa construir datasets via Fluig Studio é necessário que ele possua a permissão "Configurar Datasets". Esta permissão pode ser concedida pelo administrador através do item Permissões disponível no Painel de Controle da plataforma. A partir da atualização 1.6.5, os administradores do sistema conseguem editar o código fonte do Dataset pela plataforma, acessando a opção "Editar em modo avançado", na tela de Datasets no Painel de Controle. |
...
Bloco de código | ||||
---|---|---|---|---|
| ||||
function createDataset(fields, constraints, sortFields) { var companyId = getValue("WKCompany"); var currentUser = getValue("WKUser"); . . . } |
Dataset avançado com permissionamento
...
Abaixo temos um exemplo de como implementar o permissionamento em datasets avançados.
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
function createDataset(fields, constraints, sortFields) {
var newDataset = DatasetBuilder.newDataset();
try{
var dataset = "";
var filter = [];
var currentUser = getValue("WKUser"); //Código do usuário logado
var currentCompany = getValue("WKCompany"); //Código da empresa do usuário logado
var groupCode = "grupo"; //Código do grupo que o usuário precisa pertencer para passar na validação.
dataset = "colleagueGroup" //Nome do dataset que pesquisa a relação de grupos e usuários.
filter= [DatasetFactory.createConstraint("colleagueGroupPK.companyId", currentCompany , currentCompany, ConstraintType.MUST),
DatasetFactory.createConstraint("colleagueGroupPK.colleagueId", currentUser , currentUser, ConstraintType.MUST),
DatasetFactory.createConstraint("colleagueGroupPK.groupId", groupCode, groupCode, ConstraintType.MUST)]; //Cria o filtro para empresa, usuário e grupo.
/** Codigo para pesquisar por papel ao invés de grupo.
*
var roleCode = "papel"; //Código do papel que o usuário precisa pertencer para passar na validação.
dataset = "workflowColleagueRole" //Nome do dataset que pesquisa a relação de papéis e usuários.
filter= [DatasetFactory.createConstraint("workflowColleagueRolePK.companyId", currentCompany , currentCompany, ConstraintType.MUST),
DatasetFactory.createConstraint("workflowColleagueRolePK.colleagueId", currentUser , currentUser, ConstraintType.MUST),
DatasetFactory.createConstraint("workflowColleagueRolePK.roleId", roleCode, roleCode, ConstraintType.MUST)];
*/
var validation = DatasetFactory.getDataset(dataset, null, filter, null); //Realiza a chamada do dataset
if(validation.rowsCount==1){ //Se tiver uma linha quer dizer que o usuário logado faz parte do grupo/papel informado
//Esse retorno é só para informar que passou da validação, mas aqui dentro ficaria o codigo que o usuário tem permissão de acesso.
newDataset.addColumn("SUCCESS");
newDataset.addRow(["ok"]);
} else {
//Esse retorno é só para informar que o usuário não faz parte do grupo/papel.
newDataset.addColumn("ERROR");
newDataset.addRow(["sem permissão"]);
}
} catch(e) {
newDataset.addColumn("ERROR");
newDataset.addRow(["chamada incorreta"]);
return newDataset;
}
return newDataset;
} |
Nota | ||
---|---|---|
| ||
Alguns datasets retornam dados sensíveis, por isso, é altamente recomendado que apenas os usuários responsáveis tenham acesso a esses dados. |
Utilizando zoom composto em Dataset avançado
...
Painel | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...