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

Menghapus Baris di Google Sheets yang Memiliki Sel Kosong dengan Apps Script

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

Cara Menentukan Arah Kiblat Menggunakan Google Maps

Algorithma Julianday dengan Java

Afiliasi Shopee Tanpa Wajah dan Tanpa Beli Sampel Bermodal AI

Cek Broken Link pada File PDF dengan PyPDF2 dan Google Sheets

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

Kode Apps Script MailApp untuk Form Mengirimkan Email

BPJS tidak Menanggung Sakit karena Salah Minum Jamu