Versão atual:

Passagem de array dataset

Pessoal tenho as seguintes funções no meu displayFields:

Função que me retorna dados de um dataset(dsVendedores):

function getVendedor() {

    var user = getValue("WKUser");
    log.info("Codigo do Usuário-->");
    log.info(user);
    var c1 = DatasetFactory.createConstraint("Codigo", user,user, ConstraintType.MUST);
    var datasetUser = DatasetFactory.getDataset("dsVendedores", null, [ c1 ], null);
    var dsVendedores = new Array();
    if (datasetUser.rowsCount > 0) {

        dsVendedores = [datasetUser.getValue(0, "Codigo"),
                       datasetUser.getValue(0, "Nome"),
                       datasetUser.getValue(0, "Email"),                   
                     ]
    }
    return dsVendedores;
}

Função que seta os valores no meu formulario:

    var codigoUsuario, nomeUsuario, emaiUsuario;
    var vendedor = getVendedor();

    // Variaveis para preenchder os dados do usuario 
    for (var i = 0; i < vendedor.length; i++) {
        codigoUsuario = vendedor[0];    
        nomeUsuario = vendedor[1];        
        emaiUsuario = vendedor[2];        
    }


    if (catividade == '0'){    
        catividade = inicio;

        form.setValue('vl_cod', codigoUsuario);//Cod Vendedor
        form.setValue('nm_vendendor', nomeUsuario); //Nome vendedor        
        form.setValue('nm_email', emaiUsuario); // E-mail
    }

Está sempre me retornando o primeiro registro do meu dataSet.

function defineStructure() {

}
function onSync(lastSyncDate) {

}
function createDataset(fields, constraints, sortFields) {

    var dataset = DatasetBuilder.newDataset();

     dataset.addColumn("codigo");
     dataset.addColumn("nome");
     dataset.addColumn("email");
     dataset.addColumn("ddd");
     dataset.addColumn("tel");


     //Pegar codigo do servico(neste caso o WS)
     var servico = "WSSA1";

     //Instanciar o servico
     var instanceservice = ServiceManager.getServiceInstance(servico);

     //Instaciando o WSSB1
     var classesa1 = instanceservice.instantiate("----------------meu servico soap---------");
     var objetowssa1 = classesa1.getWSSA1SOAP();
     var array = objetowssa1.vendedores("01","  ");
     var alista = array.getLISTASA3();

     for(var i=0; i < alista.size(); i++ ){         
         var listavendedores = alista.get(i);
         dataset.addRow(new Array(listavendedores.getCA3COD(),listavendedores.getCA3NOME(),listavendedores.getCA3EMAIL(),listavendedores.getCA3DDDTEL(),listavendedores.getCA3TEL()));        
     }

     return dataset;

}function onMobileSync(user) {

}

Versões (3):

Ver a versão formatada

Passagem de array dataset

Comentário

new question