Apps Script untuk Mengirimkan Notifikasi Approval

Berikut ini kode Apps Script untuk mengirimkan email approval berdasarkan input dari pengguna:

Kode

function onOpen() 
{
  const ui = SpreadsheetApp.getUi();
  const menu = ui.createMenu("Administrasi");
  menu.addItem("Kirim Email Approval", "openFormEmail");
  menu.addToUi();
}

function openFormEmail()
{
  var target = SpreadsheetApp.openById("--ID Sheet--");
  var ss=target.getSheetByName("Instansi");
  ss.getRange("A2:F").getValues().map(function(row,index){
    if(row[0]!="" && row[0]!="Passed"){
      var subject="Pengajuan Instansi "+row[3]+" "+row[0];
      var pesan="Yth. "+row[2]+"<br/><br/>Terkait pengajuan nama instansi dengan:<br/><br/>";
      pesan+="Nama: "+row[3]+"<br/>";
      pesan+="Alamat: "+row[4]+"<br/><br/>";
      if(row[0]=="Approved"){
        pesan+="Pengajuan tersebut kami terima, silahkan cek di inputan instansi dalam kurun waktu 10-15 menit dari email ini dikirimkan.<br/>";
      }else if(row[0]=="Rejected"){
        pesan+="Pengajuan tersebut tidak dapat kami terima, dengan alasan:<br/>";
        pesan+=row[5]+".<br/>";
      }
      pesan+="<br/>Demikian pemberitahuan kami, atas perhatiannya kami ucapkan terima kasih.<br/><br/>";
      pesan+="Hormat kami,<br/>";
      pesan+="Tim PIC PKL dan Tugas Akhir";
      sendNotificationEmail(row[2],subject,pesan);
    }
  });

  ss=target.getSheetByName("Pembimbing Luar");
  ss.getRange("A2:M").getValues().map(function(row,index){
    if(row[0]!="" && row[0]!="Passed"){
      var subject="Pengajuan Pembimbing "+row[3]+" "+row[0];
      var pesan="Yth. "+row[2]+"<br/><br/>Terkait pengajuan nama pembimbing dengan:<br/><br/>";
      pesan+="Nama: "+row[3]+"<br/>";
      pesan+="Dari: "+row[5]+"<br/><br/>";
      if(row[0]=="Approved"){
        pesan+="Pengajuan tersebut kami terima, silahkan cek di inputan Pembimbing Luar dalam kurun waktu 10-15 menit dari email ini dikirimkan.<br/>";
      }else if(row[0]=="Rejected"){
        pesan+="Pengajuan tersebut tidak dapat kami terima, dengan alasan:<br/>";
        pesan+=row[12]+".<br/>";
      }
      pesan+="<br/>Demikian pemberitahuan kami, atas perhatiannya kami ucapkan terima kasih.<br/><br/>";
      pesan+="Hormat kami,<br/>";
      pesan+="Tim PIC PKL dan Tugas Akhir";
      sendNotificationEmail(row[2],subject,pesan);
    }
  });
}

function sendNotificationEmail(recipient,subjecto,pesan)
{
	try {
		MailApp.sendEmail({
		  to: recipient,
		  subject: subjecto,
		  htmlBody: pesan
		});
		return true;
	} catch (e) {
		return false;
	}
}

Demo



Komentar



Postingan populer dari blog ini

Apps Script untuk Cetak Sertifikat

Jasa Penjadwalan Semester, UTS dan UAS Perguruan Tinggi menggunakan Google Sheet

Kaidah Baku untuk Konsistensi Data (PT, Tbk, Pty., & Ltd.)

Menambah dan Menghapus Baris pada AlbertTable

Tutorial Upload File ke Google Drive dari Website

Menambahkan Random Key sebagai ID Pembeda di Google Sheet dengan Apps Script

Kode Apps Script MailApp untuk Form Mengirimkan Email

Afiliasi Shopee Tanpa Wajah dan Tanpa Beli Sampel Bermodal AI

Generate Karakter Acak dan Menempatkannya di Sel Google Sheets dengan Apps Script