Versão atual:

Filtro de Campo Zoom trazendo tabela pai x filho

Não estou conseguindo fazer o zoom filtrar um dataset interno de um processo que foi concluido fazendo um campo zoom em outro formulário. Alguém poderia dizer onde estou errando?

O dataset "dsSGR" é o data do processo onde esta a tabela pai x filho. Criei uma variavel "num_prot" onde preciso filtrar os processos que tem valores diferentes de vazio.

function createDataset(fields, constraints, sortFields) {
    //Cria as colunas
    var dataset = DatasetBuilder.newDataset();
    dataset.addColumn("num_form");
    dataset.addColumn("num_prot");
    dataset.addColumn("cliente");
    dataset.addColumn("codcliente");
    dataset.addColumn("container");
    dataset.addColumn("destino");
    dataset.addColumn("sif");

    var cst = DatasetFactory.createConstraint("metadata#active", true, true, ConstraintType.MUST);
    var constraints2 = new Array(cst);

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

    for (var i = 0; i < datasetPrincipal.rowsCount; i++) {
        var documentId      = datasetPrincipal.getValue(i, "metadata#id");
        var documentVersion = datasetPrincipal.getValue(i, "5000");
        var num_prot = null;

            var c1 = DatasetFactory.createConstraint("tablename", "tab_pesquisa" ,"tab_pesquisa", ConstraintType.MUST);
            var c2 = DatasetFactory.createConstraint("metadata#id", documentId, documentId, ConstraintType.MUST);
            var c3 = DatasetFactory.createConstraint("metadata#version", documentVersion, documentVersion, ConstraintType.MUST);
            if(constraints!=null && constraints.length){
                num_prot = constraints[i].initialValue; 
            }
            var c4 = DatasetFactory.createConstraint("num_prot", num_prot, num_prot, ConstraintType.MUST);
            var constraintsFilhos = new Array(c1, c2, c3, c4);

            var datasetFilhos = DatasetFactory.getDataset("dsSGR", null, constraintsFilhos, null);

            for (var j = 0; j < datasetFilhos.rowsCount; j++) {
                dataset.addRow(new Array(
                    documentId,
                    datasetFilhos.getValue(j, "num_prot"), 
                    datasetFilhos.getValue(j, "cliente"),
                    datasetFilhos.getValue(j, "codcliente"),
                    datasetFilhos.getValue(j, "container"),
                    datasetFilhos.getValue(j, "destino"),
                    datasetFilhos.getValue(j, "sif")));
            }

    }
    return dataset;
}

Versão (1):

Ver a versão formatada

Filtro de Campo Zoom trazendo tabela pai x filho

Comentário

new question