Dataset Colleague não está funcionando

Bom dia, criei um mecanismo customizado que consulta o dataset colleague, porém no log está aparecendo o seguinte erro:

2018-03-21 10:30:12,446 INFO [com.totvs.technology.foundation.dataset.DatasetQueryBuilder] (default task-45) Dataset query:((U.USER_TYPE <> '2')) AND ( ((UT.USER_CODE LIKE '%Heloisa.dahlke%')) ) 2018-03-21 10:30:12,446 ERROR [com.datasul.technology.webdesk.dataset.DatasetFactory] (default task-45) Error in execution of dataset: colleague: java.lang.NullPointerException at com.datasul.technology.webdesk.dataset.ColleagueDatasetBuilder.buildGroupBy(ColleagueDatasetBuilder.java:96)

Alguém sabe me dizer por quê?

@Heloisa, consegue compartilhar seu mecanismo para podermos analisar?

var usuFluig = DatasetFactory.createConstraint(“colleaguePK.colleagueId”, criador, criador, ConstraintType.SHOULD);
usuFluig.setLikeSearch(true);
var filtros = new Array(usuFluig);
var dsCriadorRM = DatasetFactory.getDataset(“colleague”, filtros, filtros, null);
for (var ds = 0; ds < dsCriadorRM.values.length; ds++){
var usuCorreto = dsCriadorRM.getValue(ds, “colleaguePK.colleagueId”);

Essa é a parte que da o erro, fui colocando log.info para ver até onde funcionava, ele da o erro exatamente nessa primeira linha que coloquei aqui

Heloisa,

Você está chamando:


DatasetFactory.getDataset("colleague", filtros, filtros, null);

Porém, ao chamar um dataset os parâmetros são:


DatasetFactory.getDataset(datasetName, fields, constraints, sortingFields);

Você está passando uma constraint no lugar dos campos que o dataset deve retornar. Para passar os campos é apenas um array, exemplo:


new Array("documentPK.documentId", "documentDescription", "documentType", "publisherId", "accessCount");

Altere para "null" e veja se funciona (ou para os campos que você precisa):


DatasetFactory.getDataset("colleague", null, filtros, null);

Abs,

Marcos

1 curtida

Obrigada Marcos, deu certo! :smiley:

Show Heloisa! Obrigado pelo retorno! Abs!