@Luís,
Tem um exemplo aqui de como tratar os filtros do dataset customizado:
https://forum.totvs.io/t/como-colocar-parametros-no-dataset-customizado/11081
UPDATE
Você pode montar desa forma:
var sql = "SELECT matricula, ccusto, descricao FROM CENTRO_CUSTO WHERE 1=1 ";
newDataset.addColumn("matricula");
newDataset.addColumn("ccusto");
newDataset.addColumn("descricao");
if(constraints != null) {
if(constraints.length > 0) {
for (var i = 0; i < constraints.length; i++) {
// AQUI VOCÊ TRATA O FILTRO
if (constraints[i].fieldName == 'matricula') {
filtro += "AND matricula LIKE '%" + constraints[i].initialValue + "%' ";
}
if (constraints[i].fieldName == 'ccusto') {
filtro += "AND ccusto LIKE '%" + constraints[i].initialValue + "%' ";
}
if (constraints[i].fieldName == 'descricao') {
filtro += "AND descricao LIKE '%" + constraints[i].initialValue + "%' ";
}
}
filtro += "ORDER BY descricao ";
}
}
sql = sql + filtro;</code></pre>