Dados duplicados campo Zoom

Estou fazendo a consulta em um dataset através de um campo zoom que trás alguns registros duplicados pois tem o mesmo nome, gostaria de saber se teria como aparecer apenas uma vez o nome do campo que está no dataset, e depois quando gerar o relatório trazer aquelas informações nos outros campos que tem o mesmo nome. Exemplo.... Tenho 3 registros com o nome "FORMULÁRIO", e em cada registro contém informações diferentes. Porém no campo zoom aparece os 3 registros com o nome "FORMULÁRIO". Queria que aparecesse apenas um registro no campo zoom, e quando gerar o formulário, aparecer a informação dos 3 registros.

Consegui resolver o problema do dataset que continha dados duplicados, para isso precisei criar uma função e uma estrutura condicional booleana para resolver esse problema. Caso alguém tenha esse mesmo problema futuramente, pode teste essa solução...


function createDataset(fields, constraints, sortFields) {

    var dsRepresentanteSAC = DatasetBuilder.newDataset();

    var FtRepre = null;
    var repeticao = new java.util.ArrayList();

    dsRepresentanteSAC.addColumn("Representante");

log.info("<<< passou aqui >>>");

        var filtro = DatasetFactory.createConstraint("metadata#active","true", "true", ConstraintType.MUST);

        var datasetColaborador = DatasetFactory.getDataset("DSFormulariodeReclamacaoSAC", null, new Array(filtro), null);

        for (j = 0; j < datasetColaborador.rowsCount; j++){
            var colabRepre = datasetColaborador.getValue(j, "representante");

            if(colabRepre != null && colabRepre != ""){
                log.info("<<< passou aqui >>>"+ colabRepre);
                if (dsRepresentanteSAC.rowsCount == 0){
                    dsRepresentanteSAC.addRow(new Array(colabRepre));
                    repeticao.add(colabRepre);
                }else{
                    retBusca = BuscaString( repeticao, colabRepre );
                    if (retBusca == -1){
                        dsRepresentanteSAC.addRow(new Array(colabRepre));
                        repeticao.add(colabRepre);
                    }
                }

                log.info("<<<Valor do array>>>"+ repeticao);
            }
        }

    return dsRepresentanteSAC;

}

function BuscaString(lista, busca) {
    for ( i = 0; i < lista.size(); i++)
        if (lista.get(i).contains(busca))
            return i;
    return -1;
}