Wk user + filtros de cascata

Bom dia
Estou desenvolvendo (em teste, uma função para que no meu formulário tenha filtros em cascata) no qual quero capturar o usuário logado e retornar em cada campo o dado que somente ele possui
Porém estou tentando fazer via data set, qual o melhor caminho? segue abaixo o codigo que estou implementando via data set (dados genericos)
Existe algum caminho ou outra opção a ser utilizada?

function createDataset(fields, constraints, sortFields) {
var dataset = DatasetBuilder.newDataset();

dataset.addColumn("Gestor");
dataset.addColumn("Empresa");
dataset.addColumn("CentroDeCusto");
dataset.addColumn("GrupoDeContas");
dataset.addColumn("Conta");
dataset.addColumn("ItemContabil");
dataset.addColumn("ClasseDeValor");
dataset.addColumn("Fornecedor");

var userLogado = getValue("WKUser");

if (constraints !== null) {
    for (var c = 0; c < constraints.length; c++) {
        if (String(constraints[c].fieldName) == "userLogado") {
            userLogado = String(constraints[c].initialValue).trim();
        }
    }
}

var registros = [
    ["kassiocastro", "Blin locadora",  "32032", "1", "1111111", "123456", "321", "Ambitec"],
    ["kassiocastro", "Blin locadora",  "32033", "2", "2222222", "123457", "322", "Altec"],
    ["lucasalves",   "Blin corretora", "32031", "3", "333333",  "124587", "450", "Olatec"],
    ["joaosantos",   "Blin corretora", "32032", "3", "333333",  "124587", "450", "Olatec"]
];

var semFiltro     = (userLogado === "" || userLogado == "null");
var jaAdicionados = [];

for (var i = 0; i < registros.length; i++) {
    var gestor       = registros[i][0];
    var empresa      = registros[i][1];
    var centroCusto  = registros[i][2];
    var grupoContas  = registros[i][3];
    var conta        = registros[i][4];
    var itemContabil = registros[i][5];
    var classeValor  = registros[i][6];
    var fornecedor   = registros[i][7];

    if (!semFiltro && gestor.indexOf(userLogado) == -1) continue;

    var chaveUnica = gestor + "|" + empresa + "|" + centroCusto + "|" +
                     grupoContas + "|" + conta + "|" + itemContabil + "|" +
                     classeValor + "|" + fornecedor;

    var duplicado = false;
    for (var j = 0; j < jaAdicionados.length; j++) {
        if (jaAdicionados[j] == chaveUnica) {
            duplicado = true;
            break;
        }
    }

    if (!duplicado) {
        jaAdicionados.push(chaveUnica);
        dataset.addRow(new Array(
            gestor, empresa, centroCusto, grupoContas,
            conta, itemContabil, classeValor, fornecedor
        ));
    }
}

return dataset;

}