2017-06-01 2 views
0

Ich habe derzeit ein funktionierendes Google-Skript, das die Werte in einem Dashboard in Google Tabellen für die Überwachung von Schwimmbadchemikalien einliest. Personen senden ein Formular, und wenn diese Zahlen größer oder kleiner als eine festgelegte Zahl sind, wird eine E-Mail mit einer bestimmten Nachricht gesendet.Sauberere Möglichkeit, meine E-Mail-Nachrichten aus Tabellen zu senden

Das funktioniert gut, aber wenn es mehrere Nummern gibt, die ausgeschaltet sind, erhalte ich mehrere E-Mails, die nervig werden.

Ich suche nach einer einfachen, sauberen Ausgabe anstelle von mehreren E-Mails.

Hier ist ein Teil meines Codes (der Rest ist der gleiche nur andere Pools).

 function sendEmails() { 
     var sheet = SpreadsheetApp.getActiveSheet(); 

    //----vvvvvPool 
     var IDPpHReading = sheet.getRange('A6:A7').getValue(); 
     var IDPpHTest = sheet.getRange('B6:B7').getValue(); 
     var IDPORP = sheet.getRange('A9:A10').getValue(); 
     var IDPSetPoint = sheet.getRange('B9:B10').getValue(); 

     var IDPCL = sheet.getRange('A12:A13').getValue(); 
     var IDP_Filter1_INF = sheet.getRange('A16:A17').getValue(); 
     var IDP_Filter1_EFF = sheet.getRange('B16:B17').getValue(); 
     var IDP_Filter2_INF = sheet.getRange('A20:A21').getValue(); 
     var IDP_Filter2_EFF = sheet.getRange('B20:B21').getValue(); 

// insert email here 
    var emailAddress = "[email protected]"; 
//-------------------- IDP pH 
    if (IDPpHReading > 7.8) { 
     var subject = "High pH Reading IDP"; 
     var message = " An Aquatic Specialist recently logged a chemical reading that was too high for the Indoor Pool. Please check the situation asap."; 

     MailApp.sendEmail(emailAddress, subject, message); 
    } 
    else if (IDPpHReading < 7.2) { 
     var subject = "Low pH Reading IDP"; 
     var message = " An Aquatics Specialist recently logged a chemical reading that was too low for the Indoor Pool. Please check the situation asap."; 

     MailApp.sendEmail(emailAddress, subject, message); 
    } 
    if (IDPpHTest > 7.8) { 
     var subject = "High pH Test IDP"; 
     var message = " An Aquatics Specialist recently logged a chemical reading that was too high for the Indoor Pool. Please check the situation asap."; 

     MailApp.sendEmail(emailAddress, subject, message); 
    } 
    else if (IDPpHTest < 7.2) { 
     var subject = "Low pH Test IDP"; 
     var message = " An Aquatics Specialist recently logged a chemical reading that was too low for the Indoor Pool. Please check the situation asap."; 

     MailApp.sendEmail(emailAddress, subject, message); 
    } 

}; 

Mein go hierfür wäre jede Nachricht eindeutig zu machen:

var message 1; 
var message 2; 
etc 

und haben dann die E-Mail - MailApp.sendEmail (emailaddress, Thema, message1 + message2 ....);

Aber ich fühle mich wie das ist eine schlampige Art, es zu tun.

+0

Gerade gesetzt 'subject =‚‘ 'und' message =‘ '' am Anfang, und dann verketten zusätzliche Abschnitte zu dem Thema/Körper, wann immer eine bestimmte Lesung gilt. – halfer

Antwort

0

Ich habe dies ein paar Mal zu tun und was ich tun, in der Regel ist Verkettung Verwendung Zeichenfolge, die Nachricht zu erstellen und es dann senden:

var subject = "Abnormal pH Reading IDP";  
    var message = 'An Aquatics Specialist recently logged a chemical reading at the indoor pool and found:\n'; 
    var needsCheck = false; 

    if (IDPpHReading > 7.8) { 

      var message = message + "\nA reading that was too high."; 
      var needsCheck = true; 

     } 
     else if (IDPpHReading < 7.2) { 
      var message = message + "\nA reading that was too low."; 
      var needsCheck = true; 

     } 
     if (IDPpHTest > 7.8) { 
      var message = message + "\nA test that was too high."; 
      var needsCheck = true; 

     } 
     else if (IDPpHTest < 7.2) { 
      var message = message + "\nA test that was too low."; 
      var needsCheck = true; 
     } 

    if (needsCheck){ 
    var message = message + "\n\nPlease check the situation asap."; 
    MailApp.sendEmail(emailAddress, subject, message); 
    } 
Verwandte Themen