Boa tarde, Gostaria de saber onde eu posso pegar os usuários de um determinado papel e popular um campo select em um formulário.
Obrigado.
Att,
Boa tarde, Gostaria de saber onde eu posso pegar os usuários de um determinado papel e popular um campo select em um formulário.
Obrigado.
Att,
@Thiago,
Criei um dataset onde trás os usuários dos Papéis, você pode passar esse parâmetro "workflowColleagueRolePK.roleId" no dataset com seu Papel que irá trazer todos os usuários que fazem parte dele:
function defineStructure() {
}
function onSync(lastSyncDate) {
}
function createDataset(fields, constraints, sortFields) {
log.info("#### Dataset Usuarios de um Papel ####");
var newDataset = DatasetBuilder.newDataset();
var datasetRole = DatasetFactory.getDataset("workflowColleagueRole", null, constraints, null);
// Carrega as colunas do Dataset de Papel
for(var i = 0; i < datasetRole.columnsName.length; i++) {
newDataset.addColumn(datasetRole.columnsName[i]);
}
for(var i = 0; i < datasetRole.rowsCount; i++) {
var companyId = datasetRole.getValue(i, "workflowColleagueRolePK.companyId");
var colleagueId = datasetRole.getValue(i, "workflowColleagueRolePK.colleagueId");
var roleId = datasetRole.getValue(i, "workflowColleagueRolePK.roleId");
var constraint = new Array();
constraint.push(DatasetFactory.createConstraint("colleaguePK.colleagueId", colleagueId, colleagueId, ConstraintType.MUST));
var datasetUser = DatasetFactory.getDataset("colleague", null, constraint, null);
if (i == 0) {
// Carrega as colunas do Dataset de Usuários
for(var j = 0; j < datasetUser.columnsName.length; j++) {
newDataset.addColumn(datasetUser.columnsName[j]);
}
}
// Carrega os dados no Dataset
var dados = new Array(companyId, colleagueId, roleId);
if (datasetUser.values.length > 0) {
for(var k = 3; k < newDataset.columnsName.length; k++) {
dados.push(datasetUser.getValue(0, newDataset.columnsName[k]));
}
}
newDataset.addRow(dados);
}
return newDataset
}
function onMobileSync(user) {
}
O dataset workflowColleagueRole vai te retornar as matrículas dos usuários e os códigos dos papéis onde eles estão inseridos.
Depois, é só cruzar com o dataset colleague, que te retornará todos os dados dos usuários.
Com as informações dos usuários, é só popular seu select via javascript puro ...
Abs.