Отправка электронной почты при запуске обратного отсчета даты - PullRequest
0 голосов
/ 26 ноября 2018

Я пытаюсь настроить лист с разными адресами электронной почты и датами.когда дата (срок) отсчитывает до 20, скажем, я хотел бы отправить владельцу проблемы автоматическое электронное письмо.Вся информация в одной строке просто разные столбцы.Я публикую свой полуфункциональный сценарий здесь, я могу получить правильную позицию для извлечения на основе даты, я просто не могу получить сценарий, чтобы извлечь соответствующее письмо с датой.Или я получаю массу писем, которые мне не нужны. Лист Любая помощь будет высоко ценится!

function checkReminder() {
// get the spreadsheet object
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();

// set the first sheet as active
SpreadsheetApp.setActiveSheet(spreadsheet.getSheets()[0]);

// fetch this sheet
var sheet = spreadsheet.getActiveSheet();

// Number of rows to process
 var numRows = sheet.getLastRow()-1;   

// figure out what the last row is
var lastRow = sheet.getLastRow();

// the rows are indexed starting at 1, and the first row
// is the headers, so start with row 2
var startRow = 2;

// Fetch the range of cells A2:B3 
var dataRange = sheet.getRange(startRow, 2 ,lastRow, 
sheet.getLastColumn());

// Fetch values for each row in the Range.
var data = dataRange.getValues();
//Logger.log(data)

 // grab column 20 (the 'days left' column) changed  numrow to last r 
row 
get last row change
var range = sheet.getRange(startRow,20,lastRow-startRow+1,1 );
var numRows = range.getNumRows();
var days_left_values = range.getValues();

// Now, grab the reminder name column
range = sheet.getRange(2, 16, lastRow-startRow+1, 1);
var reminder_name_values = range.getValues();

var warning_count = 0;
var msg = "";
//msg = msg + "Trial Reminder Trial: "+reminder_name+" is due in 
"+days_left+" days.\n"

//for (i in data) {
// var row = data[i];

// First column
//  var emailAddress = row[13];  

// Recipe column (Priority HIGH)
 // var message = row[14]; 
 // var subject = "Reminder CAPA ";
//subject = subject + reminder_name;

// Loop over the days left values
for (var k = 0; k <= numRows-1; k++) {
var days_left = days_left_values[k][0];
if(days_left == 20) {

  // if it's exactly 20, do something with the data.
  var reminder_name = reminder_name_values[k][0];

  msg = msg + "Reminder CAPA: "+reminder_name+" is due in 
"+days_left+" days.\n";
  warning_count++;
}
if(warning_count) {
//MailApp.sendEmail(emailAddress, subject, message); 
Logger.log(msg);

}  

}}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...