1. Pengantar Google Apps Script
Dalam codelab ini, kami akan memperkenalkan salah satu cara termudah untuk menulis kode yang mengakses teknologi developer Google. Semuanya dilakukan dengan menerapkan JavaScript, bahasa pengembangan web umum. Dengan menggunakan Google Apps Script, Anda akan menulis kode untuk mengekstrak alamat jalan dari sel di Spreadsheet Google, membuat Google Maps berdasarkan alamat, lalu mengirim peta sebagai lampiran menggunakan Gmail. Bagian terbaiknya? Kode tersebut hanya terdiri dari empat baris kode.
Yang akan Anda pelajari
- Cara menggunakan Google Apps Script dengan berbagai layanan Google, seperti Google Spreadsheet, Google Maps, dan Gmail.
- Mengembangkan kode menggunakan editor dalam browser untuk Apps Script.
Yang Anda butuhkan
- Browser web dengan akses ke internet
- Akun Google (akun Google Workspace mungkin memerlukan persetujuan administrator)
- Pemahaman dasar tentang Google Spreadsheet
- Kemampuan untuk membaca Notasi A1 Spreadsheet
2. Survei
Bagaimana Anda akan menggunakan codelab/tutorial ini?
Bagaimana Anda menilai pengalaman Anda menggunakan alat developer Google Workspace & API?
3. Ringkasan
Setelah Anda mengetahui apa yang dibahas dalam codelab ini, apa yang akan Anda lakukan?
- Pelajari sedikit tentang Apps Script, yang didasarkan pada JavaScript.
- Buat spreadsheet Google Spreadsheet.
- Masukkan alamat jalan di sel kiri atas (A1) pada {i>spreadsheet<i}.
- Pelajari cara membuka editor Apps Script untuk dokumen apa pun.
- Edit kode Apps Script, simpan, dan jalankan.
- Gunakan Gmail untuk melihat hasilnya.
Mari kita mulai.
Apa itu Google Apps Script?
Google Apps Script adalah platform pengembangan yang mempercepat dan mempermudah pembuatan skrip serta aplikasi kecil yang terintegrasi dengan Google Workspace. Dengan Apps Script, Anda:
- Tulis kode di JavaScript dan akses library bawaan untuk aplikasi Google Workspace seperti Gmail, Kalender, Drive, dll.
- Tidak perlu menginstal apa pun—kami menyediakan editor kode langsung di browser, dan skrip Anda dijalankan di server Google.
- Tidak perlu khawatir dengan topik kompleks seperti keamanan dan izin akses data, karena platform akan menanganinya untuk Anda.
Apps Script dapat digunakan untuk membuat berbagai aplikasi, mulai dari bot chat hingga aplikasi web. Salah satu kegunaan paling populer adalah untuk memperluas fungsionalitas {i>spreadsheet<i} Google Sheets. Di bagian codelab lainnya, Anda akan mempelajari cara menggunakan Apps Script untuk mengambil data dari spreadsheet dan menghubungkannya ke layanan Google lainnya.
4. Buat Spreadsheet Google & masukkan alamat
Di Spreadsheet Google baru, masukkan alamat yang valid dengan mengikuti petunjuk berikut:
- Buat Spreadsheet Google menggunakan link praktis ini (sheets.google.com/create). Atau, buka Google Drive (drive.google.com) lalu klik Baru > Google Spreadsheet > Spreadsheet kosong
- Di {i>spreadsheet<i} kosong, arahkan ke sel pertama di sudut kiri atas (A1). Itu akan berada di kolom A dan baris 1. Jika perlu membiasakan diri, Anda dapat melihat deskripsi notasi A1 ini.
- Masukkan alamat jalan yang valid dalam sel. Pilih alamat di dunia dengan lokasi yang tepat menggunakan alamat, kode pos, atau kombinasi kota dan negara bagian/provinsi. Berikut ini contoh alamat di New York City:
Hanya itu yang perlu Anda lakukan di {i>sheet<i}. Mari kita buka editor dan tulis kode.
5. Edit kode Apps Script
Sekarang setelah Anda memiliki Google Spreadsheet baru, saatnya untuk mengedit skrip terikatnya. Ikuti petunjuk berikut:
Membuka editor skrip
Pada bilah menu, pilih Ekstensi > Apps Script untuk membuka editor kode browser untuk Apps Script.
Di tab browser baru, editor kode menampilkan skrip container-bound default untuk sheet. Fungsi default bernama myFunction()
dibuat secara otomatis dan kursor ditempatkan di dalam fungsi agar Anda dapat memulai.
Kirim Google Maps alamat melalui email
"Template" kode yang Anda berikan kosong, jadi mari kita ganti dengan aplikasi kita.
- Di editor skrip, ganti blok kode
myFunction()
default dengan kode berikut:
/** @OnlyCurrentDoc */
function sendMap() {
var sheet = SpreadsheetApp.getActiveSheet();
var address = sheet.getRange('A1').getValue();
var map = Maps.newStaticMap().addMarker(address);
GmailApp.sendEmail('YOUR_EMAIL_ADDR', 'Map', 'See below.', {attachments:[map]});
}
- Ganti alamat email placeholder (
'YOUR_EMAIL_ADDR'
) dengan alamat email yang valid. Misalnya, friend@example.com. - Untuk menyimpan skrip Anda, klik Simpan .
- Untuk mengganti nama project Apps Script, klik Project tanpa judul, masukkan judul untuk project Anda, lalu klik Ganti nama.
Peninjauan kode
Mari kita tinjau 4 baris fungsi sendMap()
yang membentuk seluruh aplikasi. Menariknya, kode tersebut merujuk ke 3 produk Google yang berbeda.
Baris pertama adalah komentar anotasi yang memengaruhi otorisasi:
/** @OnlyCurrentDoc */
Sebagian besar skrip meminta beberapa izin kepada pengguna sebelum dapat berjalan. Izin ini mengontrol tindakan yang diizinkan oleh skrip oleh pengguna. Baris pertama adalah komentar yang berisi anotasi opsional yang menginstruksikan Apps Script untuk membatasi akses ke spreadsheet saat ini (bukan semua spreadsheet pengguna). Praktik terbaiknya adalah menyertakan anotasi ini saat Anda hanya bekerja dengan satu file.
Kode ini menggunakan deklarasi fungsi JavaScript normal untuk sendMap()
:
function sendMap() {
Baris berikutnya memanggil Layanan Spreadsheet yang dapat diakses dari Apps Script melalui objek SpreadsheetApp
. Sheet yang ditampilkan ditetapkan ke variabel dengan nama yang sama. Metode getActiveSheet()
mendapatkan referensi ke objek sheet saat ini dan menyimpannya dalam variabel sheet
.
var sheet = SpreadsheetApp.getActiveSheet();
Dengan objek sheet
, kita mereferensikan rentang sel (dari satu sel) dalam notasi A1 dengan getRange()
. "Rentang" adalah grup sel, termasuk satu sel, seperti sel A1
(yang kita masukkan alamat). Untuk mengambil apa yang ada di dalam rentang, metode getValue()
menampilkan nilai sel kiri atas dalam rentang dan menetapkan nilai ke variabel address
. Anda juga dapat mencoba menambahkan lebih banyak alamat dan membaca dari sel yang berbeda.
var address = sheet.getRange('A1').getValue();
Baris ketiga kode terhubung ke Layanan Google Maps menggunakan objek Maps
. newStaticMap()
membuat objek peta statis dan metode addMarker()
menambahkan "pin" ke peta menggunakan alamat pada sheet.
var map = Maps.newStaticMap().addMarker(address);
Terakhir, Layanan Gmail melalui objek MailApp
memanggil metode sendEmail()
untuk mengirim email yang menyertakan teks "Lihat di bawah". dan gambar peta sebagai lampiran.
GmailApp.sendEmail('friend@example.com', 'Map', 'See below.', {attachments:[map]});
}
6. Menjalankan aplikasi Google Spreadsheet, Maps, dan Gmail
Setelah diberi nama dan disimpan, saatnya menjalankan fungsi. Di bagian atas editor, pastikan sendMap()
dipilih dari daftar fungsi lalu klik Run.
Fitur Apps Script yang disukai oleh developer adalah Anda tidak perlu menulis kode otorisasi yang memberikan akses program ke data pengguna. Meskipun Apps Script mengelola setelan ini, pengguna aplikasi Anda masih perlu memberikan izin agar skrip dapat mengakses spreadsheet mereka dan mengirim email melalui Gmail. Dialog otorisasi pertama terlihat seperti ini:
Klik Tinjau izin untuk melanjutkan.
Selanjutnya, Anda akan melihat jendela dialog OAuth2 yang meminta izin untuk mengakses sheet dan mengirim email atas nama Anda:
Setelah Anda memberikan izin, skrip berjalan sampai selesai.
Periksa akun email tempat Anda mengirim pesan, dan Anda akan menemukan email dengan "Peta" sebagai subjek dan pesan yang terlihat seperti ini:
Saat Anda membuka lampiran dalam pesan email, Anda akan mendapatkan Google Maps dengan pin pada alamat yang Anda masukkan ke sheet:
Hanya dengan empat baris kode, Anda telah mengakses 3 produk Google yang berbeda dengan cara yang bermakna.
7. Referensi lainnya
Kode yang ditampilkan dalam codelab ini juga tersedia di repo GitHub-nya di github.com/googleworkspace/apps-script-intro-codelab. Berikut adalah referensi lainnya untuk membantu Anda mempelajari materi yang dibahas dalam codelab ini lebih dalam dan mengeksplorasi cara lain untuk mengakses alat developer Google secara terprogram.
Dokumentasi
- Situs dokumentasi Google Apps Script
- Apps Script: Layanan Gmail
- Apps Script: Layanan Spreadsheet
- Apps Script: Layanan Maps
Video
Berita & pembaruan
- Blog Developer Google Workspace
- Twitter: Developer Google Workspace (@workspacedevs)
Codelab lainnya
Pengantar
- [Google Spreadsheet] Dasar-Dasar Apps Script dengan Google Spreadsheet
- [REST API] Gunakan Google Workspace & Google API untuk mengakses file & folder di Google Drive Anda
Menengah
- [Apps Script] Add-on Google Workspace untuk Gmail
- [Apps Script] Bot kustom untuk Hangouts Chat
- [REST API] Menggunakan Google Spreadsheet sebagai alat pelaporan aplikasi Anda
- [REST API] Membuat presentasi Google Slide menggunakan BigQuery API