Versão atual:

Filter report WKUser

Estimados, se desarrolló un reporte que utiliza un dataset que en uno de sus campos almacena nombre de usuario. En el reporte Birt, necesitamos que dependiendo del usuario que acceda pueda visualizar información del dataset filtrando el WKUser con el campo del dataset. Se probó creando una variable var nome="${WKUser}"; y luego

try {

var factory = DatasetFactory.getInstance(${WKCompany});

var constraints = new Array(); var i = 0;

//Filtra sólo por la matrícula del colaborador informado if(params["estado"].value != null && params["estado"].value != "*") { constraints[i] = factory.createConstraint("c_estado", params["estado"].value, params["estado"].value, ConstraintType.MUST); i++; } constraints[i] = factory.createConstraint("c_periodo_actual", params["periodo"].value, params["periodo"].value, ConstraintType.MUST); //i++; constraints[i] = factory.createConstraint("c_solicitante", nome, nome, ConstraintType.MUST);

var sortingFields = new Array("c_solicitante");

ds_eval = factory.getDataset("ds_eval_desemp", null, constraints, sortingFields);

}

catch (e) { }

finally { }

Pero esto no filtra la información.

Se probó generando un parámetro donde el valor por default es ${WKUser} y se muestra correctamente el usuario actual en el parametro, se utilizó el filtro del dataset y tampoco funciona, luego también de la porción de código anterior se cambió por el parámetro

constraints[i] = factory.createConstraint("c_solicitante", params["nome"].value, params["nome"].value, ConstraintType.MUST);

Pero tampoco funciona.

Por otro lado No existen vacíos en el campo del dataset.

Si solo dejo el parámetro y no hago el filtro tampoco funciona el reporte.

Agradeceré Si pueden ayudarme en el tema.

Muchas Gracias.

Versões (2):

Ver a versão formatada

Filter report WKUser

Comentário

new question