Mengirim email otomatis ke submitter dan Admin dari Form Update data mahasiswa SIS+

Permasalahan

Dengan dibuatnya Form Update data mahasiswa yang dapat di input langsung oleh mahasiswa, sehingga kita (Admin SIS+) tidak mengetahui siapa saja yang telah mengisi, form apa saja yang telah terisi dan apa yang di isi dan yang tidak diisi oleh mahasiswa. Dan sebelumnya dibuat sebuah rule kalau ada yang submit salah satu form, maka akan ada notifikasi otomatis ke email bahwa ada seseorang yang telah mengisi form tersebut, namun tidak jelas form apa yang dimaksud tersebut, namun ada link menuju file rekaman yang menyimpan hasil inputan mahasiswa. Tapi ini kurang efektif karena harus bulak-balik buka link yang menuju ke file  hasil inputan mahasiswa tersebut.

Pemecahan Masalah

Maka dibuatlah sebuah script editor untuk mengatur email otomatis, siapa saja yang akan mendapat email tersebut, dan tidak hanya Admin yang dapat email notifikasi tetapi juga mahasiswa yang telah submit juga dapat email otomatisnya, jadi mereka bisa melihat ulang apa saja yang telah mereka input. Lalu dengan script editor maka pesan otomatis yang disampaikan ke submitter (mahasiswa) dapat dibuat sesuai dengan kebutuhan atau memberitahu bahwa data yang telah mahasiswa input telah tersimpan dan jika telah di update akan diinformasikan kembali. Jadi untuk ini Admin dapat mengetahui siapa yang telah mengisi form update, apa yg mereka isi dan form apa yang terisi.

Script nya sepeti ini :

/* Send Confirmation Email with Google Forms */

function Initialize() {

var triggers = ScriptApp.getScriptTriggers();

for (var i in triggers) {
ScriptApp.deleteTrigger(triggers[i]);
}

ScriptApp.newTrigger(“SendConfirmationMail”)
.forSpreadsheet(SpreadsheetApp.getActiveSpreadsheet())
.onFormSubmit()
.create();

}

function SendConfirmationMail(e) {

try {

var ss, cc, sendername, subject, columns;
var message, value, textbody, sender, message2;

// This is your email address and you will be in the CC
cc = Session.getActiveUser().getEmail();

// This will show up as the sender’s name
sendername = “NAMA PENGIRIM PESAN“;

// Optional but change the following variable
// to have a custom subject for Google Docs emails
subject = “SUBJEK PESAN“;

// This is the body of the auto-reply
message = “ISI PESAN POSISI ATAS“;

ss = SpreadsheetApp.getActiveSheet();
columns = ss.getRange(1, 1, 1, ss.getLastColumn()).getValues()[0];

// This is the submitter’s email address
sender = e.namedValues[“NAMA FIELD EMAIL SUBMITTER“].toString();

// Only include form values that are not blank
for ( var keys in columns ) {
var key = columns[keys];
if ( e.namedValues[key] ) {
message += key + ‘ :: ‘+ e.namedValues[key] + “<br />”;
}
}

textbody = message.replace(“<br>”, “\n”);
// This is the body of the auto-reply
message2 = “ISI PESAN POSISI BAWAH“;

GmailApp.sendEmail(sender, subject, textbody,
{cc: cc, name: sendername, htmlBody: message + message2});

} catch (e) {
Logger.log(e.toString());
}

}