Day: May 22, 2015

  • การแสดงผลจำนวน Quota การส่งอีเมลที่ยังเหลืออยู่ในรอบ 24 ชั่วโมง

    1. ปิด Google Sheets : GASWS1
    2. เมนู Tools > Script Editor…
    3. เมนู File > New > Script File
      ตั้งชื่อ: myscript6
    4. สร้าง function remainDailQuota() ตามนี้
      function remainDailQuota() {
       // https://developers.google.com/apps-script/guides/services/quotas
       var emailQuotaRemaining = MailApp.getRemainingDailyQuota();
       var emailaddress=Session.getActiveUser().getEmail();
       var subject="Email Quota Remaining";
       MailApp.sendEmail( emailaddress, 
       subject ,
       "คุณเหลือ Quota การส่งอีเมลอีก " + emailQuotaRemaining + " ฉบับ ในรอบ 24 ชั่วโมง"
       ); 
      }
    5. เมนู File > Save หรือ กดปุ่ม Ctrl+s
    6. เมนู Run > remainDailQuota
  • การส่งไฟล์แบบ Top Secret!

    1. ปิด Google Sheets : GASWS1
    2. เมนู Tools > Script Editor…
    3. เมนู File > New > Script File
      ตั้งชื่อ: myscript6
    4. สร้าง function MailMerge4() ตามนี้
      function MailMerge4() {
       var ss = SpreadsheetApp.getActiveSpreadsheet(),
       SalarySheet=SpreadsheetApp.setActiveSheet(ss.getSheetByName("Salary")), 
       TemplateID='1bjpQnJikYMGYNaJQhetpZpkHyjI7iqBqDufprzMSo4k', 
       header = "A1:G1",
       data="A2:G6", 
       dataRows = SalarySheet.getRange(data).getValues(),
       headerRow = SalarySheet.getRange(header).getValues(),
       numColumns = SalarySheet.getRange(header).getNumColumns(),
       
       emailaddress= "",
       subject = "",
       docUrl = ""; 
      
       for (var i=0 ; i < dataRows.length ; i++) {
       emailText="";
       subject = "[ลับ] กองคลัง : แจ้งการโอนเงินให้คุณ " + dataRows[i][0] + " " + dataRows[i][1];
       var id =DriveApp.getFileById(TemplateID).makeCopy(subject).getId(),
       doc=DocumentApp.openById(id),
       docBody=doc.getBody();
       for (var j = 0 ; j < numColumns -1 ; j++) { 
       docBody.replaceText('{' + headerRow[0][j] + '}' , dataRows[i][j]); 
       } 
       
       emailaddress=dataRows[i][2];
       
       doc.addViewer( emailaddress);
       docUrl=doc.getUrl();
       doc.saveAndClose();
       
       var attachment = DocumentApp.openById(id);
       MailApp.sendEmail( emailaddress, 
       subject ,
       "เปิดอ่านเอกสารลับได้ที่ \n" + docUrl
       ); 
       try { 
      
       dataRows[i][numColumns-1] = new Date(); 
       } catch (e) {
       
       dataRows[i][numColumns-1] = e.message;
       } 
       }
       
       SalarySheet.getRange(data).setValues(dataRows);
      }
    5. เมนู File > Save หรือ กดปุ่ม Ctrl+s
    6. เมนู Run > MailMerge4
    7. สร้าง function MailMerge5() ตามนี้
      function MailMerge5() {
       var ss = SpreadsheetApp.getActiveSpreadsheet(),
       SalarySheet=SpreadsheetApp.setActiveSheet(ss.getSheetByName("Salary")), 
       TemplateID='1WzzAwF5cDtQD0kcrLKRdP0ZO6-6MCqc_VXRUxzgq_gI', 
       header = "A1:H1",
       data="A2:H6", 
       dataRows = SalarySheet.getRange(data).getValues(),
       headerRow = SalarySheet.getRange(header).getValues(),
       numColumns = SalarySheet.getRange(header).getNumColumns(),
       
       emailaddress= "",
       subject = "",
       docUrl = ""; 
      
       for (var i=0 ; i < dataRows.length ; i++) {
       emailText="";
       subject = "[ลับสุดยอดดดดด] กองคลัง : แจ้งเอกสารลับให้คุณ " + dataRows[i][0] + " " + dataRows[i][1];
       var id =DriveApp.getFileById(TemplateID).makeCopy(subject).getId(),
       doc=DocumentApp.openById(id),
       docBody=doc.getBody();
       for (var j = 0 ; j < numColumns -1 ; j++) { 
       docBody.replaceText('{' + headerRow[0][j] + '}' , dataRows[i][j]); 
       } 
       
       emailaddress=dataRows[i][2];
       
       doc.addViewer( emailaddress);
       docUrl=doc.getUrl();
       doc.saveAndClose();
       
       var now = new Date();
       
       
       MailApp.sendEmail( emailaddress, 
       subject ,
       "เปิดอ่านเอกสารลับสุดยอดได้ที่ \n" + docUrl
       ); 
       try { 
       
       dataRows[i][numColumns-2] = id; 
       dataRows[i][numColumns-1] = now; 
       } catch (e) {
       
       dataRows[i][numColumns-1] = e.message;
       } 
       }
       
       SalarySheet.getRange(data).setValues(dataRows);
       ScriptApp.newTrigger('destroySecretDocument')
       .timeBased()
       .after(2 * 60 * 1000)
       .create();
       
      }
    8. สร้าง function destroySecretDocument() ตามนี้
      function destroySecretDocument() {
       var ss = SpreadsheetApp.getActiveSpreadsheet(),
       SalarySheet=SpreadsheetApp.setActiveSheet(ss.getSheetByName("Salary")),
       DataRange=SalarySheet.getDataRange().getValues();
       
       for(var i=1; i< DataRange.length; i++){
       var id=DataRange[i][6];
       var emailAddress=DataRange[i][2];
       DocumentApp.openById(id).removeEditor(emailAddress);
       DriveApp.removeFile(DriveApp.getFileById(id));
       }
      }
    9. เมนู File > Save หรือ กดปุ่ม Ctrl+s
      เมนู Run > MailMerge5