У меня есть скрипт, который проверяет две вещи:
-> Строка с сегодняшней датой в столбце D И соответствующее значение в столбце F должно быть больше 0,5.Когда они оба верны, он отправляет оповещение по электронной почте.
Однако я настроил свой триггер Google Script для этого скрипта на каждый час.Теперь, когда это условие выполняется, оно отправляет мне оповещение каждый час.Я хочу получать оповещения только в первый раз (то есть в первый час), когда это состояние было обнаружено для данного дня.
Итак, вместо того, чтобы получать 24 электронных письма в течение дня (каждый час этого дня), я хочу получить только ПЕРВУЮ электронную почту.Как это можно добавить к этому сценарию?
function readCell() {
var ss=SpreadsheetApp.getActive();
var sh=ss.getSheetByName('test');
var rg=sh.getDataRange()
var vA=rg.getValues();
var yesterday=new Date(new Date().getFullYear(),new Date().getMonth(),new Date().getDate());//today
var yesterdayString=Utilities.formatDate(yesterday, Session.getScriptTimeZone(), "MMddyyyy")
for(var i=1;i<vA.length;i++) {
if (isDate(vA[i][2])) {
var t1=Utilities.formatDate(new Date(vA[i][2]),Session.getScriptTimeZone(),"MMddyyyy");//
if(t1==yesterdayString && Number(vA[i][5])>0.5) {
MailApp.sendEmail('blabla@gmail.com','Alert!', 'Detected on: ' +vA[i][3].)
}
}
}
}
function isDate(date){
return(Object.prototype.toString.call(date) === '[object Date]');
}