I am having an issue where my function appears to be evaluating two dates as not equals, despite them appearing equals in the Logger. This is part of a broader function that compares rows to see if a date update is needed. I'd love some help figuring out how to get this function to not update data if the dates are equal (which they are).
Thanks!
It essentially compares employees to see if they have the same ID number, if they do, it checks starts dates to see if those are different between two sheets. The logger is showing the exact same and still following the if function " 10:06:02 PM Info Thu Nov 04 2021 00:00:00 GMT-0400 (Eastern Daylight Time)" 10:06:02 PM Info Thu Nov 04 2021 00:00:00 GMT-0400 (Eastern Daylight Time)"
function updateSalesStarts(){
var copyData = [];
for (var i = 1; i <= sourceSheetLastRow; i++){
var sourceID = sourceSheet.getRange(i,sourceVariables[0]).getValue();
var sourceStartDate = sourceSheet.getRange(i,sourceVariables[5]).getValue();
for (var j = 1; j <= targetSheetLastRow; j++){
var targetID = targetSheet.getRange(j,targetVariables[0]).getValue();
var targetStartDate = targetSheet.getRange(j,targetVariables[5]).getValue();
if ( sourceID == "Associate ID"){
Logger.log("Associate ID, breaking");
break;
} else if(targetID === sourceID && targetID != "Associate ID" && targetStartDate != sourceStartDate){
var delRow = j
Logger.log("Replacing row " + delRow);
copyData.push(sourceData[i-1]);
targetSheet.deleteRow(delRow);
}
}
}
if(copyData.length>0){
var targetRangeTop = targetSheet.getLastRow(){
targetSheet.getRange(targetRangeTop+1,1,copyData.length,copyData[0].length).setValues(copyData);
}
}