Boa tarde, @Luiz.
Você precisa criar uma constraint no seu segundo dataset para que ela receba o valor que foi passado no primeiro zoom.
Seguindo mais ou menos o que você postou de código aqui, será o seguinte:
function createDataset(fields, constraints, sortFields) {
//Cria as colunas
var dataset = DatasetBuilder.newDataset();
dataset.addColumn("NumFormulario");
dataset.addColumn("tipo_documento");
dataset.addColumn("grupo_documento");
dataset.addColumn("deletado");
//Recebe a Constaint do zoom anterior e salva valor na variáveç grupo
var grupo = "";
if (constraints != null) {
for (var i = 0; i < constraints.length; i++) {
if (constraints[i].fieldName == "grupo_documento") {
grupo = constraints[i].initialValue;
}
}
}
//Cria a constraint para buscar os formulários ativos
var cst = DatasetFactory.createConstraint("metadata#active", true, true, ConstraintType.MUST);
var constraints_ = new Array(cst);
var datasetPrincipal = DatasetFactory.getDataset("DSde-para-tipo-documento", null, constraints_, null);
for (var i = 0; i < datasetPrincipal.rowsCount; i++) {
var documentId = datasetPrincipal.getValue(i, "metadata#id");
var documentVersion = datasetPrincipal.getValue(i, "metadata#version");
//Cria as constraints para buscar os campos filhos, passando o tablename, número da formulário e versão
var c1 = DatasetFactory.createConstraint("tablename", "ingre", "ingre", ConstraintType.MUST);
var c2 = DatasetFactory.createConstraint("metadata#id", documentId, documentId, ConstraintType.MUST);
var c3 = DatasetFactory.createConstraint("metadata#version", documentVersion, documentVersion, ConstraintType.MUST);
var c4 = DatasetFactory.createConstraint("deletado", "true", "true", ConstraintType.MUST_NOT);
//Passa o grupo recebido como constraint - ATENÇÃO: Cerifique-se que essa coluna exista no dataset "DSde-para-tipo-documento"
var c5 = DatasetFactory.createConstraint("grupo_documento", grupo, grupo, ConstraintType.MUST);
var constraintsFilhos = new Array(c1, c2, c3, c4, c5);
//Busca o dataset
var datasetFilhos = DatasetFactory.getDataset("DSde-para-tipo-documento", null, constraintsFilhos, null);
for (var j = 0; j < datasetFilhos.rowsCount; j++) {
//Adiciona os valores nas colunas respectivamente.
dataset.addRow(new Array(
documentId,
datasetFilhos.getValue(j, "tipo_documento"),
datasetFilhos.getValue(j, "grupo_documento"),
datasetFilhos.getValue(j, "deletado")));
}
}
return dataset;
}
Fiz alguns comentários onde adicionei código para facilitar o entendimento e você ajustar com o que você precisa aí...
Qualquer outra dúvida ou alteração estou à disposição.
Caso minha resposta tenha sido útil não esqueça de marcar como solução para ajudar os demais usuários do Fórum.
Atenciosamente, Leonardo Fioretti.