Membuat CRUD API Menggunakan Google Sheets (Bagian 3 Update/Edit Data)

API Google Sheets Bagian 3

Terima kasih kepada teman teman yang telah setia menunggu tulisan berikutnya, seperti yang telah saya janjikan step berikutnya, bagian 3 seri Update Data. Untuk bisa mengikuti tutorial seri ini diharapkan telah membaca bagian pertama  dan bagian kedua. Pada bagian ke 3 ini, case nya adalah kita akan meng-update / mengedit kehadiran yang ada dalam Google Sheet bernama latihan yang telah kita buat sebelumnya. Agar dapat meng-edit dengan benar, kita harus tahu id unique dari siswa yang akan kita edit. Id unique untuk siswa biasanya adalah nis, kalau kita lihat dari Google Sheet yang kita miliki, nis ini terletak di kolom pertama

Jadi, gambarannya adalah seperti ini, user akan memasukan nis berapa yang di edit, kemudian kita buat method untuk menemukan nis yang di minta oleh user yang ada di kolom pertama, setelah ketemu di baris berapa, kemudian method yang kita buat ini akan mengedit nilai status yang ada di dalam kolom ketiga. Seperti itu yah flow dari seri ketiga ini 🙂 , supaya tulisan ini mudah untuk diikuti, saya membaginya menjadi beberapa bagian yaitu

  1. Membuat filtering di doPost untuk action update
  2. Membuat method update_data() untuk handle request user
  3. Melakukan testing dengan Postman

Membuat filtering di doPost untuk action update

Silahkan buka google scriptnya, masuk ke dalam method doPost(), tambahkan filtering action di switch nya menjadi seperti ini :

Membuat method update_data() untuk handle request user

Setelah membuat filtering, selanjutnya adalah kita buat method update_data(request. sheet) di bawah method doGet()

buat dua variabel di dalam update_data(), yaitu nis dan update status

var nis digunakan untuk menampung nis yang nantinya digunakan sebagai filtering di Google Sheet-nya (menunjukan nis mana yang akan di update), sementara statusUpdate digunakan untuk menyimpan status terbaru dari nis yang bersangkutan. Nilai nis dan status di Google sheet yang telah kita buat, terletak di sebuah cell di spreadsheetnya. Untuk mendapatkan cell di spreadsheet, kita harus tahu posisi baris dan kolomnya (hal ini pernah kita pelajari di bagian kedua), agar kita mendapatkan baris dan kolomnya kita akan melakukan proses perulangan (looping). Tambahkan proses looping berikut ini :

Variable flag digunakan sebagai filtering nis ada atau tidak, sedangkan lastRow digunakan untuk mengetahui baris terakhir data yang kita miliki. Perhatikan perulangan for di situ, row nya dimulai dari baris kedua, kenapa bisa demikian? adakah yang tahu he he … hal ini dikarenakan baris pertama data kita adalah nama kolom, bukan data he he :). Looping ini digunakan untuk menemukan nis yang sama dengan nis yang dikirim oleh user, jika nis nya diketemukan, akan ngambil nilai row nya untuk menuju ke kolom tiga, yaitu kolom status.

Perhatikan method getRange di situ, memiliki dua parameter, parameter pertama adalah nilai barisnya, parameter kedua adalah kolomnya. Setelah di ketemukan posisi cell dari status yang mau di-update, selanjutnya adalan memasukan nilai statusUpdate ke dalam cell nya dengan method setValue(statusUpdate). Setelah kita meng-update nilainya, langkah selanjutnya adalah kita membuat return berupa JSON dari method ini untuk di konsumsi oleh user.

Ok, untuk logic si Google script sudah selesai, silakan simpan dan jangan lupa lakukan publish web app dan naikan versinya, agar perubahan yang kita lakukan bisa bekerja.

Melakukan testing dengan Postman

Buka postmannya dan kirim empat variabel sebagai parameter request di Postman. Variabel itu adalah action, tabelName, nis dan status.

Setelah itu, klik tombol send dan lihat hasil respon JSON nya

ok, seri ke tiga telah selesai, nantikan seri selanjutnya yah, semoga bermanfaat :).

“Tak ada yang sia-sia dalam hidup ini, so nikmati aja, dan jangan lupa caranya tersenyum seberat apapun masalahmu”

Dilihat 734 kali

Related Posts

About The Author

Android Dev , ERP / Odoo Dev and author