Vou te dar um exemplo e tenho certeza que vou te dar a resposta
Bom faça uma constrain, que no caso é um filtro, para que você possa ir a um dado exato, no meu caso faço o filtro a partir do id de formulário
var a1 = DatasetFactory.createConstraint("metadata#id",idRegistro,idRegistro,ConstraintType.MUST);
var datasetProjeto = DatasetFactory.getDataset("cadProjeto", null, new Array(a1), null);
Bom se você já desenvolveu a um tempo, você sabe que o name que você dá ao input serve como nome de coluna no Dataset, portanto datasetProjeto.CNPJ_CPF <--- name dado no input, exemplo <input name="CNPJ_CPF" id="cnpj"></input>
bom agora é só ir para o seu documento JS e fazer uma condição
if($("#cnpj").val() == datasetProjeto.CNPJ_CPF){
console.log("IGUAIS")
//Aqui você faz tudo que você quer se for iguais
}else{
console.log("NÃO SÃO IGUAIS")
//Aqui você faz tudo que você quer caso não sejam iguais
}
Cara eu fiz um script para visualizar o que foi alterado no Formulário e comparar com o dataset, se diferente retorna o valor passado em uma tabela, com isso eu consigo saber quem editou, horário de edição, o campo alterado e o antigo valor que aquele campo tinha, segue o código e um anexo para você ver o resultado.
function criaHistorico(){
var a1 = DatasetFactory.createConstraint("metadata#id",idRegistro,idRegistro,ConstraintType.MUST);
var datasetProjeto = DatasetFactory.getDataset("cadProjeto", null, new Array(a1), null);
if(datasetProjeto.values.length > 1){
var arr = []
for(var i = 0; i < datasetProjeto.values.length;i++){
arr.push(datasetProjeto.values[i])
}
for(var k = 0;k < arr.length;k++){//quantidade de linhas
var str = JSON.stringify(arr[k]).split(",")
for(var i = 0; i < str.length;i++){// valores das linhas
if(str[i].indexOf("meta") == -1 && str[i].indexOf("version") == -1 && str[i].indexOf("id") == -1 && str[i].indexOf("Alteracao") == -1 && str[i].indexOf("nomeRegistro") == -1){
if(k+1 < arr.length){
if(JSON.stringify(arr[k]).split(",")[i] != JSON.stringify(arr[k+1]).split(",")[i]){
var separaCampos = JSON.stringify(arr[k]).split(",")[i].split(":")
var campoHistorico = separaCampos[0].replace("{","").replace('"','').replace('"','').replace("_"," ").replace("_"," ").replace("}","")
/*if(separaCampos[1] == '""' || separaCampos[1] == "null"){
separaCampos[1] = "Campo Vazio"
}*/
if(arr[k].dataAlteracao == ""){
if($("#dataCriacao").val().length == 0){
var alt = $("#dataCriacao").text()
}else{
var alt = $("#dataCriacao").val()
}
}else{
var alt = arr[k].dataAlteracao
}
$("#tbodyCad").append("<tr><td>"+alt+"</td><td>"+arr[k].horarioAlteracao+"</td><td>"+idUser+"</td><td>"+campoHistorico+"</td><td>"+separaCampos[1]+"</td></tr>")
}
}
}
}
}
}
}
Bons estudos, até a próxima
Precisamos saber mais, coloque mais informações, foi feito uma Constrain? Você retornou o que está dentro do dataset em um array? Pq se sim e estiver, você pode fazer a comparação entre if($("campodesejado").val() == datasetnome){ //retorna true ou false, com isso você já fez sua comparação e em diante é contigo }
— Matheus Azzi 30 de Sep de 2019