Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

Sistem Usulan Fasilitas Keselamatan Jalan

Aplikasi web berbasis Google Apps Script untuk menerima usulan fasilitas keselamatan jalan dari kabupaten/kota di Sumatera Utara, lalu menyimpan data ke Google Sheets secara terstruktur.

Ringkasan

Project ini terdiri dari:

  • Frontend: halaman web interaktif untuk memilih kabupaten, ruas jalan, lalu mengirim usulan.
  • Backend: endpoint Apps Script untuk menerima data, memvalidasi, dan menyimpan ke spreadsheet.
  • Konfigurasi deploy: pengaturan Web App agar dapat diakses publik sesuai kebutuhan.

Tujuan

  • Mempermudah input usulan fasilitas keselamatan jalan per ruas.
  • Menyimpan data secara terpusat ke Google Sheets.
  • Mendukung routing data ke sheet sesuai nama kabupaten (termasuk format bernomor seperti 9. ASAHAN).

Struktur Project

  • Index.html: UI dashboard, daftar kabupaten, tabel ruas, modal input, submit data ke backend.
  • Kode.gs: doGet, fungsi simpanUsulan, pemilihan sheet target, penyimpanan data.
  • appsscript.json: konfigurasi runtime dan akses Web App.

Fitur Utama

  • Navigasi kabupaten/kota dan pencarian cepat.
  • Daftar ruas jalan per kabupaten.
  • Form input fasilitas:
    • Rambu
    • Markah
    • Paku Jalan
    • Delineator
    • LPJU
    • ZoSS
    • Guardrail
    • Keterangan
  • Validasi minimal satu fasilitas harus diisi.
  • Feedback submit sukses/gagal ke pengguna.
  • Penyimpanan data ke Google Sheets dengan status awal MENUNGGU VERIFIKASI.
  • Routing otomatis ke sheet kabupaten jika tersedia, fallback ke sheet DataUsulan jika tidak ditemukan.

Arsitektur Singkat

  1. Pengguna membuka Web App.
  2. Pengguna memilih kabupaten dan ruas jalan.
  3. Pengguna mengisi form usulan lalu klik KIRIM DATA.
  4. Frontend memanggil google.script.run.simpanUsulan(data).
  5. Backend:
    • membuka spreadsheet target,
    • mencari sheet sesuai kabupaten,
    • membuat sheet fallback DataUsulan bila diperlukan,
    • append baris data usulan.
  6. Frontend menampilkan hasil respons dari backend.

Skema Data Tersimpan

Urutan kolom yang disimpan:

  1. TANGGAL
  2. KABUPATEN/KOTA
  3. RUAS JALAN
  4. RAMBU (unit)
  5. MARKAH (unit)
  6. PAKU JALAN
  7. DELINEATOR
  8. LPJU
  9. ZoSS
  10. GUARDRAIL
  11. KETERANGAN
  12. STATUS

Konfigurasi Penting

Spreadsheet ID saat ini di backend:

  • 1w4OWsvMGo2d6b3J9Ig8yJqzqxJK_nPTiOB_FufhCrTg

Jika ingin ganti spreadsheet, ubah ID pada Kode.gs.

Cara Deploy (Google Apps Script Web App)

  1. Buka project di Google Apps Script.
  2. Pilih menu Deploy > New deployment (atau Manage deployments > Edit).
  3. Pilih tipe Web app.
  4. Set parameter:
    • Execute as: Me (deployer/owner)
    • Who has access: Anyone
  5. Deploy dan otorisasi jika diminta.
  6. Gunakan URL Web App terbaru untuk pengujian.

Catatan:

  • Jika membuka file HTML di luar URL Web App, google.script.run tidak tersedia.
  • Selalu uji dari URL hasil deployment.

Cara Uji Cepat

  1. Buka Web App URL.
  2. Pilih kabupaten (misal Asahan).
  3. Klik salah satu ruas lalu Input Usulan.
  4. Isi minimal 1 nilai fasilitas.
  5. Klik KIRIM DATA.
  6. Cek sheet kabupaten terkait (misal 9. ASAHAN) atau fallback DataUsulan.

Troubleshooting

1) Tombol KIRIM DATA tidak bereaksi

Penyebab umum:

  • Bukan dibuka dari URL Web App deploy.
  • Deploy belum versi terbaru.

Solusi:

  • Redeploy, lalu buka URL terbaru.

2) Data tidak masuk ke sheet kabupaten

Penyebab umum:

  • Nama sheet tidak cocok dengan nama kabupaten.

Solusi:

  • Pastikan sheet bernama sesuai kabupaten, contoh ASAHAN atau 9. ASAHAN.
  • Jika tidak ada, data akan masuk ke DataUsulan.

3) Error akses spreadsheet

Penyebab umum:

  • Konfigurasi deploy tidak sesuai (execute/access).
  • Spreadsheet ID salah.

Solusi:

  • Cek konfigurasi deploy Web App.
  • Verifikasi Spreadsheet ID di backend.

Keamanan dan Operasional

  • Untuk mode publik, gunakan validasi input yang ketat.
  • Batasi perubahan struktur sheet produksi tanpa koordinasi.
  • Simpan backup data berkala pada spreadsheet.

Rencana Pengembangan Lanjutan

  • Sinkronisasi langsung ke layout tabel per-sheet (bukan hanya append row sederhana).
  • Log audit (siapa submit, kapan, dari kabupaten mana).
  • Dashboard rekap status verifikasi per kabupaten.
  • Export laporan periodik.

Lisensi

Dokumen ini dibuat untuk kebutuhan internal Dinas Perhubungan Provinsi Sumatera Utara.

About

Aplikasi web berbasis Google Apps Script untuk menerima usulan fasilitas keselamatan jalan dari kabupaten/kota di Sumatera Utara, lalu menyimpan data ke Google Sheets secara terstruktur.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages