Dataset Sincromizado com Constraints

Ola Amigos,

Desenvolvi um DS sincronizado, mas de forma alguma consigo aplicar o constraints ..já vasculhei a documentação de cima a baixo ... quando eu chamo o DS ele nem passa pelo 'createDataset' .. o que acham que pode estar errado ?

function defineStructure() {

    addColumn("EMPRESA");
    addColumn("COD_CBO");
    addColumn("DESCRICAO");

    setKey(["EMPRESA", "COD_CBO", "DESCRICAO"]);
    addIndex(["COD_CBO"]);
    addIndex(["COD_CBO", "DESCRICAO"]);

}

function onSync(lastSyncDate) {

    var servicoURL = "http://meusrv/FUNCAO_C8Z?cUniEmp=01";
    var myApiConsumer =  oauthUtil.getGenericConsumer("","", "", "");  
    var result = myApiConsumer.get(servicoURL);   

    var ds_cbo = DatasetBuilder.newDataset();

    if(result== null || result.isEmpty()){
        ds_cbo.addOrUpdateRow(["NOK", "Erro ao comunicar ao consultar o BANCOS"]);    
    }else{                        
        try{        
            var objdata = JSON.parse(result);
            for (var obj in objdata){
                 ds_cbo.addOrUpdateRow(["01" ,String(objdata[obj].Cod_Cbo), objdata[obj].Descricao]);
            };
        } catch (e) {
            ds_cbo.addOrUpdateRow(["NOK", e.toString()]);
        }        
    }

    return ds_cbo;    

}


function createDataset(fields, constraints, sortFields) {

    log.info(">>> entrando no ds");

    //Cria as colunas

    var dataset = DatasetBuilder.newDataset();

    dataset.addColumn("EMPRESA");
    dataset.addColumn("COD_CBO");
    dataset.addColumn("DESCRICAO");

    var datasetPrincipal = DatasetFactory.getDataset("ds_get_cbo_jorn", null, null, null);

    for (var i = 0; i < datasetPrincipal.rowsCount; i++) {
        log.info(">>>" + datasetPrincipal.getValue(i, "COD_CBO"));
    }

    return dataset;

}
compartilhar
  • Quando você sincroniza um dataset ele não executa mais o createDataset, somente o onSync conforme o agendamento configurado. Qual constraint você está tentando executar? Depois de sincronizado a constraint é executada diretamente como um "where" na tabela do dataset sincronizado

    Diogo Boegershausen   23 de Jan de 2019
  • Ola Diego, eu preciso passar uma constrain por um campo tipo 'zoom' .. então minha ideia seria criar um DS jornalizado que seria atualizado toda a noite e aproveitar esse mesmo DS passando um filtro por um campo do tipo 'zoom'

    William   29 de Jan de 2019
  • Neste caso Diego, eu teria que criar um DS jornalizado e depois criar um DS normal com as constraints que eu preciso mas apontando para este DS jornalizado ? essa seria a lógica ?

    William   29 de Jan de 2019
  • vc pode trazer todos os dados sem constraint, depois quando vc chama o dataset vc passa a constraint como se fosse um dataset interno

    Robson Eufrásio Stirle   07 de Feb de 2019
  • Ola Robson, exatamente isso que tinha imaginado ... vou precisar criar um DS jornalizado para ele espelhar os dados nas tabelas do fluig, e a partir dai criar um outro DS 'normal' apontando para esse DS jornalizado e ai aplicando os filtro, é correto isso ?!

    William   08 de Feb de 2019
Mostrar todos os 7 comentários>
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do fluig Forum!

0 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags datasets ou faça a sua própria pergunta.