295
PEMBUATAN WEB SERVICE DENGAN GOOGLE SPREADSHEETS
SEBAGAI SOLUSI INTEGRASI APLIKASI MULTIPLATFORM
Lailyn Puad
1, Rike Limia Budiarti
2, Nabila Zahra
31,3
Universitas Nurdin Hamzah/Sistem Informasi
2Universitas Nurdin Hamzah/Teknik Informatika
e-mail:
1lailynfuad@gmail.com
,
2rikelimia@gmail.com
,
3nabila102@gmail.com
ABSTRACT
Multiplatform application development is an unavoidable technological demand. Startup
industries are increasingly emerging by offering convenience from various aspects of life,
retail, finance, green life, artificial intelligence to the Internet of Things. This is in line with the
increasing growth of innovation both systemically and technically, it does not rule out the
possibility that these innovations include ways to use the minimum resources possible to
produce the maximum possible output. The use of the Restfull API is a good solution to solve
this problem, the output, which can be a JSON file, can be communicated with various
application platforms. This study will review the use of popular applications such as Google
Spreadsheets to become a media provider for web services. This method is implemented in the
process of updating student data at the Nurdin Hamzah University in the Dikti Feeder.
Keywords: google spreadsheet, web service, multiplatform, restful, api
ABSTRAK
Pengembangan aplikasi multiplatform menjadi tuntutan teknologi yang tak dapat
dihindari. Industri Startup semakin bermunculan dengan menawarkan kemudahan dari beragam
aspek kehidupan, retail, finance, green life, kecerdasan buatan hingga Internet of Things. Hal
ini beriringan dengan meningkatnya pertumbuhan inovasi baik secara sistemik maupun Teknik,
tak menutup kemungkinan bahwa inovasi tersebut mencakup cara pemanfaatan sumber daya
seminimal mungkin untuk menghasilkan output yang semaksimal mungkin. Penggunaan
Restfull API menjadi salah satu solusi yang baik digunakan untuk menjawab persoalan tersebut,
luaran yang dapat berupa JSON file mampu dikomunikasikan dengan berbagai macam platform
aplikasi. Penelitian ini akan mengulas pemanfaatan aplikasi popular seperti Google
Spreadsheets menjadi media penyedia web service. Metode ini diimplementasikan pada proses
pemutakhiran data mahasiswa Universitas Nurdin Hamzah yang ada di Feeder Dikti.
Kata kunci: google spreadsheet, web service, multiplatform, restful, api
1. PENDAHULUAN
Pembahasan mengenai data dan informasi semakin tak ada habisnya, terlebih saat data menjadi sesuatu yang sangat berharga dengan semakin menjamurnya inovasi berbasis Obiquitous Computing yang menjadikan data sebagai output penting [3]. Industri Startup semakin bermunculan dengan menawarkan kemudahan dari beragam aspek kehidupan,
retail, finance, green life, kecerdasan buatan hingga Internet of Things. Perkembangan teknologi ini membawa keterikatan antara data dengan berbagai macam kepentingan, maka tak heran jika semakin banyak inovasi yang ditujukan untuk meningkatkan proses pengolahan data. Google memiliki banyak layanan yang bisa diakses secara gratis dan mampu memberikan impact besar pada
: first_page – end_page
296
pengembangan sistem [2], hal ini tentu saja menjadi dorongan bagi para pengembang aplikasi dalam menciptakan berbagai macam inovasi yang mampu menghasilkan output maksimal dengan penggunaan sumber daya yang minimal.
Metode komunikasi data Restful API dengan format JSON menjadi pilihan terbaik bagi pengembang dalam mengalirkan data ke banyak platform sekaligus. Google Spreadsheet melalui Google Script mempu mewujudkannya dan bisa dijadikan sebagai solusi alternatif yang cukup efektif [4]. Tren menunjukkan bahwa pengembangan aplikasi multiplatform menjadi salah satu kebutuhan mendasar bagi para pelaku usaha teknologi guna menarik minat dari konsumen dan juga investor [5]. Tidak hanya itu, pertumbuhan teknologi juga mempengaruhi bidang akademik, hal ini ditandai dengan meningkatnya permintaan pengembangan aplikasi yang bersentuhan dengan bidang akademik.
Proses pemutakhiran data mahasiswa di kampus Universitas Nurdin Hamzah (UNH) dilakukan melalui media Google Form yang nantinya data tersebut akan digunakan untuk memperbarui data di Feeder Dikti yang dilakukan secara manual oleh Operator kampus, hal ini tentu saja dirasa sangat tidak efektif. Maka penulis mencoba merangkai sebuah metode komunikasi data yang relatif mudah digunakan dan diterapkan pada sistem manapun.
2. METODE PENELITIAN
Penelitian ini dilakukan dengan menerapkan beberapa Langkah kerja yang mencakup teknis dan non-teknis yang dapat dilihat dari gambar di bawah ini.
Gambar 1. Metode Penelitian 2.1 Observasi
Penelitian ini diawali dengan proses pengamatan pada proses pemutakhiran data mahasiswa UNH yang masih menggunakan Google Form.
2.2 Perbandingan dan Penentuan Metode Beberapa penelitian terdahulu yang membahas mengenai pemanfaatan Google Spreadsheets sebagai Web Service menggambarkan bahwa metode ini masih efektif dan relevan digunakan. Berikut review dari beberapa penelitian terdahulu: a. Penelitian yang dilakukan oleh Indri Handayani dan tim (2017) dengan judul “Pemanfaatan Google Spreadsheet Sebagai Media Pembuatan Dashboard pada Official Site iFacility di Perguruan Tinggi” menerangkan bahwa proses integrasi Google Spreadsheet dengan aplikasi lain sangatlah memungkinkan dengan pemanfaatan Google Script yang telah digunakan.[1]
b. Penelitian yang dilakukan oleh Erlita Rasdiana dan Nursam Somantri (2016) Penerapan yang berjudul “Rinfo Sheet Sebagai Media Penunjang Pembuatan Laporan Untuk Mahasiswa”. Dalam penelitian ini peneliti merasa cara pembelajaran (pembuatan laporan)
297
yang sedang berjalan di Perguruan Tinggi masih berjalan dengan manual dan membutuhkan banyak kertas dan membuang banyak waktu. Sehingga proses pembuatan laporan tersebut penulis memilih menggunakan sarana Google Sheet atau yang lebih di kenal di Perguruan Tinggi tersebut sebagai Rinfo Sheet karena pembuatan laporan sudah bisa dikerjakan melalui online dengan menggunakan media Gmail atau Rinfo yang sudah tersedia pada Perguruan Tinggi. Dengan menggunakannya Google Sheet pembuatan laporan dapat memudahkan mahasiswa dalam proses pembuatan laporan mahasiswa di Perguruan Tinggi.[3]
2.3 Perancangan Prototype
Langkah berikutnya adalah perancangan prototype yang nantinya akan digunakan sebagai landasan pembuatan aplikasi.
Gambar 2. Konsep Restful API dengan Google Spreadsheet
Media input dibangun menggunakan Bahasa pemrograman HTML yang relative mudah, Google Spreadsheet digunakan sebagai layanan basis data dan JSON File sebagai bentuk luaran yang digunakan oleh aplikasi dari platform lain.
2.4 Pembuatan User Interface dan Coding Setelah landasan aplikasi sudah disiapkan, langkah berikutnya adalah pembuatan user interface yang digunakan untuk media input data user.
2.5 Implementasi
Semua komponen sudah disiapkan, langkah terakhir adalah integrasi antar komponen untuk dapat dijadikan sebuah aplikasi siap pakai.
3. HASIL DAN PEMBAHASAN 3.1. Analisis Permasalahan
Penelitian ini memaparkan sebuah tantangan dimana Restful API selalu membutuhkan sumber daya yang cukup untuk dapat melayani request yang beragam dari user, sehingga pengembangan aplikasi multiplatform cukup sulit untuk dilakukan.
Gambar 3. Tampilan Data di Spreadsheet 3.2. Alternatif Solusi
Pemanfaatan Layanan Google dalam proses develop aplikasi bukanlah hal baru, banyak layanan yang sangat dibutuhkan dan memberikan dampak sangat positif bagi efektifitas penggunaan aplikasi. Spreadsheet adalah salah satu layanan google yang cukup popluler dan easy to use, dengan begitu diharapkan konsep ini dapat dengan mudah diimplementasikan. 3.3. Implementasi
3.3.1. Membuat Desain Antarmuka Berikut adalah desain antarmuka yang bisa digunakan untuk media input data. Form ini dibuat menggunakan HTML sehingga bisa dihosting di media-media gratis.
: first_page – end_page
298
Gambar 4. Tampilan Data di Spreadsheet 3.3.2. Pembuatan Spreadsheet file
Spreadsheet file ini nantinya akan dijadikan sebagai media penyimpanan atau basis data yang akan menampung data dari form HTML.
Gambar 5. Membuat File Spreadsheet Baru 3.3.3. Generate Google Script
Langkah berikutnya adalah proses Generate Google Script untuk kebutuhan Restful API yang dapat diakses di https://script.google.com/home.
Gambar 6. Membuat Google Script
1. Script agar bisa Spreadsheet bisa menyimpan data yang dikirimkan dari Form HTML
var sheetName = 'Sheet1'
var scriptProp = PropertiesService.getScriptProperties() function intialSetup () { var activeSpreadsheet = SpreadsheetApp.getActiveSpreadsheet() scriptProp.setProperty('key', activeSpreadsheet.getId()) }
function doPost (e) {
var lock = LockService.getScriptLock() lock.tryLock(10000)
try { var doc =
SpreadsheetApp.openById(scriptProp.getProperty('key')) var sheet = doc.getSheetByName(sheetName) var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues()[0] var nextRow = sheet.getLastRow() + 1 var newRow = headers.map(function(header) { return header === 'timestamp' ? newDate() : e.parameter[header]
})
sheet.getRange(nextRow, 1, 1, newRow.length).setValues([newRow]) returnContentService
.createTextOutput(JSON.stringify({ 'result':
'success', 'row': nextRow }))
.setMimeType(ContentService.MimeType.JSON) }
catch (e) {
returnContentService
.createTextOutput(JSON.stringify({ 'result': 'error',
'error': e }))
.setMimeType(ContentService.MimeType.JSON) }
finally {
299
} }
2. Script agar bisa Spreadsheet bisa menampilkan dalam bentuk Json File
function doGet(e){ var ss =
SpreadsheetApp.openByUrl("https://docs.google.com/spreadshe
ets/d/1U49BoWLVL74FkseWV6C_UnS4G_bcx-R0elNrHPYGhqI/edit#gid=0");
var sheet = ss.getSheetByName("DB-Cama"); return getUsers(sheet);
}
function getUsers(sheet){ var jo = {};
var dataArray = [];
var rows = sheet.getRange(5, 1, sheet.getLastRow()-1, sheet.getLastColumn()).getValues();
var rows = sheet.getDataRange().getValues(); for(var i = 0, l= rows.length; i<l ; i++){
var dataRow = rows[i]; var record = {};
record['no'] = dataRow[0]; record['tgl_daftar'] = dataRow[1]; record['no_tes'] = dataRow[2];
record['nama_lengkap'] = dataRow[3]; dataArray.push(record);
}
jo.user = dataArray;
var result = JSON.stringify(jo); return
ContentService.createTextOutput(result).setMimeType(ContentS ervice.MimeType.JSON);
}
3.3.4. Deployment Setup
Pada tahap ini, script yang telah dibuat dapat diimplementasikan pada aplikasi yang telah disiapkan.
a. Script di file antarmuka.
<script>
const scriptURL =
'https://script.google.com/macros/s/AKfycbwY2l zjfWG8IBT3QCYwjzMFnjT5g9-m8tE39wR-w5Cv0wAF52HFQa26RO4ac7PRRHyf/exec'
const form = document.forms[ 'submit-to-google-sheet']
form.addEventListener('submit', e => { e.preventDefault()
fetch(scriptURL, { method: 'POST', body: new FormData(form)})
.then(response => alert("Pesan Terkirim")) .catch(error => alert("Pesan gagal")) })
</script>
b. Proses Deployment
Gambar 7. Proses Deployment 1
Gambar 8. Proses Deployment 2 c. Bentuk JSON File dari
: first_page – end_page
300
Gambar 9. JSON Formatted File
4. KESIMPULAN
Web service menjadi salah satu solusi yang baik untuk keberlangsungan pengembangan aplikasi multiplatform. Penelitian ini membuktikan bahwa dengan sumber daya yang terbatas, aplikasi multiplatform bisa dikembangkan dengan maksimal.
5. SARAN
Pemanfaatan Bahasa pemrograman popular seperti HTML dan Javascript dipadukan dengan layanan dari Google yang easy to use menjadikan metode ini layak untuk dipertimbangkan sebagai solusi konstruktif berbagai macam masalah apps development. DAFTAR PUSTAKA
[1] I. Handayani, H. Kusumahati, and A. N. Badriah, “Pemanfaatan Google Spreadsheet Sebagai Media Pembuatan Dashboard pada Official Site iFacility di
Perguruan Tinggi,” SISFOTENIKA, 2017, doi: 10.30700/jst.v7i2.155.
[2] Aini, Qurotul, Untung Rahardja, Indri Handayani, Marviola Hardini, and Ahad Ali. "Utilizati on of google spreadsheets as activity information media at the official site alphabet incubator." In Proc. Int. Conf. Ind. Eng. Oper. Manag., no. 7, pp. 1330-1341. 2019.
[3] S. Informasi, L. Puad, and W. Adriana, “PROSIDING seminar nasional sisfotek Pemanfaatan Artificial Intelligence dan SMS Gateway dalam Pembuatan Aplikasi Web Service untuk Meningkatkan Integrasi Data Puskesmas di Kota Jambi,” vol. 3584, pp. 97–101.
[4] Charão, Andrea Schwertner, Felipe Marin, Joao Carlos D. Lima, Cristiano C. da Rocha, and Luiz Angelo Steffenel. "On the Performance of Cloud-based Spreadsheets as a Backend for View-only Web Applications." In ICEIS (1), pp. 642-647. 2018.
[5] Groppe, Sven. "Semantic Hybrid Multi-Model Multi-Platform (SHM3P) Databases." 2021
[6] J. Sanjaya, E. Renata, V. Budiman, F. Anderson, and M. Ayub, “Integrasi Micro-Apps Individual menjadi One-Stop Services Maranatha Application Suite”, JuTISI, vol. 5, no. 3, Jan. 2020.