Laporan Otomatis#
Gabungkan SpreadsheetApp (baca data) dan GmailApp (kirim email) dalam satu fungsi.
Example:
function kirimLaporanHarian() { const sheet = SpreadsheetApp.getActiveSheet(); const data = sheet.getDataRange().getValues().slice(1);
const total = data.reduce((sum, r) => sum + (r[2] || 0), 0); const count = data.length;
const isi = 'Laporan Harian\n' + 'Jumlah transaksi: ' + count + '\n' + 'Total nilai: Rp ' + total.toLocaleString('id-ID');
GmailApp.sendEmail( Session.getActiveUser().getEmail(), 'Laporan Harian ' + new Date().toLocaleDateString('id-ID'), isi );}Menjadwalkan#
Gunakan timeBased() trigger agar laporan terkirim otomatis.
Example:
function pasangJadwal() { ScriptApp.newTrigger('kirimLaporanHarian') .timeBased() .everyDays(1) .atHour(8) .create();}Jalankan pasangJadwal() sekali. Mulai besok, laporan datang tiap pukul 08
Email HTML#
Gunakan opsi htmlBody untuk format yang lebih rapi.
Example:
const html = '<h2>Laporan Harian</h2>' + '<p>Transaksi: <b>' + count + '</b></p>';
GmailApp.sendEmail(email, subjek, '', { htmlBody: html });| Method | Deskripsi |
|---|---|
timeBased() | Trigger berdasar waktu |
everyDays(n) | Interval n hari |
atHour(h) | Jam eksekusi (0–23) |
Next#
Pelajari GmailApp (Level 2).