perancangan sistem informasi geografis...
TRANSCRIPT
PERANCANGAN SISTEM INFORMASI GEOGRAFIS KEBAKARAN
( STUDI KASUS SUKU DINAS PEMADAM KEBAKARAN JAKARTA TIMUR )
Skripsi Sebagai Salah Satu Syarat Untuk Memperoleh Gelar
Sarjana Komputer Fakultas Sains dan Teknologi
Universitas Islam Negeri (UIN) Syarif Hidayatullah Jakarta
Oleh Linggo Murti
103093029710
PROGRAM STUDI SISTEM INFORMASI FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI (UIN)
SYARIF HIDAYATULLAH JAKARTA
2010 M / 1431 H
i
PERANCANGAN SISTEM INFORMASI GEOGRAFIS KEBAKARAN
( STUDI KASUS SUKU DINAS PEMADAM KEBAKARAN JAKARTA TIMUR )
Skripsi
Sebagai Salah Satu Syarat Untuk Memperoleh
Gelar Sarjana Komputer
Pada Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta
Oleh
Linggo Murti
103093029710
Menyetujui,
Pembimbing I
Dr. Eko Syamsudin Hasrito, M.Eng NIP.
Pembimbing II
Zainul Arham, M.Si NIP. 19740730 200710 1 002
Mengetahui,
Ketua Program Studi Sistem Informasi
Aang Subiyakto, M.Kom NIP. 150411252
ii
Dengan ini menyatakan bahwa skripsi yang ditulis oleh :
Nama : Linggo Murti
NIM : 103093029710
Program Studi : Sistem Informasi
Judul Skripsi : Perancangan Sistem Informasi Geografis Kebakaran (
Studi Kasus Suku Dinas Pemadam Kebakaran Jakarta
Timur )
Dapat diterima sebagai syarat kelulusan untuk memperoleh gelar Sarjana Komputer
pada Program Studi Sistem Informasi, Fakultas Sains dan Teknologi UIN Syarif
Hidayatullah Jakarta.
Jakarta, Agustus 2010
Menyetujui
Penguji I
Dr. Syopiansyah Jaya Putra, M.Sis NIP. 150 317 956
Penguji II
Aang Subiyakto, M.Kom NIP. 150411252
Mengetahui
Dekan Fakultas Sains dan Teknologi, UIN Syarif Hidayatullah Jakarta
Dr. Syopiansyah Jaya Putra, M.Sis NIP. 150 317 956
Ketua Program Studi Sistem Informasi
Aang Subiyakto, M.Kom NIP. 150411252
iii
PERNYATAAN
DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENAR-BENAR
HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI
SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU
LEMBAGA MANAPUN
Jakarta, Agustus 2010
Linggo Murti 103093029710
iv
ABSTRAK
LINGGO MURTI, Perancangan Sistem Informasi Geografis Kebakaran pada Suku Dinas Pemadam Kebakaran Jakarta Timur, (dibawah bimbingan Bapak Eko Syamsudin Harsito, dan Bapak Zainul Arham )
Suku Dinas Pemadam Kebakaran Kotamadya Jakarta Timur yang berwenang menanggulangi masalah Kejadian Kebakaran di wilayah Jakarta Timur, harus siaga dalam menangani masalah ini . Dari hasil penelitian penulis, proses pengolahan data kebakaran dan pelaporan kasus kejadian kebakaran masih dilakukan secara sederhana. Untuk itu diperlukan suatu aplikasi untuk memaksimal proses penanganan kebakaran dan meningkatkan kualitas informasi penyebaran kasus kebakaran di wilayah Jakarta Timur. Dalam penelitiannya penulis merancang sebuah aplikasi berbasis SIG dalam mengolah data kebakaran (mencari lokasi, menentukan pos penanganan kebakaran terdekat dan pembuatan laporan penyebaran kebakaran) . Dalam mengembangkan Sistem Informasi Geografis Kebakaran pada Wilayah Jakarta Timur ini, penulis menggunakan metode terstruktur dari siklus hidup pengembangan sistem (system development life cycle-SDLC) dengan model pendekatan waterfall, dan pengembangan aplikasi ini menggunakan bahasa pemrograman Avenue pada ArcView 3.3. Harapannya, hasil penelitian ini mampu memaksimalkan proses penanganan kebakaran, pengolahan data dan pelaporan data penyebaran kasus kebakaran di wilayah Jakarta Timur oleh SUDIN Pemadam Kebakaran Jakarta Timur.
V Bab + 121 halaman + Daftar Pustaka + Lampiran, 2009 Kata kunci : perancangan Sistem Informasi Geografis (SIG), Penanganan
Kebakaran, pengolahan data kebakaran. Buku Acuan (10, 1994 – 2007)
v
KATA PENGANTAR
Assalamu’alaikum Wr. Wb.
Puji dan syukur penulis panjatkan kehadirat Allah SWT, karena hanya dengan
Ridha-Nya penulis dapat menyelesaikan skripsi ini yang berjudul “Analisa dan
Perancangan Sistem Informasi Geografis Kebakaran (study kasus: Suku Dinas
Pemadam Kebakaran Jakarta Timur)”.
Penulis menyadari bahwa skripsi ini tidak dapat terselesaikan dengan baik
tanpa bantuan dari berbagai pihak. Pada kesempatan ini, penulis ingin mengucapkan
terima kasih yang sebesar-besarnya atas bimbingan dan arahan yang diberikan
kepada penulis selama menyusun skripsi ini. Oleh karena itu izinkanlah penulis
menyampaikan ucapan terima kasih kepada :
1. Bapak DR. Syopiansyah Jaya Putra, M.Sis selaku Dekan Fakultas Sains dan
Teknologi UIN Syarif Hidayatullah Jakarta.
2. Bapak Aang Subiyakto, M.Kom serta Ibu Nur Aeni Hidayah, MMSI selaku
Ketua dan Sekertaris Program Studi Sistem Informasi
3. Bapak Dr. Eko Syamsudin M.Eng selaku Dosesn Pembimbing I dan Bapak
Zainul Arham M.Si selaku Dosen Pembimbing II.
4. Bapak Munadi S.Sos selaku Pimpinan SUDIN Kebakaran Jakarta Timur dan
seluruh staf SUDIN Kebakaran Jakarta Timur, terima kasih atas bantuan dan
kerjasamanya.
5. Kedua orang tua, yang telah memberikan do’a untuk membantu dalam
penyelesaian skripsi ini.
vi
6. Teman-teman seperjuangan di Program Studi Sistem Informasi angkatan 2003 .
annep, makasih banyak waktunya dan teman-teman lainnya yang telah
mambantu dalam penyelesaian skripsi ini.
7. Ristty Wara Ariestyadi terima kasih atas semua rasa yang kau berikan.
8. Teman-teman dekat yang telah mendukung, mendoakan dan memberikan
motifasi kepada penulis sehingga penulisan skripsi ini dapat terselesaikan.
Penulis menyadari bahwa skripsi ini masih jauh dari sempurna, dengan segala
kerendahan hati, saran dan kritik akan sangat membantu untuk proses perbaikan
selanjutnya, semoga skripsi ini dapat berguna bagi penulis khususnya dan bagi
pembaca umumnya.
Wassalamu’alaikum Wr. Wb.
Jakarta, Agustus 2010
Linggo Murti
Penulis
vii
DAFTAR ISI
Halaman Judul...........................................................................................................i
Lembar Persetujuan Pembimbing............................................................................ ii
Lembar Pengesahan Ujian...................................................................................... iii
Lembar Pernyataan................................................................................................. iv
Abstrak.....................................................................................................................v
Kata Pengantar........................................................................................................vi
Daftar Isi............................................................................................................... viii
Daftar Gambar...................................................................................................... xiv
Daftar Tabel......................................................................................................... xvii
Daftar Simbol........................................................................................................xix
BAB I : PENDAHULUAN
1.1 Latar Belakang......................................................................... 1
1.2 Perumusan Masalah................................................................. 4
1.3 Batasan Masalah...................................................................... 5
1.4 Tujuan dan Manfaat................................................................. 6
1.4.1 Tujuan..........................................................................6
1.4.2 Manfaat........................................................................6
1.5 Metodologi............................................................................... 7
1.6 Sistematika Penulisan...............................................................9
viii
BAB II : LANDASAN TEORI
2.1 Sistem Informasi................................................................... 10
2.1.1 Pengertian Sistem........................................................10
2.1.2 Karakteristik Sistem.................................................... 11
2.1.3 Pengertian Data dan Informasi..................................... 12
2.1.4 Pengertian Sistem Informasi......................................... 13
2.2 Sistem Informasi Geografis....................................................
2.2.1 Konsep Dasar Sistem Informasi Geografis..................
2.2.2 Pengertian Sistem Informasi Geografis.......................
13
14
13
2.2.3 Komponen Sistem Informasi Geografis....................... 15
2.2.4 Subsistem Sistem Informasi Geografis........................ 16
2.2.5 Model Data pada Sistem Informasi Geografis............. 17
2.2.6 Kemampuan Sistem Informasi Geografis.................... 19
2.2.7 Fungsi Analisis pada Sistem Informasi Geografis....... 20
2.2.8 Perangkat Lunak Sistem Informasi Geografis............. 21
2.3 Proses Pengembangan Sistem ............................................... 23
2.3.1 Model SDLC (System Development Life Cycle).......... 24
2.3.2 Waterfall Model........................................................... 25
2.4 Alat/Tools Perancangan Sistem ........................................... 27
2.4.1 Flowchart (Diagram Alir)............................................ 27
2.4.2 DFD (Data Flow Diagram)......................................... 29
2.4.3 ERD (Entity Relationship Diagram)............................ 29
2.4.4 Normalisasi................................................................... 30
ix
2.4.5 STD (State Transition Diagram)................................. 31
2.4.6 Kamus Data................................................................. 32
2.5 Kebakaran.............................................................................. 32
2.5.1 Konsep Dasar Kebakaran............................................. 32
2.5.2 Kelas-Kelas Kebakaran................................................. 32
2.5.3 Konsep Dasar Dinas Pemadam Kebakaran Jakarta
Timur ........................................................................... 33
2.5.4 Konsep Dasar Fungsi Pendukung................................ 35
2.5.5 Konsep Dasar Jalan ..................................................... 37
BAB III : METODOLOGI PENELITIAN
3.1 Lokasi dan Waktu Penelitian................................................ 38
3.2 Peralatan dan Bahan.............................................................. 38
3.2.1 Peralatan...................................................................... 38
3.2.2 Bahan........................................................................... 39
3.3 Ruang Lingkup Penelitian...................................................... 39
3.4 Metode Pengumpulan Data.................................................... 41
3.4.1 Studi Pustaka.............................................................. 42
3.4.2 Observasi Lapangan..................................................... 42
3.4.3 Wawancara................................................................... 43
3.5 Metode Pengembangan Sistem.............................................. 44
3.5.1 Rekayasa dan Pemodelan Sistem.... ............................ 44
x
3.5.2 Analisis Sistem (Kebutuhan)........................................ 45
3.5.3 Perancangan (Design).................................................. 45
3.5.4 Penulisan Program (Coding)........................................ 45
3.5.5 Pengujian (Testing).................................................... ..46
3.5.6 Operasi dan Pemeliharaan............................................. ..46
BAB IV : HASIL DAN PEMBAHASAN
4.1 Perencanaan Sistem Informasi Geografis Kebakaran......... ..47
4.2 Metode Pengembangan Sistem.............................................. 42
4.2.1 Rekayasa dan Pemodelan Sistem.... ............................ 42 48
4.2.1.1 Latar Belakang Dinas Pemadam Kebakaran
Jakarta Timur .................................................. 49
4.2.1.2 Tugas dan Fungsi Dinas Pemadam Kebakaran
Jakarta Timur................................................... 50
4.2.1.3 Struktur Organisasi Dinas Pemadam Kebakaran
Jakarta Timur .................................................. 50
4.2.1.4 Rekayasa Sistem............................................... 51
4.2.2 Analisis Sistem (Kebutuhan)........................................ 52
4.2.2.1 Sistem yang Sedang Berjalan........................... 52
4.2.2.2 Kebutuhan Sistem yang Sedang Berjalan........ 55
4.2.2.3 Usulan Pemecahan Masalah............................. 56
4.2.3 Perancangan (Design).................................................. 58
4.2.3.1 Perancangan Data Flow Diagram SIGK............. 58
xi
4.2.3.2 Perancangan Kamus Data SIGK........................ 68
4.2.3.3 Perancangan Basis Data SIGK ......................... 70
4.2.3.4 Perancangan Input / Output SIGK...................... 85
4.2.4 Penulisan Program (Coding)........................................ ..99
4.2.4.1 Spesifikasi program untuk modul pembuka.. ..99
4.2.4.2 Spesifikasi program untuk modul layar
utama.............................................................. ...99
4.2.4.3 Spesifikasi program untuk sub menu Menu
Utama ……………………..…...…..........…. 102
4.2.4.4 Spesifikasi program untuk sub menu
Informasi ……........……..………………..... 103
4.2.4.5 Spesifikasi program untuk sub menu Peta
Tematik ........…………................................. 103
4.2.4.6 Spesifikasi program untuk sub menu
Penanganan Kebakaran ……........................ 104
4.2.4.7 Spesifikasi program untuk sub menu
Pemeliharaan Data………............................ 105
4.2.4.8 Spesifikasi program untuk sub menu
Laporan.............…………………………… 107
4.2.4.9 Spesifikasi program untuk sub menu
Petunjuk .............…………………………… 108
4.2.5 Pengujian (Testing).................................................... 109
4.2.6 Operasi dan Pemeliharaan......................................... 111
xii
4.2.6.1 Pemakaian SIGK............................................ 112
4.2.6.2 Evaluasi........................................................... 112
4.2.6.3 Kelebihan SIGK.............................................. 118
4.2.6.4 Kekurangan SIGK........................................... 119
BAB V : PENUTUP
5.1 Kesimpulan...........................................................................120
5.2 Saran.....................................................................................121
DAFTAR PUSTAKA......................................................................................... 169
LAMPIRAN I WAWANCARA........................................................................ 170
LAMPIRAN II DOKUMEN-DOKUMEN...................................................... 171
LAMPIRAN III TATA CARA PENGGUNAAN APLIKASI SIGK............ 172
LAMPIRAN IV SCRIPT PROGRAM............................................................173
xiii
DAFTAR GAMBAR
Gambar 1.1 Grafik kejadian kebakaran, tahun 2000 – 2008 di wilayah jakarta
Timur................................................................................................ 2
Gambar 1.2 Grafik Kerugian yang disebabkan kebakaran, tahun 2000 – 2008 di
wilayah jakarta timur....................................................................... 2
Gambar 2.1 Subsistem SIG.................................................................................. 16
Gambar 2.2 Data Raster....................................................................................... 18
Gambar 2.3 Data Vektor...................................................................................... 19
Gambar 2.4 Pengembangan Sistem dengan Model Waterfall............................. 25
Gambar 3.1 Pengembangan Sistem dengan Model Waterfall............................. 44
Gambar 4.1 Struktur Organisasi Dinas Pemadam Kebakaran Jakarta Timur....... 50
Gambar 4.2 Diagram Alir Dokumen Sistem Yang Berjalan................................. 54
Gambar 4.3 Diagram Alir Dokumen Sistem Usulan............................................ 57
Gambar 4.4 Diagram Konteks............................................................................. 58
Gambar 4.5 Diagram Nol..................................................................................... 59
Gambar 4.6 Diagram Rinci 1.0 ( Pengolahan Data Geografis ) ......................... 62
Gambar 4.7 Diagram Rinci 2.0 (Pengolahan Data Kebakaran) ........................ 64
Gambar 4.8 ERD Sebelum di Normalisasikan................................................... 70
Gambar 4.9 ERD SIGK Sesudah Di Normalisasikan......................................... 75
Gambar 4.10 STD Layar Utama SIGK............................................................. 85
Gambar 4.11 STD Menu Utama........................................................................ 86
Gambar 4.12 STD Menu Informasi.................................................................... 86
Gambar 4.13 STD Menu Peta Tematik............................................................... 87
xiv
Gambar 4.14 STD Menu Penanganan Kebakaran.............................................. 87
Gambar 4.15 STD Menu Pemeliharaan Data..................................................... 88
Gambar 4.16 STD Menu Laporan...................................................................... 89
Gambar 4.17 STD Menu Petunjuk..................................................................... 89
Gambar 4.18 Perancangan Layar Utama............................................................ 90
Gambar 4.19 Perancangan Layar Menu Utama................................................. 91
Gambar 4.20 Perancangan Layar Menu Informasi............................................ 92
Gambar 4.21 Perancangan Layar Menu Peta Tematik........................................ 93
Gambar 4.22 Perancangan Menu Penanganan Kebakaran................................. 93
Gambar 4.23 Perancangan Layar Menu Pemeliharaan Data.............................. 94
Gambar 4.24 Perancangan Layar Menu Laporan............................................... 95
Gambar 4.25 Perancangan Layar Menu Petunjuk............................................... 95
Gambar 4.26 Rancangan Dialog Login.............................................................. 96
Gambar 4.27 Dialog Seleksi Wilayah................................................................ 96
Gambar 4.28 Dialog Print.................................................................................. 96
Gambar 4.29 Dialog Print Setup........................................................................ 97
Gambar 4.30 Rancangan Dialog Pemeliharaan Data Pos dan RS...................... 97
Gambar 4.31 Rancangan Dialog Entri Data Kebakaran..................................... 97
Gambar 4.32 Rancangan Dialog Pemeliharaan data ”Kasus Kebakaran” ........ 98
Gambar 4.33 Tabel hasil kuisioner tampilan aplikasi......................................... 114
Gambar 4.34 Tabel hasil kuisioner fasilitas aplikasi........................................... 115
Gambar 4.35 Tabel hasil kuisioner penggunaan fasilitas.................................... 115
Gambar 4.36 Tabel hasil kuisioner informasi yang dihasilkan............................ 116
xv
xvi
Gambar 4.37 Tabel hasil kuisioner penyajian laporan........................................ 116
Gambar 4.38 Tabel hasil kuisioner manfaat informasi yang dihasilkan............. 117
DAFTAR TABEL
Tabel 2.1 Tabel Pembagian Kantor Polisi…………………………………….... 36
Tabel 4.1 Kamus Data SIGK................................................................................ 68
Tabel 4.2 Bentuk Tidak Normal........................................................................... 71
Tabel 4.3 Bentuk 1NF.......................................................................................... 72
Tabel 4.4 Bentuk 2 NF......................................................................................... 73
Tabel 4.5 Bentuk 3 NF......................................................................................... 74
Tabel 4.6 Tabel Provinsi...................................................................................... 76
Tabel 4.7 Tabel Kotamadya................................................................................. 76
Tabel 4.8 Tabel Kecamatan.................................................................................. 76
Tabel 4.9 Tabel Kelurahan.................................................................................. 77
Tabel 4.10 Tabel Pos Polisi.................................................................................. 77
Tabel 4.11 Tabel pos pemadam........................................................................... 77
Tabel 4.12 Tabel Rumah sakit............................................................................. 78
Tabel 4.13 Tabel Jalan......................................................................................... 78
Tabel 4.14 Tabel Sungai...................................................................................... 79
Tabel 4.15 Tabel Data kebakaran.dbf................................................................... 79
Tabel 4.16 Tabel Pelapor.dbf .............................................................................. 80
Tabel 4.17 Tabel Penyebab kebakaran per kecamatan.dbf .................................. 80
Tabel 4.18 Tabel Waktu kebakaran per kecamatan.dbf ...................................... 80
Tabel 4.19 Tabel Benda terbakar per kecamatan.dbf ......................................... 81
Tabel 4.20 Tabel Kejadian Kebakaran per Kecamatan.dbf.................................. 81
Tabel 4.21 Tabel Kej Keb bulanan per kecamatan.dbf......................................... 82
xvii
Tabel 4.22 Tabel Penyebab kebakaran per kelurahan.dbf ................................... 82
Tabel 4.23 Tabel Waktu kebakaran per kelurahan.dbf ........................................ 83
Tabel 4.24 Tabel Benda terbakar per kelurahan.dbf............................................. 83
Tabel 4.25 Tabel Kejadian Kebakaran per kelurahan.dbf.................................... 83
Tabel 4.26 Tabel Kej Keb bulanan per kelurahan.dbf.......................................... 84
Tabel 4.27 Hasil Pengujian................................................................................ 109
Tabel 4.28 Perbandingan Sistem Lama dan Sistem Baru.................................. 118
xviii
DAFTAR SIMBOL
DAFTAR SIMBOL DFD (Data Flow Diagram)
Menurut Jourdan dan DeMarco (Ladjamudin, p64 -70)
No Jourdan dan DeMarco Keterangan a.
External entity (kesatuan luar) merupakan entity di lingkungan luar sistem yang dapat berupa orang, organisasi atau sistem lain yang berada di lingkungan luarnya yang akan memberikan masukkan (input) atau menerima keluaran (output) dari sistem. External entity (kesatuan luar) disimbolkan dengan suatu kotak.
b.
Proses adalah pekerjaan yang dilakukan oleh sistem sebagai respon terhadap aliran data yang masuk menjadi aliran data yang keluar. Suatu proses ditunjukkan dengan simbol lingkaran.
c.
Arus data adalah data yang menjadi masukkan (input) atau keluaran (output) menuju atau dari proses. Arus data diberi simbol dengan suatu panah.
d.
Simpanan data adalah merupakan tempat penyimpanan data yang akan digunakan oleh proses-proses yang ada di dalam sistem. Data store dapat berupa file/database yang tersimpan dalam disket, harddisk atau bersifat manual seperti buku alamat, file folder.
xix
STATE TRANSITION DIAGRAM (STD)
Menurut Roger, S. Pressman
Nama Notasi Keterangan Keadaan Sistem
(State) Setiap kotak mewakili suatu keadaan dimana
sistem mungkin berada didalam state
Perubahan sistem
Untuk memungkinkan suatu keadaan dengan keadaan lain, jika sistem melakukan transisi dalam perilakunya maka suatu keadaan berubah menjadi keadaan tertentu.
Kondisi dan aksi
Untuk melengkapi STD dibutuhkan dua hal tambahan, yaitu kondisi sebelum keadaan. Gambar disamping adalah ilustrasi dari kondisi dan aksi yang ditampilkan disebelah anak panah yang menghubungkan dua keadaan.
Condition Action
Keadaan 1
Keadaan 2
DAFTAR SIMBOL ERD (Entity Relationship Diagram)
Menurut Ladjamudin (2005, p 142)
No Simbol Keterangan
a.
Persegi panjang Entitas/tipe entitas menyatakan kelompok orang, tempat, objek, kejadian atau konsep tentang apa yang kita perlukan untuk menangkap dan menyimpan data.
b.
Ellips menyatakan atribut-atribut entity set Atribut adalah item data yang menjadi bagian dari entitas, sifat atau karakteristik suatu entitas.
xx
c.
Belah ketupat (Diamond) menggambarkan hubungan bisnis alami yang ada diantara satu atau lebih entitas.
d.
Garis, menghubungkan antara entity set dengan atribut-atributnya dan antara entity set dengan relationship setnya.
Notasi Derajat Relasi Minimum dan Maksimum
1 : 1
1 : M
1 : N
DAFTAR SIMBOL FLOW CHART
Menurut Ladjamudin (2005, p263)
Flow Directions Symbols (simbol Penghubung )
No Simbol Arti Keterangan
1. Simbol flow atau arus
Untuk menyatakan jalannya arus suatu proses
2. Simbol communication Link
Untuk menyatakan bahwa adanya transisi suatu data atau informasi dari satu lokasi ke lokasi lainnya.
3. Simbol connector Untuk menyatakan sambungan dari satu proses ke proses lainnya dalam halaman yang sama
4. Simbol offline Connector
Untuk menyatakan sambungan dari satu proses ke proses lainnya dalam halaman yang berbeda.
m
1
1
n
m
1
xxi
Process Symbols (simbol proses)
No Simbol Arti Keterangan
1. Simbol Process
Untuk menunjukan proses yang dilakukan secara komputerisasi
2. Simbol Manual
Menunjukkan pekerjaan manual
3. Simbol Decision / Logical
Simbol keputusan
4. Simbol Predefined Process
menyatakan penyediaan tempat penyimpanan suatu pengolahan untuk memberi harga awal.
5. Simbol Terminal Untuk menyatakan permulaan atau akhir suatu program.
6. Simbol Keying Operation
Untuk menyatakan segala jenis operasi yang diproses menggunakan suatu mesin yang berkeyboard.
7. Simbol Off-line Storage Untuk menunjukan bahwa data dalam simbol ini akan disimpan ke suatu media tertentu.
8. Simbol Manual Input Untuk memasukan data secara manual dengan online keyboard.
Input-output Symbols (simbol input-output)
No Simbol Arti Keterangan
1. Simbol Input-output
Untuk menyatakan proses input dan output tanpa tergantung dengan jenis peralatannya.
2. Simbol Punched Card Untuk menyatakan input berasal dari kartu atau output ditulis ke kartu.
3. Simbol Document Untuk mencetak laporan ke printer
xxii
4. Simbol Disk Storage
Untuk menyatakan input berasal dari disk atau output disimpan ke disk.
5. Simbol Magnetic-tape unit
Untuk menyatakan input berasal dari pita magnetic atau output disimpan ke pita magnetic.
6. Simbol Display
Untuk menyatakan peralatan output yang digunakan berupa layar komputer.
DAFTAR SIMBOL KAMUS DATA
Menurut Ladjamudin (2005)
No Simbol Uraian
1 = Terdiri dari, mendefinisikan, diuraikan menjadi, artinya
2 + Dan
3 ( ) Opsional (boleh ada atau boleh tidak)
4 { } Pengulangan data
5 [ ] Memilih salah satu dari sejumlah alternative, seleksi
6 ** Komentar
7 @ Identifikasi attribut kunci
8 ! Pemisah sejumlah alternative pilihan antara simbol [ ]
xxiii
1
BAB I
PENDAHULUAN
1.1 Latar Belakang
Wilayah kotamadya Jakarta Timur yang merupakan bagian dari kota
Jakarta yang telah memainkan peranan penting dalam menunjang
pembangunan kota Jakarta. Kotamadya Jakarta Timur telah berperan sebagai
kawasan perdagangan dan jasa baik dalam skala pelayanan nasional maupun
regional, serta telah berfungsi sebagai kawasan hunian. Berbagai peran dan
fungsi tersebut mengakibatkan perkembangan wilayah tersebut menjadi
sangat pesat, baik dari perkembangan fisik dan aktifitasnya.
Resiko dari perkembangan yang pesat adalah munculnya berbagai
macam masalah sosial yang tidak dapat dihindari, misalnya kejahatan,
kesehatan serta salah satu hal yang terpenting adalah ancaman bahaya
kebakaran.
Di kota-kota besar seperti Jakarta khususnya kotamadya Jakarta
Timur tidak akan luput dari musibah kebakaran, karena sebagaian wilayahnya
sudah berfungsi sebagai kawasan hunian padat penduduk, banyak berdirinya
pabrik-pabrik dan gedung-gedung. Yang dalam pendiriannya tidak
memperhatikan aturan tata ruang kota yang baik, banyaknya pencurian listrik
dari tiang listrik di pinggir jalan. Hal-hal tersebut merupakan faktor yang
berpengaruh dalam terciptanya kebakaran.
Kotamadya Jakarta Timur sebagai wilayah terbesar di ibukota Jakarta
yang memiliki 10 kecamatan dan 65 kelurahan serta memiliki unit pos
pemadam kebakaran terbanyak dibandingkan dengan wilayah kotamadya
2
lainnya, yaitu dengan jumlah 20 unit pos pemadam kebakaran yang tersebar
diseluruh wilayah kotamadya Jakarta Timur. Namun dengan melihat luasnya
wilayah kotamadya Jakarta Timur akan menjadi suatu masalah apabila terjadi
kebakaran di suatu wilayah tapi lamban dalam penanganannya.
G rafik K ejadian K ebakaran T ahun 2000-2008
1 0 6 9 68 3
1 8 7
5 3
1 4 0
1 8 8
1 4 51 6 1
0
5 0
1 0 0
1 5 0
2 0 0
2000 2001 2002 2003 2004 2005 2006 2007 2008
Gambar 1.1 Grafik Kejadian Kebakaran tahun 2000 – 2008 di wilayah
Jakarta Timur
0
10
20
30
40
50
60
70
80
90
100
Tahun2000
Tahun2001
Tahun2002
Tahun2003
Tahun2004
Tahun2005
Tahun2006
Tahun2007
Tahun2008
Bangunan Perumahan
Bangunan Industri
Bangunan Umum
Kendaraan
Lain-lain
Gambar 1.2 Grafik Kerugian yang disebabkan Kebakaran, tahun 2000 –
2008 di wilayah Jakarta Timur
Keterbatasan informasi tentang lokasi kebakaran merupakan salah
satu penyebab pengolahan data dalam penanganan kejadian kebakaran
menjadi lamban, sehingga membuat pengambil keputusan mengalami
kesulitan untuk mengetahui lokasi kebakaran dan ketika menugaskan
pemadam kebakaran yang akan melakukan penanganan awal pada kejadian
kebakaran. Dan juga minimnya informasi tentang lembaga terkait yang
3
menjadi fungsi pendukung dalam penanganan kejadian kebakaran menjadi
masalah penting, karena lembaga seperti polisi dan rumah sakit sangat
berperan dalam proses penanganan kebakaran.
Penyajian laporan kebakaran yang sederhana dan belum terotomasi,
membuat kebutuhan informasi pada Dinas Pemadam Kebakaran Kotamadya
Jakarta Timur kurang, sehingga untuk meningkatkan pelayanan kepada
masyarakat menjadi kurang optimal.
Berdasarkan hal tersebut, pengolahan data kebakaran yang baik
merupakan salah satu jenis pelayanan yang perlu ada di Dinas Pemadam
Kebakaran Kotamadya Jakarta Timur. Sebagai instansi yang bertanggung
jawab pada kejadian kebakaran di wilayahnya merasa perlu adanya dukungan
sistem informasi yang dapat membantu dalam pengolahan data kebakaran.
Pesatnya kemajuan teknologi informasi yang diikuti oleh pesatnya
perkembangan piranti lunak membawa perubahan di berbagai bidang, yang
meningkatkan kebutuhan akan kemudahan untuk mendapatkan informasi.
Mengingat perlu adanya pengolahan data yang baik pada Dinas
Pemadam Kebakaran Kotamadya Jakarta Timur, mendorong penulis untuk
membuat suatu sistem informasi yang mempermudah proses pengolahan
data dalam penanganan kebakaran yaitu mencari lokasi kebakaran dan
menentukan unit pemadam kebakaran serta fungsi-fungsi pendukung terdekat
dengan lokasi atau wilayah terjadinya kebakaran, dan mempermudah proses
pengolahan data untuk menghasilkan laporan penyebaran kebakaran yaitu
dengan mengkalkulasi jumlah data kebakaran dan elemen data kebakaran
tertentu yang dikelompokan berdasarkan waktu dan wilayahnya.
4
Penulis berharap sistem informasi ini dapat bermanfaat bagi Suku
Dinas Pemadam Kebakaran Jakarta Timur dalam menangani kebakaran dan
berkoordinasi dengan lembaga-lembaga yang terkait dalam melakukan
penanganan kebakaran, serta pengolahan data kebakaran lanjut yang berguna
untuk mengolah laporan penyebaran kebakaran sehingga dapat memenuhi
kebutuhan informasi bagi Dinas Pemadam Kebakaran Jakarta Timur.
Dengan dukungan sistem informasi geografis kebakaran, Sebagai
instansi yang bertanggung jawab pada kejadian kebakaran di wilayahnya
diharapkan dapat meningkatkan pelayanan yang optimal kepada masyarakat.
1.2 Perumusan Masalah
Berdasarkan identifikasi masalah yang telah dilakukan pada Sudin
Kebakaran Jakarta Timur maka permasalahan yang penulis angkat dalam
penulisan ini adalah:
a. Bagaimana memperbaiki proses pencarian lokasi atau wilayah terjadinya
kebakaran pada penanganan kebakaran.
b. Bagaimana memperbaiki proses pencarian lokasi atau wilayah pos
pemadam kebakaran serta fungsi-fungsi pendukung (pos polisi, rumah
sakit) yang terdekat dengan lokasi atau wilayah terjadinya kebakaran.
c. Bagaimana memperbaiki kualitas laporan kebakaran yang dihasilkan dari
pengolahan data kebakaran, menggunakan pendekatan yang bersifat
spasial ?
5
1.3 Batasan Masalah
Batasan masalah dalam penulisan ini adalah sebagai berikut:
a. Perancangan aplikasi sistem informasi geografis kebakaran dikhususkan
di wilayah kelurahan, kecamatan pada Kotamadya Jakarta Timur.
b. Fasilitas untuk menentukan pos pemadam kebakaran serta fungsi-fungsi
pendukung (pos polisi, rumah sakit) yang terdekat dengan lokasi atau
wilayah terjadinya kebakaran menggunakan fungsi analisis spasial dengan
operasi buffering.
c. Penggambaran tentang lokasi kebakaran hanya melalui jaringan jalan dan
batas wilayah.
d. Aplikasi Sistem Informasi Geografis kebakaran ini dibangun dengan
menggunakan program aplikasi SIG ArcView 3.3 dengan bahasa
pemrograman Avenue.
e. Aplikasi yang dibuat berbasis desktop dan hanya tersedia dan dapat
diakses di SUDIN pemadam kebakaran Jakarta Timur.
f. Pada tahapan pengembangan sistem menggunakan metode terstruktur
dengan model waterfall hanya sampai pada tahap pengujian dan tidak
sampai pada tahap operasi dan pemeliharaan.
6
1.4 Tujuan dan Manfaat
1.4.1 Tujuan
Tujuan penulisan ini adalah menganalisis dan merancang suatu
aplikasi Sistem Informasi Geografi (SIG) yang ditujukan untuk
membantu tugas Dinas Pemadam Kebakaran Jakarta Timur pada
pengolahan data kebakaran, antara lain dengan cara :
a. Mengolah informasi kejadian kebakaran, sehingga mempermudah
si pengambil keputusan dalam mencari wilayah terjadinya
kebakaran, mencari pos pemadam kebakaran dan fungsi-fungsi
pendukung yang terdekat dengan wilayah terjadinya kebakaran.
b. Mengolah data-data kebakaran per wilayahnya yang
menghasilkan laporan pola sebaran kebakaran yang berguna untuk
memenuhi kebutuhan informasi bagi Dinas Pemadam Kebakaran
Jakarta Timur.
1.4.2 Manfaat
Manfaat yang didapat dari penulisan ini adalah:
a. Bagi Penulis :
1. Menerapkan seluruh ilmu-ilmu yang diperoleh selama kuliah,
melalui pembuatan aplikasi berbasis SIG.
2. Mengetahui kondisi dan memahami masalah-masalah yang
dihadapi dalam bidang sosial, khususnya tentang musibah
kebakaran dan pengolahan data kebakaran.
7
b. Bagi Sudin Kebakaran Jakarta Timur :
1. Sebagai fasilitas pengolah informasi bagi Dinas Pemadam
Kebakaran Jakarta Timur untuk meningkatkan kinerja dan
koordinasi dengan lembaga lainnya dalam proses penanganan
kebakaran.
2. Tersedianya aplikasi berbasis SIG yang dapat menghasilkan
informasi yang bersifat spasial tentang pola penyebaran
kebakaran pada Kotamadya Jakarta Timur.
1.5 Metodologi
Metodologi yang digunakan dalam pengembangan sistem ini terdiri dari
metode pengumpulan data dan metode perancangan sistem, adapun
kegiatannya terdiri dari :
a. Metode Pengumpulan Data, yaitu mendapatkan data dengan cara :
1. Studi Pustaka
Membaca dan mempelajari buku-buku, literatur dan website, yang
dapat dijadikan pendukung dalam penyelesaian skripsi ini.
2. Wawancara
Serangkaian diskusi dan tanya jawab kepada Kepala Sudin Kebakaran
Jakarta Timur untuk mendapatkan informasi tentang proses
penanganan kebakaran dan pengolahan data kebakaran yang
dilakukan, serta menganalisa masalah yang menjadi kendala dalam
penanganan masalah kebakaran di wilayah Jakarta Timur.
8
3. Observasi
Mengamati kegiatan penanganan dan pengolahan data yang
dilakukan oleh seksi operasi sudin kebakaran kotamadya jakarta
timur, untuk mendapatkan gambaran yang jelas mengenai
pelaksanaan sistem yang berjalan. Kegiatan ini di perlukan guna
mencari dan mengumpulkan data-data sekunder yang dibutuhkan
langsung dari sumbernya.
b. Metode perancangan sistem
Metode yang digunakan untuk perancangan dan pengembangan
sistem yang akan dibuat ini menggunakan metode terstruktur yang
didasari pada pengembangan Model Waterfall , yang urutan kegiatannya
terdiri dari enam tahap yaitu rekayasa sistem, analisa sistem,
perancangan sistem, pemrograman sistem, pengujian, operasi dan
pemeliharaan sistem.
9
1.6 Sistematika Penulisan
Secara garis besar, penulisan ini dibagi menjadi 5 Bab. Adapun isi
dari masing-masing bab tersebut adalah sebagai berikut:
Bab 1 : Pendahuluan
Bab ini mengemukakan latar belakang dibuatnya penulisan skripsi,
perumusan masalah dan batasan masalah yang diangkat dalam
penulisan, tujuan dan manfaat penulisan, metodologi yang
digunakan serta sistematika penulisan.
Bab 2 : Landasan Teori
Bab ini menguraikan tentang teori-teori yang digunakan sebagai
landasan berfikir dalam penulisan skripsi ini.
Bab 3 : Metodologi Penelitian
Bab ini menguraikan tentang objek yang diteliti dan metode-
metode yang digunakan untuk mengumpulkan data dan
mengembangkan sistem dalam penelitian tersebut.
Bab 4 : Pembahasan
Bab ini menguraikan tentang hasil yang didapatkan dari
pengembangan sistem yang dilakukan.
Bab 5 : Penutup
Bab ini menguraikan kesimpulan dari apa yang telah dibahas dalam
bab-bab sebelumnya dan memberikan saran-saran untuk perbaikan
sistem yang telah dibuat.
10
BAB II
LANDASAN TEORI
2.1 Sistem Informasi
2.1.1 Pengertian Sistem
Terdapat beberapa pengertian mengenai definisi sistem,
diantaranya menurut Menurut Hanif al Fatta (2007, p3) mendefinisikan
sistem sebagai Sekumpulan objek-objek yang saling berelasi dan
berinteraksi, serta hubungan antar objeknya bisa dilihat sebagai satu
kesatuan yang dirancang untuk mencapai satu tujuan
Menurut Ladjamudin (2005, p2) Sistem adalah kumpulan
komponen yang saling berkaitan dan bekerjasama untuk mencapai
suatu tujuan tertentu.
Sementara dalam hanif al fatah (2005, p4) menurut Scott, sistem
terdiri dari unsur-unsur seperti masukan (input), pengolahan
(processing), serta keluaran (output).
Dari beberapa pengertian di atas dapat ditarik kesimpulan bahwa
sistem adalah suatu kesatuan yang terdiri dari dua atau lebih komponen
yang saling terintegrasi, yang menerima masukan (input) dan dengan
melalui pengolahan (processing) yang terorganisasi sehingga
menghasilkan keluaran (output) yang diharapkan untuk mencapai satu
tujuan.
11
2.1.2 Karakteristik Sistem
Menurut Ladjamudin (2005, p3) suatu sistem mempunyai karakteristik
atau sifat-sifat tertentu, yaitu :
a. Komponen Sistem
Sistem terdiri dari sejumlah komponen yang saling berinteraksi dan
bekerjasama membentuk suatu kesatuan. Komponen atau elemen
sistem dapat berupa subsistem atau beberapa bagian sistem.
b. Batasan Sistem
Daerah yang membatasi antara suatu sistem dengan sistem yang
lainnya atau dengan lingkungan luarnya. Batas sistem inilah yang
membuat sistem dipandang sebagai satu kesatuan.
c. Lingkungan Luar Sistem
Apapun diluar batas dari sistem yang mempengaruhi operasi
sistem. Lingkungan luar sistem dapat bersifat menguntungkan
sistem atau merugikan sistem.
d. Penghubung Sistem
Media yang menghubungkan antara satu subsistem dengan
subsistem yang lainnya. Penghubung inilah yang menyebabkan
beberapa subsistem berintegrasi dan membentuk satu kesatuan.
e. Masukan Sistem
Adalah energi yang dimasukan ke dalam sistem.
f. Keluaran Sistem
Merupakan energi yang diolah dan diklasifikasikan menjadi
keluaran/hasil yang berguna.
12
g. Pengolahan Sistem
Sistem dapat mempunyai suatu bagian pengolah atau sistem itu
sendiri sebagai pengolahnya. Pengolah akan merubah masukan
menjadi keluaran.
h. Sasaran atau tujuan Sistem
Sesuatu yang menyebabkan mengapa sistem itu dibuat atau ada.
Suatu sistem dikatakan berhasil bila mengenai sasaran atau
tujuannya.
2.1.3 Pengertian Data dan Informasi
Hanif al Fatta (2007, p9) mendefinisikan data sebagai suatu nilai,
keadaan atau sifat yang berdiri sendiri lepas dari konteks apapun.
Sedangkan informasi menurut Mc Leod dalam Hanif al Fatta (2007,
p9) mengatakan bahwa informasi adalah data yang telah diproses atau
data yang memiliki arti.
Sedangkan menurut Ladjamudin (2005, p8) data merupakan
kenyataan yang menggambarkan suatu kejadian - kejadian dan
kesatuan nyata, dan menurut Davis dalam Ladjamudin (2005, p8)
informasi adalah data yang telah diolah menjadi bentuk yang lebih
berarti dan berguna bagi penerimanya untuk mengambil keputusan
masa kini maupun yang akan datang.
Dari definisi diatas dapat disimpulkan bahwa data adalah
kenyataan dari suatu kejadian, dan informasi adalah sekumpulan data
13
yang telah diproses dan menjadi bentuk yang lebih berarti bagi
penggunanya dan bermanfaat dalam pengambilan keputusan.
2.1.4 Pengertian Sistem Informasi
Menurut Ladjamudin (2005, p13), definisi Sistem informasi yaitu,
a. Suatu sistem yang dibuat oleh manusia yang terdiri dari komponen-
komponen dalam organisasi untuk mencapai suatu tujuan yaitu
menyajikan informasi.
b. Sekumpulan prosedur organisasi yang pada saat dilaksanakan akan
memberikan informasi bagi pengambil keputusan dan atau untuk
mengendalikan organisasi.
Sistem informasi menurut Budihar dalam prahasta (2002, p40)
dapat diartikan sebagai suatu sistem manusia-mesin yang terpadu untuk
menyajikan informasi guna mendukung fungsi operasi, manajemen,
dan pengambilan keputusan dalam organisasi.
Dari pendapat beberapa pendapat diatas, secara singkat dapat
disimpulkan bahwa sistem informasi adalah sistem yang berguna untuk
menghasilkan informasi dari data yang tersedia, dan digunakan untuk
mendukung tindakan dalam mengambil keputusan dalam organisasi.
2.2 Sistem Informasi Geografis
2.2.1 Konsep Dasar Sistem Informasi Geografis (SIG)
Pada awalnya, data geografi hanya disajikan di atas peta dengan
menggunakan simbol, garis, dan warna. Peta adalah media yang efektif
14
baik sebagai alat presentasi maupun tempat penyimpanan data
geografis. Tetapi media peta ini memiliki kelemahan atau keterbatasan
informasi-informasi yang tersimpan dalam peta yang telah diproses dan
dipresentasikan dengan suatu cara tertentu, dan biasanya untuk tujuan
tertentu pula, yang sudah dimanipulasi sehingga bersifat statis.
Bila dibandingkan dengan peta, SIG memiliki keunggulan yang
melekat karena penyimpanan data dan presentasinya dipisahkan.
Dengan demikian, data dapat dipresentasikan dalam berbagai cara dan
bentuk. Berbeda dengan sistem informasi lainnya, SIG membantu
pekerjaan-pekerjaan yang berkaitan dengan bidang-bidang spasial dan
geo-informasi. Salah satu keuntungan teknologi SIG adalah
kemampuannya dalam menyediakan data atau informasi berkaitan
dengan keruangan (spasial). Hasil analisis data geografi dapat disajikan
dalam media peta, laporan atau keduanya. Peta dipakai untuk
menampilkan hubungan geografi suatu data, sementara itu laporan
sangat tepat untuk merangkum data tabular dan mendokumentasikan
suatu nilai hasil perhitungan atau analisis. Secara singkat, SIG mampu
mengolah gambar visual sekaligus mengolah basisdata.
2.2.2 Pengertian Sistem Informasi Geografis (SIG)
SIG adalah sistem komputer yang digunakan untuk memasukkan
(capturing), menyimpan, memeriksa, mengintegrasikan, menganalisa,
dan menampilkan data-data yang berhubungan dengan posisi di
permukaan bumi. Rise dalam prahasta (2002, p54)
15
SIG adalah sistem yang terdiri dari perangkat keras, perangkat
lunak, data, manusia (brainware), organisasi dan lembaga yang
digunakan untuk mengumpulkan, menyimpan, menganalisa dan
menyebarkan informasi-informasi mengenai daerah-daerah di
permukaan bumi. Chrisman dalam prahasta (2002, p55)
2.2.3 Komponen Sistem Informasi Geografis
Menurut prahasta (2002, p58) Sistem Informasi Geografis terdiri
dari empat komponen utama yang terintergrasi menjadi satu kesatuan,
yaitu:
a. Perangkat keras, Perangkat keras yang sering digunakan untuk SIG
adalah komputer (PC), mouse, digitizer, printer dan plotter (untuk
pengolahan), dan scanner. untuk konversi data ke dalam bentuk
digital.
b. Perangkat lunak, Perangkat lunak SIG menyediakan fungsi untuk
masukan, menyimpan, menganalisis dan menampilkan data dalam
bentuk geografis. Perangkat lunak SIG yang umum digunakan
adalah Mapinfo, ArcView, Autocad Map.
c. Data dan informasi geografis, SIG dapat mengumpulkan dan
menyimpan data yang diperlukan baik secara langsung dengan cara
dijitasi data spasial dari peta dan masukan data atributnya dari
tabel, laporan dengan menggunakan keyboard, maupun secara tidak
langsung dengan cara mengimpornya dari perangkat lunak SIG
16
lainnya. Data geografis juga dapat diperoleh dengan membelinya
dari penyedia jasa peta.
d. User, proyek SIG akan berhasil jika diatur dengan baik dan
dikerjakan oleh orang-orang yang memilki keahlian untuk setiap
tahapan implementasi SIG.
2.2.4 Subsistem Sistem Informasi Geografis
Subsistem SIG merupakan seluruh kesatuan cara kerja SIG yang
dapat merepresentasikan kondisi dunia nyata ke dalam komputer
seperti pada peta yang mampu merepresentasikan keadaan dunia nyata
diatas kertas. Adapun proses untuk merepresentasikannya adalah
sebagai berikut
Menurut prahasta (2002, p56) Sistem Informasi Geografis dapat
diuraikan menjadi beberapa subsistem sebagai berikut:
a. Data Input, Subsistem ini bertugas untuk mengumpulkan data dan
mempersiapkan data spasial dan atribut dari berbagai sumber dan
bertanggung jawab dalam mengkonversi atau mentransformasikan
Gambar 2.1 Subsistem SIG
17
format-format data-data aslinya ke dalam format yang dapat
digunakan oleh SIG.
b. Data output, Subsistem ini menampilkan atau menghasilkan
keluaran seluruh atau sebagian basis data, baik dalam bentuk
softcopy maupun bentuk hardcopy seperti tabel, grafik dan peta.
c. Data Management, Subsistem ini mengorganisasikan data spasial
maupun data atribut ke dalam sebuah basis data sedemikian rupa
sehingga mudah dipanggil, di-update dan di-edit.
d. Data Manipulation dan Analysis, Subsistem ini menentukan
informasi-informasi yang dapat dihasilkan oleh SIG dan melakukan
manipulasi serta pemodelan data untuk menghasilkan informasi
yang diharapkan.
2.2.5 Model Data pada Sistem Informasi Geografis
Menurut prahasta (2002, p146) dalam pengolahan data SIG,
terdapat 2 jenis data, yaitu data spasial dan data non-spasial (atribut)
yang saling melengkapi.
Data spasial (keruangan), yaitu data yang menunjukkan ruang,
lokasi atau tempat-tempat di permukaan bumi. Data spasial berasal dari
peta analog, foto udara dan penginderaan jauh dalam bentuk cetak
kertas atau digital.
Data atribut (deskriptis), yaitu data yang terdapat pada ruang atau
tempat. Atribut menjelaskan suatu informasi dari suatu keruangan.
18
Data atribut diperoleh dari catatan lapangan, statistik, sensus dan
tabular (data yang disimpan dalam bentuk tabel) lainnya.
Pada SIG, data spasial dan data atribut disajikan dalam bentuk
titik (node), garis (arc), dan bidang (polygon) melalui 2 model, yaitu :
a. Model Data Raster
Menampilkan, menempatkan, dan menyimpan data spasial
menggunakan struktur matriks atau pixel (picture cell) yang
tersusun membentuk grid. Umumnya sel-sel berbentuk bujur
sangkar atau empat persegi panjang, tetapi bisa juga berupa segitiga
atau persegi enam. Akurasi pada model raster sangat bergantung
pada resolusi (jumlah pixel yang termuat dalam suatu gambar) yang
digunakan.
Gambar 2.2 Data Raster
b. Model Data Vektor
Menampilkan, menempatkan, dan menyimpan data spasial
menggunakan titik-titik, garis, dan polygon beserta atributnya.
Bentuk-bentuk dasar representasi data spasial ini, di dalam model
19
data vektor didefinisikan oleh sistem koordinat kartesian dua
dimensi (x,y).
Gambar 2.3 Data Vektor
2.2.6 Kemampuan Sistem Informasi Geografis
Menurut prahasta (2002, p72) Secara jelas, kemampuan SIG
juga dapat dilihat dari pengertian atau definisinya. Kemampuan-
kemampuan SIG yang diambil dari beberapa definisi SIG yaitu:
a. Memasukan dan mengumpulkan data geografi
b. Mengintegrasikan data geografi
c. Memeriksa, meng-update data geografi
d. Menyimpan dan memanggil kembali data
e. Mempresentasikan atau menampilkan data geografi
f. mengelola data geografi
g. Memanipulasi data geografi
h. Menganalisis data geografi
20
i. Menghasilkan keluaran (output) data geografi dalam bentuk peta
tematik (view dan layout), table, grafik (chart), laporan (report),
dan lainnya baik dalam bentuk softcopy ataupun hardcopy.
2.2.7 Fungsi Analisis pada Sistem Informasi Geografis
Menurut prahasta (2002, p73) Kemampuan SIG dapat juga
dikenali dari fungsi-fungsi analisis yang dapat dilakukannya. Secara
umum, terdapat dua jenis fungsi analisis dalam SIG yaitu fungsi
analisis atribut dan fungsi analisis spasial.
Fungsi analisis atribut terdiri dari operasi dasar sistem
pengelolaan basisdata (DBMS) dan perluasannya:
a. Operasi dasar basisdata mencakup : 1) Membuat basisdata baru, 2)
Menghapus basisdata, 3) Membuat tabel basisdata, 4) Menghapus
tabel basisdata, 5) Mengisi dan menyisipkan data ke dalam tabel, 6)
Membaca dan mencari data dari tabel basisdata, 7) mengubah dan
meng-edit data yang terdapat di dalam tabel basisdata, 8)
Menghapus data dari tabel basisdata, 9) Membuat indeks untuk
setiap tabel basisdata.
b. Perluasan operasi basisdata seperti : 1) Membaca dan menulis
basisdata dalam sistem basisdata yang lain, 2) Dapat berkomunikasi
dengan sistem basisdata yang lain, 3) Dapat menggunakan bahasa
basisdata standar, 4) Operasi-operasi atau fungsi analisis lain yang
sudah rutin digunakan di dalam sistem basisdata.
21
Sedangkan fungsi analisis spasial terdiri dari operasi seperti berikut ini:
a. Klasifikasi: fungsi ini mengklasifikasikan atau mengklasifikasikan
kembali suatu data spasial (atau atribut) menjadi data spasial yang
baru dengan menggunakan kriteria tertentu.
b. Network : fungsi ini merujuk data spasial titik-titik (point) atau
garis-garis (lines) sebagai suatu jaringan yang tidak terpisahkan.
c. Overlay: menghasilkan data spasial baru dari minimal dua data
yang menjadi masukannya.
d. Buffer: menghasilkan data spasial baru yang berbentuk polygon
atau zone dengan jarak tertentu dari data spasial yang menjadi
masukannya.
e. 3D analysis: fungsi ini terdiri dari sub-sub fungsi yang
berhubungan dengan presentasi data spasial dalam ruang 3 dimensi.
2.2.8 Perangkat Lunak Sistem Informasi Geografis
a. Arcview 3.3
Perangkat lunak merupakan salah satu dari empat komponen
utama SIG. Perangkat lunak SIG harus dapat menyediakan fungsi
untuk masukan, menyimpan, menganalisis dan menampilkan data
dalam bentuk geografis. ArcView 3.3 merupakan salah satu dari
sekian banyak perangkat lunak SIG yang dapat menyediakan
fungsi-fungsi tersebut.
22
Perangkat lunak ArcView adalah alat (tools) yang paling
banyak digunakan pada saat ini karena kemudahan yang
dimilikinya. ArcView memungkinkan kita untuk melakukan
organisasi, menyusun, menggambarkan dan menganalisis peta atau
informasi spasial. ArcView menyediakan sebuah perangkat kerja
guna pembuatan keputusan spasial, dan mempunyai kemampuan
untuk menggambarkan, menyelidiki, atau mengevaluasi,
melakukan query, dan menganalisis data spasial. Pekerjaan
mengubah simbol peta, menambah gambar citra atau grafik,
menempatkan tanda arah utara, skala batang dan judul, serta
mencetak peta yang kualitasnya baik, dapat dilakukan secara cepat
dengan menggunakan ArcView. ArcView bekerja dengan data
tabular, citra, textfile data spreadsheet dan data grafik. Selain itu
ArcView juga dapat melakukan komunikasi dengan produk
perangkat lunak lain, dimana kita dapat mengganti data tanpa
melakukan konversi dan tanpa perlu meninggalkan atau keluar dari
area kerja ArcView. (Nuarsa 2005 p1-23)
b. Bahasa Pemrograman Avenue
Menurut prahasta (2004, p1) Avenue merupakan bahasa
pemrograman yang hadir bersama dengan ArcView (terintegrasi
dengan paket standar). Bahasa pemrograman script ini merupakan
sarana atau tool yang efektif dan efisien yang dapat digunakan
23
untuk meng-customize dan mengembangkan aplikasi-aplikasi yang
dibuat dengan perangkat SIG Arcview. Dengan Avenue, secara
umum para pengguna dapat melakukan aktifitas-aktifitas sebagai
berikut ;
1. Meng-customize tampilan Arcview (menyembunyikan dan atau
memunculkan control dari para penggunannya).
2. Memodifikasi menu dan tools standar Arcview.
3. membuat menu dan tools baru (untuk memenuhi kebutuhan
pengguna).
4. Mengotomasikan proses integrasi aplikasi-aplikasi Arcview
dengan aplikasi-aplikasi lain.
5. Mengembangkan fungsi dan prosedur (baris-baris kode yang
membentuk suatu proses yang lebih besar) yang diperlukan di
dalam aplikasi.
2.3 Proses Pengembangan Sistem
Menurut Whitten (2004, p81) System Development Process adalah
Proses pengembangan terstandarisasi yang mendefinisikan suatu aktivitas,
metode, praktik terbaik, dan perangkat terotomasi yang akan digunakan oleh
para pengembang sistem untuk mengembangkan dan secara berkesinambungan
memperbaiki sistem informasi dan perangkat lunak.
Dalam pengembangan sistem informasi, perlu melewati beberapa
tahapan mulai dari perencanaan sistem hingga penggunaan sistem. Dengan
24
mengikuti tahapan-tahapan ini diharapkan pengembangan sistem dapat
diselesaikan dengan baik. Tahap-tahap tersebut dinamakan SDLC (System
Development Life Cycle).
2.3.1 Model SDLC (System Development Life Cycle)
Di dalam pengembangan sistem informasi, masalah yang muncul
tidak langsung dapat dihilangkan tetapi harus dikenali terlebih dahulu
sebelum solusinya dibuat. Biasanya pengembang menggunakan
pendekatan atau model tahapan yang berbeda dalam pengembangan
suatu sistem informasi.
Menurut prahasta (2002, p222) telah dikembangkan beberapa
model proses rekayasa piranti lunak atau sistem informasi, masing-
masing memiliki kekuatan dan kelemahan, akan tetapi seluruhnya
memiliki serangkaian tahapan yang sama dalam mengembangkan suatu
sistem informasi. Berikut adalah beberapa jenis model SDLC yang
umum digunakan :
a. Waterfall Model
b. Prototyping Model
c. RAD Model
d. Spiral Model
25
2.3.2 Waterfall Model
Gambar 2.4 Pengembangan Sistem dengan Model Waterfall
Penulis menggunakan model ini dalam pengembangan sistemnya
Menurut Prahasta (2002, p223) Metode ini membutuhkan pendekatan
sistematis dan sekuensial dalam pengembangan perangkat lunak,
dimulai dari tingkat sistem, analisis, desain, coding, pengujian dan
pemeliharaan. Pada model ini terdapat aktivitas- aktivitas sebagi
berikut :
a. Rekayasa Sistem Informasi (System Information Engineering).
Karena perangkat lunak adalah bagian dari sistem yang lebih besar,
pekerjaan dimulai dari pembentukan kebutuhan-kebutuhan dari
semua elemen sistem dan mengalokasikan suatu subset ke dalam
pembentukan perangkat lunak. Hal ini penting, ketika perangkat
Rekayasa Sistem
Analisis Sistem
Perancangan
Pemrograman
Pengujian
Operasi dan Pemeliharaan
26
lunak harus berkomunikasi dengan hardware, manusia dan basis
data. Rekayasa dan pemodelan sistem menekankan pada
pengumpulan kebutuhan pada level sistem dengan sedikit
perancangan dan analisis. Tahap ini juga kadang disebut dengan
Project Definition.
b. Analisis Kebutuhan Perangkat Lunak (Software Requirements
Analysis). Proses pengumpulan kebutuhan diintensifkan ke
perangkat lunak. Harus dapat dibentuk domain informasi, fungsi
yang dibutuhkan, performansi dan antarmuka.
c. Perancangan (Design). Proses mengubah kebutuhan-kebutuhan
menjadi bentuk karakteristik yang dimengerti perangkat lunak
sebelum dimulai penulisan program. Desain ini harus
didokumentasikan dengan baik dan menjadi bagian konfigurasi
perangkat lunak.
d. Pemrograman (Coding). Desain pada tahap sebelumnya harus
diubah menjadi bentuk yang dimengerti mesin (komputer). Maka
dilakukan langkah penulisan program. Jika desain-nya detil, maka
coding dapat dicapai secara mekanis.
e. Pengujian (Testing). Setelah kode program selesai dibuat, dan
program dapat berjalan, testing dapat dimulai. Testing difokuskan
pada logika internal dari perangkat lunak, fungsi eksternal, dan
mencari segala kemungkinan kesalahan. Dan memeriksa apakah
sesuai dengan hasil yang diinginkan.
27
f. Operasi dan Pemeliharaan (Support/Maintenance). Perangkat lunak
setelah diberikan pada pelanggan, mungkin ditemukan error ketika
dijalankan di lingkungan pelanggan. Atau mungkin pelanggan
meminta penambahan fungsi, hal ini menyebabkan faktor
maintenance (pemeliharaan) ini menjadi penting dalam penggunaan
metode ini. Pemeliharaan ini dapat berpengaruh pada semua
langkah yang dilakukan sebelumnya.
2.4 Alat Perancangan Sistem
2.4.1 Flowchart (Diagram Alir)
Menurut Ladjamudin (2005, p263) Flowchart adalah bagan-
bagan yang mempunyai arus yang menggambarkan langkah-langkah
penyelesaian masalah.
Flowchart disusun dengan simbol. simbol ini dipakai sebagai alat
bantu dalam menggambarkan proses, simbol dapat dibagi menjadi tiga
kelompok, yakni sebagai berikut.
a. Flow Direction Symbols (Simbol penghubung atau alur)
Simbol yang digunakan untuk menghubungkan antara simbol yang
satu dengan simbol yang lain.
b. Processing Symbols (Simbol proses)
Simbol yang menunjukkan jenis operasi pengolahan dalam suatu
proses.
28
c. Input-output Symbols (simbol input-output)
Simbol yang menunjukkan jenis peralatan yang digunakan sebagai
media input-output.
2.4.2 DFD ( Data Flow Diagram )
DFD merupakan alat perancangan sistem yang berorientasi pada
alur data dengan konsep dekomposisi dapat digunakan untuk
penggambaran analisa maupun rancangan sistem yang mudah
dikomunikasikan oleh profesional sistem kepada pemakai maupun
pembuat program.
DFD menurut Jouran dan DeMarco dalam buku analisa dan desain
sistem informasi (Ladjamudin, p64 -70).
Data flow diagram merupakan model dari sistem untuk
menggambarkan pembagian sistem ke modul yang lebih kecil. Salah
satu keuntungan menggunakan Data flow diagram adalah memudahkan
pemakai atau user yang kurang menguasai bidang komputer untuk
mengerti sistem yang akan dikerjakan. Adapun tahapan dalam
menggambarkan sistem menggunakan DFD adalah sebagai berikut :
a. Diagram Konteks ( Level 0 )
Merupakan diagram paling atas yang terdiri dari suatu proses dan
menggambarkan ruang lingkup suatu sistem. Diagram konteks
menggambarkan input dan output dari sistem secara global.
29
b. Diagram Zero atau Nol ( Level 1 )
Merupakan diagram yang berada diantara diagram konteks dan
diagram detail, serta menggambarkan proses utama dari DFD.
Diagram Nol memberikan pandangan secara menyeluruh mengenai
sistem yang ditangani.
c. Diagram Rinci (Level 2, Level 3, dan seterusnya)
Merupakan penguraian dalam proses yang ada dalam Diagram Zero
atau diagram level diatasnya. Diagram yang paling rendah dan
tidak dapat diuraikan lagi.
2.4.3 ERD ( Entity Relationship Diagram)
Menurut ladjamudin (2005, p 142) Entity Relationship Diagram
(ERD) adalah notasi grafik dari sebuah model jaringan data yang
menekankan pada struktur-struktur dan relationship data yang disimpan
dalam sistem secara abstrak.
Kardinalitas adalah menunjukan jumlah maksimum dan
minimum tupel yang dapat berelasi dengan entitas pada entitas lainnya.
Kardinalitas relasi antar entitas dapat di katagorikan dalam tiga jenis,
yaitu :
a. Derajat hubungan 1 : 1 (One to one)
Derajat hubungan antar entitas 1 : 1 terjadi bila entitas A hanya
boleh berpasangan dengan satu anggota dari entitas B. Demikian
pula sebaliknya.
30
b. Derajat hubungan 1 : m (One to many) atau m :1 (Many to one)
Derajat hubungan ini terjadi bila tiap anggota entitas A boleh
berpasangan dengan lebih dari satu anggota entitas B. Sebaliknya
setiap anggota entitas B hanya boleh berpasangan dengan satu
anggota entitas A.
c. Derajat hubungan m : n (Many to many)
Terjadi bila tiap anggota entitas A boleh berpasangan dengan lebih
dari satu anggota entitas B. Demikian pula sebaliknya.
2.4.4 Normalisasi
Menurut Ladjamudin (2005, p169) normalisasi adalah proses
pengelompokan data ke dalam bentuk tabel, relasi atau file untuk
menyatakan entitas dan hubungan mereka sehingga terwujud satu
bentuk database yang mudah untuk dimodifikasi.
Bentuk dan tahapan dalam proses normalisasi adalah sebagai
berikut:
a. Bentuk Tidak Normal ( Unnormalized Form )
Bentuk ini merupakan kumpulan data yang akan direkam, tidak ada
keharusan mengikuti suatu format tertentu, dapat saja data tidak
lengkap atau terduplikasi.
31
b. Bentuk Normal Kesatu (1NF atau First Normal Form)
Secara sederhana entitas berada pada dalam bentuk normal
pertama, yaitu jika tidak ada atribut yang dapat memiliki lebih dari
satu nilai untuk contoh entitas tunggal.
c. Bentuk Normal Kedua (2NF atau Second Normal Form)
Bentuk normal kedua mempunyai syarat yaitu tabel sudah berada
pada bentuk normal pertama. Atribut bukan kunci haruslah
bergantung secara fungsional pada kunci utama atau primary key.
sehingga untuk membentuk normal kedua haruslah sudah
ditentukan kunci field.
d. Bentuk Normal Ketiga (3NF atau Third Normal Form)
Untuk menjadi bentuk normal ketiga maka relasi harus sudah
termasuk dalam bentuk normal kedua dan semua atribut bukan
primer tidak punya hubungan transitif. Dengan kata lain, setiap
atribut yang bukan kunci haruslah bergantung pada primary key
dan pada primary key secara keseluruhan.
2.4.5 STD (State Transition Diagram)
Menurut Pressman (2001, p317), STD menggambarkan
kebiasaan dari suatu sistem dengan menggambarkan kondisi dan
kejadian yang menyebabkan perubahan suatu kondisi. Selain itu, dapat
dikatakan STD menunjukan tindakan yang diambil sebagai akibat dari
suatu kejadian. Notasi yang digunakan dalam STD dapat dilihat pada
gambar di bawah ini.
32
2.4.6 Kamus Data
Menurut Ladjamudin (2005) kamus data adalah katalog fakta
tentang data dan kebutuhan - kebutuhan informasi dari suatu sistem
informasi.
2.5 Kebakaran
2.5.1 Konsep Dasar Kebakaran
Dalam situs resmi Dinas Pemadam Kebakaran Provinsi DKI
Jakarta http://www.jakartafire.com/dpk07/pengetahuan/index.php?act=
detil&idb=297) Pengertian kebakaran adalah suatu nyala api, baik kecil
atau besar pada tempat yang tidak kita hendaki, merugikan dan pada
umumnya sukar dikendalikan.
2.5.2 Kelas-Kelas Kebakaran
Dalam situs resmi Dinas Pemadam Kebakaran Provinsi DKI
Jakarta http://www.jakartafire.com/dpk07/pengetahuan/index.php?act=
detil&idb=297), Kebakaran di Indonesia dibagi menjadi tiga kelas,
yaitu:
a. Kelas A
Kebakaran yang disebabkan oleh benda-benda padat, misalnya
kertas, kayu, plastik, karet, busa dan lain-lainnya. Media
pemadaman kebakaran untuk kelas ini berupa: air, pasir, karung
33
goni yang dibasahi, dan Alat Pemadam Kebakaran (APAR) atau
racun api tepung kimia kering.
b. Kelas B
Kebakaran yang disebabkan oleh benda-benda mudah terbakar
berupa cairan, misalnya bensin, solar, minyak tanah, spirtus,
alkohol dan lain-lainnya. Media pemadaman kebakaran untuk kelas
ini berupa: pasir dan Alat Pemadam Kebakaran (APAR) atau racun
api tepung kimia kering. Dilarang memakai air untuk jenis ini
karena berat jenis air lebih berat dari pada berat jenis bahan di atas
sehingga bila kita menggunakan air maka kebakaran akan melebar
kemana-mana.
c. Kelas C
Kebakaran yang disebabkan oleh listrik. Media pemadaman
kebakaran untuk kelas ini berupa: Alat Pemadam Kebakaran
(APAR) atau racun api tepung kimia kering. Matikan dulu sumber
listrik agar kita aman dalam memadamkan kebakaran.
2.5.3 Konsep Dasar Dinas Pemadam Kebakaran Jakarta Timur
Dinas Pemadam Kebakaran Propinsi DKI Jakarta Timur adalah
unsur pelaksana pemerintah daerah (Pemda) yang diberi tanggung
jawab dalam melaksanakan tugas-tugas melakukan usaha pencegahan
dan pemadaman kebakaran serta penyelamatan akibat kebakaran dan
bencana lainnya di wilayahnya. Dibentuknya organisasi Dinas
34
Pemadam Kebakaran ini merupakan perwujudan tanggung jawab
pemerintah daerah (Pemda) dalam rangka memberikan perlindungan
kepada warganya dari ancaman bahaya kebakaran dan bencana lainnya.
Dalam mewujudkan rasa aman serta memberikan perlindungan
kepada warga, Dinas Pemadam Kebakaran Jakarta Timur pada buku
laporan kegiatan tahunan 2006, dalam melaksanakan tugas dan
fungsinya berpedoman pada :
a. Surat Keputusan Gubernur Propinsi DKI Jakarta Nomor 9 tahun
2002, tentang Struktur Organisasi dan Tata Kerja Dinas Pemadam
Kebakaran Propinsi DKI Jakarta,
b. Surat Keputusan Gubernur Propinsi DKI Jakarta Nomor 673 tahun
2002, tanggal 18 April 2002 tentang pembentukan dan pembagian
Wilayah Kerja Sektor Dinas Pemadam Kebakaran Propinsi Daerah
Khusus Ibukota Jakarta.
Dinas Pemadam Kebakaran Propinsi DKI Jakarta Timur
Mempunyai 3 tugas pokok yakni :
1. Pencegahan Kebakaran.
2. Pemadaman Kebakaran.
3. Penyelamatan Jiwa dari ancaman kebakaran dan bencana lain,
35
2.5.4 Konsep Dasar Fungsi Pendukung
Fungsi-fungsi pendukung dalam proses pemadaman kebakaran
mempunyai pengertian yaitu semua lembaga yang terlibat langsung
dalam proses pemadaman kebakaran. Yang bertugas dalam pemberian
pelayanan secara cepat, akurat dan efisien mulai dari informasi
kebakaran diterima sampai api padam. Yang termasuk dalam fungsi-
fungsi pendukung dalam proses pemadaman kebakaran yang dibahas
dalam penelitian ini adalah Rumah sakit, polisi (kantor polisi).
a. Rumah Sakit
Menurut Kamus Besar Bahasa Indonesia (Depdiknas, 2001), rumah
sakit adalah :
1. Gedung tempat merawat orang sakit.
2. Gedung tempat menyediakan dan memberikan pelayanan
kesehatan yang meliputi berbagai masalah kesehatan.
Menurut Peraturan Mentri Kesehatan RI No :
159b/MEN.KES/PER/II/1998 (Bab I Pasal 1 Ayat 1), rumah sakit
adalah sarana upaya kesehatan yang menyelenggarakan kegiatan
pelayanan kesehatan bagi masyarakat serta dapat dimanfaatkan
untuk pendidikan tenaga kesehatan dan penelitian.
b. Kantor Polisi
Menurut Kamus Besar Bahasa Indonesia (Depdiknas, 2001), polisi
adalah :
36
1. Badan pemerintah yang bertugas untuk memelihara keamanan
dan ketertiban umum (menangkap orang yang melanggar
Undang-Undang dan sebagainya).
2. Anggota badan pemerintah (pegawai Negara yang bertugas
menjaga keamanan dan sebagainya).
Sedangkan kantor memiliki pengertian :
1. Balai (gudang, rumah, ruang) tempat melaksanakan suatu
pekerjaan (perusahaan dan sebagainya)
2. Tempat bekerja.
Maka, kantor polisi merupakan kantor tempat polisi melakukan
urusan kepolisian dan melaksanakan pekerjaannya. Pembagian
kantor polisi berdasarkan tingkat kewenangan dan tanggung
jawabnya, adalah sebagai berikut:
Tabel 2.8 Tabel Pembagian Kantor Polisi
No Nama Wilayah Tingkat Kewenangan Dan
Tanggung Jawab
1 Markas Besar Polisi RI
(Mabes)
Kepolisian seluruh wilayah RI dan
luar negeri (Interpol)
2 Kepolisian Daerah (Polda) Kepolisian propinsi tertentu
3 Kepolisian Wilayah (Polwil) Kepolisian pada karesidenan tertentu
4 Kepolisian Resort (Polres) Kepolisian pada kabupaten/kotamadya
tertentu
5 Kepolisian Sektor (Polsek) Kepolisian pada kecamatan tertentu
6 Pos polisi Kepolisian pada lokasi tertentu yang
dianggap strategis
37
2.5.5 Konsep Dasar jalan
Dalam Undang-undang Nomor 13 Tahun 1980 tentang Jalan,
ditetapkan pengertian jalan adalah suatu prasarana transportasi darat
yang meliputi segala bagian jalan termasuk bangunan pelengkap dan
perlengkapannya yang diperuntukkan bagi lalu lintas, yang berada pada
permukaan tanah, di bawah permukaan tanah dan/atau air serta di atas
permukaan air, kecuali jalan kereta api, jalan lori dan jalan kabel. Yang
selanjutnya ditetapkan pula pengertian jalan umum dan jalan khusus.
Dalam Undang-undang ini yang dimaksud dengan jalan adalah
dalam pengertian jalan umum sebagaimana dimaksud dalam Undang-
undang Nomor 13 Tahun 1980, yaitu jalan yang diperuntukkan bagi
lalu lintas umum.
Berdasarkan hal tersebut maka dalam undang-undang ini
pengertian jalan tidak termasuk jalan khusus, yaitu jalan yang tidak
diperuntukkan bagi lalu lintas umum, antara lain jalan inspeksi
pengairan, jalan inspeksi minyak atau gas, jalan perkebunan, jalan
pertambangan, jalan kehutanan, jalan komplek bukan untuk umum,
jalan untuk keperluan pertahanan dan keamanan Negara.
38
BAB III
METODOLOGI PENELITIAN
3.1 Metode Pengumpulan Data
Metode ini dilakukan untuk memperoleh data-data yang diperlukan
dalam pembuatan sistem ini, selain itu pada tahap ini kita bisa mengetahui
proses sistem yang sedang berjalan. Sehingga kita bisa menganalisa
kekurangan dan kelebihan dari sistem yang sedang berjalan. Dari hal tersebut
kita dapat mengetahui permasalahan yang terjadi kemudian dibuat suatu
pemecahan masalahnya.
Dalam metode pengumpulan data ini terdiri dari tiga tahap meliputi
studi pustaka, observasi lapangan dan wawancara.
3.1.1 Studi Pustaka
Pada tahap ini kegiatan yang dilakukan adalah dengan
mempelajari dan meneliti 12 buku teori tahun 1996 sampai 2007, 1
buku laporan tahunan kegiatan Sudin Kebakaran Jakarta Timur, 1
Kamus Besar Bahasa Indonesia, 1 keputusan mentri dan 5 sumber
bacaan dari internet, yang mempunyai hubungan dengan permasalahan
yang dihadapi dan yang dapat digunakan sebagai dasar dalam penelitian
ini. Adapun sumber bacaan yang dibaca dapat dilihat pada daftar
pustaka.
39
3.1.2 Observasi Lapangan
Berikut adalah deskripsi lokasi dan waktu penelitian yang dilakukan
untuk mengembangkan sistem informasi geografis kebakaran (SIGK) :
Lokasi : Suku Dinas Pemadam Kebakaran Kotamadya Jakarta
Timur (Seksi Operasi Kotamadya Jakarta Timur).
Alamat : JL. Matraman Raya No.132
Waktu : 14 Desember 2007 - 25 Januari 2008
Pada tahap ini yang dilakukan penulis adalah dengan mengamati
kegiatan pencatatan laporan kebakaran dan pengolahan data kebakaran
serta proses penanganan kasus kejadian kebakaran yang dilakukan oleh
Seksi Operasi Kotamadya Jakarta Timur, untuk mendapatkan gambaran
yang jelas mengenai pelaksanaan sistem yang berjalan.
Selain itu, kegiatan ini di perlukan guna mencari dan
mengumpulkan data-data sekunder yang di butuhkan langsung dari
sumbernya. Berikut adalah data-data yang diperoleh dari observasi
lapangan:
a. Laporan kasus kejadian kebakaran.
b. Data Statistik, terdiri dari data kejadian kebakaran per kelurahan dan
kecamatan.
c. Data Statistik kejadian kebakaran yang dipengaruhi beberapa faktor.
(penyebab kebakaran, jenis benda terbakar, dan waktu kejadian).
40
3.1.3 Wawancara
Pada tahap ini kegiatan yang dilakukan adalah dengan membuat
serangkaian diskusi dan tanya jawab kepada Kepala Sudin Kebakaran
Jakarta Timur, yang bertujuan untuk mengetahui masalah-masalah yang
menjadi kendala dalam penanggulangan kebakaran di wilayah Jakarta
Timur. Adapun hasil wawancara dapat dilihat pada lampiran.
Adapun rancangan pertanyaan yang penulis lakukan pada
wawancara ini, adalah sebagi berikut :
a. Bagaimana prosedur pelaporan kejadian kebakaran dari masyarakat,
sehingga informasi terjadinya kebakaran samapai ke SUDIN
Pemadam Kebakaran.
b. Apakah setiap informasi kebakaran yang diterima SUDIN Pemadam
Kebakaran itu benar (valid). Dan bagaimana mengatasi masalah
tersebut.
c. Tindakan apa yang akan diambil SUDIN Pemadam Kebakaran dari
informasi yang sudah valid untuk segera menanggulangi kebakaran
tersebut.
d. Bagaimana cara mendapatkan data tambahan kebakaran dari suatu
kejadian kebakaran di suatu daerah.
e. Bagaimana mengolah data kebakaran tersebut agar bisa bermanfaat.
41
3.2 Metode Pengembangan Sistem
Metode yang digunakan untuk perancangan dan pengembangan sistem
yang akan dibuat ini menggunakan metode terstruktur yang didasari pada
pengembangan Model Waterfall , yang urutan kegiatannya digambarkan
dibawah ini.
Gambar 3.1 Pengembangan Sistem dengan Model Waterfall ( Prahasta 2002 )
3.2.1 Rekayasa Sistem
Tahap rekayasa sistem merupakan tahap awal dalam
pengembangan sistem informasi yang bertujuan mengumpulkan
kebutuhan-kebutuhan baik berupa informasi atau kendala-kendala yang
ada pada sistem yang berjalan serta merumuskan suatu perencanaan
dalam pengembangan suatu sistem informasi.
Adapun cara yang dilakukan penulis pada tahap ini adalah
mengetahui Latar Belakang Dinas Pemadam Kebakaran Jakarta Timur,
Rekayasa Sistem
Analisis Sistem
Perancangan
Pemrograman
Pengujian
Operasi dan Pemeliharaan
42
mengetahui tugas dan fungsi Dinas Pemadam Kebakaran Jakarta
Timur, mengetahui struktur organisasi Dinas Pemadam Kebakaran
Jakarta Timur.
3.2.2 Analisis Sistem
Pada tahap ini, proses pengumpulan kebutuhan diintensifkan ke
perangkat lunak. Dapat di bentuk domain informasi, fungsi dan
performansi yang dibutuhkan. Adapun cara yang dilakukan penulis pada
tahap ini adalah mengetahui kondisi Sistem yang Sedang Berjalan,
Kebutuhan Sistem Yang Sedang Berjalan, Usulan Pemecahan Masalah.
3.2.3 Perancangan (Design)
Pada tahap ini dilakukan proses mengubah kebutuhan-
kebutuhan menjadi bentuk karakteristik yang dimengerti perangkat
lunak. Tahap perancangan ini harus didokumentasikan dengan baik dan
menjadi bagian konfigurasi perangkat lunak. Pada tahap ini gambaran
sistem SIGK akan dibuat dengan tools perancangan yaitu Data Flow
Diagram, Perancangan Kamus Data, Perancangan Basis Data,
Perancangan Input / Output . ( untuk symbol-symbol yang digunakan
dapat dilihat pada daftar symbol ).
3.2.4 Penulisan Program (Coding)
Hasil perancangan sebelumnya harus diubah menjadi bentuk
yang dimengerti mesin (komputer). Maka dilakukan langkah penulisan
43
program. Jika hasil perancangannya detail, maka coding dapat dicapai
dengan baik. Pada tahap ini penulis membuat aplikasi berbasis desktop
menggunakan Script Avenue yang ada pada ArcView Gis 3.3 .
Berikut ini perancangan algoritma penulisan program SIGK.
3.2.5 Pengujian ( Testing )
Setelah kode program selesai dibuat, dan program dapat
berjalan, testing dapat dimulai. Testing difokuskan pada logika
pemrograman dari perangkat lunak, fungsi (menu, tools, button), dan
mencari segala kemungkinan kesalahan. Memeriksa apakah hasilnya
sesuai dengan yang diinginkan. Pada tahap pengujian ini dilakukan
installasi / pemasangan sistem secara utuh untuk dipergunakan pada
Suku Dinas Pemadam Kebakaran Kotamadya Jakarta Timur.
3.2.6 Operasi dan Pemeliharaan
Setelah aplikasi SIGK diberikan pada user, mungkin dapat
ditemui error ketika dijalankan dilingkungan user. Atau mungkin user
meminta penambahan fungsi, hal ini menyebabkan faktor maintenance
(pemeliharaan) ini menjadi penting dalam penggunaan metode ini.
Pemeliharaan ini dapat berpengaruh pada semua langkah yang
dilakukan sebelumnya. Pada tahap ini dilakukan kegiatan perawatan /
maintenance, serta review sistem untuk mengetahui apakah sistem
masih sesuai dengan kebutuhan user atau tidak.
44
3.3 Kerangka Berfikir
45
BAB IV
PEMBAHASAN
4.1 Rekayasa Sistem
Tahap rekayasa sistem merupakan tahap awal dalam pengembangan
sistem informasi yang bertujuan mengumpulkan kebutuhan-kebutuhan baik
berupa informasi atau kendala-kendala yang ada pada sistem yang berjalan
serta merumuskan suatu perencanaan dalam pengembangan suatu sistem
informasi.
4.1.1 Latar Belakang Dinas Pemadam Kebakaran Jakarta Timur
Dinas Pemadam Kebakaran Propinsi Jakarta Timur adalah
unsur pelaksana pemerintah daerah yang diberi tanggung jawab dalam
melaksanakan tugas-tugas penanganan masalah kebakaran.
Dibentuknya organisasi Dinas Pemadam Kebakaran ini merupakan
perwujudan tanggung jawab Pemerintah Daerah (Pemda) dalam
rangka memberikan perlindungan kepada warganya dari ancaman
bahaya kebakaran dan bencana lainnya.
Dalam mewujudkan rasa aman serta memberikan
perlindungan kepada warga kota tersebut, Suku Dinas Pemadam
Kebakaran Jakarta Timur dalam melaksanakan tugas dan fungsinya
berpedoman pada Surat Keputusan Gubernur Nomor 9 tahun 2002
tanggal 15 januari 2002, tentang Organisasi dan Tata Kerja Dinas
Pemadam Kebakaran Propinsi Daerah Khusus Ibukota Jakarta, dan
46
Surat Keputusan Gubernur Nomor.673 / tahun 2002 tanggal 18 april
2002 tentang pembentukan dan pembagian Wilayah Kerja Sektor
Dinas Pemadam kebakaran Propinsi Daerah Khusus Ibukota Jakarta.
4.1.2 Tugas dan Fungsi Dinas Pemadam Kebakaran Jakarta Timur
Tugas Pokok
Melakukan usaha pencegahan dan pemadaman kebakaran serta
penyelamatan akibat kebakaran dan bencana lain di wilayahnya.
Fungsi
Melaksanakan pencegahan terhadap kebakaran, kegiatan operasional
penanggulangan kebakaran, penyelamatan akibat kebakaran dan
bencana lain termasuk penyelidikan kebakaran dan pelayanan
ambulan.
4.1.3 Struktur Organisasi Dinas Pemadam Kebakaran Jakarta Timur
Gambar 4.1 Struktur Organisasi Dinas Pemadam Kebakaran Jakarta Timur
Ka.sudin
SeksiPencegahan
SeksiSarana
Operasional(H.OmoSugama)
SeksiOperasi
SeksiKetrampilan
SektorMatraman
Sub Bagian Tata Usaha
SektorPulogadun
g
SektorCakung
SektorJatinegara
SektorKramatJati
SektorMakasar
SektorCiracas
SektorDurenSawit
SektorPasarRebo
SektorCipayung
47
4.1.4 Rekayasa Sistem
Pengolahan data dalam penanganan kebakaran yang lamban,
membuat pengambil keputusan mengalami kesulitan untuk
mengetahui lokasi kebakaran dan ketika menugaskan pemadam
kebakaran yang akan melakukan penanganan awal pada kejadian
kebakaran, koordinasi yang kurang baik antara fungsi pendukung
seperti polisi dan rumah sakit menjadi masalah penting, karena
lembaga-lembaga tersebut sangat berperan dalam proses penanganan
kebakaran.
Dan juga penyajian laporan kebakaran yang masih sederhana
dan belum terotomasi, membuat kebutuhan informasi pada Dinas
Pemadam Kebakaran Kotamadya Jakarta Timur kurang, sehingga
untuk meningkatkan pelayanan kepada masyarakat menjadi kurang
optimal.
Berdasarkan hal tersebut, maka perlu dibuatnya sebuah sistem
guna mendukung proses pengolahan data kejadian kebakaran dan
proses pengolahan data laporan penyebaran kebakaran, untuk
meningkatkan pelayanan instansi pemadaman kebakaran kepada
masyarakat. Adapun spesifikasi sistem yang dibutuhkan adalah
sebagai berikut :
1. Sistem informasi yang dapat menampilkan informasi berupa
lokasi dan data pos pemadam kebakaran, pos polisi, rumah sakit,
jaringan jalan, sungai dan batas wilayah.
48
2. Sistem informasi yang dapat mencari lokasi kebakaran, lalu
menampilkannya dan memberi informasi tentang pos pemadam
kebakaran, pos polisi, rumah sakit yang terdekat dengan lokasi
terjadinya kebakaran.
3. Sistem informasi yang dapat mengotomasi dan membuat laporan jumlah
kejadian kebakaran per wilayahnya (kelurahan dan kecamatan), laporan
jumlah kejadian kebakaran yang dipengaruhi oleh parameter tertentu
(seperti penyebap terjadinya kebakaran, jenis bahan yang terbakar dan
waktu kejadian kebakaran ) per wilayahnya ( kelurahan dan
kecamatan ).
4.2 Analisis Sistem
Pada tahap ini, proses pengumpulan kebutuhan diintensifkan ke perangkat
lunak. Dapat di bentuk domain informasi, fungsi dan performansi yang dibutuhkan.
4.2.1 Sistem yang Sedang Berjalan
a. Prosedur pemadaman sebagai berikut :
1. Korban atau masyarakat menelpon ke unit kebakaran dinas pemadam
kebakaran yaitu 113 atau 8582150, 8580588 dan memberitahukan
lokasi kebakaran.
2. Dinas pemadam kebakaran mencari lokasi kebakaran secara manual
(melihat pada peta kertas).
3. Memberangkatkan beberapa unit mobil kebakaran ke lokasi
kebakaran, sementara personil lainnya menghubungi pemadam
lainnya, polisi dan rumah sakit.
4. Sesampainya di lokasi kebakaran, proses pemadaman pun
berlangsung.
49
5. Petugas membuat laporan untuk dokumentasi.
b. Pengolahan data kebakaran
1. Dokumentasi kebakaran dilapangan dilaporkan ke seksi operasi
SUDIN Kebakaran untuk dilakukan pencatatan data kebakaran.
2. Setelah dalam kurun waktu tertentu data tersebut di kelompokan
dan di cetak untuk disertakan dalam laporan.
3. Laporan kebakaran.
Kelebihan dari sistem yang berjalan antara lain :
1. Pencatatan laporan kebakaran dilakukan dengan baik.
2. Dalam proses pengolahan data kebakaran, sudah menggunakan
komputer untuk mengolahnya.
3. Informasi yang dihasilkan berupa jumlah kasus kebakaran dalam
bentuk tabel dan grafik.
Kekurangan dari sistem yang berjalan antara lain :
1. Ketika pelapor memberitahukan lokasi terjadinya kebakaran
(masih dicatat dengan kertas).
2. Belum ada gambaran tentang lokasi kejadian kebakaran
membuat petugas tidak dapat mengambil keputusan untuk
segera menugaskan pos mana saja yang akan melakukan
penanganan awal sebelum datang bantuan.
3. Kebenaran laporan tersebut belum diketahui dengan jelas.
50
4. Koordinasi yang kurang baik antara instansi yang terkait dalam
penanganan kebakaran.
5. Pengolahan data kebakaran masih minim akibatnya informasi
yang dihasilkan hanya sebatas informasi yang bersifat tekstual.
Gambar 4.2 Diagram Alir Dokumen Sistem Yang Berjalan
51
4.2.2 Kebutuhan Sistem Yang Sedang Berjalan
Dengan sistem yang sudah berjalan, dirasa perlu untuk
meningkatkan kinerja sistem demi memperbaiki pelayanan kepada
masyarakat. Hal-hal yang dibutuhkan sistem yang sedang berjalan
antara lain :
1. Adanya suatu sistem informasi yang dapat menampilkan informasi
berupa lokasi dan data pos pemadam kebakaran, pos polisi, rumah
sakit, jaringan jalan, dan batas wilayah.
2. Adanya suatu sistem informasi yang dapat mencari lokasi
kebakaran, lalu menampilkannya dan memberi informasi tentang
letak pos pemadam kebakaran, pos polisi, rumah sakit yang terdekat
dengan lokasi terjadinya kebakaran. Sehingga instruksi secara
terpusat bisa cepat diberikan kepada instansi yang terlibat untuk
segera melakukan pemadaman kebakaran.
3. Sistem informasi yang dapat mengotomasi pembuatan laporan
jumlah kejadian kebakaran per wilayahnya ( kelurahan dan
kecamatan ), laporan jumlah kejadian kebakaran yang dipengaruhi
oleh parameter tertentu (seperti penyebap terjadinya kebakaran,
jenis bahan yang terbakar dan waktu kejadian kebakaran ) per
wilayahnya ( kelurahan dan kecamatan ).
52
4.2.3 Usulan Pemecahan Masalah
Berdasarkan permasalahan diatas, maka penulis mencoba
memberikan usulan pemecahan masalah dengan merancang suatu
sistem informasi geografis kebakaran yang menyajikan fasilitas-fasilitas
:
1. Menampilkan informasi spasial berupa peta wilayah yang
dilengkapi dengan batas wilayah administrasi, informasi pos
pemadam kebakaran, pos polisi, rumah sakit, jaringan jalan, sungai.
2. Pencarian lokasi kebakaran berbasis spasial, dengan menggunakan
kata kunci yaitu "jalan", setelah diketahui lokasi terjadinya
kebakaran lalu sistem menyediakan fasilitas buffer untuk
mengetahui letak lokasi pos pemadam kebakaran, pos polisi, rumah
sakit yang terdekat dengan lokasi terjadinya kebakaran, Sehingga
instruksi secara terpusat bisa cepat diberikan kepada instansi yang
terlibat untuk segera melakukan penanganan awal dalam proses
pemadaman kebakaran.
Polisi, untuk mengamankan lokasi kebakaran dan mengatur jalur
jalan yang akan dilalui mobil pemadam dan mobil ambulan untuk
sampai di lokasi kebakaran. Pemadam kebakaran, untuk
penanganan awal dan memadamkan api pada kejadian kebakaran,
serta mengevakuasi korban kebakaran. Rumah Sakit (RS),
menyediakan ambulan dalam penanganan awal dan pengevakuasian
korban kebakaran ke rumah sakit.
53
3. Pengolahan data kebakaran berbasis spasial yang menghasilkan
laporan jumlah kejadian kebakaran per wilayahnya (kelurahan dan
kecamatan), laporan jumlah kejadian kebakaran yang dipengaruhi
oleh parameter tertentu (seperti penyebap terjadinya kebakaran,
jenis bahan yang terbakar dan waktu kejadian kebakaran ) per
wilayahnya ( kelurahan dan kecamatan ).
Gambar 4.3 Diagram Alir Dokumen Sistem Usulan
54
4.3 Perancangan (Design)
Pada tahap ini dilakukan proses mengubah kebutuhan-kebutuhan
menjadi bentuk karakteristik yang dimengerti perangkat lunak. Tahap
perancangan ini harus didokumentasikan dengan baik dan menjadi bagian
konfigurasi perangkat lunak. Pada tahap ini gambaran sistem akan dibuat
dengan menggunakan tools sebagai berikut :
4.3.1 Perancangan Data Flow Diagram SIGK
Pada tahap ini penggambaran sistem menggunakan tools Data
Flow Diagram (DFD) yang merupakan sarana komunikasi antara user
dengan pengembang sistem untuk mengetahui segala hal yang berkaitan
dengan rencana pembuatan sistem.
a. Diagram Konteks Sistem
Diagram ini menggambarkan secara garis besar
keseluruhan sistem, semua masukan atau keluaran yang ada
di sistem.
Gambar 4.4 Diagram Konteks
55
b. Diagram Nol Sistem
Memberikan pandangan secara menyeluruh mengenai
sistem, Menggambarkan fungsi-fungsi utama atau proses
yang ada, adanya aliran data dan eksternal entity. pada level
ini sudah dimungkinkan adanya data store yang digunakan.
Gambar 4.5 Diagram Nol
No proses : 1.0
Nama proses : Pengolahan Data Geografis
Input :
Output :
Peta dasar wilayah Jakarta Timur, lokasi dan
data pos polisi, lokasi dan data pos pemadam
kebakaran, lokasi dan data Rumah sakit (RS).
Data geografis, yang tersusun dalam layer-
layer, antara lain : layer kotamadya, layer
kelurahan, layer kecamatan, layer pemadam,
layer polisi, layer Rumah Sakit, layer sungai,
layer jalan.
56
Keterangan :
No proses : 2.0
Nama proses : Pengolahan Data Kebakaran
Input :
Output :
Pada proses ini dilakukan pembuatan dan
pengelompokan data spasial berdasarkan
karakteristik dari masing-masing objek.
Contoh: Semua objek pos pemadam
kebakaran digambarkan dalam satu layer atau
satu database, yaitu dalam layer pemadam.
Objek polisi layer polisi, jaringan jalan layer
jalan. Demikian juga dengan objek lainnya,
Objek -objek itu digambarkan sesuai dengan
data sebenarnya, untuk menggambarkan
wilayah Jakarta Timur.
Laporan kebakaran dari masyarakat, data
pelengkap kebakaran, data kebakaran, data
geografis dari proses 1.0 (layer kotamadya, layer
kelurahan, layer kecamatan, layer pemadam, layer
polisi, layer Rumah Sakit, layer sungai, layer jalan).
Hasil pencarian lokasi atau wilayah
kebakaran di Jakarta Timur, Hasil pencarian
lokasi dan informasi (pos pemadam, pos
polisi, rumah sakit) terdekat dengan lokasi
atau wilayah kebakaran, Data Kebakaran dan
Laporan sebaran kebakaran di Jakarta Timur.
57
Keterangan :
a. Diagram Rinci Sistem
Diagram yang menguraikan proses yang ada di dalam
diagram nol atau diagram level diatasnya.
Sistem menerima masukan yaitu laporan
kejadian kebakaran di suatu lokasi dari
masyarakat, dan sistem SIGK akan mengolah
informasi tersebut untuk : mencari wilayah
atau lokasi kebakaran, mencari lokasi pos
pemadam kebakaran, pos polisi, rumah sakit
terdekat dengan wilayah atau lokasi
kebakaran. Lengkapi data kebakaran awal
nama pelapor, alamat pelapor dan status
kejadian ( Jika status kejadian kebakaran ”Ya”
(akan langsung diinput ke dalam data kebakaran dan
instruksi penanganan kebakaran dilakukan), jika
"tidak" lakukan validasi laporan lebih luas, dan tidak
akan dilakukan penyimpanan data kebakaran jika
terbukti tidak terjadi kebakaran). Data pelengkap
kebakaran diinput untuk mengupdate
informasi data kebakaran awal, setelah
informasi data kebakaran lengkap maka
dilakukan pengolahan data oleh sistem untuk
menghasilkan Laporan sebaran kebakaran di
Jakarta Timur.
58
No proses : 1.1
Nama proses : Pembuatan data spasial dan atribut
Input :
Output :
Keterangan :
Peta dasar wilayah Jakarta Timur, lokasi pos
polisi di Jakarta Timur, lokasi pos pemadam
kebakaran di Jakarta Timur, lokasi Rumah
sakit (RS) di Jakarta Timur.
layer kotamadya, layer kelurahan, layer
kecamatan, layer pos pemadam, layer pos
polisi, layer RS, layer sungai, layer jalan. di
Jakarta Timur
Proses pembuatan data spasial dilakukan
dengan proses digitasi dan penginputan data
atributnya. Data keruangan (spasial) untuk
menggambarkan kondisi kenyataan di muka
bumi ( kotamadya Jakarta Timur). Disimpan
dalam layer - layer tertentu yang sesuai
Gambar 4.6 Diagram Rinci 1.0 ( Pengolahan Data Geografis )
59
No proses : 1.2
Nama proses : Update data spasial dan atribut
Input :
Output :
Keterangan :
Lokasi dan data pos polisi, pos pemadam
kebakaran, Rumah sakit terbaru di Jakarta
Timur.
layer pos pemadam, layer pos polisi, layer
Rumah sakit di Jakarta Timur.
Dilakukan apabila ada penambahan atau
pengurangan serta perubahan informasi pada
pos-pos penanganan kebakaran pada sistem.
Sistem dirancang untuk memudahkan proses
Update data spasial dan atribut yang telah
diciptakan sebelumnya.
dengan karakteristiknya, dan terhubung
dengan tabel data atribut dari tiap-tiap objek.
Contoh : objek data keruangan yang
menerangkan tentang penyebaran pos
pemadam kebakaran di Jakarta Timur
disimpan dalam layer pemadam dan
terhubung dengan tabel atribut pemadam
(id_pemadam, nama_pemadam,alamat).
60
No proses : 2.1
Nama proses : Pencarian lokasi kebakaran
Input :
Output :
Keterangan :
Laporan kejadian kebakaran, layer kotamadya,
layer kecamatan, layer kelurahan, layer jalan,
layer sungai, layer polisi, layer pemadam, layer
rumah sakit di Jakarta Timur.
Hasil pencarian lokasi (jalan) atau wilayah
(kelurahan) kebakaran di Jakarta Timur, pos
penanganan kebakaran (pos pemadam, pos
polisi, rumah sakit ) terdekat dengan lokasi
kebakaran.
Laporan dari masyarakat diterima operator,
lalu segera diinput ke dalam sistem. Nama
jalan digunakan sebagai kata kunci untuk
mencari lokasi atau wilayah kebakaran,
setelah diketahui lokasi atau wilayah
Gambar 4.7 Diagram Rinci 2.0 (Pengolahan Data Kebakaran)
61
No proses : 2.2
Nama proses : Validasi dan instruksi pemadaman
Input :
Output : Status kejadian, instruksi pemadaman dan
Data Kebakaran.
Keterangan : Validasi laporan dan instruksi dilakukan oleh
operator melalui via telepon, validasi laporan
dilakukan ke pos polisi dan pemadam
terdekat dengan lokasi kebakaran untuk
menghasilkan status kejadian (ya atau tidak),
jika Ya maka akan segera dilakukan instruksi
pemadaman ke pos polisi, pemadam dan
rumah sakit via telepon, lengkapi laporan dan
Klik ”SIMPAN” maka Data Kebakaran baru
akan tercipta.
Lokasi kebakaran dan informasi pos
penanganan terdekat dengan lokasi
kebakaran (polisi dan pemadam).
kebakaran tersebut, sistem menyediakan
fasilitas BUFFER untuk mencari lokasi dan
informasi (pos pemadam, pos polisi, rumah
sakit) terdekat dengan lokasi kebakaran.
(Nama pelapor, alamat pelapor dan status
kejadian) diisi dengan data yang sesuai.
62
No proses : 2.3
Nama proses : Update data kebakaran
Input :
Output : Data kebakaran.
Keterangan :
No proses : 2.4
Nama proses : Pembuatan laporan penyebaran kebakaran
Input :
Output : Laporan penyebaran kebakaran di wilayah
Jakarta Timur.
Keterangan :
Data kebakaran, layer kelurahan dan layer
kecamatan di Jakarta Timur.
Data kebakaran yang telah diinput lalu di
dikonversikan dalam bentuk angka lalu
dijumlahkan dan diolah untuk menghasilkan
peta penyebaran kebakaran di Jakarta Timur,
peta sebaran kebakaran yang dipengaruhi
oleh parameter tertentu (seperti penyebap
terjadinya kebakaran, jenis benda yang
Data pelengkap kebakaran di input setelah
sistem berjalan / proses penanganan
kebakaran selesai. Data yang diperoleh dari
lapangan oleh pemadam kebakaran dan
diinput operator seksi operasi. Sistem akan
mempermudah untuk update data kebakaran.
Data pelengkap kebakaran
63
No proses : 2.5
Nama proses : Validasi laporan penyebaran kebakaran
Input :
Output : Laporan penyebaran kebakaran di wilayah
Jakarta Timur valid.
Keterangan :
Pengecekan laporan kebakaran oleh pimpinan
Peta sebaran kebakaran di Jakarta Timur,
peta sebaran kebakaran yang dipengaruhi
oleh parameter tertentu (seperti penyebap
terjadinya kebakaran, jenis benda yang
terbakar dan waktu kebakaran) per kelurahan
dan per kecamatan, peta sebaran kebakaran
perbulannya, yang dihasilkan proses 2. 4
dikoreksi dan disetujui oleh pimpinan untuk
selanjutnya dikirim ke bagian TU untuk
pembuatan laporan kegiatan tahunan Dinas
Pemadam Kebakaran Jakarta Timur.
terbakar dan waktu kebakaran)
dikelompokan per kelurahan dan per
kecamatan, peta penyebaran kebakaran
perbulannya. Dan laporannya dapat disajikan
berupa data spasial, grafik, teks dan tabel.
64
4.3.2 Perancangan Kamus Data
Untuk menjelaskan data yang ada pada DFD digunakan Data
Dictionary (Kamus Data), fungsi kamus data untuk membantu pelaku
sistem agar memiliki dasar pengertian yang sama tentang aliran data
yang masuk dan keluar, serta penyimpanannya.
Data Flow
Data Batas
Wilayah
Kotamadya
{@ ID_kot + Nama_kotamadya}
Data Batas
Wilayah
Kecamatan
{@ ID_kec + Nama_kecamatan}
Data Batas
Wilayah
Kelurahan
{@ ID_kel + Nama_kelurahan}
Data Jaringan
Jalan
{@ ID_Jalan + Nama_Jalan + Keterangan + Layer + Panjang }
Data Jaringan
Sungai
{@ ID_sungai +Nama_sungai + Keterangan + layer + Panjang }
Lokasi dan data
Pos Pemadam
Kebakaran
{@ ID_pemadam + Nama_pemadam + Alamat_pemadam +
telepon_pemadam }
Lokasi dan data
Pos Polisi
{@ ID_polisi + Nama_polisi + Alamat_polisi + telepon_polisi }
Lokasi dan data
Rumah Sakit
{@ ID_rs + Nama_rs + Alamat_rs + telepon_rs }
Laporan
Kejadian
Kebakaran
{@ ID_Keb + Tgl_Kejadian + NamaJalan + NamaKelurahan +
NamaPelapor + AlamatPelapor + StatusKejadian + WaktuKejadian}
Data {@ ID_Keb + Tgl_Kejadian + NamaJalan + NamaKelurahan +
Tabel 4.1 Kamus Data SIGK
65
Kebakaran NamaPelapor + AlamatPelapor + StatusKejadian + WaktuKejadian
+ JenisBendaTerbakar + PenyebapKebakaran + TaksiranKerugian +
KorbanMeninggal + KorbanLuka }
Laporan
Penyebaran
Kebakaran
{@ ID_Keb_kel + WaktuKejadian_kel + JenisBendaTerbakar_kel +
PenyebapKebakaran_kel + KejadianBulanan_kel +
JumlahKebakaran_kel } , {@ ID_Keb_kec + WaktuKejadian_kec +
JenisBendaTerbakar_kec + PenyebapKebakaran_kec +
KejadianBulanan_kec + JumlahKebakaran_kec }
Data Store
File Batas
Kotamadya
{@ ID_kot + Nama_Kotamadya}
File Batas
Kecamatan
{@ ID_kec + Nama_kecamatan + ID_Kot }
File Batas
Kelurahan
{@ ID_kel + Nama_kelurahan + ID_kec}
File Jalan {@ ID_Jalan + Nama_Jalan + Keterangan + Layer + Panjang +
@ID_kel}
File Sungai {@ ID_sungai +Nama_sungai + Keterangan + layer + Panjang +
@ID_kel}
File Pos
Pemadam
Kebakaran
{@ ID_pemadam + Nama_pemadam + Alamat_pemadam +
telepon_pemadam + nilai_x + nilai_y + @ID_kel }
File Pos Polisi {@ ID_polisi + Nama_polisi + Alamat_polisi + telepon_polisi +
nilai_x + nilai_y + @ID_kel }
File Rumah
Sakit
{@ ID_rs + Nama_rs + Alamat_rs + telepon_rs + nilai_x + nilai_y +
@ID_kel }
Data
Kebakaran
{@ ID_Keb + Tgl_Kejadian + NamaJalan + NamaKelurahan +
NamaPelapor + AlamatPelapor + StatusKejadian + WaktuKejadian
+ JenisBendaTerbakar + PenyebapKebakaran + TaksiranKerugian +
KorbanMeninggal + KorbanLuka + BulanKejadian + @ID_Kec +
@ID_Kel + @ID_Jalan}
66
4.3.3 Perancangan Basis Data SIGK
Tahapan awal dalam perancangan basis data ini adalah membuat
pemodelan data konseptual yang akan dijadikan landasan untuk basis
data, setelah didapat model basis data, pemodelan data konseptual
tersebut diwujudkan dengan hubungan antar tabel menggunakan
asosiasi sehingga didapatkannya model data relational.
Berikut ini akan dijelaskan langkah-langkah yang dilakukan
dalam rancangan basis data :
a. Perancangan ERD
1. Entity Relationship Diagram (ERD) Sebelum
dinormalisasikan
Gambar 4.8 ERD Sebelum di Normalisasikan
67
b. Normalisasi Data
1. Bentuk Tidak Normal (Unnormalized Form)
Bentuk ini merupakan kumpulan data yang akan
direkam, tidak ada keharusan mengikuti format tertentu,
dapat saja data tidak lengkap atau terduplikasi. Data
dikumpulkan apa adanya sesuai dengan saat menginput.
Tabel 4.2 Bentuk Tidak Normal
Id_ProvinsiNama_ProvId_KotamadyaNama_KotNama_ProvId_KecamatanNama_KecNama_KotId_KelurahanNama_KelNama_KecNama_KotId_PemadamNamaPemadamAlamatPemadamTeleponPemadamNama_kelNama_KecId_PolisiNamaPolisiAlamatPolisiTeleponPosPolisiNama_kelNama_KecId_RSNamaRSAlamatRSTeleponRSNama_kelNama_Kec
Id_JalanNamaJalanKeteranganLayerPanjangNama_kelNama_KecId_SungaiNamaSungaiKeteranganLayerPanjangNama_kelNama_KecId_KebTgl_KejadianNama_JalanNama_KelNama_KecNamaPelaporAlamatPelaporStatusKejadianWaktuKejadianJenisBendaTerbakarPenyebapKebakaranTaksiranKerugianKorbanMeninggalKorbanLukaBulanKejadian
68
2. Bentuk 1 NF
Pada tahap ini dilakukan penghilangan beberapa
group elemen yang berulang agar menjadi satu harga
tunggal yang berinteraksi diantara setiap baris pada
suatu tabel.
Tabel 4.3 Bentuk 1NF
Kelurahan
*Id_KelNama_KelNama_Kec
Pos_Pemadam*Id_Pemadam
Nama_PemadamAlamat_PemadamTelepon_Pemadam
Nama_KelNama_Kec
*Id_SungaiNama_Sungai
KeteranganLayer
PanjangNama_KelNama_Kec
Sungai
*Id_JalanNama_Jalan
KeteranganLayer
PanjangNama_KelNama_Kec
Jalan
Kecamatan*Id_Kec
Nama_KecNama_kot
Pos_Polisi*Id_Polisi
Nama_PolisiAlamat_PolisiTelepon_Polisi
Nama_KelNama_Kec
Rumah_Sakit
*Id_RSNama_RS
Alamat_RSTelepon_RSNama_KelNama_Kec
*Id_KebTgl_KejadianNama_Jalan
Nama_KelurahanNama_Kecamatan
NamaPelaporAlamatPelaporStatusKejadianWaktuKejadian
JenisBendaTerbakarPenyebapKebakaranTaksiranKerugianKorbanMeninggal
KorbanLukaBulanKejadian
Data_Kebakaran
Kotamadya
*Id_KotNama_Kot
Provinsi
*Id_ProvNama_Prov
3. Bentuk 2 NF
Pada tahap ini, semua atribut memenuhi bentuk
normal pertama dan semua atribut bukan kunci hanya
bergantung pada atribut kuncinya.
69
Tabel 4.4 Bentuk 2 NF
4. Bentuk 3 NF
Pada tahap ini, semua atribut memenuhi bentuk
normal kedua dan semua atribut bukan kunci tidak
bergantung pada atribut bukan kunci lainnya.
70
Tabel 4.5 Bentuk 3 NF
71
5. Entity Relationship Diagram (ERD) SIGK yang sudah di normalisasikan.
Gambar 4.9 ERD SIGK Sesudah Di Normalisasikan
72
c. Struktur Data
Rancangan basis data atribut spasial dalam aplikasi SIGK terdiri
dari tabel sebagai berikut:
1. Tema Batas Provinsi
Nama file : Provinsi.shp
Deskripsi : Data Atribut Provinsi
Primary Key : Id_Prov
Tabel 4.6 Tabel Provinsi
Nama field Tipe Panjang KeteranganId_Prov Number 2 Id provinsi
Nama_Provinsi String 25 Nama Provinsi
2. Tema Batas Kotamadya
Nama file : Kotamadya.shp
Deskripsi : Data Atribut Kotamadya
Primary Key : Id_Kot
Tabel 4.7 Tabel Kotamadya
Nama field Tipe Panjang KeteranganId_Kot Number 2 Id kotamadya
Nama_Kotamadya String 25 Nama kotamadya
3. Tema Batas Kecamatan
Nama file : Kecamatan.shp
Deskripsi : Data Atribut Kecamatan
Primary Key : Id_kec
Foriegn Key : Id_kot
Tabel 4.8 Tabel Kecamatan
Nama field Tipe Panjang KeteranganId_kec Number 2 Id kecamatan
Nama_Kec String 25 Nama kecamatanId_kot Number 2 Id kotamadya
73
4. Tema Batas Kelurahan
Nama file : Kelurahan.shp
Deskripsi : Data Atribut kelurahan
Primary Key : Id_kel
Foriegn Key : Id_kec
Tabel 4.9 Tabel KelurahanNama field Tipe Panjang Keterangan
Id_kel Number 2 Id kelurahanNamaKelurahan String 25 Nama kelurahan
Id_kec Number 2 Id kecamatan
5. Tema Pos Polisi
Nama file : Pos Polisi.shp
Deskripsi : Data atribut pos polisi
Primary Key : Id_polisi
Foriegn Key : ID_kel
Tabel 4.10 Tabel Pos Polisi
Nama field Tipe Panjang KeteranganId_polisi Number 2 Id polisi
Nama_polisi String 15 Nama pos polisiAlamat_polisi String 30 Alamat pos polisiTelepon_polisi Number 15 No telepon polisi
Id_Kel Number 2 Id kelurahan
6. Tema Pemadam Kebakaran
Nama tabel : Pemadam kebakaran.shp
Deskripsi : Data atribut pemadam kebakaran
Primary Key : Id_pemadam
Foriegn Key : Id_kel
Tabel 4.11 Tabel pos pemadam
Nama field Tipe Panjang KeteranganId_pemadam Number 2 Id pemadam
Nama_pemadam String 15 Nama pemadamAlamat_pemadam String 30 Alamat pemadamTelepon_pemadam Number 15 No telepon pemadam
Id_Kel Number 2 Id kelurahan
74
7. Tema Rumah Sakit
Nama file : Rumah sakit.shp
Deskripsi : Data atribut rumah sakit
Primary Key : Id_rs
Foriegn Key : ID_kel
Tabel 4.12 Tabel Rumah sakit
Nama field Tipe Panjang KeteranganId_ rs Number 2 Id rumah sakit
Nama_ rs String 15 Nama rumah sakitAlamat_ rs String 30 Alamat rumah sakitTelepon_ rs Number 15 No telepon rumah sakit
Id_Kel Number 2 Id kel
8. Tema jaringan Jalan
Nama file : Jalan.shp
Deskripsi : Data atribut jaringan jalan
Primary Key : Id_jalan
Foriegn Key : Id_kel
Tabel 4.13 Tabel Jalan
Nama field Tipe Panjang KeteranganId_ jalan Number 2 Id jalan
Nama_ jalan String 30 Nama jalanKeterangan String 50 Informasi jalan
Layer String 10 Kelas jalanPanjang Number 10 Panjang jalan (meter)Id_Kel Number 2 Id kelurahan
9. Tema jaringan Sungai
Nama file : Sungai.shp
Deskripsi : Data atrribut jaringan sungai
Primary Key : Id_sungai
Foriegn Key : Id_kel
75
Tabel 4.14 Tabel Sungai
Nama field Tipe Panjang KeteranganId_ sungai Number 2 Id sungai
Nama_ sungai String 30 Nama sungaiKeterangan String 50 Informasi sungai
Layer String 10 Kelas sungaiPanjang Number 10 Panjang sungai (meter)Id_Kel Number 2 Id kelurahan
10. Tabel Data Kebakaran
Nama file : Data kebakaran.dbf
Deskripsi : Data laporan kebakaran
Primary Key : Id_keb
Foriegn Key : Id_kel, Id_kec, Id_jalan
Tabel 4.15 Tabel Data kebakaran.dbf
11. Tabel Pelapor
Nama file : Pelapor.dbf
Deskripsi : Data pelapor.
Primary Key : Id_Pelapor
Foriegn Key : Id_kel
Nama field Tipe Panjang KeteranganId_Keb Number 2 Id kebakaran (primary key)Tgl_Kejadian DateNamaJalan String 20 Informasi nama jalanNamaKelurahan String 20 Informasi nama kelurahanStatusKejadian String 5 Informasi status kejadianWaktuKejadian String 5 Informasi waktu kejadianJenisBendaTerbakar String 20 Inf Jenis benda yang terbakarPenyebabKebakaran String 8 Informasi penyebab kebakaranTaksiranKerugian Number 9 Informasi taksiran kerugianKorbanMeninggal Number 3 Informasi korban meninggalKorbanLuka Number 3 Informasi korban luka-lukaBulanKejadian String 10 Informasi Bulan kejadianId_kec Number 2 Id kecamatan (foreign key)Id_kel Number 2 Id kelurahan (foreign key)Id_jalan Number 2 Id jalan (foreign key)Id_pelapor Number 2 Id pelapor (foreign key)
76
Tabel 4.16 Tabel Pelapor.dbf
Nama field Tipe Panjang KeteranganID_Pelapor Number 2 Id pelapor
Nama_Pelapor String 25 Nama pelaporAlamat_Pelapor String 50 Alamat pelaporTelepon_Pelapor Number 15 No telepon pelapor
Id_kel Number 2 Id kel
12. Tabel Penyebab Kebakaran per kecamatan
Nama file : Penyebab kebakaran per kecamatan.dbf
Deskripsi : Data jumlah penyebab kebakaran di setiap
Kecamatannya.
Primary Key : Id_Penyebab
Foriegn Key : Id_kec
Tabel 4.17 Tabel Penyebab kebakaran per kecamatan.dbf
Nama field Tipe Panjang KeteranganID_Penyebab Number 2 Id penyebab kebakaran (primary key)
Kompor Number 3 Jumlah penyebab keb (kompor)Lampu Number 3 Jumlah penyebab keb (lampu)Listrik Number 3 Jumlah penyebab keb (listrik)Rokok Number 3 Jumlah penyebab keb (rokok)Id_Kec Number 2 Id kecamatan (foreign key)
Total_Kejadian_Kec Number 3 Total kejadian kebakaran per kecamatan
13. Tabel Waktu kebakaran per kecamatan
Nama file : Tabel waktu kebakaran kecamatan.dbf
Deskripsi : Data jumlah waktu kebakaran di setiap
kecamatannya.
Primary Key : Id_waktu
Foriegn Key : Id_kec
Tabel 4.18 Tabel Waktu kebakaran per kecamatan.dbf
Nama field Tipe Panjang KeteranganID_waktu Number 2 Id waktu (primary key)Pagi Number 3 Jumlah waktu keb (pagi)Siang Number 3 Jumlah waktu keb (siang)Malam Number 3 Jumlah waktu keb (malam)Id_Kec Number 2 Id kecamatan (foreign key)Total_Kejadiankec
Number 3 Jumlah Kejadian Kebakaranper kecamatan
77
14. Tabel Benda terbakar per kecamatan
Nama file : Tabel benda terbakar kecamatan.dbf
Deskripsi : Data jumlah benda terbakar di setiap
kecamatannya.
Primary Key : Id_BendaTBKR
Foriegn Key : Id_kec
Tabel 4.19 Tabel Benda terbakar per kecamatan.dbf
15. T
14. Tabel Kejadian Kebakaran per Kecamatan
Nama file : Kejadian Kebakaran per Kecamatan.dbf
Deskripsi : Data jumlah kejadian kebakaran di setiap
kecamatannya.
Primary Key : Id_Jml_keb
Foriegn Key : Id_kec
Tabel 4.20 Tabel Kejadian Kebakaran per Kecamatan.dbf
Nama field Tipe Panjang KeteranganID_Jml_Keb Number 2 Id jumlah kebakaran per kecamatan
(primary key)
Total_kejadian_kec Number 3 Jumlah total kejadian kebakaran perkecamatan
Id_Kec Number 2 Id kecamatan (foreign key)
15. Tabel Kejadian Keb bulanan per kecamatan
Nama file : Tabel Keb bulanan kecamatan.dbf
Deskripsi : Data jumlah kejadian kebakaran per
bulannya di setiap kecamatannya.
Nama field Tipe Panjang KeteranganID_BendaTBKR Number 2 Id Benda terbakar (primary key)Bgn_Perum Number 3 Jumlah perumahanBgn_Umum Number 3 Jumlah bangunan umumBgn_Indus Number 3 Jumlah bangunan industriKendaraan Number 3 Jumlah kendaraanId_Kec Number 2 Id kecamatan (foreign key)Total_Kejadiankec
Number 3 Jumlah Kejadian Kebakaran perkecamatan
78
Primary Key : Id_bulanan
Foriegn Key : ID_kec
Tabel 4.21 Tabel Kej Keb bulanan per kecamatan.dbf
16. Tabel Penyebab Kebakaran per kelurahan
Nama file : Tabel penyebab kebakaran kelurahan.dbf
Deskripsi : Data jumlah penyebab kebakaran di setiap
kelurahannya.
Primary Key : Id_Penyebab
Foriegn Key : Id_kel
Tabel 4.22 Tabel Penyebab kebakaran per kelurahan.dbf
17. Tabel Waktu kebakaran per kelurahan
Nama file : Tabel waktu kebakaran kelurahan.dbf
Deskripsi : Data jumlah waktu kebakaran di setiap
Nama field Tipe Panjang KeteranganID_bulanan Number 2 Id bulan (primary key)Januari Number 3 Jumlah kebakaran bulan JanuariFebruari Number 3 Jumlah kebakaran bulan FebruariMaret Number 3 Jumlah kebakaran bulan MaretApril Number 3 Jumlah kebakaran bulan AprilMei Number 3 Jumlah kebakaran bulan MeiJuni Number 3 Jumlah kebakaran bulan JuniJuli Number 3 Jumlah kebakaran bulan JuliAgustus Number 3 Jumlah kebakaran bulan AgustusSeptember Number 3 Jumlah kebakaran bulan SeptemberOktober Number 3 Jumlah kebakaran bulan OktoberNovember Number 3 Jumlah kebakaran bulan NovemberDesember Number 3 Jumlah kebakaran bulan DesemberID_Kec Number 2 Id kecamatan (foreign key)Total_Kejadiankec
Number 3 Jumlah Kejadian Kebakaran perkecamatan
Nama field Tipe Panjang KeteranganID_Penyebab Number 2 Id penyebab kebakaran (primary key)
Kompor Number 3 Jumlah penyebab keb (kompor)
Lampu Number 3 Jumlah penyebab keb (lampu)
Listrik Number 3 Jumlah penyebab keb (listrik)
Rokok Number 3 Jumlah penyebab keb (rokok)
Id_Kel Number 2 Id kelurahan (foreign key)
79
kelurahannya.
Primary Key : Id_waktu
Foriegn Key : Id_kel
Tabel 4.23 Tabel Waktu kebakaran per kelurahan.dbf
18. Tabel Benda terbakar per kelurahan
Nama file : Tabel Benda terbakar kelurahan.dbf
Deskripsi : Data jumlah benda terbakar di setiap
kelurahannya.
Primary Key : Id_BendaTBKR
Foriegn Key : Id_kel
Tabel 4.24 Tabel Benda terbakar per kelurahan.dbf
19. T
19. Tabel Kejadian Kebakaran per kelurahan
Nama file : Tabel Kejadian Kebakaran kelurahan.dbf
Deskripsi : Data jumlah kejadian kebakaran di setiap
kelurahannya.
Primary Key : Id_Jml_keb
Foriegn Key : Id_kel
Tabel 4.25 Tabel Kejadian Kebakaran per kelurahan.dbf
Nama field Tipe Panjang KeteranganID_Jml_Keb Number 2 Id jumlah kebakaran kelurahan (primary key)
Total_kejadian Number 3 Jumlah total kejadian kebakaran per kelurahan
Id_Kel Number 2 Id kelurahan (foreign key)
Namafield
Tipe Panjang Keterangan
ID_waktu Number 2 Id waktu (primary key)
Pagi Number 3 Jumlah waktu keb (pagi)
Siang Number 3 Jumlah waktu keb (siang)
Malam Number 3 Jumlah waktu keb (malam)
Id_Kel Number 2 Id kelurahan (foreign key)
Nama field Tipe Panjang KeteranganID_BendaTBKR Number 2 Id Benda terbakar (primary key)
Bgn_Perum Number 3 Jumlah Perumahan
Bgn_Umum Number 3 Jumlah bangunan umum
Bgn_Indus Number 3 Jumlah bangunan industri
Kendaraan Number 3 Jumlah Kendaraan
Id_Kel Number 2 Id kelurahan (foreign key)
80
20. Tabel Kejadian Keb bulanan per kelurahan
Nama file : Tabel Keb bulanan kelurahan.dbf
Deskripsi : Data jumlah kejadian kebakaran per
bulannya di setiap kelurahannya.
Primary Key : Id_bulanan
Foriegn Key : ID_kel
Tabel 4.26 Tabel Kej Keb bulanan per kelurahan.dbf
Nama field Tipe Panjang KeteranganID_bulanan Number 2 Id bulan (primary key)Januari Number 3 Jumlah kebakaran bulan JanuariFebruari Number 3 Jumlah kebakaran bulan FebruariMaret Number 3 Jumlah kebakaran bulan MaretApril Number 3 Jumlah kebakaran bulan AprilMei Number 3 Jumlah kebakaran bulan MeiJuni Number 3 Jumlah kebakaran bulan JuniJuli Number 3 Jumlah kebakaran bulan JuliAgustus Number 3 Jumlah kebakaran bulan AgustusSeptember Number 3 Jumlah kebakaran bulan SeptemberOktober Number 3 Jumlah kebakaran bulan OktoberNovember Number 3 Jumlah kebakaran bulan NovemberDesember Number 3 Jumlah kebakaran bulan DesemberID_Kel Number 2 Id kelurahan (foreign key)Total_Kejadiankel
Number 3 Jumlah Kejadian Kebakaran perkelurahan
81
4.4.4 Perancangan Input / Output SIGK
Pada tahap ini menjelaskan penggambaran sistem dengan
menggunakan tools State Transition Diagram (STD), yaitu
menggambarkan transisi atau perubahan statement, keadaan sistem yang
dipicu oleh adanya aksi yang dilakukan oleh user dan juga
mendeskripsikan reaksi sistem terhadap aksi tersebut. Dengan kata lain,
STD dapat mendeskripsikan cara kerja fungsi-fungsi yang dimiliki oleh
setiap Menu. Dengan adanya STD, rancangan akan lebih terperinci
karena fungsi-fungsi setiap objek yang diperlukan telah dideskripsikan
melalui STD. Dan dilengkapi dengan pembuatan rancangan tampilan
program.
a. Perancangan STD
1. STD Layar Utama SIGK
Gambar 4.10 STD Layar Utama SIGK
82
2. STD Menu Utama
Gambar 4.11 STD Menu Utama
3. STD Menu Informasi
Gambar 4.12 STD Menu Informasi
83
4. STD Menu Peta Tematik
5. STD Menu Penanganan Kebakaran
Gambar 4.14 STD Menu Penanganan Kebakaran
Gambar 4.13 STD Menu Peta Tematik
84
6. STD Menu Pemeliharaan Data
Gambar 4.15 STD Menu Pemeliharaan Data
85
7. STD Menu Laporan
8. STD Menu Petunjuk
Gambar 4.17 STD Menu Petunjuk
Gambar 4.16 STD Menu Laporan
86
b. Perancangan Layar
Pada bagian ini akan dibahas mengenai perancangan
antarmuka aplikasi SIGK. Antarmuka yang akan
dibangun, dirancang sesederhana mungkin sehingga
memudahkan pengguna dalam menggunakannya.
Rancangan antarmuka dari aplikasi ini adalah sebagai
berikut:
1. Layar Utama
Gambar 4.18 Perancangan Layar Utama
87
2. Layar Menu Utama
Dalam layar menu utama terdiri 5 sub menu,
yaitu seleksi wilayah, tutup modul aktif, cetak, setting
cetakan, login dan keluar. Seperti gambar dibawah
ini.
3. Layar Menu Informasi
Dalam layar menu informasi terdiri 2 sub
menu, yaitu Daerah penelitian dan Profil SUDIN
kebakaran Jakarta Timur. Seperti gambar dibawah
ini.
Gambar 4.19 Perancangan Layar Menu Utama
88
SISTEM INFORMASI GEOGRAFIS PENANGANAN KEBAKARAN xMenu Utama Informasi Peta Tematik Penanganan Kebakaran Pemeliharaan Data Petunjuk
Button Bar
Tools Bar
Judul Peta
Legenda danLayer Peta Tampilan Peta
Profil SUDIN Kebakaran JAKTIM
-
Button View
Daerah Penelitian
x-
Laporan
4. Layar Menu Peta Tematik
Dalam layar menu peta tematik terdiri 2 sub
menu, yaitu Penyebaran pos penanganan kebakaran,
peta administrasi Jakarta Timur. Seperti gambar
dibawah ini.
Gambar 4.20 Perancangan Layar Menu Informasi
89
SISTEM INFORMASI GEOGRAFIS PENANGANAN KEBAKARAN xMenu Utama Informasi Peta Tematik Penanganan Kebakaran Pemeliharaan Data Petunjuk
Button Bar
Tools Bar
Judul Peta
Legenda danLayer Peta Tampilan Peta
-
Button View
Keterangan dan Judul Peta
Penyebaran Pos Penanganan Kebakaran
Peta Administrasi JAKTIM
x-
Laporan
5. Layar Menu Penanganan Kebakaran
Dalam layar menu penanganan kebakaran
terdiri 1 sub menu, yaitu Cari lokasi kebakaran .
Seperti gambar dibawah ini.
Gambar 4.21 Perancangan Layar Menu Peta Tematik
Gambar 4.22 Perancangan Menu Penanganan Kebakaran
90
6. Layar Menu Pemeliharaan Data
Dalam layar menu penanganan kebakaran
terdiri 4 sub menu, yaitu kasus kebakaran, pos
pemadam kebakaran, pos polisi dan rumah sakit.
Seperti gambar dibawah ini.
7. Layar Menu Laporan
Dalam layar menu Laporan terdiri 3 sub menu,
yaitu Laporan kebakaran per kelurahan, Laporan
kebakaran per kecamatan, Laporan kebakaran per
bulan. Seperti gambar dibawah ini.
Gambar 4.23 Perancangan Layar Menu Pemeliharaan Data
91
8. Layar Menu Petunjuk
Dalam layar menu petunjuk terdiri 2 sub
menu, yaitu Program aplikasi dan kontak kami.
Seperti gambar dibawah ini.
Gambar 4.25 Perancangan Layar Menu Petunjuk
Gambar 4.24 Perancangan Layar Menu Laporan
92
9. Layar Dialog
a. Rancangan Dialog Login
Gambar 4.26 Rancangan Dialog Login
b. Rancangan Dialog Seleksi Wilayah
Gambar 4.27 Dialog Seleksi Wilayah
c. Rancangan Dialog Print
Gambar 4.28 Dialog Print
93
d. Rancangan Dialog Print Setup
Gambar 4.29 Dialog Print Setup
e. Rancangan Dialog Pemeliharaan Data (PosPemadam, Pos Polisi, Rumah Sakit)
Gambar 4.30 Rancangan Dialog Pemeliharaan Data Pos dan RS
f. Rancangan Dialog Entri Data Kebakaran
Gambar 4.31 Rancangan Dialog Entri Data Kebakaran
94
g. Rancangan Dialog Pemeliharaan data ”Kasus
Kebakaran”
Gambar 4.32 Rancangan Dialog Pemeliharaan data ”Kasus Kebakaran”
95
4.4.5 Penulisan Program (Coding)
Hasil perancangan sebelumnya harus diubah menjadi bentuk
yang dimengerti mesin (komputer). Maka dilakukan langkah
penulisan program. Jika hasil perancangannya detail, maka coding
dapat dicapai dengan baik. Pada tahap ini penulis membuat aplikasi
berbasis desktop menggunakan Script Avenue yang ada pada
ArcView Gis 3.3 . Berikut ini perancangan algoritma penulisan
program SIGK.
4.4.5.1 Spesifikasi Program Untuk Modul Pembuka
Sub pembuka
Tutup semua window
Panggil modul pembuka
Panggil image
Panggil modul password
Akhir Sub
4.4.5.2 Spesifikasi Program Untuk Modul Layar Utama
Sub layar utama
Tampilkan semua menu bar pada layar
Tampilkan semua button bar pada layar
Tampilkan semua tool bar pada layer
Tampilkan peta tematik pos penanganan kebakaran
Pilih menu
Menu Utama
Pilih sub modul Menu Utama
Seleksi Wilayah
96
Panggil sub modul seleksi wilayah
Tutup Modul Aktif
Panggil sub modul tutup modul aktif
Cetak
Panggil sub modul cetak
Seting Cetakan
Panggil sub modul setting cetakan
LOGIN
Panggil sub modul LOGIN
Keluar
Panggil sub modul keluar
Informasi
Pilih sub modul Informasi
Daerah Penelitian
Panggil sub modul daerah penelitian
Profil SUDIN Kebakaran JakTim
Panggil sub modul Profil SUDIN Kebakaran
Peta Tematik
Pilih sub modul peta tematik
Penyebaran pos penanganan kebakaran
Panggil sub modul pos penanganan
Peta administrasi Jakarta Timur
Panggil sub modul peta administrasi
Penanganan Kebakaran
Pilih sub modul Penanganan Kebakaran
Cari Lokasi Kebakaran
97
Panggil sub modul cari lokasi kebakaran
Pemeliharaan Data
Pilih sub modul pemeliharaan data
Kasus Kebakaran
Panggil sub modul kasus kebakaran
Pos Pemadam Kebakaran
Panggil sub modul pos pemadam kebakaran
Pos polisi
Panggil sub modul pos polisi
Rumah sakit
Panggil sub modul Rumah sakit
Laporan
Pilih sub modul Laporan
Laporan kebakaran per kelurahan
Panggil sub modul Laporan kebakaran per
kelurahan
Laporan kebakaran per kecamatan
Panggil sub modul Laporan kebakaran per
kecamatan
Laporan kebakaran per bulan
Panggil sub modul Laporan kebakaran per
bulan
Informasi
Pilih sub modul informasi
Program Aplikasi
Panggil sub modul program aplikasi
Kontak Kami
Panggil sub modul kontak kami
Akhir Sub
98
4.4.5.3 Spesifikasi program untuk sub menu Menu Utama
a. Sub Menu Seleksi Wilayah
Sub seleksi wilayah
Tampilkan view peta pos penanganan kebakaran
Tampilkan form seleksi wilayah
Pilih wilayah ( batas kelurahan )
Keluar dari form seleksi wilayah
Akhir Sub
a. Sub Menu Tutup Modul Aktif
Sub menu tutup modul aktif
Keluar dari view yang tampil paling depan di layar
Akhir Sub
b. Sub Menu Cetak
Sub menu cetak
Tampilkan dialog print
Ok untuk memulai proses print
Cancel untuk menggagalkan proses print
Akhir Sub
c. Sub Menu Setting Cetakan
Sub menu setting setakan
Tampilkan dialog print setup
Akhir Sub
99
e. Sub Menu Keluar
Sub menu keluar
Keluar dari program aplikasi SIGK
Akhir Sub
4.4.5.4 Spesifikasi program untuk sub menu Informasi
a. Sub menu Daerah Penelitian
Sub menu daerah penelitian
Tampilkan dokumen informasi daerah penelitian
(Profil Daerah Penelitian.doc)
Akhir Sub
b. Sub menu Profil Sudin Kebakaran JakTim
Sub menu profil SUDIN kebakaran JAKTIM
Tampilkan dokumen profil SUDIN kebakaran
(Profil SuKu Dinas Pemadam Kebakaran.doc)
Akhir Sub
4.4.5.5 Spesifikasi program untuk sub menu Peta Tematik
a. Sub menu penyebaran pos penanganan kebakaran
Sub menu penyebaran pos penanganan kebakaran
Tampilkan view penyebaran pos penanganan keb
Button Buka table untuk melihat table
Button layout untuk membuat laporan
Button tutup untuk keluar dari view
Akhir Sub
100
b. Sub menu peta tematik Jakarta Timur
Sub menu peta tematik Jakarta timur
Tampilkan view peta administrasi Jakarta Timur
Button layout untuk membuat laporan
Button tutup untuk keluar dari view
Akhir Sub
4.4.5.6 Spesifikasi program untuk sub menu Penanganan
Kebakaran
Sub Menu Cari Lokasi Kebakaran
Tampilkan view pos penanganan kebakaran
Button cari lokasi kebakaran
Dialog data kebakaran
Input data kebakaran
Cari lokasi kebakaran like input (nama jalan)
Buffer lokasi kebakaran
Simpan untuk menyimpan data kebakaran
Keluar untuk keluar dari form data kebakaran
Akhir Form
Button cetak untuk membuat laporan
Button tutup untuk keluar dari view
Akhir Sub
101
4.4.5.7 Spesifikasi program untuk sub menu Pemeliharaan_Data
a. Sub menu Kasus Kebakaran
Sub menu kasus kebakaran
Tampilkan view peta penyebaran kasus kebakaran
Dialog update informasi kebakaran
Masukan Id kebakaran
Input data pelengkap kebakaran (lengkap)
Hapus untuk menghapus data kebakaran
Simpan untuk menyimpan data kebakaran
Keluar untuk keluar dari form dialog
Akhir Form
Akhir Sub
b. Sub menu pos pemadam kebakaran
Sub menu pos pemadam kebakaran
Tampilkan view pos penanganan kebakaran
Form Dialog update informasi
Masukan Id pos pemadam
Input data pos pemadam
Button hapus data untuk menhapus data
Button Simpan untuk menyimpan
Button Keluar untuk keluar dari form dialog
Button tambah pos pemadam baru
Input data pos pemadam baru
102
Button Simpan untuk menyimpan
Button Keluar untuk keluar dari form dialog
Akhir button
Akhir form dialog
Akhir Sub
c. Sub menu Pos polisi
Sub menu pos polisi
Tampilkan view pos penanganan kebakaran
Form Dialog update informasi
Masukan Id pos polisi
Input data pos polisi
Button hapus data untuk menhapus data
Button Simpan untuk menyimpan
Button Keluar untuk keluar dari form dialog
Button tambah pos polisi baru
Input data pos polisi baru
Button Simpan untuk menyimpan
Button Keluar untuk keluar dari form dialog
Akhir Button
Akhir Form Dialog
Akhir Sub
103
d. Sub menu Rumah Sakit
Sub menu rumah sakit
Tampilkan view pos penanganan kebakaran
Form Dialog update informasi
Masukan Id rumah sakit
Input data rumah sakit
Button hapus data untuk menhapus data
Button Simpan untuk menyimpan
Button Keluar untuk keluar dari form dialog
Button tambah rumah sakit baru
Input data rumah sakit
Button Simpan untuk menyimpan
Button Keluar untuk keluar dari form dialog
Akhir Button
Akhir Form Dialog
Akhir Sub
4.4.5.8 Spesifikasi program untuk sub menu Laporan
a. Sub menu Laporan kebakaran per kelurahan
Sub menu Laporan kebakaran per kelurahan
Tampilkan view penyebaran kebakaran per kelurahan
Button sebaran untuk membuat peta tematik
penyebaran kebakaran
Button layout untuk membuat laporan
104
Button tutup untuk keluar dari view
Akhir Button
b. Sub menu Laporan kebakaran per kecamatan
Sub menu Laporan kebakaran per kecamatan
Tampilkan view penyebaran kebakaran per kecamatan
Button grafik untuk membuat presentase grafik
Button sebaran untuk membuat peta tematik
penyebaran kebakaran
Button layout untuk membuat laporan
Button tutup untuk keluar dari view
Akhir Button
c. Sub menu Laporan kebakaran per bulan
Sub menu Laporan kebakaran per bulan
Tampilkan view penyebaran kebakaran per bulan
Button grafik untuk membuat presentase grafik
Button sebaran untuk membuat peta tematik
penyebaran kebakaran
Button layout untuk membuat laporan
Button tutup untuk keluar dari vew
Akhir Button
4.4.5.9 Spesifikasi program untuk sub menu Petunjuk
a. Sub menu program aplikasi
Sub menu program aplikasi
Tampilkan dialog program aplikasi
Akhir Sub
b. Sub menu kontak kami
Sub menu kontak kami
Tampilkan dialog kontak kami
Akhir Sub
105
4.5 Pengujian ( Testing )
Setelah kode program selesai dibuat, dan program dapat berjalan,
testing dapat dimulai. Testing difokuskan pada logika pemrograman dari
perangkat lunak, fungsi (menu, tools, button), dan mencari segala
kemungkinan kesalahan. Memeriksa apakah hasilnya sesuai dengan yang
diinginkan. Pada tahap pengujian ini dilakukan installasi / pemasangan
sistem secara utuh untuk dipergunakan pada Suku Dinas Pemadam
Kebakaran Kotamadya Jakarta Timur.
Sistem Informasi Geografis Kebakaran pada batas administrasi
Jakarta Timur yang penulis buat masih dalam tahap pengenalan sistem dan
belum sepenuhnya diimplementasikan. Sistem ini dioperasikan pada Ruang
Operator (Bagian Seksi Operasi) Suku Dinas pemadam Kebakaran Jakarta
Timur. Sistem ini dioperasikan pada satu komputer dan satu operator saja.
Pada tahap ini dilakukan pengujian terhadap aplikasi sistem yang
telah dibuat, hasilnya adalah sebagai berikut :
Tabel 4.27 Hasil Pengujian
No Nama Tes Hasil yang diharapkan
Hasil Keterangan
1. Login Masuk ke dalam menuutama aplikasi
Berhasil
2. Menampilkan petapos penanganankebakaran
peta pos penanganankebakaran, button carilokasi kebakaran
Berhasil
3. Cari lokasikejadian kebakaran
Jalan terjadinyakebakaran ditampilkan
Berhasil Jalan telah dikelompokanberdasarkan batas kelurahan
4. Cari pospenangananterdekat
Pos penangananterdekat dan lokasikebakaran (jalan)ditampilkan
Berhasil Buffer, metode yangdigunakan untuk mencarilokasi pos terdekat, masukanjarak untuk menentukanseberapa jauh jarak buffernya
5. Menyimpan datakebakaran awal
Terciptanya datakebakaran awal
Berhasil
106
No Nama Tes Hasil yang diharapkan
Hasil Keterangan
6. Seleksi wilayah Penyeleksian wilayahberdasarkan kelurahanditampilkan
Berhasil
7. Tutup modul aktif Keluar dari view yangditampilkan palingdepan
Berhasil
8. Cetak Dialog printditampilkan dan prosespencetakan dijalankan
Berhasil
9. Setting cetakan Dialog setting cetakanditampilkan
Berhasil
10. Keluar keluar dari aplikasiSIGK
Berhasil
11. Informasi daerahpenelitian
Dokumen daerahpenelitian ditampilkan
Berhasil
12. Informasi ProfilSUDIN KebakaranJaktim
Dokumen profilSUDIN KebakaranJakTim ditampilkan
Berhasil
13. Peta tematikpenyebaran pospenanganankebakaran
Peta penyebaran pospenanganan kebakaranditampilkan
Berhasil
14. Peta tematikJakarta Timur
Peta AdministrasiJakarta Timurditampilkan
Berhasil
15. Laporanpenyebarankejadian kebakaran
Peta penyebarankejadian kebakaranditampilkan
Berhasil 1. Peta penyebaran kejadiankebakaran per kelurahan(berdasarkan parameternya)
2. Peta penyebaran kejadiankebakaran per kecamatan(berdasarkan parameternya)
3. Peta penyebaran kejadiankebakaran per bulannya
16. Menampilkangrafik
Grafik penyebarankebakaran disesuaikandan ditampilkan
Berhasil Peta tematik penyebarankejadian kebakaranditampilkan terlebih dahulu
17 Membuat petasebaran
Informasi pada themepeta penyebarankebakaran sesuai danditampilkan
Berhasil Peta tematik penyebarankejadian kebakaranditampilkan terlebih dahulu,sesuaikan informasi theme
18. Menampilkanlayout
Layout dapat dibuatdan ditampilkan
Berhasil Peta tematik penyebarankejadian kebakaranditampilkan terlebih dahulu
19. Pemeliharaan datakasus kebakaran
Update informasi,hapus, simpan kasuskebakaran
Berhasil
20. Pemeliharaan datapos pemadam
Update informasi,hapus, simpan pospemadam kebakaran,
Berhasil
107
No Nama Tes Hasil yang diharapkan
Hasil Keterangan
membuat pos baru
21. Pemeliharaan datapos polisi
Update informasi,hapus, simpan pospolisi, membuat posbaru
Berhasil
22. Pemeliharaan datarumah sakit
Update informasi,hapus, simpan rumahsakit, membuat posbaru
Berhasil
23. Menampilkanpetunjuk progranaplikasi
Informasi fungsi-fungsi menu dansubmenu ditampilkan
Berhasil
24. Menampilkankontak kami
Informasi pengembangaplikasi ditampilkan
Berhasil
25. Penggunaan tools Tools pada toolbardapat digunakandengan baik
Berhasil View Peta penyebarankejadian kebakaranditampilkan terlebih dahulu
26. Update SIGK Database SIGK baruberhasil diupdate
Berhasil Tutup seluruh modul view,pada Doc projectpengupdatean dilakukan.
4.6 Operasi dan Pemeliharaan
Setelah aplikasi SIGK diberikan pada user, mungkin dapat ditemui
error ketika dijalankan dilingkungan user. Atau mungkin user meminta
penambahan fungsi, hal ini menyebabkan faktor maintenance (pemeliharaan)
ini menjadi penting dalam penggunaan metode ini. Pemeliharaan ini dapat
berpengaruh pada semua langkah yang dilakukan sebelumnya. Pada tahap ini
dilakukan kegiatan perawatan / maintenance, serta review sistem untuk
mengetahui apakah sistem masih sesuai dengan kebutuhan user atau tidak.
108
4.6.1 Pemakaian SIGK
Sistem Informasi Geografis Kebakaran pada batas
administrasi Jakarta Timur yang penulis buat masih dalam tahap
pengenalan sistem dan belum sepenuhnya diimplementasikan di
Suku Dinas pemadam Kebakaran Jakarta Timur. Sistem ini
dioperasikan pada Ruang Operator (Sub Bagian dari Seksi Operasi)
Suku Dinas pemadam Kebakaran Jakarta Timur, dan saat ini sistem
dioperasikan pada satu komputer dan satu operator saja.
4.6.2 Evaluasi
Dikarenakan Sistem Informasi Geografis Kebakaran pada
batas administrasi Jakarta Timur yang penulis buat masih dalam
tahap pengenalan sistem dan belum sepenuhnya diimplementasikan
di Suku Dinas pemadam Kebakaran Jakarta Timur. Maka penulis
hanya dapat melakukan evaluasi sistem secara internal terhadap
Kepala Sudin pemadam Kebakaran Jakarta Timur, Kepala seksi
operasi dan 2 staff operator seksi operasi. Untuk mengevaluasi
sistem ini penulis melakukan pengujian terhadap aplikasi yang
dibuat, pada Sudin Kebakaran Jakarta Timur. Adapun pengujian
yang dilakukan meliputi :
a. Pemeriksaan kesalahan / error pada program.
1. Proses login
2. Pencarian lokasi kebakaran
109
3. Pemeliharaan data kebakaran (update, hapus, simpan
informasi)
4. Pemeliharaan data pos pemadam, pos polisi, rumah
sakit. (update, hapus, simpan informasi dan
pembuatan baru)
5. Integrasi dengan aplikasi lain
6. Pengetesan semua menu dan sub menu yang ada pada
SIGK.
b. Pemeriksaan apakah output yang dihasilkan telah sesuai
dengan tujuan yang telah didefinisikan sebelumnya.
1. Pembuatan sebaran kebakaran per kelurahan, per
kecamatan dan per bulannya.
2. Pembuatan layout laporan sebaran kebakaran per
kelurahan, per kecamatan dan per bulannya.
3. Pembuatan layout laporan sebaran kebakaran menurut
faktor yang mempengaruhinya (penyebab kebakaran,
jenis bahan terbakar, waktu kejadian).
4. Pembuatan grafik penyebaran kebakaran per
kecamatan dan per bulannya.
5. Pembuatan layout peta pos penanganan kebakaran.
6. Pembuatan layout peta administrasi Jakarta Tmur.
Penulis juga melakukan kuisioner untuk mengetahui respon dari
penggunaan sistem baru SIGK, adapun hasil yang diperoleh dari
110
kuisioner yang dilakukan pada Sudin Dinas Kebakaran Jakarta
Timur tentang aplikasi SIGK ini, sebagai berikut :
1. Tampilan aplikasi, menu dan sub menu, button dan tool bar,
serta peta wilayah penelitian pada aplikasi SIGK ini baik dan
jelas sehingga pengguna dapat menggunakan aplikasi ini
dengan baik.
0
0,5
1
1,5
2
2,5
3
3,5
4
4,5
Kurang Baik ( 50 – 60 )
Cukup Baik ( 61 – 79 ) 1
Baik ( 80 – 89 ) 4 4 4 2
Sangat Baik ( 90 -100 ) 1
Bagaimanakah tampilan visualisasidari aplikasi SIGK ini ?
Bagaimanakah tampilan menu dansub menu dari aplikasi SIGK ini ?
Bagaimanakah tampilan Button dantools dari aplikasi SIGK ini ?
Bagaimanakah tampilan peta wilayahJakarta Timur dalam aplikasi SIGK ini
?
Gambar 4.33 Tabel hasil kuisioner tampilan aplikasi
2. Fasilitas yang tersedia pada aplikasi SIGK yaitu fasilitas
pencarian lokasi kebakaran, update/pembaharuan data,
laporan penyebaran kebakaran dan tools yang tersedia pada
SIGK ini sudah memadai untuk mengolah data kebakaran.
111
0
0,5
1
1,5
2
2,5
3
3,5
4
4,5
Kurang M emadai ( 50 – 60 )
C ukup M emadai ( 61 – 79 )
M emadai ( 80 – 89 ) 4 3 2 2 4
Sangat M emadai ( 90 -100 ) 1 2 2
Apakah fasilitas pencarian lokasikebakaran dan pos penanganan
terdekat sudah memadai ?
Apakah fasilitas informasi tentangdaerah penelitian dan profil pemadam
kebakaran sudah memadai ?
Apakah fasilitas update/pembaharuandata ( data kebakaran, pos pemadam,
pos polisi dan rumah sakit sudah
Apakah fasilitas laporan peny ebarankebakaran ( per kelurahan, per
kecamatan dan per bulanny a ) sudah
Apakah fasilitas Tools y ang tersediapada aplikasi SIGK ini sudah memadai
?
3. Penggunaan Fasilitas yang tersedia pada aplikasi SIGK yaitu
fasilitas pencarian lokasi kebakaran, update/pembaharuan
data, laporan penyebaran kebakaran, tools yang tersedia pada
SIGK ini mudah untuk digunakan dalam mengolah data
kebakaran.
0
0,5
1
1,5
2
2,5
3
3,5
4
4,5
Sangat Sulit ( 50 – 60 )
Sulit ( 61 – 79 )
Cukup Mudah ( 80 – 89 ) 4 4 4 4 4 4
Mudah ( 90 -100 )
Bagaimanakah prosedurpenggunaan aplikasi SIGK ini ?
Bagaimanakah penggunaanfasilitas pencarian lokasi
kebakaran dan pos penanganan
Bagaimanakah penggunaanfasilitas informasi tentang daerah
penelitian dan profil pemadam
Bagaimanakah penggunaanfasilitas update/pembaharuandata ( data kebakaran, pos
Bagaimanakah penggunaanfasilitas laporan penyebaran
kebakaran ( per kelurahan, per
Bagaimanakah penggunaanfasilitas Tools yang tersedia
pada aplikasi SIGK ini ?
Gambar 4.35 Tabel hasil kuisioner penggunaan fasilitas
4. Informasi yang dihasilkan dari SIGK ini, yaitu lokasi
kebakaran dan pos penanganan terdekat, informasi
penyebaran kebakaran per kelurahan, kecamatan dan per
Gambar 4.34 Tabel hasil kuisioner fasilitas aplikasi
112
bulannya sudah memadai dalam proses penanganan dan
pembuatan laporan penyebaran kebakaran.
0
0 ,5
1
1 ,5
2
2 ,5
3
3 ,5
K u r a n g M e m a d a i ( 5 0 – 6 0 )
C u k u p M e m a d a i ( 6 1 – 7 9 ) 1
M e m a d a i ( 8 0 – 8 9 ) 2 3
S a n g a t M e m a d a i ( 9 0 - 1 0 0 ) 1 1
A p a k a h i n fo r m a s i ya n g d i h a s i l k a n d a r ip e n c a r i a n l o k a s i k e b a k a r a n d a n p o s
p e n a n g a n a n te r d e k a t s u d a h m e m a d a i ?
A p a k a h i n fo r m a s i ya n g d i h a s i l k a nte n ta n g p e n ye b a r a n k e b a k a r a n ( p e r
k e l u r a h a n , p e r k e c a m a ta n d a n p e r
5. Penyajian laporan pada aplikasi SIGK ini yaitu laporan
penyebaran kebakaran dalam bentuk peta tematik, grafik dan
tabel dapat dimengerti pengguna dan pihak lain yang
menggunakan laporan ini.
0
0 ,5
1
1 ,5
2
2 ,5
3
3 ,5
4
4 ,5
K u ra n g M e n g e r ti ( 5 0 – 6 0 )
C u k u p M e n g e r ti ( 6 1 – 7 9 ) 1
M e n g e r ti ( 8 0 – 8 9 ) 3 4 4
S a n g a t M e n g e r ti ( 9 0 -1 0 0 )
B a g a im a n a k a h p e n ya j ia nla p o ra n d a la m b e n tu k
ta m p i la n p e ta ?
B a g a im a n a k a h p e n ya j ia nla p o ra n d a la m b e n tu k
ta m p i la n g ra fik ?
B a g a im a n a k a h p e n ya j ia nla p o ra n d a la m b e n tu k
ta m p i la n ta b e l ?
Gambar 4.37 Tabel hasil kuisioner penyajian laporan
6. Informasi yang dihasilkan dari SIGK ini yaitu lokasi
kebakaran dan pos penanganan terdekat, laporan penyebaran
kebakaran per kelurahan, kecamatan dan per bulannya, dapat
Gambar 4.36 Tabel hasil kuisioner informasi yang dihasilkan
113
digunakan sebagai masukan bagi Dinas Pemadam Kebakaran
Jakarta Timur untuk meningkatkan kinerja dalam
menanggulangi kebakaran.
0
0 ,5
1
1 ,5
2
2 ,5
3
3 ,5
4
4 ,5
Y A 4
T ID A K 0
A p a k a h k e l u a r a n d a r i S IG K i n i , d a p a t d i g u n a k a n s e b a g a i m a s u k a n b a g i S U D IN P E M A D A M K E B A K A R A NJ a k a r ta T i m u r u n tu k m e n i n g k a tk a n k i n e r j a d a l a m m e n a n g g u l a n g i k e b a k a r a n ?
7. Waktu yang diperlukan dalam proses penanganan kebakaran
antara sistem lama dengan SIGK, menunjukan SIGK
membutuhkan waktu yang lebih sedikit dibanding sistem
lama dalam mencari lokasi kebakaran dan pos penanganan
terdekat, sehingga dapat mempercepat proses penanganan
kebakaran.
Gambar 4.38 Tabel hasil kuisioner manfaat informasi yang dihasilkan
114
Tabel 4.28 Perbandingan Sistem Lama dan Sistem Baru
No MATERI YANGDIBANDINGKAN
SISTEM LAMA SISTEM BARU ( SIGK )
1 Proses pengolahan laporankebakaran
1. Telfon masuk ’Laporankebakaran’ .
2. Pendataan Laporan kebakaran(tutup telfon)
3. Pencarian lokasi dan pencarianpos penanganan kebakaranterdekat (informasimanual)/lebih kepada ketajamaningatan/hafalan.
4. Cari Informasi Pos penangananmelalui tabel informasi pospenanganan berupa bukuinformasi.(text)
5. Penginstruksian pemadamankepada pos-pos terdekat
6. Proses pemadaman oleh posterdekat dan bantuan dari poslainnya.
1. Telfon masuk ’Laporankebakaran’ .
2. Pendataan Laporan kebakaran3. Pencarian lokasi dan pencarian
pos penanganan kebakaranterdekat (dengan sistemterkomputerisasi) sehinggainformasi dapat diketahuilangsung.
4. Penginstruksian pemadamankepada pos-pos terdekat
5. Proses pemadaman oleh posterdekat dan bantuan dari poslainnya.
2 Waktu yang diperlukandalam pengolahan laporan
kebakaran
I. 2 Menit 55 DetikII. 2 Menit 42 DetikIII. 3 Menit 10 Detik
I. 1 Menit 44 DetikII. 1 Menit 48 DetikIII.1 Menit 32 Detik
4.6.3 Kelebihan SIGK
Dari hasil evaluasi yang dilakukan, dapat disimpulkan
bahwa tujuan telah tercapai dimana aplikasi telah mampu
menyajikan informasi mengenai pencarian lokasi kebakaran dan
pos penanganan kebakaran yang terdekat dengan lokasi kebakaran,
pengolahan data kebakaran untuk mengetahui informasi
penyebaran dari kejadian kebakaran, pemeliharaan data dapat
dilakukan oleh user (operator seksi operasi) dengan mudah,
sehingga kebutuhan informasi pada Suku Dinas Pemadam
Kebakaran Jakarta Timur telah bisa dipenuhi oleh sistem ini.
115
4.6.4 Kekurangan SIGK
Dari hasil evaluasi yang dilakukan, ada kekurangan dalam
sistem ini yaitu mengenai penggambaran lokasi kebakaran di
wilayah penelitian yang perlu dilengkapi lagi, informasi mengenai
tempat-tempat penting yang bisa digunakan sebagai patokan untuk
menentukan lokasi kebakaran. Dan cangkupan wilayahnya tidak
hanya pada wilayah Jakarta Timur tetapi seluruh wilayah Jakarta,
sehingga dalam proses penanganan kebakaran bisa dlakukan secara
lebih optimal di seluruh Jakarta.
116
BAB V
PENUTUP
Pada bab ini adalah bab penutup yang berisi kesimpulan serta saran-saran
yang bermanfaat bagi penulisan skripsi ini.
5.1 Kesimpulan
Dari pembahasan yang sudah di uraikan, dapat disimpulkan bahwa:
1. Aplikasi SIGK dapat membantu Seksi Operasi Suku Dinas Kebakaran
Jakarta Timur dalam mengolah laporan kejadian kebakaran untuk
mengetahui lokasi kebakaran menggunakan kata kunci jalan.
2. Aplikasi SIGK dapat membantu Seksi Operasi Suku Dinas Kebakaran
Jakarta Timur dalam mengolah laporan kejadian kebakaran untuk
mengetahui letak pos pemadam kebakaran, pos polisi dan rumah sakit,
yang terdekat dengan lokasi kebakaran sehingga dapat mempercepat
proses penanganan kebakaran dan proses koordinasi antara lembaga
terkait untuk menangani kebakaran.
3. Dengan adanya aplikasi SIGK ini maka terbentuklah suatu basis data
spasial penyebaran kebakaran. Manajemen data kebakaran yang baik
akan menghasilkan informasi penyebaran kebakaran yang disajikan
dalam bentuk tampilan peta, tabel dan grafik sehingga laporan yang
dihasilkan menjadi lebih baik serta bermanfaat bagi Suku Dinas
Kebakaran Jakarta Timur.
117
5.2 Saran
Pengembangan aplikasi ini belumlah sempurna dan masih memiliki
keterbatasan dan kekurangan serta memerlukan perbaikan untuk
meningkatkan manfaat dari aplikasi ini. Adapun saran yang kiranya dapat
membantu untuk membuat aplikasi ini menjadi lebih baik adalah sebagai
berikut:
1. Diharapkan untuk pengembangan selanjutnya mengenai topik ini dapat
menentukan objek penelitiannya adalah Daerah Khusus Ibukota
Jakarta, sehingga dalam proses penanganannya bisa luas dan terpusat.
2. Perlu adanya informasi baru tentang lokasi-lokasi penting agar dapat
digunakan sebagai patokan dalam mencari lokasi kebakaran dengan
tepat dan akurat.
3. Adanya penelitian lebih lanjut yang menggunakan metode lain dalam
mencari lokasi kebakaran dan pos penanganan terdekat.
4. Aplikasi ini masih bersifat stand alone, akan lebih baik apabila
aplikasi ini dikembangkan menggunakan teknologi berbasis web
sehingga informasi hasil analisis dari aplikasi ini dapat diakses secara
global melalui internet.
5. Adanya penelitian lebih lanjut dengan menggunakan metode
pengembangan sistem terstruktur dengan model waterfall yang
melaksanakan tahap operasi dan pemeliharaan, sehingga dapat
diperoleh informasi baru untuk mengembangkan sistem yang sesuai
dengan kebutuhan.
DAFTAR PUSTAKA
Al Fatta, Hanif. 2007. Analisa dan Perancangan Sistem Informasi Untuk Keunggulan Bersaing dan Organisasi Modern. Yogyakarta: Andi Yogyakarta.
Ladjamudin, Al-bahra bin. 2005. Analisa dan Desain Sistem Informasi. Tanggerang:
Graha Ilmu Tanggerang. Hartono Jogiyanto, 2005. Analisa dan Desain Sistem Informasi. Yogyakarta: Andi
Yogyakarta Haryadi, Muji. 2006. Silabus Sistem Informasi Geografis, Jakarta: Jurusan Teknik
Informatika dan Sistem Informasi Fakultas Sains dan Teknologi, UIN Syarif Hidayatullah Jakarta.
Prahasta, Eddy. 2002. Sistem Informasi Geografis: Konsep-Konsep Dasar Informasi
Goegrafis, Bandung: Informatika Bandung. Prahasta, Eddy. 2002. Sistem Informasi Geografis: Tutorial ArcView, Bandung:
Informatika Bandung. Prahasta, Eddy. 2004. Sistem Informasi Geografis: Tools dan Plug-Ins, Bandung:
Informatika Bandung. Prahasta, Eddy. 2004. Sistem Informasi Geografis: ArcView Lanjut Pemrograman
Bahasa Script Avenue, Bandung: Informatika Bandung. Budiyanto, Eko. 2007. Avenue untuk Pengembangan Sistem Informasi Geografis.
Yogyakarta: Andi Yogyakarta Sulaeman, Yiyi, dan Haryadi, Muji. 2006. Silabus Basisdata Spasial, Jakarta:
Jurusan Teknik Informatika dan Sistem Informasi Fakultas Sains dan Teknologi, UIN Syarif Hidayatullah Jakarta.
Husein, Iwa. 1996. Ilmu Pengetahuan Sosial Geografi. Jakarta: PT Grafinda Media
Pratama. Romenah. 2006. Sistem Informasi Geografis. Jakarta: Modul Belajar Siswa. Anonim. 2001. Kamus Besar Bahasa Indonesia, Edisi Ketiga. Jakarta: Balai Pustaka,
Departemen Pendidikan Nasional.
Suku Dinas Pemadam Kebakaran Jakarta Timur. 2006. Laporan Kegiatan Tahunan 2006. Jakarta Timur : Suku Dinas Pemadam Kebakaran Jakarta Timur.
Rumah Sakit, Peraturan Mentri Kesehatan RI No : 159b/MEN.KES/PER/II/1998
(Bab I Pasal 1 Ayat 1). DKI Jakarta : Departemen Kesehatan.
Jalan, Undang-undang Nomor 13 Tahun 1980 tentang Jalan, Indonesia : Departemen Perhubungan. Kebakaran, (http://www.jakartafire.com/dpk07/pengetahuan/index.php?act=detil&id
b=297), 15 Februari 2008, pukul 24.18 WIB. ArcView Dialog Designer, ( http://esri.com/software/arcview/extensions/dialog/ ),
3 Juli 2008, pukul 23.00 WIB. Theme Regression, ( http://www.jennessent.com/downloads/grid_regression.zip ),
5 Juni 2008, pukul 21.15 WIB. http://www.cybermap.co.id/index.php?map=jkt&con tent=ar&id=30 28 Februari 2008, pukul 14.00 http://timur.jakarta.go.id/webjaktimfinal/content/view/15/35/ 25 Februari 2008, pukul 01.30 WIB.
SCRIPT PROGRAM AVENUE
Nama Aplikasi : Sistem Informasi Geografis Kebakaran
Programmer : Linggo Murti
======================== A. Pembuka/masuk aplikasi ======================== '1-BUKA DIALOG LOGIN p = av.getproject.finddialog("Dialog Pembuka") p.close av.run("1-Start",{}) ========================= B. Mulai Aplikasi " 1-Start " ========================= av.setname("SISTEM INFORMASI GEOGRAFIS PENANGANAN KEBAKARAN") objProject=Av.GetProject objNamaView="PETA POS PENANGANAN KEBAKARAN" objView=objProject.FindDoc(objNamaView) objWindow=objView.GetWin objWindow.Open av.DelayedRun("login",nil,0) ================================== C. Tampilan Awal Aplikasi "1. Menu awal" ================================== '=========== 'Menu Project '=========== theProject = av.FindGUI("Project") btn1=theProject.getbuttonbar.getcontrols.get(0) btn1.setenabled(false) btn2=theProject.getbuttonbar.getcontrols.get(1) btn2.setenabled(false) btn3=theProject.getbuttonbar.getcontrols.get(2) btn3.setenabled(false) btn4=theProject.getbuttonbar.getcontrols.get(3) btn4.setenabled(false) btnProject = theProject.getbuttonbar
btnprojects=btnproject.GetControls.Get(7) btnproject.remove(btnprojects) btnprojects=btnproject.GetControls.Get(6) btnproject.remove(btnprojects) btnprojects=btnproject.GetControls.Get(5) btnproject.remove(btnprojects) btnprojects=btnproject.GetControls.Get(4)
btnproject.remove(btnprojects) mnProject=theProject.getmenubar if(mnProject.getcontrols.get(1).getlabel.asstring="&Menu Utama")then m1=mnProject M=mnProject.GETCONTROLS.GET(1) m1.REMOVE(M) end
if(mnProject.getcontrols.get(1).getlabel.asstring="&Informasi")then m1=mnProject M=mnProject.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnProject.getcontrols.get(1).getlabel.asstring="&Peta Tematik")then m1=mnProject M=mnProject.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnProject.getcontrols.get(1).getlabel.asstring="&Penanganan Kebakaran")then m1=mnProject M=mnProject.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnProject.getcontrols.get(1).getlabel.asstring="&Pemeliharaan Data")then m1=mnProject M=mnProject.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnProject.getcontrols.get(1).getlabel.asstring="&Petunjuk")then m1=mnProject M=mnProject.GETCONTROLS.GET(1) m1.REMOVE(M) end
s=space.make if(mnProject.getcontrols.get(1).getlabel.asstring<>"&Menu Utama")then m=mnProject.new(0) m.setlabel("&Menu Utama")
p1=m.new(0) p1.setlabel("Seleksi Wilayah") p1.setclick("1-Seleksi Wilayah") p1.setenabled(false) p2=m.new(1) p2.setlabel("Tutup Modul Aktif") p2.setclick("1-Tutup") p2.setenabled(false) m.add(s,2) p3=m.new(3) p3.setlabel("Cetak") p3.setclick("Doc.Print") p3.setenabled(false) p4=m.new(4) p4.setlabel("Setting Cetakkan") p4.setclick("project.printsetup") p4.setenabled(false) m.add(s,5) p5=m.new(6) p5.setlabel("Keluar") p5.setclick("keluar aplikasi") p5.setenabled(false) end if(mnProject.getcontrols.get(2).getlabel.asstring<>"&Informasi")then m=mnProject.new(1) m.setlabel("&Informasi") p1=m.new(0) p1.setlabel("Daerah Penelitian") p1.setclick("1-daerah") p1.setenabled(false) m.add(s,1) p2=m.new(2) p2.setlabel("Profil Sudin Pemadam Kebakaran JAKTIM") p2.setclick("1-sudin") p2.setenabled(false) end if(mnProject.getcontrols.get(3).getlabel.asstring<>"&Peta Tematik")then m=mnProject.new(2) m.setlabel("&Peta Tematik")
p1=m.new(0) p1.setlabel("Penyebaran Kejadian Kebakaran") p1.setclick("1-view LAP KEB") p1.setenabled(false) p2=m.new(1) p2.setlabel("Penyebaran Pos Penanganan Kebakaran") p2.setclick("1-ViewPos") p2.setenabled(false) p3=m.new(2) p3.setlabel("Peta Tematik Jakarta Timur") p3.setclick("1-ViewJaktimAdministrasi") p3.setenabled(false) end if(mnProject.getcontrols.get(4).getlabel.asstring<>"&Penanganan Kebakaran")then m=mnProject.new(3) m.setlabel("&Penanganan Kebakaran") p1=m.new(0) p1.setlabel("Cari Lokasi Kebakaran") p1.setclick("1-ViewCariLokasi") p1.setenabled(false) end if(mnProject.getcontrols.get(5).getlabel.asstring<>"&Pemeliharaan Data")then m=mnProject.new(4) m.setlabel("&Pemeliharaan Data") p1=m.new(0) p1.setlabel("Kasus Kebakaran") p1.setclick("0--update data kebakaran utama") p1.setenabled(false) p2=m.new(1) p2.setlabel("Pos Pemadam Kebakaran") p2.setclick("1-Dialog PosPemadam") p2.setenabled(false) p3=m.new(2) p3.setlabel("Pos Polisi") p3.setclick("1-Dialog PosPolisi") p3.setenabled(false) p4=m.new(3) p4.setlabel("Rumah Sakit") p4.setclick("1-Dialog RS") p4.setenabled(false) p2=m.new(4)
p2.setlabel("Hidran") p2.setclick("1-Dialog Hidran") p2.setenabled(false) 'p3=m.new(5) 'p3.setlabel("Jalan") 'p3.setclick("1-Dialog Jalan") 'p3.setenabled(false) ' p4=m.new(6) 'p4.setlabel("Sungai") ' p4.setclick("1-Dialog Sungai") ' p4.setenabled(false) end if(mnProject.getcontrols.get(6).getlabel.asstring<>"&Petunjuk")then m=mnProject.new(5) m.setlabel("&Petunjuk") p1=m.new(0) p1.setlabel("Program Aplikasi") p1.setclick("program aplikasi") p1.setenabled(false) m.add(s,1) p2=m.new(2) p2.setlabel("Kontak Kami") p2.setclick("kontak kami") p2.setenabled(false) end '========= 'Menu View '========= theView = av.FindGUI("View") tb1=theView.gettoolbar.getcontrols.get(0) tb1.setenabled(false) tb2=theView.gettoolbar.getcontrols.get(1) tb2.setenabled(false) tb3=theView.gettoolbar.getcontrols.get(2) tb3.setenabled(false) tb4=theView.gettoolbar.getcontrols.get(3) tb4.setenabled(false) tb5=theView.gettoolbar.getcontrols.get(4) tb5.setenabled(false) btnView = theView.getbuttonbar toolView = theView.gettoolbar 'toolViewDelete = toolView.empty btnViewDelete = btnView.empty toolviews=toolview.GetControls.Get(5) toolview.remove(toolviews) y = IconMgr.GetIcons
n = NameDictionary.Make( 100 ) for each i in y n.Add( i ) end b=btnView.new(0) b.seticon(n.Get("Table")) b.setclick("View.ShowTable") b.Sethelp("Buka Tabel//Membuka tabel dari theme yang aktif") b.setenabled(false) b=btnView.new(1) b.seticon(n.Get("SelectNone")) b.setclick("View.ClearSelect") b.Sethelp("Hapus Seleksi//Menghapus seleksi pada tampilan peta") b.setenabled(false) b=btnView.new(2) b.seticon(n.Get("ZoomView")) b.setclick("View.ZoomToThemes") b.Sethelp("Zoom Layer//Memperbesar tampilan peta sesuai layer yang aktif") b.setenabled(false) b=btnView.new(3) b.seticon(n.Get("ZoomIn")) b.setclick("View.ZoomIn") b.Sethelp("Zoom In//Memperbesar tampilan peta") b.setenabled(false) b=btnView.new(4) b.seticon(n.Get("ZoomOut")) b.setclick("View.ZoomOut") b.Sethelp("Zoom Out//Memperkecil tampilan peta") b.setenabled(false) b=btnView.new(5) b.seticon(n.Get("HideLegend")) b.setclick("1-TOCHIDE") b.settag("Show") b.Sethelp("Legenda Peta//Menampilkan dan menutup legenda/layer peta") b.setenabled(false) b=btnView.new(6) b.seticon(n.Get("delete_layers.gif")) b.setclick("Script2") b.settag("Show") b.Sethelp("Hapus Graphic pada peta") b.setenabled(false) mnView=theView.getmenubar
if(mnView.getcontrols.get(1).getlabel.asstring="&Menu Utama")then m1=mnView M=mnView.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnView.getcontrols.get(1).getlabel.asstring="&Informasi")then m1=mnView M=mnView.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnView.getcontrols.get(1).getlabel.asstring="&Peta Tematik")then m1=mnView M=mnView.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnView.getcontrols.get(1).getlabel.asstring="&Penanganan Kebakaran")then m1=mnView M=mnView.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnView.getcontrols.get(1).getlabel.asstring="&Pemeliharaan Data")then m1=mnView M=mnView.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnView.getcontrols.get(1).getlabel.asstring="&Petunjuk")then m1=mnView M=mnView.GETCONTROLS.GET(1) m1.REMOVE(M) end s=space.make if(mnView.getcontrols.get(1).getlabel.asstring<>"&Menu Utama")then m=mnView.new(0) m.setlabel("&Menu Utama") 's=Space.New(0) p1=m.new(0) p1.setlabel("Seleksi Wilayah") p1.setclick("1-Seleksi Wilayah") p1.setenabled(false)
p2=m.new(1) p2.setlabel("Tutup Modul Aktif") p2.setclick("1-Tutup") p2.setenabled(false) m.add(s,2) p3=m.new(3) p3.setlabel("Cetak") p3.setclick("Doc.Print") p3.setenabled(false) p4=m.new(4) p4.setlabel("Setting Cetakkan") p4.setclick("project.printsetup") p4.setenabled(false) m.add(s,5) p5=m.new(6) p5.setlabel("Keluar") p5.setclick("keluar aplikasi") p5.setenabled(false) end if(mnView.getcontrols.get(2).getlabel.asstring<>"&Informasi")then m=mnView.new(1) m.setlabel("&Informasi") p1=m.new(0) p1.setlabel("Daerah Penelitian") p1.setclick("1-daerah") p1.setenabled(false) m.add(s,1) p2=m.new(2) p2.setlabel("Profil Sudin Pemadam Kebakaran JAKTIM") p2.setclick("1-sudin") p2.setenabled(false) end if(mnView.getcontrols.get(3).getlabel.asstring<>"&Peta Tematik")then m=mnView.new(2) m.setlabel("&Peta Tematik") p1=m.new(0) p1.setlabel("Penyebaran Kejadian Kebakaran") p1.setclick("1-view LAP KEB") p1.setenabled(false) p2=m.new(1)
p2.setlabel("Penyebaran Pos Penanganan Kebakaran") p2.setclick("1-ViewPos") p2.setenabled(false) p3=m.new(2) p3.setlabel("Peta Tematik Jakarta Timur") p3.setclick("1-ViewJaktimAdministrasi") p3.setenabled(false) end if(mnView.getcontrols.get(4).getlabel.asstring<>"&Penanganan Kebakaran")then m=mnView.new(3) m.setlabel("&Penanganan Kebakaran") p1=m.new(0) p1.setlabel("Cari Lokasi Kebakaran") p1.setclick("1-ViewCariLokasi") p1.setenabled(false) end if(mnView.getcontrols.get(5).getlabel.asstring<>"&Pemeliharaan Data")then m=mnView.new(4) m.setlabel("&Pemeliharaan Data") p1=m.new(0) p1.setlabel("Kasus Kebakaran") p1.setclick("0--update data kebakaran utama") p1.setenabled(false) p2=m.new(1) p2.setlabel("Pos Pemadam Kebakaran") p2.setclick("1-Dialog PosPemadam") p2.setenabled(false) p3=m.new(2) p3.setlabel("Pos Polisi") p3.setclick("1-Dialog PosPolisi") p3.setenabled(false) p4=m.new(3) p4.setlabel("Rumah Sakit") p4.setclick("1-Dialog RS") p4.setenabled(false) ' p2=m.new(4) 'p2.setlabel("Hidran") 'p2.setclick("1-Dialog Hidran") 'p2.setenabled(false) 'p3=m.new(5) 'p3.setlabel("Jalan") 'p3.setclick("1-Dialog Jalan")
'p3.setenabled(false) 'p4=m.new(6) 'p4.setlabel("Sungai") 'p4.setclick("1-Dialog Sungai") 'p4.setenabled(false) end if(mnView.getcontrols.get(6).getlabel.asstring<>"&Petunjuk")then m=mnView.new(5) m.setlabel("&Petunjuk") p1=m.new(0) p1.setlabel("Program Aplikasi") p1.setclick("program aplikasi") p1.setenabled(false) m.add(s,1) p2=m.new(2) p2.setlabel("Kontak Kami") p2.setclick("kontak kami") p2.setenabled(false) end '========= 'Menu Table '========= theTable = av.FindGUI("Table") mnTable=theTable.getmenubar if(mnTable.getcontrols.get(1).getlabel.asstring="&Menu Utama")then m1=mnTable M=mnTable.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnTable.getcontrols.get(1).getlabel.asstring="&Informasi")then m1=mnTable M=mnTable.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnTable.getcontrols.get(1).getlabel.asstring="&Peta Tematik")then m1=mnTable M=mnTable.GETCONTROLS.GET(1) m1.REMOVE(M) end
if(mnTable.getcontrols.get(1).getlabel.asstring="&Penanganan Kebakaran")then m1=mnTable M=mnTable.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnTable.getcontrols.get(1).getlabel.asstring="&Pemeliharaan Data")then m1=mnTable M=mnTable.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnTable.getcontrols.get(1).getlabel.asstring="&Petunjuk")then m1=mnTable M=mnTable.GETCONTROLS.GET(1) m1.REMOVE(M) end s=space.make if(mnTable.getcontrols.get(1).getlabel.asstring<>"&Menu Utama")then m=mnTable.new(0) m.setlabel("&Menu Utama") 's=Space.New(0) p1=m.new(0) p1.setlabel("Seleksi Wilayah") p1.setclick("1-Seleksi Wilayah") p1.setenabled(false) p2=m.new(1) p2.setlabel("Tutup Modul Aktif") p2.setclick("1-Tutup") p2.setenabled(false) m.add(s,2) p3=m.new(3) p3.setlabel("Cetak") p3.setclick("Doc.Print") p3.setenabled(false) p4=m.new(4) p4.setlabel("Setting Cetakkan") p4.setclick("project.printsetup") p4.setenabled(false) m.add(s,5) p5=m.new(6) p5.setlabel("Keluar")
p5.setclick("keluar aplikasi") p5.setenabled(false) end if(mnTable.getcontrols.get(2).getlabel.asstring<>"&Informasi")then m=mnTable.new(1) m.setlabel("&Informasi") p1=m.new(0) p1.setlabel("Daerah Penelitian") p1.setclick("1-daerah") p1.setenabled(false) m.add(s,1) p2=m.new(2) p2.setlabel("Profil Sudin Pemadam Kebakaran JAKTIM") p2.setclick("1-sudin") p2.setenabled(false) end if(mnTable.getcontrols.get(3).getlabel.asstring<>"&Peta Tematik")then m=mnTable.new(2) m.setlabel("&Peta Tematik") p1=m.new(0) p1.setlabel("Penyebaran Kejadian Kebakaran") p1.setclick("1-view LAP KEB") p1.setenabled(false) p2=m.new(1) p2.setlabel("Penyebaran Pos Penanganan Kebakaran") p2.setclick("1-ViewPos") p2.setenabled(false) p3=m.new(2) p3.setlabel("Peta Tematik Jakarta Timur") p3.setclick("1-ViewJaktimAdministrasi") p3.setenabled(false) end if(mnTable.getcontrols.get(4).getlabel.asstring<>"&Penanganan Kebakaran")then m=mnTable.new(3) m.setlabel("&Penanganan Kebakaran") p1=m.new(0) p1.setlabel("Cari Lokasi Kebakaran") p1.setclick("1-ViewCariLokasi") p1.setenabled(false)
end if(mnTable.getcontrols.get(5).getlabel.asstring<>"&Pemeliharaan Data")then m=mnTable.new(4) m.setlabel("&Pemeliharaan Data") p1=m.new(0) p1.setlabel("Kasus Kebakaran") p1.setclick("0--update data kebakaran utama") p1.setenabled(false) p2=m.new(1) p2.setlabel("Pos Pemadam Kebakaran") p2.setclick("1-Dialog PosPemadam") p2.setenabled(false) p3=m.new(2) p3.setlabel("Pos Polisi") p3.setclick("1-Dialog PosPolisi") p3.setenabled(false) p4=m.new(3) p4.setlabel("Rumah Sakit") p4.setclick("1-Dialog RumahSakit") p4.setenabled(false) p2=m.new(4) p2.setlabel("Hidran") p2.setclick("1-Dialog Hidran") p2.setenabled(false) 'p3=m.new(5) 'p3.setlabel("Jalan") 'p3.setclick("1-Dialog Jalan") 'p3.setenabled(false) 'p4=m.new(6) 'p4.setlabel("Sungai") 'p4.setclick("1-Dialog Sungai") 'p4.setenabled(false) end if(mnTable.getcontrols.get(6).getlabel.asstring<>"&Petunjuk")then m=mnTable.new(5) m.setlabel("&Petunjuk") p1=m.new(0) p1.setlabel("Program Aplikasi") p1.setclick("program aplikasi") p1.setenabled(false)
m.add(s,1) p2=m.new(2) p2.setlabel("Kontak Kami") p2.setclick("kontak kami") p2.setenabled(false) end '========= 'Menu Chart '========= theChart=Av.FindGUI("Chart") mnChart=theChart.getmenubar if(mnChart.getcontrols.get(1).getlabel.asstring="&Menu Utama")then m1=mnChart M=mnChart.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnChart.getcontrols.get(1).getlabel.asstring="&Informasi")then m1=mnChart M=mnChart.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnChart.getcontrols.get(1).getlabel.asstring="&Peta Tematik")then m1=mnChart M=mnChart.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnChart.getcontrols.get(1).getlabel.asstring="&Penanganan Kebakaran")then m1=mnChart M=mnChart.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnChart.getcontrols.get(1).getlabel.asstring="&Pemeliharaan Data")then m1=mnChart M=mnChart.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnChart.getcontrols.get(1).getlabel.asstring="&Petunjuk")then m1=mnChart M=mnChart.GETCONTROLS.GET(1) m1.REMOVE(M)
end s=space.make if(mnChart.getcontrols.get(1).getlabel.asstring<>"&Menu Utama")then m=mnChart.new(0) m.setlabel("&Menu Utama") 's=Space.New(0) p1=m.new(0) p1.setlabel("Seleksi Wilayah") p1.setclick("1-Seleksi Wilayah") p1.setenabled(false) p2=m.new(1) p2.setlabel("Tutup Modul Aktif") p2.setclick("1-Tutup") p2.setenabled(false) m.add(s,2) p3=m.new(3) p3.setlabel("Cetak") p3.setclick("Doc.Print") p3.setenabled(false) p4=m.new(4) p4.setlabel("Setting Cetakkan") p4.setclick("project.printsetup") p4.setenabled(false) m.add(s,5) p5=m.new(6) p5.setlabel("Keluar") p5.setclick("keluar aplikasi") p5.setenabled(false) end if(mnChart.getcontrols.get(2).getlabel.asstring<>"&Informasi")then m=mnChart.new(1) m.setlabel("&Informasi") p1=m.new(0) p1.setlabel("Daerah Penelitian") p1.setclick("1-daerah") p1.setenabled(false) m.add(s,1) p2=m.new(2) p2.setlabel("Profil Sudin Pemadam Kebakaran JAKTIM")
p2.setclick("1-sudin") p2.setenabled(false) end if(mnChart.getcontrols.get(3).getlabel.asstring<>"&Peta Tematik")then m=mnChart.new(2) m.setlabel("&Peta Tematik") p1=m.new(0) p1.setlabel("Penyebaran Kejadian Kebakaran") p1.setclick("1-view LAP KEB") p1.setenabled(false) p2=m.new(1) p2.setlabel("Penyebaran Pos Penanganan Kebakaran") p2.setclick("1-ViewPos") p2.setenabled(false) p3=m.new(2) p3.setlabel("Peta Tematik Jakarta Timur") p3.setclick("1-ViewJaktimAdministrasi") p3.setenabled(false) end if(mnChart.getcontrols.get(4).getlabel.asstring<>"&Penanganan Kebakaran")then m=mnChart.new(3) m.setlabel("&Penanganan Kebakaran") p1=m.new(0) p1.setlabel("Cari Lokasi Kebakaran") p1.setclick("1-ViewCariLokasi") p1.setenabled(false) end if(mnChart.getcontrols.get(5).getlabel.asstring<>"&Pemeliharaan Data")then m=mnChart.new(4) m.setlabel("&Pemeliharaan Data") p1=m.new(0) p1.setlabel("Kasus Kebakaran") p1.setclick("0--update data kebakaran utama") p1.setenabled(false) p2=m.new(1) p2.setlabel("Pos Pemadam Kebakaran") p2.setclick("1-Dialog PosPemadam") p2.setenabled(false) p3=m.new(2)
p3.setlabel("Pos Polisi") p3.setclick("1-Dialog PosPolisi") p3.setenabled(false) p4=m.new(3) p4.setlabel("Rumah Sakit") p4.setclick("1-Dialog RS") p4.setenabled(false) p2=m.new(4) p2.setlabel("Hidran") p2.setclick("1-Dialog Hidran") p2.setenabled(false) 'p3=m.new(5) 'p3.setlabel("Jalan") 'p3.setclick("1-Dialog Jalan") 'p3.setenabled(false) 'p4=m.new(6) 'p4.setlabel("Sungai") 'p4.setclick("1-Dialog Sungai") 'p4.setenabled(false) end if(mnChart.getcontrols.get(6).getlabel.asstring<>"&Petunjuk")then m=mnChart.new(5) m.setlabel("&Petunjuk") p1=m.new(0) p1.setlabel("Program Aplikasi") p1.setclick("program aplikasi") p1.setenabled(false) m.add(s,1) p2=m.new(2) p2.setlabel("Kontak Kami") p2.setclick("kontak kami") p2.setenabled(false) end '========== 'Menu Layout '========== theLayout=Av.FindGUI("Layout") mnLayout=theLayout.getmenubar if(mnLayout.getcontrols.get(1).getlabel.asstring="&Menu Utama")then m1=mnLayout M=mnLayout.GETCONTROLS.GET(1) m1.REMOVE(M)
end if(mnLayout.getcontrols.get(1).getlabel.asstring="&Informasi")then m1=mnLayout M=mnLayout.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnLayout.getcontrols.get(1).getlabel.asstring="&Peta Tematik")then m1=mnLayout M=mnLayout.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnLayout.getcontrols.get(1).getlabel.asstring="&Penanganan Kebakaran")then m1=mnLayout M=mnLayout.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnLayout.getcontrols.get(1).getlabel.asstring="&Pemeliharaan Data")then m1=mnLayout M=mnLayout.GETCONTROLS.GET(1) m1.REMOVE(M) end if(mnLayout.getcontrols.get(1).getlabel.asstring="&Petunjuk")then m1=mnLayout M=mnLayout.GETCONTROLS.GET(1) m1.REMOVE(M) end s=space.make if(mnLayout.getcontrols.get(1).getlabel.asstring<>"&Menu Utama")then m=mnLayout.new(0) m.setlabel("&Menu Utama") 's=Space.New(0) p1=m.new(0) p1.setlabel("Seleksi Wilayah") p1.setclick("1-Seleksi Wilayah") p1.setenabled(false) p2=m.new(1) p2.setlabel("Tutup Modul Aktif") p2.setclick("1-Tutup") p2.setenabled(false) m.add(s,2)
p3=m.new(3) p3.setlabel("Cetak") p3.setclick("Doc.Print") p3.setenabled(false) p4=m.new(4) p4.setlabel("Setting Cetakkan") p4.setclick("project.printsetup") p4.setenabled(false) m.add(s,5) p5=m.new(6) p5.setlabel("Keluar") p5.setclick("keluar aplikasi") p5.setenabled(false) end if(mnLayout.getcontrols.get(2).getlabel.asstring<>"&Informasi")then m=mnLayout.new(1) m.setlabel("&Informasi") p1=m.new(0) p1.setlabel("Daerah Penelitian") p1.setclick("1-daerah") p1.setenabled(false) m.add(s,1) p2=m.new(2) p2.setlabel("Profil Sudin Pemadam Kebakaran JAKTIM") p2.setclick("1-sudin") p2.setenabled(false) end if(mnLayout.getcontrols.get(3).getlabel.asstring<>"&Peta Tematik")then m=mnLayout.new(2) m.setlabel("&Peta Tematik") p1=m.new(0) p1.setlabel("Penyebaran Kejadian Kebakaran") p1.setclick("1-view LAP KEB") p1.setenabled(false) p2=m.new(1) p2.setlabel("Penyebaran Pos Penanganan Kebakaran") p2.setclick("1-ViewPos") p2.setenabled(false)
p3=m.new(2) p3.setlabel("Peta Tematik Jakarta Timur") p3.setclick("1-ViewJaktimAdministrasi") p3.setenabled(false) end if(mnLayout.getcontrols.get(4).getlabel.asstring<>"&Penanganan Kebakaran")then m=mnLayout.new(3) m.setlabel("&Penanganan Kebakaran") p1=m.new(0) p1.setlabel("Cari Lokasi Kebakaran") p1.setclick("1-ViewCariLokasi") p1.setenabled(false) end if(mnLayout.getcontrols.get(5).getlabel.asstring<>"&Pemeliharaan Data")then m=mnLayout.new(4) m.setlabel("&Pemeliharaan Data") p1=m.new(0) p1.setlabel("Kasus Kebakaran") p1.setclick("0--update data kebakaran utama") p1.setenabled(false) p2=m.new(1) p2.setlabel("Pos Pemadam Kebakaran") p2.setclick("1-Dialog PosPemadam") p2.setenabled(false) p3=m.new(2) p3.setlabel("Pos Polisi") p3.setclick("1-Dialog PosPolisi") p3.setenabled(false) p4=m.new(3) p4.setlabel("Rumah Sakit") p4.setclick("1-Dialog RS") p4.setenabled(false) p2=m.new(4) p2.setlabel("Hidran") p2.setclick("1-Dialog Hidran") p2.setenabled(false) 'p3=m.new(5) 'p3.setlabel("Jalan") 'p3.setclick("1-Dialog Jalan") 'p3.setenabled(false) 'p4=m.new(6) 'p4.setlabel("Sungai")
'p4.setclick("1-Dialog Sungai") 'p4.setenabled(false) end if(mnLayout.getcontrols.get(6).getlabel.asstring<>"&Petunjuk")then m=mnLayout.new(5) m.setlabel("&Petunjuk") p1=m.new(0) p1.setlabel("Program Aplikasi") p1.setclick("program aplikasi") p1.setenabled(false) m.add(s,1) p2=m.new(2) p2.setlabel("Kontak Kami") p2.setclick("kontak kami") p2.setenabled(false) end '1-BUKA DIALOG LOGIN p = av.getproject.finddialog("Dialog Pembuka") p.open ========================= D. Kontrol Password " LOGIN " ========================= prjk = av.getproject.finddialog("Dialog login") p = av.getproject AV.GETPROJECT.FINDDOC("PETA POS PENANGANAN KEBAKARAN").GETWIN.OPEN 'AV.GETPROJECT.FINDDOC("Guest/User").invalidate av.getproject.finddoc("Dialog login").getwin.close '1-MASUK COVER APLIKASI prjk=AV.GETPROJECT.FINDDIALOG("DIALOG LOGIN") prjk.CLOSE '_nama=prjk.findbyname("un").gettext pssw=prjk.findbyname("pssw").gettext '-------------------------------------------- 'KONTROL PASSWORD if(pssw="113")then msgbox.info("Selamat datang di Sistem Informasi Geografis Penanganan Kebakaran","") if(pssw="113")then
'====================== 'Buttonbar dan toolbar Project '====================== theProject = av.FindGUI("Project") btn1=theProject.getbuttonbar.getcontrols.get(0) btn1.setenabled(true) btn2=theProject.getbuttonbar.getcontrols.get(1) btn2.setenabled(true) btn3=theProject.getbuttonbar.getcontrols.get(2) btn3.setenabled(true) btn4=theProject.getbuttonbar.getcontrols.get(3) btn4.setenabled(true) menu11=theProject.getmenubar.getcontrols.get(1).getcontrols.get(0) menu11.setenabled(false) menu12=theProject.getmenubar.getcontrols.get(1).getcontrols.get(1) menu12.setenabled(false) menu13=theProject.getmenubar.getcontrols.get(1).getcontrols.get(2) menu13.setenabled(true) menu14=theProject.getmenubar.getcontrols.get(1).getcontrols.get(3) menu14.setenabled(true) menu15=theProject.getmenubar.getcontrols.get(1).getcontrols.get(4) menu15.setenabled(true) menu16=theProject.getmenubar.getcontrols.get(1).getcontrols.get(5) menu16.setenabled(true) menu17=theProject.getmenubar.getcontrols.get(1).getcontrols.get(6) menu17.setenabled(true) menu21=theProject.getmenubar.getcontrols.get(2).getcontrols.get(0) menu21.setenabled(true) menu22=theProject.getmenubar.getcontrols.get(2).getcontrols.get(1) menu22.setenabled(true) menu23=theProject.getmenubar.getcontrols.get(2).getcontrols.get(2) menu23.setenabled(true) menu31=theProject.getmenubar.getcontrols.get(3).getcontrols.get(0) menu31.setenabled(true) menu32=theProject.getmenubar.getcontrols.get(3).getcontrols.get(1) menu32.setenabled(true) menu33=theProject.getmenubar.getcontrols.get(3).getcontrols.get(2) menu33.setenabled(true) 'menu34=theProject.getmenubar.getcontrols.get(3).getcontrols.get(3) menu34.setenabled(true)
'menu35=theProject.getmenubar.getcontrols.get(3).getcontrols.get(4) menu35.setenabled(true) 'menu36=theProject.getmenubar.getcontrols.get(3).getcontrols.get(5) menu36.setenabled(true) menu41=theProject.getmenubar.getcontrols.get(4).getcontrols.get(0) menu41.setenabled(true) 'menu42=theProject.getmenubar.getcontrols.get(4).getcontrols.get(1) menu42.setenabled(true) 'menu43=theProject.getmenubar.getcontrols.get(4).getcontrols.get(2) menu43.setenabled(true) 'menu44=theProject.getmenubar.getcontrols.get(4).getcontrols.get(3) menu44.setenabled(true) menu51=theProject.getmenubar.getcontrols.get(5).getcontrols.get(0) menu51.setenabled(true) menu52=theProject.getmenubar.getcontrols.get(5).getcontrols.get(1) menu52.setenabled(true) menu53=theProject.getmenubar.getcontrols.get(5).getcontrols.get(2) menu53.setenabled(true) menu54=theProject.getmenubar.getcontrols.get(5).getcontrols.get(3) menu54.setenabled(true) menu55=theProject.getmenubar.getcontrols.get(5).getcontrols.get(4) menu55.setenabled(true) 'menu56=theProject.getmenubar.getcontrols.get(5).getcontrols.get(5) menu56.setenabled(true) 'menu57=theProject.getmenubar.getcontrols.get(5).getcontrols.get(6) menu57.setenabled(true) menu61=theProject.getmenubar.getcontrols.get(6).getcontrols.get(0) menu61.setenabled(true) menu62=theProject.getmenubar.getcontrols.get(6).getcontrols.get(1) menu62.setenabled(true) menu63=theProject.getmenubar.getcontrols.get(6).getcontrols.get(2) menu63.setenabled(true) '==================== 'Buttonbar dan toolbar View '===================== theView = av.FindGUI("View") btn1=theView.getbuttonbar.getcontrols.get(0) btn1.setenabled(true)
btn2=theView.getbuttonbar.getcontrols.get(1) btn2.setenabled(true) btn3=theView.getbuttonbar.getcontrols.get(2) btn3.setenabled(true) btn4=theView.getbuttonbar.getcontrols.get(3) btn4.setenabled(true) btn5=theView.getbuttonbar.getcontrols.get(4) btn5.setenabled(true) btn6=theView.getbuttonbar.getcontrols.get(5) btn6.setenabled(true) btn7=theView.getbuttonbar.getcontrols.get(6) btn7.setenabled(true) tb1=theView.gettoolbar.getcontrols.get(0) tb1.setenabled(true) tb2=theView.gettoolbar.getcontrols.get(1) tb2.setenabled(true) tb3=theView.gettoolbar.getcontrols.get(2) tb3.setenabled(true) tb4=theView.gettoolbar.getcontrols.get(3) tb4.setenabled(true) tb5=theView.gettoolbar.getcontrols.get(4) tb5.setenabled(true) menu11=theView.getmenubar.getcontrols.get(1).getcontrols.get(0) menu11.setenabled(true) menu12=theView.getmenubar.getcontrols.get(1).getcontrols.get(1) menu12.setenabled(true) menu13=theView.getmenubar.getcontrols.get(1).getcontrols.get(2) menu13.setenabled(true) menu14=theView.getmenubar.getcontrols.get(1).getcontrols.get(3) menu14.setenabled(true) menu15=theView.getmenubar.getcontrols.get(1).getcontrols.get(4) menu15.setenabled(true) menu16=theView.getmenubar.getcontrols.get(1).getcontrols.get(5) menu16.setenabled(true) menu17=theView.getmenubar.getcontrols.get(1).getcontrols.get(6) menu17.setenabled(true) menu21=theView.getmenubar.getcontrols.get(2).getcontrols.get(0) menu21.setenabled(true) menu22=theView.getmenubar.getcontrols.get(2).getcontrols.get(1) menu22.setenabled(true) menu23=theView.getmenubar.getcontrols.get(2).getcontrols.get(2) menu23.setenabled(true)
menu31=theView.getmenubar.getcontrols.get(3).getcontrols.get(0) menu31.setenabled(true) menu32=theView.getmenubar.getcontrols.get(3).getcontrols.get(1) menu32.setenabled(true) menu33=theView.getmenubar.getcontrols.get(3).getcontrols.get(2) menu33.setenabled(true) 'menu34=theProject.getmenubar.getcontrols.get(3).getcontrols.get(3) menu34.setenabled(true) 'menu35=theProject.getmenubar.getcontrols.get(3).getcontrols.get(4) menu35.setenabled(true) 'menu36=theProject.getmenubar.getcontrols.get(3).getcontrols.get(5) menu36.setenabled(true) menu41=theView.getmenubar.getcontrols.get(4).getcontrols.get(0) menu41.setenabled(true) 'menu42=theProject.getmenubar.getcontrols.get(4).getcontrols.get(1) menu42.setenabled(true) 'menu43=theProject.getmenubar.getcontrols.get(4).getcontrols.get(2) menu43.setenabled(true) 'menu44=theProject.getmenubar.getcontrols.get(4).getcontrols.get(3) menu44.setenabled(true) menu51=theView.getmenubar.getcontrols.get(5).getcontrols.get(0) menu51.setenabled(true) menu52=theView.getmenubar.getcontrols.get(5).getcontrols.get(1) menu52.setenabled(true) menu53=theView.getmenubar.getcontrols.get(5).getcontrols.get(2) menu53.setenabled(true) menu54=theView.getmenubar.getcontrols.get(5).getcontrols.get(3) menu54.setenabled(true) 'menu55=theView.getmenubar.getcontrols.get(5).getcontrols.get(4) menu55.setenabled(true) 'menu56=theView.getmenubar.getcontrols.get(5).getcontrols.get(5) menu56.setenabled(true) 'menu57=theView.getmenubar.getcontrols.get(5).getcontrols.get(6) menu57.setenabled(true) menu61=theView.getmenubar.getcontrols.get(6).getcontrols.get(0) menu61.setenabled(true)
menu62=theView.getmenubar.getcontrols.get(6).getcontrols.get(1) menu62.setenabled(true) menu63=theView.getmenubar.getcontrols.get(6).getcontrols.get(2) menu63.setenabled(true) '===================== 'Buttonbar dan toolbar Table '===================== theTable = av.FindGUI("Table") btn1=theTable.getbuttonbar.getcontrols.get(0) btn1.setenabled(true) btn2=theTable.getbuttonbar.getcontrols.get(1) btn2.setenabled(true) btn3=theTable.getbuttonbar.getcontrols.get(2) btn3.setenabled(true) btn4=theTable.getbuttonbar.getcontrols.get(3) btn4.setenabled(true) btn5=theTable.getbuttonbar.getcontrols.get(4) btn5.setenabled(true) btn6=theTable.getbuttonbar.getcontrols.get(5) btn6.setenabled(true) btn7=theTable.getbuttonbar.getcontrols.get(6) btn7.setenabled(true) btn12=theTable.getbuttonbar.getcontrols.get(11) btn12.setenabled(true) tb1=theTable.gettoolbar.getcontrols.get(0) tb1.setenabled(true) tb2=theTable.gettoolbar.getcontrols.get(1) tb2.setenabled(true) tb3=theTable.gettoolbar.getcontrols.get(2) tb3.setenabled(true) menu11=theTable.getmenubar.getcontrols.get(1).getcontrols.get(0) menu11.setenabled(false) menu12=theTable.getmenubar.getcontrols.get(1).getcontrols.get(1) menu12.setenabled(false) menu13=theTable.getmenubar.getcontrols.get(1).getcontrols.get(2) menu13.setenabled(true) menu14=theTable.getmenubar.getcontrols.get(1).getcontrols.get(3) menu14.setenabled(true) menu15=theTable.getmenubar.getcontrols.get(1).getcontrols.get(4) menu15.setenabled(true) menu16=theTable.getmenubar.getcontrols.get(1).getcontrols.get(5) menu16.setenabled(true)
menu17=theTable.getmenubar.getcontrols.get(1).getcontrols.get(6) menu17.setenabled(true) menu21=theTable.getmenubar.getcontrols.get(2).getcontrols.get(0) menu21.setenabled(true) menu22=theTable.getmenubar.getcontrols.get(2).getcontrols.get(1) menu22.setenabled(true) menu23=theTable.getmenubar.getcontrols.get(2).getcontrols.get(2) menu23.setenabled(true) menu31=theTable.getmenubar.getcontrols.get(3).getcontrols.get(0) menu31.setenabled(true) menu32=theTable.getmenubar.getcontrols.get(3).getcontrols.get(1) menu32.setenabled(true) menu33=theTable.getmenubar.getcontrols.get(3).getcontrols.get(2) menu33.setenabled(true) 'menu34=theProject.getmenubar.getcontrols.get(3).getcontrols.get(3) menu34.setenabled(true) 'menu35=theProject.getmenubar.getcontrols.get(3).getcontrols.get(4) menu35.setenabled(true) 'menu36=theProject.getmenubar.getcontrols.get(3).getcontrols.get(5) menu36.setenabled(true) menu41=theTable.getmenubar.getcontrols.get(4).getcontrols.get(0) menu41.setenabled(true) 'menu42=theProject.getmenubar.getcontrols.get(4).getcontrols.get(1) menu42.setenabled(true) 'menu43=theProject.getmenubar.getcontrols.get(4).getcontrols.get(2) menu43.setenabled(true) 'menu44=theProject.getmenubar.getcontrols.get(4).getcontrols.get(3) menu44.setenabled(true) menu51=theTable.getmenubar.getcontrols.get(5).getcontrols.get(0) menu51.setenabled(true) menu52=theTable.getmenubar.getcontrols.get(5).getcontrols.get(1) menu52.setenabled(true) menu53=theTable.getmenubar.getcontrols.get(5).getcontrols.get(2) menu53.setenabled(true) menu54=theTable.getmenubar.getcontrols.get(5).getcontrols.get(3) menu54.setenabled(true)
menu55=theTable.getmenubar.getcontrols.get(5).getcontrols.get(4) menu55.setenabled(true) 'menu56=theTable.getmenubar.getcontrols.get(5).getcontrols.get(5) menu56.setenabled(true) 'menu57=theTable.getmenubar.getcontrols.get(5).getcontrols.get(6) menu57.setenabled(true) menu61=theTable.getmenubar.getcontrols.get(6).getcontrols.get(0) menu61.setenabled(true) menu62=theTable.getmenubar.getcontrols.get(6).getcontrols.get(1) menu62.setenabled(true) menu63=theTable.getmenubar.getcontrols.get(6).getcontrols.get(2) menu63.setenabled(true) '==================== 'Buttonbar dan toolbar Chart '==================== theChart = av.FindGUI("Chart") btn1=theChart.getbuttonbar.getcontrols.get(0) btn1.setenabled(true) btn2=theChart.getbuttonbar.getcontrols.get(1) btn2.setenabled(true) btn3=theChart.getbuttonbar.getcontrols.get(2) btn3.setenabled(true) btn4=theChart.getbuttonbar.getcontrols.get(3) btn4.setenabled(true) btn5=theChart.getbuttonbar.getcontrols.get(4) btn5.setenabled(true) btn6=theChart.getbuttonbar.getcontrols.get(5) btn6.setenabled(true) btn7=theChart.getbuttonbar.getcontrols.get(6) btn7.setenabled(true) btn8=theChart.getbuttonbar.getcontrols.get(7) btn8.setenabled(true) tb1=theChart.gettoolbar.getcontrols.get(0) tb1.setenabled(true) tb2=theChart.gettoolbar.getcontrols.get(1) tb2.setenabled(true) tb3=theChart.gettoolbar.getcontrols.get(2) tb3.setenabled(true) tb4=theChart.gettoolbar.getcontrols.get(3) tb4.setenabled(true) 'tb5=theChart.gettoolbar.getcontrols.get(4) tb5.setenabled(true) menu11=theChart.getmenubar.getcontrols.get(1).getcontrols.get(0) menu11.setenabled(false)
menu12=theChart.getmenubar.getcontrols.get(1).getcontrols.get(1) menu12.setenabled(false) menu13=theChart.getmenubar.getcontrols.get(1).getcontrols.get(2) menu13.setenabled(true) menu14=theChart.getmenubar.getcontrols.get(1).getcontrols.get(3) menu14.setenabled(true) menu15=theChart.getmenubar.getcontrols.get(1).getcontrols.get(4) menu15.setenabled(true) menu16=theChart.getmenubar.getcontrols.get(1).getcontrols.get(5) menu16.setenabled(true) menu17=theChart.getmenubar.getcontrols.get(1).getcontrols.get(6) menu17.setenabled(true) menu21=theChart.getmenubar.getcontrols.get(2).getcontrols.get(0) menu21.setenabled(true) menu22=theChart.getmenubar.getcontrols.get(2).getcontrols.get(1) menu22.setenabled(true) menu23=theChart.getmenubar.getcontrols.get(2).getcontrols.get(2) menu23.setenabled(true) menu31=theChart.getmenubar.getcontrols.get(3).getcontrols.get(0) menu31.setenabled(true) menu32=theChart.getmenubar.getcontrols.get(3).getcontrols.get(1) menu32.setenabled(true) menu33=theChart.getmenubar.getcontrols.get(3).getcontrols.get(2) menu33.setenabled(true) 'menu34=theProject.getmenubar.getcontrols.get(3).getcontrols.get(3) menu34.setenabled(true) 'menu35=theProject.getmenubar.getcontrols.get(3).getcontrols.get(4) menu35.setenabled(true) 'menu36=theProject.getmenubar.getcontrols.get(3).getcontrols.get(5) menu36.setenabled(true) menu41=theChart.getmenubar.getcontrols.get(4).getcontrols.get(0) menu41.setenabled(true) 'menu42=theChart.getmenubar.getcontrols.get(4).getcontrols.get(1) menu42.setenabled(true) 'menu43=theProject.getmenubar.getcontrols.get(4).getcontrols.get(2) menu43.setenabled(true)
'menu44=theProject.getmenubar.getcontrols.get(4).getcontrols.get(3) menu44.setenabled(true) menu51=theChart.getmenubar.getcontrols.get(5).getcontrols.get(0) menu51.setenabled(true) menu52=theChart.getmenubar.getcontrols.get(5).getcontrols.get(1) menu52.setenabled(true) menu53=theChart.getmenubar.getcontrols.get(5).getcontrols.get(2) menu53.setenabled(true) menu54=theChart.getmenubar.getcontrols.get(5).getcontrols.get(3) menu54.setenabled(true) menu55=theChart.getmenubar.getcontrols.get(5).getcontrols.get(4) menu55.setenabled(true) 'menu56=theChart.getmenubar.getcontrols.get(5).getcontrols.get(5) menu56.setenabled(true) 'menu57=theChart.getmenubar.getcontrols.get(5).getcontrols.get(6) menu57.setenabled(true) menu61=theChart.getmenubar.getcontrols.get(6).getcontrols.get(0) menu61.setenabled(true) menu62=theChart.getmenubar.getcontrols.get(6).getcontrols.get(1) menu62.setenabled(true) menu63=theChart.getmenubar.getcontrols.get(6).getcontrols.get(2) menu63.setenabled(true) '====================== 'Buttonbar dan toolbar Layout '====================== theLayout = av.FindGUI("Layout") btn1=theLayout.getbuttonbar.getcontrols.get(0) btn1.setenabled(true) btn2=theLayout.getbuttonbar.getcontrols.get(1) btn2.setenabled(true) btn3=theLayout.getbuttonbar.getcontrols.get(2) btn3.setenabled(true) btn4=theLayout.getbuttonbar.getcontrols.get(3) btn4.setenabled(true) btn5=theLayout.getbuttonbar.getcontrols.get(4) btn5.setenabled(true) btn6=theLayout.getbuttonbar.getcontrols.get(5) btn6.setenabled(true) btn7=theLayout.getbuttonbar.getcontrols.get(6) btn7.setenabled(true) btn8=theLayout.getbuttonbar.getcontrols.get(7) btn8.setenabled(true)
tb1=theLayout.gettoolbar.getcontrols.get(0) tb1.setenabled(true) tb2=theLayout.gettoolbar.getcontrols.get(1) tb2.setenabled(true) tb3=theLayout.gettoolbar.getcontrols.get(2) tb3.setenabled(true) tb4=theLayout.gettoolbar.getcontrols.get(3) tb4.setenabled(true) 'tb5=theLayout.gettoolbar.getcontrols.get(4) tb5.setenabled(true) menu11=theLayout.getmenubar.getcontrols.get(1).getcontrols.get(0) menu11.setenabled(false) menu12=theLayout.getmenubar.getcontrols.get(1).getcontrols.get(1) menu12.setenabled(false) menu13=theLayout.getmenubar.getcontrols.get(1).getcontrols.get(2) menu13.setenabled(true) menu14=theLayout.getmenubar.getcontrols.get(1).getcontrols.get(3) menu14.setenabled(true) menu15=theLayout.getmenubar.getcontrols.get(1).getcontrols.get(4) menu15.setenabled(true) menu16=theLayout.getmenubar.getcontrols.get(1).getcontrols.get(5) menu16.setenabled(true) menu17=theLayout.getmenubar.getcontrols.get(1).getcontrols.get(6) menu17.setenabled(true) menu21=theLayout.getmenubar.getcontrols.get(2).getcontrols.get(0) menu21.setenabled(true) menu22=theLayout.getmenubar.getcontrols.get(2).getcontrols.get(1) menu22.setenabled(true) menu23=theLayout.getmenubar.getcontrols.get(2).getcontrols.get(2) menu23.setenabled(true) menu31=theLayout.getmenubar.getcontrols.get(3).getcontrols.get(0) menu31.setenabled(true) menu32=theLayout.getmenubar.getcontrols.get(3).getcontrols.get(1) menu32.setenabled(true) menu33=theLayout.getmenubar.getcontrols.get(3).getcontrols.get(2) menu33.setenabled(true) 'menu34=theProject.getmenubar.getcontrols.get(3).getcontrols.get(3) menu34.setenabled(true)
'menu35=theProject.getmenubar.getcontrols.get(3).getcontrols.get(4) menu35.setenabled(true) 'menu36=theProject.getmenubar.getcontrols.get(3).getcontrols.get(5) menu36.setenabled(true) menu41=theLayout.getmenubar.getcontrols.get(4).getcontrols.get(0) menu41.setenabled(true) 'menu42=theProject.getmenubar.getcontrols.get(4).getcontrols.get(1) menu42.setenabled(true) 'menu43=theProject.getmenubar.getcontrols.get(4).getcontrols.get(2) menu43.setenabled(true) 'menu44=theProject.getmenubar.getcontrols.get(4).getcontrols.get(3) menu44.setenabled(true) menu51=theLayout.getmenubar.getcontrols.get(5).getcontrols.get(0) menu51.setenabled(true) menu52=theLayout.getmenubar.getcontrols.get(5).getcontrols.get(1) menu52.setenabled(true) menu53=theLayout.getmenubar.getcontrols.get(5).getcontrols.get(2) menu53.setenabled(true) menu54=theLayout.getmenubar.getcontrols.get(5).getcontrols.get(3) menu54.setenabled(true) menu55=theLayout.getmenubar.getcontrols.get(5).getcontrols.get(4) menu55.setenabled(true) 'menu56=theLayout.getmenubar.getcontrols.get(5).getcontrols.get(5) menu56.setenabled(true) 'menu57=theLayout.getmenubar.getcontrols.get(5).getcontrols.get(6) menu57.setenabled(true) menu61=theLayout.getmenubar.getcontrols.get(6).getcontrols.get(0) menu61.setenabled(true) menu62=theLayout.getmenubar.getcontrols.get(6).getcontrols.get(1) menu62.setenabled(true) menu63=theLayout.getmenubar.getcontrols.get(6).getcontrols.get(2) menu63.setenabled(true) else '====================== 'Buttonbar dan toolbar Project '======================
btn1=theProject.getbuttonbar.getcontrols.get(0) btn1.setenabled(false) btn2=theProject.getbuttonbar.getcontrols.get(1) btn2.setenabled(false) btn3=theProject.getbuttonbar.getcontrols.get(2) btn3.setenabled(false) btn4=theProject.getbuttonbar.getcontrols.get(3) btn4.setenabled(false) menu21=theProject.getmenubar.getcontrols.get(2).getcontrols.get(0) menu21.setenabled(false) menu22=theProject.getmenubar.getcontrols.get(2).getcontrols.get(1) menu22.setenabled(false) menu23=theProject.getmenubar.getcontrols.get(2).getcontrols.get(2) menu23.setenabled(false) menu31=theProject.getmenubar.getcontrols.get(3).getcontrols.get(0) menu31.setenabled(false) menu32=theProject.getmenubar.getcontrols.get(3).getcontrols.get(1) menu32.setenabled(false) menu33=theProject.getmenubar.getcontrols.get(3).getcontrols.get(2) menu33.setenabled(false) 'menu34=theProject.getmenubar.getcontrols.get(3).getcontrols.get(3) menu34.setenabled(false) 'menu35=theProject.getmenubar.getcontrols.get(3).getcontrols.get(4) menu35.setenabled(false) 'menu36=theProject.getmenubar.getcontrols.get(3).getcontrols.get(5) menu36.setenabled(false) menu41=theProject.getmenubar.getcontrols.get(4).getcontrols.get(0) menu41.setenabled(false) 'menu42=theProject.getmenubar.getcontrols.get(4).getcontrols.get(1) menu42.setenabled(false) 'menu43=theProject.getmenubar.getcontrols.get(4).getcontrols.get(2) menu43.setenabled(false) 'menu44=theProject.getmenubar.getcontrols.get(4).getcontrols.get(3) menu44.setenabled(false) menu51=theProject.getmenubar.getcontrols.get(5).getcontrols.get(0) menu51.setenabled(false) menu52=theProject.getmenubar.getcontrols.get(5).getcontrols.get(1) menu52.setenabled(false)
menu53=theProject.getmenubar.getcontrols.get(5).getcontrols.get(2) menu53.setenabled(false) menu54=theProject.getmenubar.getcontrols.get(5).getcontrols.get(3) menu54.setenabled(false) menu55=theProject.getmenubar.getcontrols.get(5).getcontrols.get(4) menu55.setenabled(false) menu56=theProject.getmenubar.getcontrols.get(5).getcontrols.get(5) menu56.setenabled(false) menu57=theProject.getmenubar.getcontrols.get(5).getcontrols.get(6) menu57.setenabled(false) menu61=theProject.getmenubar.getcontrols.get(6).getcontrols.get(0) menu61.setenabled(false) menu62=theProject.getmenubar.getcontrols.get(6).getcontrols.get(1) menu62.setenabled(false) menu63=theProject.getmenubar.getcontrols.get(6).getcontrols.get(2) menu63.setenabled(false) '===================== 'Buttonbar dan toolbar View '===================== btn1=theView.getbuttonbar.getcontrols.get(0) btn1.setenabled(false) btn2=theView.getbuttonbar.getcontrols.get(1) btn2.setenabled(false) btn3=theView.getbuttonbar.getcontrols.get(2) btn3.setenabled(false) btn4=theView.getbuttonbar.getcontrols.get(3) btn4.setenabled(false) btn5=theView.getbuttonbar.getcontrols.get(4) btn5.setenabled(false) btn6=theView.getbuttonbar.getcontrols.get(5) btn6.setenabled(false) tb1=theView.gettoolbar.getcontrols.get(0) tb1.setenabled(false) tb2=theView.gettoolbar.getcontrols.get(1) tb2.setenabled(false) tb3=theView.gettoolbar.getcontrols.get(2) tb3.setenabled(false) tb4=theView.gettoolbar.getcontrols.get(3) tb4.setenabled(false) tb5=theView.gettoolbar.getcontrols.get(4) tb5.setenabled(false) menu21=theView.getmenubar.getcontrols.get(2).getcontrols.get(0) menu21.setenabled(false)
menu22=theView.getmenubar.getcontrols.get(2).getcontrols.get(1) menu22.setenabled(false) menu23=theView.getmenubar.getcontrols.get(2).getcontrols.get(2) menu23.setenabled(false) menu31=theView.getmenubar.getcontrols.get(3).getcontrols.get(0) menu31.setenabled(false) menu32=theView.getmenubar.getcontrols.get(3).getcontrols.get(1) menu32.setenabled(false) menu33=theView.getmenubar.getcontrols.get(3).getcontrols.get(2) menu33.setenabled(false) menu41=theView.getmenubar.getcontrols.get(4).getcontrols.get(0) menu41.setenabled(false) menu51=theView.getmenubar.getcontrols.get(5).getcontrols.get(0) menu51.setenabled(false) menu52=theView.getmenubar.getcontrols.get(5).getcontrols.get(1) menu52.setenabled(false) menu53=theView.getmenubar.getcontrols.get(5).getcontrols.get(2) menu53.setenabled(false) menu54=theView.getmenubar.getcontrols.get(5).getcontrols.get(3) menu54.setenabled(false) menu55=theView.getmenubar.getcontrols.get(5).getcontrols.get(4) menu55.setenabled(false) menu56=theView.getmenubar.getcontrols.get(5).getcontrols.get(5) menu56.setenabled(false) menu57=theView.getmenubar.getcontrols.get(5).getcontrols.get(6) menu57.setenabled(false) menu61=theView.getmenubar.getcontrols.get(6).getcontrols.get(0) menu61.setenabled(false) menu62=theView.getmenubar.getcontrols.get(6).getcontrols.get(1) menu62.setenabled(false) menu63=theView.getmenubar.getcontrols.get(6).getcontrols.get(2) menu63.setenabled(false) '===================== 'Buttonbar dan toolbar Table '===================== btn1=theTable.getbuttonbar.getcontrols.get(0) btn1.setenabled(false)
btn2=theTable.getbuttonbar.getcontrols.get(1) btn2.setenabled(false) btn3=theTable.getbuttonbar.getcontrols.get(2) btn3.setenabled(false) btn4=theTable.getbuttonbar.getcontrols.get(3) btn4.setenabled(false) btn5=theTable.getbuttonbar.getcontrols.get(4) btn5.setenabled(false) btn6=theTable.getbuttonbar.getcontrols.get(5) btn6.setenabled(false) tb1=theTable.gettoolbar.getcontrols.get(0) tb1.setenabled(false) tb2=theTable.gettoolbar.getcontrols.get(1) tb2.setenabled(false) tb3=theTable.gettoolbar.getcontrols.get(2) tb3.setenabled(false) menu21=theTable.getmenubar.getcontrols.get(2).getcontrols.get(0) menu21.setenabled(false) menu22=theTable.getmenubar.getcontrols.get(2).getcontrols.get(1) menu22.setenabled(false) menu23=theTable.getmenubar.getcontrols.get(2).getcontrols.get(2) menu23.setenabled(false) menu31=theTable.getmenubar.getcontrols.get(3).getcontrols.get(0) menu31.setenabled(false) menu32=theTable.getmenubar.getcontrols.get(3).getcontrols.get(1) menu32.setenabled(false) menu33=theTable.getmenubar.getcontrols.get(3).getcontrols.get(2) menu33.setenabled(false) 'menu34=theProject.getmenubar.getcontrols.get(3).getcontrols.get(3) menu34.setenabled(false) 'menu35=theProject.getmenubar.getcontrols.get(3).getcontrols.get(4) menu35.setenabled(false) 'menu36=theProject.getmenubar.getcontrols.get(3).getcontrols.get(5) menu36.setenabled(false) menu41=theTable.getmenubar.getcontrols.get(4).getcontrols.get(0) menu41.setenabled(false) 'menu42=theProject.getmenubar.getcontrols.get(4).getcontrols.get(1) menu42.setenabled(false) 'menu43=theProject.getmenubar.getcontrols.get(4).getcontrols.get(2) menu43.setenabled(false)
'menu44=theProject.getmenubar.getcontrols.get(4).getcontrols.get(3) menu44.setenabled(false) menu51=theTable.getmenubar.getcontrols.get(5).getcontrols.get(0) menu51.setenabled(false) menu52=theTable.getmenubar.getcontrols.get(5).getcontrols.get(1) menu52.setenabled(false) menu53=theTable.getmenubar.getcontrols.get(5).getcontrols.get(2) menu53.setenabled(false) menu54=theTable.getmenubar.getcontrols.get(5).getcontrols.get(3) menu54.setenabled(false) menu55=theTable.getmenubar.getcontrols.get(5).getcontrols.get(4) menu55.setenabled(false) menu56=theTable.getmenubar.getcontrols.get(5).getcontrols.get(5) menu56.setenabled(false) menu57=theTable.getmenubar.getcontrols.get(5).getcontrols.get(6) menu57.setenabled(false) menu61=theTable.getmenubar.getcontrols.get(6).getcontrols.get(0) menu61.setenabled(false) menu62=theTable.getmenubar.getcontrols.get(6).getcontrols.get(1) menu62.setenabled(false) menu63=theTable.getmenubar.getcontrols.get(6).getcontrols.get(2) menu63.setenabled(false) '==================== 'Buttonbar dan toolbar Chart '==================== btn1=theChart.getbuttonbar.getcontrols.get(0) btn1.setenabled(false) btn2=theChart.getbuttonbar.getcontrols.get(1) btn2.setenabled(false) btn3=theChart.getbuttonbar.getcontrols.get(2) btn3.setenabled(false) btn4=theChart.getbuttonbar.getcontrols.get(3) btn4.setenabled(false) btn5=theChart.getbuttonbar.getcontrols.get(4) btn5.setenabled(false) btn6=theChart.getbuttonbar.getcontrols.get(5) btn6.setenabled(false) btn7=theChart.getbuttonbar.getcontrols.get(6) btn7.setenabled(false) btn8=theChart.getbuttonbar.getcontrols.get(7) btn8.setenabled(false)
tb1=theChart.gettoolbar.getcontrols.get(0) tb1.setenabled(false) tb2=theChart.gettoolbar.getcontrols.get(1) tb2.setenabled(false) tb3=theChart.gettoolbar.getcontrols.get(2) tb3.setenabled(false) tb4=theChart.gettoolbar.getcontrols.get(3) tb4.setenabled(false) 'tb5=theChart.gettoolbar.getcontrols.get(4) tb5.setenabled(false) menu21=theChart.getmenubar.getcontrols.get(2).getcontrols.get(0) menu21.setenabled(false) menu22=theChart.getmenubar.getcontrols.get(2).getcontrols.get(1) menu22.setenabled(false) menu23=theChart.getmenubar.getcontrols.get(2).getcontrols.get(2) menu23.setenabled(false) menu31=theChart.getmenubar.getcontrols.get(3).getcontrols.get(0) menu31.setenabled(false) menu32=theChart.getmenubar.getcontrols.get(3).getcontrols.get(1) menu32.setenabled(false) menu33=theChart.getmenubar.getcontrols.get(3).getcontrols.get(2) menu33.setenabled(false) 'menu34=theChart.getmenubar.getcontrols.get(3).getcontrols.get(3) menu34.setenabled(false) 'menu35=theChart.getmenubar.getcontrols.get(3).getcontrols.get(4) menu35.setenabled(false) 'menu36=theChart.getmenubar.getcontrols.get(3).getcontrols.get(5) menu36.setenabled(false) menu41=theChart.getmenubar.getcontrols.get(4).getcontrols.get(0) menu41.setenabled(false) 'menu42=theProject.getmenubar.getcontrols.get(4).getcontrols.get(1) menu42.setenabled(false) 'menu43=theProject.getmenubar.getcontrols.get(4).getcontrols.get(2) menu43.setenabled(false) 'menu44=theProject.getmenubar.getcontrols.get(4).getcontrols.get(3) menu44.setenabled(false) menu51=theChart.getmenubar.getcontrols.get(5).getcontrols.get(0) menu51.setenabled(false) menu52=theChart.getmenubar.getcontrols.get(5).getcontrols.get(1) menu52.setenabled(false)
menu53=theChart.getmenubar.getcontrols.get(5).getcontrols.get(2) menu53.setenabled(false) menu54=theChart.getmenubar.getcontrols.get(5).getcontrols.get(3) menu54.setenabled(false) menu55=theChart.getmenubar.getcontrols.get(5).getcontrols.get(4) menu55.setenabled(false) menu56=theChart.getmenubar.getcontrols.get(5).getcontrols.get(5) menu56.setenabled(false) menu57=theChart.getmenubar.getcontrols.get(5).getcontrols.get(6) menu57.setenabled(false) menu61=theChart.getmenubar.getcontrols.get(6).getcontrols.get(0) menu61.setenabled(false) menu62=theChart.getmenubar.getcontrols.get(6).getcontrols.get(1) menu62.setenabled(false) menu63=theChart.getmenubar.getcontrols.get(6).getcontrols.get(2) menu63.setenabled(false) '====================== 'Buttonbar dan toolbar Layout '====================== theLayout = av.FindGUI("Layout") btn1=theLayout.getbuttonbar.getcontrols.get(0) btn1.setenabled(false) btn2=theLayout.getbuttonbar.getcontrols.get(1) btn2.setenabled(false) btn3=theLayout.getbuttonbar.getcontrols.get(2) btn3.setenabled(false) btn4=theLayout.getbuttonbar.getcontrols.get(3) btn4.setenabled(false) btn5=theLayout.getbuttonbar.getcontrols.get(4) btn5.setenabled(false) btn6=theLayout.getbuttonbar.getcontrols.get(5) btn6.setenabled(false) btn7=theLayout.getbuttonbar.getcontrols.get(6) btn7.setenabled(false) btn8=theLayout.getbuttonbar.getcontrols.get(7) btn8.setenabled(false) tb1=theLayout.gettoolbar.getcontrols.get(0) tb1.setenabled(false) tb2=theLayout.gettoolbar.getcontrols.get(1) tb2.setenabled(false) tb3=theLayout.gettoolbar.getcontrols.get(2) tb3.setenabled(false) tb4=theLayout.gettoolbar.getcontrols.get(3) tb4.setenabled(false)
'tb5=theLayout.gettoolbar.getcontrols.get(4) tb5.setenabled(false) menu21=theLayout.getmenubar.getcontrols.get(2).getcontrols.get(0) menu21.setenabled(false) menu22=theLayout.getmenubar.getcontrols.get(2).getcontrols.get(1) menu22.setenabled(false) menu23=theLayout.getmenubar.getcontrols.get(2).getcontrols.get(2) menu23.setenabled(false) menu31=theLayout.getmenubar.getcontrols.get(3).getcontrols.get(0) menu31.setenabled(false) menu32=theLayout.getmenubar.getcontrols.get(3).getcontrols.get(1) menu32.setenabled(false) menu33=theLayout.getmenubar.getcontrols.get(3).getcontrols.get(2) menu33.setenabled(false) 'menu34=theProject.getmenubar.getcontrols.get(3).getcontrols.get(3) menu34.setenabled(false) 'menu35=theProject.getmenubar.getcontrols.get(3).getcontrols.get(4) menu35.setenabled(false) 'menu36=theProject.getmenubar.getcontrols.get(3).getcontrols.get(5) menu36.setenabled(false) menu41=theLayout.getmenubar.getcontrols.get(4).getcontrols.get(0) menu41.setenabled(false) 'menu42=theProject.getmenubar.getcontrols.get(4).getcontrols.get(1) menu42.setenabled(false) 'menu43=theProject.getmenubar.getcontrols.get(4).getcontrols.get(2) menu43.setenabled(false) 'menu44=theProject.getmenubar.getcontrols.get(4).getcontrols.get(3) menu44.setenabled(false) menu51=theLayout.getmenubar.getcontrols.get(5).getcontrols.get(0) menu51.setenabled(false) menu52=theLayout.getmenubar.getcontrols.get(5).getcontrols.get(1) menu52.setenabled(false) menu53=theLayout.getmenubar.getcontrols.get(5).getcontrols.get(2) menu53.setenabled(false) menu54=theLayout.getmenubar.getcontrols.get(5).getcontrols.get(3) menu54.setenabled(false)
menu55=theLayout.getmenubar.getcontrols.get(5).getcontrols.get(4) menu55.setenabled(false) menu56=theLayout.getmenubar.getcontrols.get(5).getcontrols.get(5) menu56.setenabled(false) menu57=theLayout.getmenubar.getcontrols.get(5).getcontrols.get(6) menu57.setenabled(false) menu61=theLayout.getmenubar.getcontrols.get(6).getcontrols.get(0) menu61.setenabled(false) menu62=theLayout.getmenubar.getcontrols.get(6).getcontrols.get(1) menu62.setenabled(false) menu63=theLayout.getmenubar.getcontrols.get(6).getcontrols.get(2) menu63.setenabled(false) end else msgbox.info("Maaf Password Anda Tidak Dapat Diterima atau Anda Salah Memasukan Password","") av.run("1-Start",{}) end 'KONTROL AUTHENTIFIKASI 'if(prjk.findbyname("op").isselected)then ' level=1 ' _level=1 ' if(pssw="113")then ' p = av.getproject.finddoc("Administrator Sistem").getwin.open ' av.SetCustomizable(true) ' else ' msgbox.info("Maaf...! Anda tidak berhak masuk tingkat Administrator Komputer!","") ' av.quit ' end 'else ' level=2 ' _level=2 ' p=av.getproject.finddoc("Guest/User") ' av.SetCustomizable(false) 'end =============== E. Menu Utama =============== =============== 1. Seleksi Wilayah =============== Dial=Av.GetProject.FindDialog("Dialog Seleksi Wilayah")
Listb=Dial.FindByName("lb") theThemeName = "Batas_Kelurahan.shp" theFieldName = "Nama_kelur" ' Get view and display theView = av.GetActiveDoc ThemeBaru=theView.FindTheme("Batas_Kelurahan.shp") if(ThemeBaru.IsVisible.Not)then ThemeBaru.SetVisible(True) ThemeBaru.SetActive(True) end theDisplay = theView.GetDisplay theFTab = ThemeBaru.GetFTab theField = theFTab.FindField(theFieldName) if (theField = NIL) then MsgBox.Error(theFieldName++"is not a field","") return NIL end ' Make list of field values theUniqueList = List.Make for each rec in theFtab theUniqueList.Add(theFTab.ReturnValueString(theField, rec)) end ' Remove duplicates, sort list, and remove blank (null) element in list if (theUniqueList.Count > 0) then theUniqueList.RemoveDuplicates theUniqueList.Sort(true) if (theUniqueList.Get(0).isNull) then theUniqueList.Remove(0) end else MsgBox.Error("There are no values in field to choose from","") return NIL end ' Open MsgBox to choose value 'theMessage = "Choose"++theFieldName.Proper 'theTitle = "Find"++theThemeName.Proper theValue = Listb.GetCurrentValue Listb.DefineFromList(theUniqueList) if (Listb= NIl) then return NIL end if (theField.IsTypeString) then theQuery = "(["++theFieldName++"] = "++theValue.quote++")" else theQuery = "(["++theFieldName++"] = "++theValue++")" end
' Make bitmap and perform query selection theBitmap = theFTab.GetSelection theFTab.Query(theQuery, theBitmap, #VTAB_SELTYPE_NEW) theFTab.SetSelection(theBitmap) theFTab.UpdateSelection ' Get selected extent and set it to display if (theFTab.GetNumSelRecords > 0) then r = ThemeBaru.GetSelectedExtent theDisplay.SetExtent (r.Scale(1.3)) end Dial.open ================= 2. Tutup Modul Aktif ================= theView=Av.GetActiveDoc theView.GetWin.Close =============== 3. Keluar Aplikasi =============== keputusan = msgbox.yesno("Apakah Anda Ingin Keluar Dari Aplikasi SIGK","Keluar Program",True) If(Keputusan=True)Then Av.Quit end ========== F. Informasi ========== ====================== 1. Informasi " Profil Sudin" ====================== 'MENGAKTIFKAN DDE CLIENT objNamaAplikasi="ArcView-Client,Ms.Word-Server" 'Av.SetName(objNamaAplikasi) objNamaFileAplikasiMsWord="G:\Program Files\Microsoft Office\OFFICE11\WINWORD.Exe" objNamaFileDoc="C:\SIGK\informasi\PROFIL SUKU DINAS PEMADAM KEBAKARAN.doc" objParameter=objNamaFileAplikasiMsWord objNamaServer="WinWord" objNamaTopik="System" objClient=DDEClient.Make(objNamaServer,objNamaTopik) if(obJClient.HasError)Then System.Execute(objParameter) objClient=DDEClient.Make(objNamaServer,objNamaTopik)
end objScript="[FileOpen.Name:="""+objNamaFileDoc+"""]" objClient.Execute(objScript) objClient.Close ========================= 2. Informasi " Daerah Penelitian" ========================= 'MENGAKTIFKAN DDE CLIENT objNamaAplikasi="ArcView-Client,Ms.Word-Server" 'Av.SetName(objNamaAplikasi) objNamaFileAplikasiMsWord="G:\Program Files\Microsoft Office\OFFICE11\WINWORD.Exe" objNamaFileDoc="C:\SIGK\informasi\profil daerah penelitian.doc" objParameter=objNamaFileAplikasiMsWord objNamaServer="WinWord" objNamaTopik="System" objClient=DDEClient.Make(objNamaServer,objNamaTopik) if(obJClient.HasError)Then System.Execute(objParameter) objClient=DDEClient.Make(objNamaServer,objNamaTopik) end objScript="[FileOpen.Name:="""+objNamaFileDoc+"""]" objClient.Execute(objScript) objClient.Close ============= J. Peta Tematik ============= =================================== 1. Peta Tematik " Penyebaran Pos Penanganan Kebakaran" =================================== theView = av.GetActiveDoc 'theView.GetWin.Close objProject=Av.GetProject objNamaView="PETA POS PENANGANAN KEBAKARAN" objView=objProject.FindDoc(objNamaView) objWindow=objView.GetWin objWindow.Open theThemes = theView.GetActiveThemes r = Rect.MakeEmpty for each t in theThemes r = r.UnionWith(t.ReturnExtent)
end if (r.IsEmpty) then return nil elseif ( r.ReturnSize = (0@0) ) then theView.GetDisplay.PanTo(r.ReturnOrigin) else theView.GetDisplay.SetExtent(r.Scale(1.1)) end myProject = av.GetProject theView = av.GetActiveDoc theGraphics = theView.GetGraphics if (theGraphics.Count = 0) then exit end for each g in theGraphics if (g.GetObjectTag.AsString="Cari") then theGraphics.RemoveGraphic(g) break end end for each g in theGraphics if (g.GetObjectTag.AsString="cetak") then theGraphics.RemoveGraphic(g) break end end for each g in theGraphics if (g.GetObjectTag.AsString="tutup") then theGraphics.RemoveGraphic(g) break end end for each g in theGraphics if (g.GetObjectTag.AsString="Grafik") then theGraphics.RemoveGraphic(g) break end end ' place label buttons on view theView.GetWin.Invalidate vRect = theView.GetDisplay.ReturnVisExtent theDisplay = theView.GetDisplay aWidth = theDisplay.ReturnExtent.GetWidth aHeight = theDisplay.ReturnExtent.GetHeight theOrigin = theDisplay.ReturnVisExtent.ReturnOrigin ' factor for spacing buttons xfac = aWidth/26500 yfac = aHeight/355
' ensure button widths are properly sized butWidth = aWidth * 0.20 butHeight = aWidth * 0.03 ' make label button and set script & label lblSoil = LabelButton.Make lblSoil.SetClick("View.ShowTable") lblSoil.SetLabel("Buka Tabel") lblSoil.SetObjectTag("Cari") xFac1 = xFac*1500 ' bwat geser ke samping kiri tombol buka tabel dan layout xFac2 = xFac*6750 ' bwat geser ke samping kiri tombol grafik dan tutup cari = yFac*40 ' Size control to 20% by 7% of display width newPoint = Point.Make(theOrigin.GetX+xFac1,theOrigin.GetY+cari) aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblSoil, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("Cari") theGraphics.AddName(aGraphicControl) 'this also sets name of control aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) ' make label button and set script & label lblZoning = LabelButton.Make lblZoning.SetClick("1-buat layout") lblZoning.SetLabel("Layout") 'lblHydro.SetObjectTag("Cetak") ' Size control to 20% by 7% of display width cetak = yfac*15 '3800 newPoint = Point.Make(theOrigin.GetX+xFac1,theOrigin.GetY+cetak) aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblZoning, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("Cetak") theGraphics.AddName(aGraphicControl) 'this also sets name of control
aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) av.GetProject.SetModified(true) ' make label button and set script & label lblZoning = LabelButton.Make lblZoning.SetClick("1-Tutup") lblZoning.SetLabel("Tutup") 'lblHydro.SetObjectTag("tutup") ' Size control to 20% by 7% of display width tutup = yFac*5 '3800 newPoint = Point.Make(theOrigin.GetX+xFac2,theOrigin.GetY+cetak ) aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblZoning, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("tutup") theGraphics.AddName(aGraphicControl) 'this also sets name of control aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) av.GetProject.SetModified(true) ================================== 3. Peta Tematik " Peta Administrasi JakTim" ================================== theView = av.GetActiveDoc 'theView.GetWin.Close objProject=Av.GetProject objNamaView="PETA ADMINISTRASI JAKARTA TIMUR" objView=objProject.FindDoc(objNamaView) objWindow=objView.GetWin objWindow.Open theThemes = theView.GetActiveThemes r = Rect.MakeEmpty for each t in theThemes r = r.UnionWith(t.ReturnExtent) end if (r.IsEmpty) then return nil elseif ( r.ReturnSize = (0@0) ) then theView.GetDisplay.PanTo(r.ReturnOrigin) else theView.GetDisplay.SetExtent(r.Scale(1.1)) end
myProject = av.GetProject theView = av.GetActiveDoc theGraphics = theView.GetGraphics if (theGraphics.Count = 0) then exit end for each g in theGraphics if (g.GetObjectTag.AsString="cetak") then theGraphics.RemoveGraphic(g) break end end for each g in theGraphics if (g.GetObjectTag.AsString="tutup") then theGraphics.RemoveGraphic(g) break end end ' place label buttons on view theView.GetWin.Invalidate vRect = theView.GetDisplay.ReturnVisExtent theDisplay = theView.GetDisplay aWidth = theDisplay.ReturnExtent.GetWidth aHeight = theDisplay.ReturnExtent.GetHeight theOrigin = theDisplay.ReturnVisExtent.ReturnOrigin ' factor for spacing buttons xfac = aWidth/26500 yfac = aHeight/355 ' ensure button widths are properly sized butWidth = aWidth * 0.20 butHeight = aWidth * 0.03 xFac1 = xFac*1000 ' bwat geser ke samping kiri tombol buka tabel dan layout xFac2 = xFac*6750 ' bwat geser ke samping kiri tombol grafik dan tutup cari = yFac*40 ' make label button and set script & label lblZoning = LabelButton.Make lblZoning.SetClick("1-buat layout") lblZoning.SetLabel("Layout") 'lblHydro.SetObjectTag("Cetak") ' Size control to 20% by 7% of display width cetak = yfac*15 '3800 newPoint = Point.Make(theOrigin.GetX+xFac1,theOrigin.GetY+cetak)
aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblZoning, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("Cetak") theGraphics.AddName(aGraphicControl) 'this also sets name of control aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) av.GetProject.SetModified(true) ' make label button and set script & label lblZoning = LabelButton.Make lblZoning.SetClick("1-Tutup") lblZoning.SetLabel("Tutup") 'lblHydro.SetObjectTag("tutup") ' Size control to 20% by 7% of display width tutup = yFac*5 '3800 newPoint = Point.Make(theOrigin.GetX+xFac2,theOrigin.GetY+cetak ) aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblZoning, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("tutup") theGraphics.AddName(aGraphicControl) 'this also sets name of control aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) av.GetProject.SetModified(true) =============================== K. Penanganan Kebakaran / Cari Lokasi Kebakaran "1-View Cari Lokasi" =============================== theView = av.GetActiveDoc 'theView.GetWin.Close objProject=Av.GetProject objNamaView="PETA POS PENANGANAN KEBAKARAN" objView=objProject.FindDoc(objNamaView) objWindow=objView.GetWin objWindow.Open theThemes = theView.GetActiveThemes r = Rect.MakeEmpty
for each t in theThemes r = r.UnionWith(t.ReturnExtent) end if (r.IsEmpty) then return nil elseif ( r.ReturnSize = (0@0) ) then theView.GetDisplay.PanTo(r.ReturnOrigin) else theView.GetDisplay.SetExtent(r.Scale(1.1)) end myProject = av.GetProject theView = av.GetActiveDoc theGraphics = theView.GetGraphics if (theGraphics.Count = 0) then exit end for each g in theGraphics if (g.GetObjectTag.AsString="Cari") then theGraphics.RemoveGraphic(g) break end end for each g in theGraphics if (g.GetObjectTag.AsString="Cetak") then theGraphics.RemoveGraphic(g) break end end for each g in theGraphics if (g.GetObjectTag.AsString="tutup") then theGraphics.RemoveGraphic(g) break end end ' place label buttons on view theView.GetWin.Invalidate vRect = theView.GetDisplay.ReturnVisExtent theDisplay = theView.GetDisplay aWidth = theDisplay.ReturnExtent.GetWidth aHeight = theDisplay.ReturnExtent.GetHeight theOrigin = theDisplay.ReturnVisExtent.ReturnOrigin ' factor for spacing buttons xfac = aWidth/89500 yfac = aHeight/355 ' ensure button widths are properly sized butWidth = aWidth * 0.25 butHeight = aWidth * 0.03
' make label button and set script & label lblSoil = LabelButton.Make lblSoil.SetClick("cari jalan") lblSoil.SetLabel("Cari Lokasi Kebakaran") lblSoil.SetObjectTag("Cari") xFac1 = xFac*1000 ' bwat geser ke samping kiri tombol buka tabel dan layout xFac2 = xFac*21750 ' bwat geser ke samping kiri tombol grafik dan tutup cari = yFac*40 ' Size control to 20% by 7% of display width newPoint = Point.Make(theOrigin.GetX+xFac1,theOrigin.GetY+cari) aSize = (butWidth*1.8)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblSoil, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("Cari") theGraphics.AddName(aGraphicControl) 'this also sets name of control aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) ' make label button and set script & label lblZoning = LabelButton.Make lblZoning.SetClick("1-layout laporan keb") lblZoning.SetLabel("Cetak") 'lblHydro.SetObjectTag("Cetak") ' Size control to 20% by 7% of display width cetak = yfac*15 '3800 newPoint = Point.Make(theOrigin.GetX+xFac1,theOrigin.GetY+cetak) aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblZoning, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("Cetak") theGraphics.AddName(aGraphicControl) 'this also sets name of control aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) av.GetProject.SetModified(true)
=========== 1. Cari jalan =========== Dial=Av.GetProject.FindDialog("Dialog Data Kebakaran") Listb=Dial.FindByName("jalan") theThemeName = "Jaringan_jalan.shp" theFieldName = "Nama_jalan" kel = dial.findbyname("kel") code_kel = dial.findbyname("code_kel") jln = dial.findbyname("jln") tabel=av.GetProject.FindDoc("3. Jaringan_jalan.shp") tbl=tabel.getvtab theBitmap=tbl.getselection theFieldName1 = "Id_Jalan" fjalan=tbl.findfield("Nama_jalan") tabel1=av.GetProject.FindDoc("BATAS KELURAHAN") tbl1=tabel1.getvtab theBitmap1=tbl1.getselection theFieldName2 = "Id_kel" fkel=tbl1.findfield("Nama_kelur") fkel1=tbl1.findfield("Id_kel") ' Get view and display theView = av.GetActiveDoc ThemeBaru=theView.FindTheme("Jaringan_jalan.shp") if(ThemeBaru.IsVisible.Not)then ThemeBaru.SetVisible(True) ThemeBaru.SetActive(True) end theDisplay = theView.GetDisplay theFTab = ThemeBaru.GetFTab theField = theFTab.FindField(theFieldName) if (theField = NIL) then MsgBox.Error(theFieldName++"is not a field","") return NIL end ' Make list of field values theUniqueList = List.Make for each rec in theFtab theUniqueList.Add(theFTab.ReturnValueString(theField, rec)) end ' Remove duplicates, sort list, and remove blank (null) element in list if (theUniqueList.Count > 0) then theUniqueList.RemoveDuplicates theUniqueList.Sort(true)
if (theUniqueList.Get(0).isNull) then theUniqueList.Remove(0) end else MsgBox.Error("There are no values in field to choose from","") return NIL end ' Open MsgBox to choose value 'theMessage = "Choose"++theFieldName.Proper 'theTitle = "Find"++theThemeName.Proper theValue = Listb.GetCurrentValue.asString Listb.DefineFromList(theUniqueList) if (Listb= NIl) then return NIL end Dial.open ================= L. Pemeliharaan data ================= ================================ 1. Pemeliharaan data "Kasus Kebakaran" ================================ p = av.getproject.finddialog("Dialog Data kebakaran Utama") p.open ========================== 1.1 "0-Data Kebakaran Utama entri" ========================== dial= av.getproject.finddialog("Dialog Data kebakaran Utama") id_keb = dial.findbyname("id_keb") tgl = dial.findbyname("date") jalan = dial.findbyname("jalan") kel = dial.findbyname("kel") pelapor = dial.findbyname("pelapor") alamat = dial.findbyname("alamat") status = dial.findbyname("status") waktu = dial.findbyname("waktu") jenis = dial.findbyname("jenis") penyebab = dial.findbyname("penyebab") taksiran = dial.findbyname("taksiran") mati = dial.findbyname("mati") luka = dial.findbyname("luka") code_kel = dial.findbyname("code_kel") bulan = dial.findbyname("bulan") tabel=av.getproject.finddoc("TABEL DATA KEBAKARAN") tabel1=av.getproject.FindDoc("TABEL KEJADIAN KEBAKARAN KELURAHAN") tbl=tabel.getvtab
tbl1=tabel1.getvtab theBitmap=tbl.getselection theBitmap1=tbl1.getselection ADA=FALSE theFieldName = "Id_kel" fidkel=tbl.findfield(theFieldName) fid_keb = tbl.findfield("id_keb") fdate = tbl.findfield("tgl_keb") fjalan = tbl.findfield("Nm_jln") fkel = tbl.findfield("Nm_kel") fpelapor = tbl.findfield("Nm_Pelapor") falamat = tbl.findfield("almt_Pelapor") fstatus = tbl.findfield("Status_keb") fwaktu = tbl.findfield("waktu_keb") fjenis = tbl.findfield("Bnd_tbkar") fpenyebab = tbl.findfield("sebab_keb") ftaksiran = tbl.findfield("taksiran") fmati = tbl.findfield("meninggal") fluka = tbl.findfield("luka") fcode_kel = tbl.findfield("Id_kel") fbulan = tbl.findfield("bulan") fid_jml_keb = tbl1.findfield("id_jml_keb") flistrik = tbl1.findfield("listrik") expresi = "[id_keb] ="+id_keb.gettext.quote tbl.query(expresi,theBitmap,#vtab_seltype_new) tbl.UpdateSelection for each rec in tbl.GetSelection ada = true iid_keb = tbl.returnvalue(fid_keb,rec) idate = tbl.returnvalue(fdate,rec) ijalan = tbl.returnvalue(fjalan,rec) ikel = tbl.returnvalue(fkel,rec) ipelapor = tbl.returnvalue(fpelapor,rec) ialamat = tbl.returnvalue(falamat,rec) istatus = tbl.returnvalue(fstatus,rec) iwaktu = tbl.returnvalue(fwaktu,rec) ijenis = tbl.returnvalue(fjenis,rec) ipenyebab = tbl.returnvalue(fpenyebab,rec) itaksiran = tbl.returnvalue(ftaksiran,rec) imati = tbl.returnvalue(fmati,rec) iluka = tbl.returnvalue(fluka,rec) icode_kel = tbl.returnvalue(fcode_kel,rec) ibulan = tbl.returnvalue(fbulan,rec) theUniqueList = List.Make theUniqueList2 = List.Make theUniqueList3 = List.Make theUniquelist4 = List.Make theUniqueList.Add(tbl.ReturnValueString(fwaktu, rec))
theUniqueList2.Add(tbl.ReturnValueString(fjenis, rec)) theUniqueList3.Add(tbl.ReturnValueString(fpenyebab, rec)) theUniquelist4.Add(tbl.ReturnValueString(fbulan,rec)) theValue = waktu.GetSelection.asString waktu.DefineFromList(theUniqueList) jenis.DefineFromList(theUniqueList2) penyebab.DefineFromList(theUniqueList3) bulan.DefineFromList(theUniqueList4) end if ( ada = true ) then tgl.settext(idate.Asstring) jalan.settext(ijalan) kel.settext(ikel) pelapor.settext(ipelapor) alamat.settext(ialamat) status.settext(istatus) taksiran.settext(itaksiran) mati.settext(imati) luka.settext(iluka) code_kel.settext(icode_kel.AsString) if(waktu.getselection="") then waktu.definefromlist({"--Pilih--","Pagi","Siang","Sore"}) if(jenis.getselection="") then jenis.definefromlist({"--Pilih--","Bangunan Perumahan","Bangunan Umum","Bangunan Industri","Kendaraan","Lain-Lain"}) end if(penyebab.getselection="") then penyebab.definefromlist({"--Pilih--","Kompor","Lampu","Listrik","Rokok","Lain-Lain"}) end elseif(bulan.getselection="") then bulan.definefromlist({"--Pilih--","JANUARI (1)","FEBRUARI (2)","MARET (3)","APRIL (4)","MEI (5)","JUNI (6)","JULI (7)","AGUSTUS (8)","SEPTEMBER (9)","OKTOBER (10)","NOVEMBER (11)","DESEMBER (12)"}) end else
tgl.settext("") jalan.settext("")
kel.settext("") pelapor.settext("") alamat.settext("") status.settext("") taksiran.settext("") mati.settext("") luka.settext("") code_kel.settext("") waktu.definefromlist({"--Pilih--","Pagi","Siang","Sore"}) jenis.definefromlist({"--Pilih--","Bangunan Perumahan","Bangunan Umum","Bangunan Industri","Kendaraan","Lain-Lain"}) penyebab.definefromlist({"--Pilih--","Kompor","Lampu","Listrik","Rokok","Lain-Lain"}) bulan.definefromlist({"--Pilih--","JANUARI (1)","FEBRUARI (2)","MARET (3)","APRIL (4)","MEI (5)","JUNI (6)","JULI (7)","AGUSTUS (8)","SEPTEMBER (9)","OKTOBER (10)","NOVEMBER (11)","DESEMBER (12)"}) end dial.open 'end ================================= 1.2 "0-Data Kebakaran Utama simpan entri" ================================= dial= av.getproject.finddialog("Dialog Data kebakaran Utama") id_keb = dial.findbyname("id_keb") tgl = dial.findbyname("date") jalan = dial.findbyname("jalan") kel = dial.findbyname("kel") pelapor = dial.findbyname("pelapor") alamat = dial.findbyname("alamat") status = dial.findbyname("status") waktu = dial.findbyname("waktu") jenis = dial.findbyname("jenis") penyebab = dial.findbyname("penyebab") taksiran = dial.findbyname("taksiran") mati = dial.findbyname("mati") luka = dial.findbyname("luka") code_kel = dial.findbyname("code_kel") bulan = dial.findbyname("bulan") 'ISk={"YA","TIDAK"} tabel=av.getproject.finddoc("TABEL DATA KEBAKARAN") 'tabel1=av.getproject.FindDoc("TABEL KEJADIAN KEBAKARAN") tbl=tabel.getvtab 'tbl1=tabel1.getvtab theBitmap=tbl.getselection
'theBitmap1=tbl1.getselection ADA=FALSE theFieldName = "id_kel" fidkel=tbl.findfield(theFieldName) theFieldName2 = "sebab_keb" fid_keb = tbl.findfield("id_keb") ftgl = tbl.findfield("tgl_keb") fjalan = tbl.findfield("Nm_jln") fkel = tbl.findfield("Nm_kel") fpelapor = tbl.findfield("Nm_Pelapor") falamat = tbl.findfield("almt_Pelapor") fstatus = tbl.findfield("Status_keb") fwaktu = tbl.findfield("waktu_keb") fjenis = tbl.findfield("Bnd_tbkar") fpenyebab = tbl.findfield(theFieldName2) ftaksiran = tbl.findfield("taksiran") fmati = tbl.findfield("meninggal") fluka = tbl.findfield("luka") fcode_kel = tbl.findfield("Id_kel") fbulan = tbl.findfield("bulan") 'fid_jml_keb = tbl1.findfield("id_jml_keb") 'flistrik = tbl1.findfield("listrik") 'fkompor = tbl1.findfield("kompor") 'flampu = tbl1.findfield("lampu") 'frokok = tbl1.findfield("rokok") 'flain = tbl1.findfield("lain-lain") iid_keb = id_keb.Gettext itgl = tgl.Gettext ijalan = jalan.Gettext ikel = kel.Gettext ipelapor = pelapor.Gettext ialamat = alamat.Gettext istatus = status.Gettext iwaktu = waktu.Getselection ijenis = jenis.Getselection ipenyebab = penyebab.Getselection itaksiran = taksiran.Gettext imati = mati.Gettext iluka = luka.Gettext icode_kel = code_kel.Gettext ibulan = bulan.Getselection masukan = id_keb.Gettext expresi = "[id_keb] = "+masukan.quote tbl.query(expresi,theBitmap,#vtab_seltype_new) tbl.UpdateSelection for each rec in tbl.GetSelection ada = true end
if(ada=true)then tbl.seteditable(true) for each rec in tbl.getselection tbl.setvalue(fid_keb,rec,iid_keb) tbl.setvalue(ftgl,rec,itgl) tbl.setvalue(fjalan,rec,ijalan) tbl.setvalue(fkel,rec,ikel) tbl.setvalue(fpelapor,rec,ipelapor) tbl.setvalue(falamat,rec,ialamat) tbl.setvalue(fstatus,rec,istatus) tbl.setvalue(fwaktu,rec,iwaktu) tbl.setvalue(fjenis,rec,ijenis) tbl.setvalue(fpenyebab,rec,ipenyebab) tbl.setvalue(ftaksiran,rec,itaksiran) tbl.setvalue(fmati,rec,imati) tbl.setvalue(fluka,rec,iluka) tbl.setvalue(fcode_kel,rec,icode_kel) tbl.setvalue(fbulan,rec,ibulan) end tbl.seteditable(false) else tbl.seteditable(true) tbl.BeginTransaction tbl.AddRecord tbl.EndTransaction isian="" expresi = "[id_keb] = "+isian.quote tbl.query(expresi,theBitmap,#vtab_seltype_new) 'tbl.setselection(theBitmap) tbl.UpdateSelection for each rec in tbl.GetSelection '---------------------------------- ISI RECORD tbl.setvalue(fid_keb,rec,iid_keb) tbl.setvalue(ftgl,rec,itgl) tbl.setvalue(fjalan,rec,ijalan) tbl.setvalue(fkel,rec,ikel) tbl.setvalue(fpelapor,rec,ipelapor) tbl.setvalue(falamat,rec,ialamat) tbl.setvalue(fstatus,rec,istatus) tbl.setvalue(fwaktu,rec,iwaktu) tbl.setvalue(fjenis,rec,ijenis) tbl.setvalue(fpenyebab,rec,ipenyebab) tbl.setvalue(ftaksiran,rec,itaksiran) tbl.setvalue(fmati,rec,imati) tbl.setvalue(fluka,rec,iluka) tbl.setvalue(fcode_kel,rec,icode_kel) tbl.setvalue(fbulan,rec,ibulan) end tbl.seteditable(false)
jalan.settext("") kel.settext("") pelapor.settext("") alamat.settext("") status.settext("") waktu.settext("") jenis.settext("") penyebab.settext("") taksiran.settext("") mati.settext("") luka.settext("") bulan.settext("") end ================================ 1.3 "0-Data Kebakaran Utama kosongkan" ================================ dial= av.getproject.finddialog("Dialog Data kebakaran Utama") id_keb = dial.findbyname("id_keb") tgl = dial.findbyname("date") jalan = dial.findbyname("jalan") kel = dial.findbyname("kel") pelapor = dial.findbyname("pelapor") alamat = dial.findbyname("alamat") status = dial.findbyname("status") waktu = dial.findbyname("waktu") jenis = dial.findbyname("jenis") penyebab = dial.findbyname("penyebab") taksiran = dial.findbyname("taksiran") mati = dial.findbyname("mati") luka = dial.findbyname("luka") code_kel = dial.findbyname("code_kel") 'status.definefromlist({"--Pilih--","Ya","Tidak"}) waktu.definefromlist({"--Pilih--","Pagi","Siang","Malam"}) jenis.definefromlist({"--Pilih--","Bangunan Perumahan","Bangunan Umum","Bangunan Industri","Kendaraan"}) penyebab.definefromlist({"--Pilih--","Kompor","Lampu","Listrik","Rokok"}) jalan.settext("") kel.settext("") pelapor.settext("") alamat.settext("") 'status.gettext("") 'waktu.settext("") 'jenis.settext("") 'penyebab.settext("") taksiran.settext("") mati.settext("") luka.settext("")
code_kel.settext("") ============================ 1.4. "0-DATA BENDA TERBAKAR" ============================ dial= av.getproject.finddialog("Dialog Data kebakaran Utama") id_keb = dial.findbyname("id_keb") jenis = dial.findbyname("jenis") code_kel = dial.findbyname("code_kel") tabel=av.getproject.finddoc("TABEL DATA KEBAKARAN") tabel1=av.getproject.FindDoc("TABEL BENDA TERBAKAR KELURAHAN") tabel2=av.getproject.FindDoc("TABEL BENDA TERBAKAR KECAMATAN") tbl=tabel.getvtab tbl1=tabel1.getvtab tbl2=tabel2.getvtab theBitmap=tbl.getselection theBitmap1=tbl1.getselection theBitmap2=tbl2.getselection ADA=FALSE theFieldName = "id_kel" fidkel=tbl.findfield(theFieldName) theFieldName2 = "bnd_tbkar" fid_keb = tbl.findfield("id_keb") fjenis = tbl.findfield(theFieldName2) fcode_kel = tbl.findfield("Id_kel") fid_ind = tbl1.findfield("id_Bnd") fperum = tbl1.findfield("Bgn_perum") fumum = tbl1.findfield("Bgn_umum") fIndus = tbl1.findfield("Bgn_indus") fKendaraan = tbl1.findfield("Kendaraan") 'flain = tbl1.findfield("lain-lain") fperumkec = tbl2.findfield("Bgn_perum") fumumkec = tbl2.findfield("Bgn_umum") finduskec = tbl2.findfield("Bgn_indus") fkenkec = tbl2.findfield("Kendaraan") iid_keb = id_keb.Gettext ijenis= jenis.Getselection icode_kel = code_kel.Gettext masukan = id_keb.Gettext expresi = "[id_keb] = "+masukan.quote tbl.query(expresi,theBitmap,#vtab_seltype_new) tbl.UpdateSelection
for each rec in tbl.GetSelection ada = true end if(ada=true)then tbl.seteditable(true) for each rec in tbl.getselection tbl.setvalue(fid_keb,rec,iid_keb) tbl.setvalue(fjenis,rec,ijenis) tbl.setvalue(fcode_kel,rec,icode_kel) end tbl.seteditable(false) else tbl.seteditable(true) tbl.BeginTransaction tbl.AddRecord tbl.EndTransaction isian="" expresi = "[id_keb] = "+isian.quote tbl.query(expresi,theBitmap,#vtab_seltype_new) 'tbl.setselection(theBitmap) tbl.UpdateSelection for each rec in tbl.GetSelection '---------------------------------- ISI RECORD tbl.setvalue(fid_keb,rec,iid_keb) tbl.setvalue(fjenis,rec,ijenis) tbl.setvalue(fcode_kel,rec,icode_kel) end tbl.seteditable(false) jenis.settext("") end masukan = code_kel.GetText masukan1 = jenis.GetSelection expresi= "(["+theFieldName+"] = "+masukan.quote+")" tbl.query(expresi,theBitmap,#VTAB_SELTYPE_NEW) expresi2= "(["+theFieldName2+"] = "+masukan1.quote+")" tbl.query(expresi2,theBitmap,#VTAB_SELTYPE_AND) iTotal_kejadian = TheBitmap.Count.AsString MsgBox.Info("Jumlah data yang ada di wilayah ini adalah:"++TheBitmap.Count.AsString,"Jumlah Record")
tbl.setselection(theBitmap) tbl.UpdateSelection 'tabel.PromoteSelection iperum = TheBitmap.Count.AsString iumum = TheBitmap.Count.AsString iindus = TheBitmap.Count.AsString ikendaraan = TheBitmap.Count.AsString 'ilain = TheBitmap.Count.AsString tbl1.seteditable(true) tbl2.seteditable(true) for each rec in tbl1.getselection if(masukan1="Bangunan Perumahan")then tbl1.setvalue(fperum,rec,iperum) elseif(masukan1="Bangunan Umum")then tbl1.setvalue(fumum,rec,iumum) elseif(masukan1="Bangunan Industri")then tbl1.setvalue(findus ,rec,iindus) elseif(masukan1="Kendaraan")then tbl1.setvalue(fkendaraan,rec,ikendaraan) 'elseif(masukan1="Lain-Lain")then ' tbl1.setvalue(flain,rec,ilain) end end for each rec in tbl2.getselection if(masukan1="Bangunan Perumahan")then iperumkec=tbl2.returnvalue(fperumkec,rec) itotalperum=iperum.AsNumber+iperumkec tbl2.setvalue(fperumkec,rec,itotalperum) elseif(masukan1="Bangunan Umum")then iumumkec=tbl2.returnvalue(fumumkec,rec) itotalumum=iumum.AsNumber+iumumkec tbl2.setvalue(fumumkec,rec,itotalumum) elseif(masukan1="Bangunan Industri")then iinduskec=tbl2.returnvalue(finduskec,rec) itotalindus=iindus.AsNumber+iinduskec tbl2.setvalue(finduskec,rec,itotalindus) elseif(masukan1="Kendaraan")then ikenkec=tbl2.returnvalue(fkenkec,rec) itotalken=iKendaraan.AsNumber+ikenkec tbl2.setvalue(fkenkec,rec,itotalken) end end
tbl1.seteditable(false) tbl2.seteditable(false) ================================ 1.5 "0-DATA PENYEBAB KEBAKARAN" ================================ dial= av.getproject.finddialog("Dialog Data kebakaran Utama") id_keb = dial.findbyname("id_keb") penyebab = dial.findbyname("penyebab") code_kel = dial.findbyname("code_kel") tabel=av.getproject.finddoc("TABEL DATA KEBAKARAN") tabel1=av.getproject.FindDoc("TABEL PENYEBAB KEBAKARAN KELURAHAN") tabel2=av.getproject.FindDoc("TABEL PENYEBAB KEBAKARAN KECAMATAN") tbl=tabel.getvtab tbl1=tabel1.getvtab tbl2=tabel2.getvtab theBitmap=tbl.getselection theBitmap1=tbl1.getselection theBitmap2=tbl2.getselection ADA=FALSE theFieldName = "id_kel" fidkel=tbl.findfield(theFieldName) theFieldName2 = "sebab_keb" fid_keb = tbl.findfield("id_keb") fpenyebab = tbl.findfield(theFieldName2) fcode_kel = tbl.findfield("Id_kel") fid_jml_keb = tbl1.findfield("id_jml_keb") flistrik = tbl1.findfield("Listrik") fkompor = tbl1.findfield("Kompor") flampu = tbl1.findfield("Lampu") frokok = tbl1.findfield("Rokok") 'flain = tbl1.findfield("lain-lain") 'fid_jml_keb = tbl2.findfield("id_jml_keb") flistrikkec = tbl2.findfield("Listrik") fkomporkec = tbl2.findfield("Kompor") flampukec = tbl2.findfield("Lampu") frokokkec = tbl2.findfield("Rokok") iid_keb = id_keb.Gettext ipenyebab = penyebab.Getselection icode_kel = code_kel.Gettext masukan = id_keb.Gettext expresi = "[id_keb] = "+masukan.quote tbl.query(expresi,theBitmap,#vtab_seltype_new)
tbl.UpdateSelection for each rec in tbl.GetSelection ada = true end if(ada=true)then tbl.seteditable(true) for each rec in tbl.getselection tbl.setvalue(fid_keb,rec,iid_keb) tbl.setvalue(fpenyebab,rec,ipenyebab) tbl.setvalue(fcode_kel,rec,icode_kel) end tbl.seteditable(false) else tbl.seteditable(true) tbl.BeginTransaction tbl.AddRecord tbl.EndTransaction isian="" expresi = "[id_keb] = "+isian.quote tbl.query(expresi,theBitmap,#vtab_seltype_new) 'tbl.setselection(theBitmap) tbl.UpdateSelection for each rec in tbl.GetSelection '---------------------------------- ISI RECORD tbl.setvalue(fid_keb,rec,iid_keb) tbl.setvalue(fpenyebab,rec,ipenyebab) tbl.setvalue(fcode_kel,rec,icode_kel) end tbl.seteditable(false) penyebab.settext("") end masukan = code_kel.GetText masukan1 = penyebab.GetSelection expresi= "(["+theFieldName+"] = "+masukan.quote+")" tbl.query(expresi,theBitmap,#VTAB_SELTYPE_NEW) expresi2= "(["+theFieldName2+"] = "+masukan1.quote+")" tbl.query(expresi2,theBitmap,#VTAB_SELTYPE_AND) iTotal_kejadian = TheBitmap.Count.AsString
MsgBox.Info("Jumlah data yang ada di wilayah ini adalah:"++TheBitmap.Count.AsString,"Jumlah Record") tbl.setselection(theBitmap) tbl.UpdateSelection 'tabel.PromoteSelection ikompor = TheBitmap.Count.AsString ilistrik = TheBitmap.Count.AsString ilampu = TheBitmap.Count.AsString irokok = TheBitmap.Count.AsString tbl1.seteditable(true) tbl2.seteditable(true) for each rec in tbl1.getselection if(masukan1="Kompor")then tbl1.setvalue(fkompor,rec,ikompor) elseif(masukan1="Lampu")then tbl1.setvalue(flampu,rec,ilampu) elseif(masukan1="Listrik")then tbl1.setvalue(flistrik,rec,ilistrik) elseif(masukan1="Rokok")then tbl1.setvalue(frokok,rec,irokok) end end for each rec in tbl2.getselection if(masukan1="Kompor")then ikomporkec=tbl2.returnvalue(fkomporkec,rec) itotalkompor=ikompor.AsNumber+ikomporkec tbl2.setvalue(fkomporkec,rec,itotalkompor) elseif(masukan1="Lampu")then ilampukec=tbl2.returnvalue(flampukec,rec) itotallampu=ilampu.AsNumber+ilampukec tbl2.setvalue(flampukec,rec,itotallampu) elseif(masukan1="Listrik")then ilistrikkec=tbl2.returnvalue(flistrikkec,rec) itotallistrik=ilistrik.AsNumber+ilistrikkec tbl2.setvalue(flistrikkec,rec,itotallistrik) elseif(masukan1="Rokok")then irokokkec=tbl2.returnvalue(frokokkec,rec) itotalrokok=irokok.AsNumber+irokokkec tbl2.setvalue(frokokkec,rec,itotalrokok) end end
tbl1.seteditable(false) tbl2.seteditable(false) ============================= 1.6 "0-DATA WAKTU KEBAKARAN" ============================= dial= av.getproject.finddialog("Dialog Data kebakaran Utama") id_keb = dial.findbyname("id_keb") waktu = dial.findbyname("waktu") code_kel = dial.findbyname("code_kel") tabel=av.getproject.finddoc("TABEL DATA KEBAKARAN") tabel1=av.getproject.FindDoc("TABEL WAKTU KEBAKARAN KELURAHAN") tabel2=av.getproject.FindDoc("TABEL WAKTU KEBAKARAN KECAMATAN") tbl=tabel.getvtab tbl1=tabel1.getvtab tbl2=tabel2.getvtab theBitmap=tbl.getselection theBitmap1=tbl1.getselection theBitmap2=tbl2.getselection ADA=FALSE theFieldName = "id_kel" fidkel=tbl.findfield(theFieldName) theFieldName2 = "waktu_keb" fid_keb = tbl.findfield("id_keb") fwaktu = tbl.findfield(theFieldName2) fcode_kel = tbl.findfield("Id_kel") fId_waktu = tbl1.findfield("Id_waktu") fPagi = tbl1.findfield("Pagi") fSiang = tbl1.findfield("Siang") fMalam = tbl1.findfield("Malam") fPagikec=tbl2.findfield("Pagi") fSiangkec=tbl2.findfield("Siang") fmalamkec=tbl2.findfield("Malam") iid_keb = id_keb.Gettext iwaktu= waktu.Getselection icode_kel = code_kel.Gettext masukan = id_keb.Gettext expresi = "[id_keb] = "+masukan.quote tbl.query(expresi,theBitmap,#vtab_seltype_new) tbl.UpdateSelection for each rec in tbl.GetSelection ada = true end
if(ada=true)then tbl.seteditable(true) for each rec in tbl.getselection tbl.setvalue(fid_keb,rec,iid_keb) tbl.setvalue(fwaktu,rec,iwaktu) tbl.setvalue(fcode_kel,rec,icode_kel) end tbl.seteditable(false) else tbl.seteditable(true) tbl.BeginTransaction tbl.AddRecord tbl.EndTransaction isian="" expresi = "[id_keb] = "+isian.quote tbl.query(expresi,theBitmap,#vtab_seltype_new) 'tbl.setselection(theBitmap) tbl.UpdateSelection for each rec in tbl.GetSelection '---------------------------------- ISI RECORD tbl.setvalue(fid_keb,rec,iid_keb) tbl.setvalue(fwaktu,rec,iwaktu) tbl.setvalue(fcode_kel,rec,icode_kel) end tbl.seteditable(false) waktu.settext("") end masukan = code_kel.GetText masukan1 = waktu.GetSelection expresi= "(["+theFieldName+"] = "+masukan.quote+")" tbl.query(expresi,theBitmap,#VTAB_SELTYPE_NEW) expresi2= "(["+theFieldName2+"] = "+masukan1.quote+")" tbl.query(expresi2,theBitmap,#VTAB_SELTYPE_AND) iTotal_kejadian = TheBitmap.Count.AsString MsgBox.Info("Jumlah data yang ada di wilayah ini adalah:"++TheBitmap.Count.AsString,"Jumlah Record") tbl.setselection(theBitmap) tbl.UpdateSelection 'tabel.PromoteSelection iPagi = TheBitmap.Count.AsString iSiang = TheBitmap.Count.AsString iMalam = TheBitmap.Count.AsString
tbl1.seteditable(true) tbl2.seteditable(true) for each rec in tbl1.getselection if(masukan1="Pagi")then tbl1.setvalue(fPagi,rec,iPagi) elseif(masukan1="Siang")then tbl1.setvalue(fSiang,rec,iSiang) elseif(masukan1="Malam")then tbl1.setvalue(fMalam ,rec,iMalam) end end for each rec in tbl2.getselection if(masukan1="Pagi")then ipagikec=tbl2.returnvalue(fPagikec,rec) itotalpagi=iPagi.AsNumber+ipagikec tbl2.setvalue(fPagikec,rec,itotalpagi) elseif(masukan1="Siang")then isiangkec=tbl2.returnvalue(fSiangkec,rec) itotalsiang=iSiang.AsNumber+isiangkec tbl2.setvalue(fSiangkec,rec,itotalsiang) elseif(masukan1="Malam")then imalamkec=tbl2.returnvalue(fMalamkec,rec) itotalmalam=iMalam.AsNumber+imalamkec tbl2.setvalue(fMalamkec,rec,itotalmalam) end end tbl1.seteditable(false) tbl2.seteditable(false) =============================== 1.7 "0-DATAKEBAKARAN BULANAN" =============================== dial= av.getproject.finddialog("Dialog Data kebakaran Utama") id_keb = dial.findbyname("id_keb") bulan = dial.findbyname("bulan") code_kel = dial.findbyname("code_kel") tabel=av.getproject.finddoc("TABEL DATA KEBAKARAN") tabel1=av.getproject.FindDoc("TABEL KEB KELURAHAN BULANAN") tabel2=av.getproject.FindDoc("TABEL KEB KECAMATAN BULANAN")
tbl=tabel.getvtab tbl1=tabel1.getvtab tbl2=tabel2.getvtab theBitmap=tbl.getselection theBitmap1=tbl1.getselection theBitmap2=tbl2.getselection ADA=FALSE theFieldName = "id_kel" fidkel=tbl.findfield(theFieldName) theFieldName2 = "bulan" fid_keb = tbl.findfield("id_keb") fbulan = tbl.findfield(theFieldName2) fcode_kel = tbl.findfield("Id_kel") fid_jml_keb = tbl1.findfield("id_jml_keb") fjan = tbl1.findfield("Januari") ffeb = tbl1.findfield("Februari") fmar = tbl1.findfield("Maret") faprl = tbl1.findfield("April") fmei = tbl1.findfield("Mei") fjun = tbl1.findfield("Juni") fjul = tbl1.findfield("Juli") fagus = tbl1.findfield("Agustus") fsept = tbl1.findfield("September") fokt = tbl1.findfield("Oktober") fnov = tbl1.findfield("November") fdes = tbl1.findfield("Desember") fid_jml_keb_kec = tbl2.findfield("id_jml_keb") fjan_kec = tbl2.findfield("Januari") ffeb_kec = tbl2.findfield("Februari") fmar_kec = tbl2.findfield("Maret") faprl_kec = tbl2.findfield("April") fmei_kec = tbl2.findfield("Mei") fjun_kec = tbl2.findfield("Juni") fjul_kec = tbl2.findfield("Juli") fagus_kec = tbl2.findfield("Agustus") fsept_kec = tbl2.findfield("September") fokt_kec = tbl2.findfield("Oktober") fnov_kec = tbl2.findfield("November") fdes_kec = tbl2.findfield("Desember") iid_keb = id_keb.Gettext ibulan = bulan.Getselection icode_kel = code_kel.Gettext masukan = id_keb.Gettext expresi = "[id_keb] = "+masukan.quote tbl.query(expresi,theBitmap,#vtab_seltype_new) tbl.UpdateSelection for each rec in tbl.GetSelection ada = true
end if(ada=true)then tbl.seteditable(true) for each rec in tbl.getselection tbl.setvalue(fid_keb,rec,iid_keb) tbl.setvalue(fbulan,rec,ibulan) tbl.setvalue(fcode_kel,rec,icode_kel) end tbl.seteditable(false) else tbl.seteditable(true) tbl.BeginTransaction tbl.AddRecord tbl.EndTransaction isian="" expresi = "[id_keb] = "+isian.quote tbl.query(expresi,theBitmap,#vtab_seltype_new) 'tbl.setselection(theBitmap) tbl.UpdateSelection for each rec in tbl.GetSelection '---------------------------------- ISI RECORD tbl.setvalue(fid_keb,rec,iid_keb) tbl.setvalue(fbulan,rec,ibulan) tbl.setvalue(fcode_kel,rec,icode_kel) end tbl.seteditable(false) bulan.settext("") end masukan = code_kel.GetText masukan1 = bulan.GetSelection expresi= "(["+theFieldName+"] = "+masukan.quote+")" tbl.query(expresi,theBitmap,#VTAB_SELTYPE_NEW) expresi2= "(["+theFieldName2+"] = "+masukan1.quote+")" tbl.query(expresi2,theBitmap,#VTAB_SELTYPE_AND) iTotal_kejadian = TheBitmap.Count.AsString MsgBox.Info("Jumlah data yang ada di wilayah ini adalah:"++TheBitmap.Count.AsString,"Jumlah Record") tbl.setselection(theBitmap)
tbl.UpdateSelection 'tabel.PromoteSelection ijan = TheBitmap.Count.AsString ifeb = TheBitmap.Count.AsString imar = TheBitmap.Count.AsString iaprl = TheBitmap.Count.AsString imei = TheBitmap.Count.AsString ijun = TheBitmap.Count.AsString ijul = TheBitmap.Count.AsString iagus = TheBitmap.Count.AsString isept = TheBitmap.Count.AsString iokt = TheBitmap.Count.AsString inov = TheBitmap.Count.AsString ides = TheBitmap.Count.AsString tbl1.seteditable(true) tbl2.seteditable(true) for each rec in tbl1.getselection if(masukan1="JANUARI (1)")then tbl1.setvalue(fjan,rec,ijan) elseif(masukan1="FEBRUARI (2)")then tbl1.setvalue(ffeb,rec,ifeb) elseif(masukan1="MARET (3)")then tbl1.setvalue(fmar ,rec,imar) elseif(masukan1="APRIL (4)")then tbl1.setvalue(faprl,rec,iaprl) elseif(masukan1="MEI (5)")then tbl1.setvalue(fmei,rec,imei) elseif(masukan1="JUNI (6)")then tbl1.setvalue(fjun,rec,ijun) elseif(masukan1="JULI (7)")then tbl1.setvalue(fjul ,rec,ijul) elseif(masukan1="AGUSTUS (8)")then tbl1.setvalue(fagus,rec,iagus) elseif(masukan1="SEPTEMBER (9)")then tbl1.setvalue(fsept,rec,isept) elseif(masukan1="OKTOBER (10)")then tbl1.setvalue(fokt,rec,iokt) elseif(masukan1="NOVEMBER (11)")then tbl1.setvalue(fnov,rec,inov) elseif(masukan1="DESEMBER (12)")then tbl1.setvalue(fdes,rec,ides)
end end for each rec in tbl2.getselection if(masukan1="JANUARI (1)")then ijan_kec=tbl2.returnvalue(fjan_kec,rec) itotaljan=ijan.AsNumber+ijan_kec tbl2.setvalue(fjan_kec,rec,itotaljan) elseif(masukan1="FEBRUARI (2)")then ifeb_kec=tbl2.returnvalue(ffeb_kec,rec) itotalfeb=ifeb.AsNumber+ifeb_kec tbl2.setvalue(ffeb_kec,rec,itotalfeb) elseif(masukan1="MARET (3)")then imar_kec=tbl2.returnvalue(fmar_kec,rec) itotalmar=imar.AsNumber+imar_kec tbl2.setvalue(fmar_kec,rec,itotalmar) elseif(masukan1="APRIL (4)")then iapr_kec=tbl2.returnvalue(faprl_kec,rec) itotalapr=iaprl.AsNumber+iapr_kec tbl2.setvalue(faprl_kec,rec,itotalapr) elseif(masukan1="MEI (5)")then imei_kec=tbl2.returnvalue(fmei_kec,rec) itotalmei=imei.AsNumber+imei_kec tbl2.setvalue(fmei_kec,rec,itotalmei) elseif(masukan1="JUNI (6)")then ijun_kec=tbl2.returnvalue(fjun_kec,rec) itotaljun=ijun.AsNumber+ijun_kec tbl2.setvalue(fjun_kec,rec,itotaljun) elseif(masukan1="JULI (7)")then ijul_kec=tbl2.returnvalue(fjul_kec,rec) itotaljul=ijul.AsNumber+ijul_kec tbl2.setvalue(fjul_kec,rec,itotaljul) elseif(masukan1="AGUSTUS (8)")then iagus_kec=tbl2.returnvalue(fagus_kec,rec) itotalagus=iagus.AsNumber+iagus_kec tbl2.setvalue(fagus_kec,rec,itotalagus) elseif(masukan1="SEPTEMBER (9)")then isept_kec=tbl2.returnvalue(fsept_kec,rec) itotalsept=isept.AsNumber+isept_kec tbl2.setvalue(fsept_kec,rec,itotalsept) elseif(masukan1="OKTOBER (10)")then iokt_kec=tbl2.returnvalue(fokt_kec,rec) itotalokt=iokt.AsNumber+iokt_kec tbl2.setvalue(fokt_kec,rec,itotalokt)
elseif(masukan1="NOVEMBER (11)")then inov_kec=tbl2.returnvalue(fnov_kec,rec) itotalnov=inov.AsNumber+inov_kec tbl2.setvalue(fnov_kec,rec,itotalnov) elseif(masukan1="DESEMBER")then ides_kec=tbl2.returnvalue(fdes_kec,rec) itotaldes=ides.AsNumber+ides_kec tbl2.setvalue(fdes_kec,rec,itotaldes) end end tbl1.seteditable(false) tbl2.seteditable(false) ============================== 2. Pemeliharaan data "Pos Pemadam" ============================== p = av.getproject.finddialog("Dialog Pemadam_2") p.open ======================= 2.1 "1-Update Pemadam Entri" ======================= dial= av.getproject.finddialog("Dialog Pemadam") id_pemadam = dial.findbyname("id_pemadam") nama = dial.findbyname("nama") alamat = dial.findbyname("alamat") telepon = dial.findbyname("telepon") nilaix = dial.findbyname("nilaix") nilaiy = dial.findbyname("nilaiy") tabel=av.getproject.finddoc("4. Pemadam_kebakaran") tbl=tabel.getvtab theBitmap=tbl.getselection ADA=FALSE fid_pemadam = tbl.findfield("id_pemadam") fnama = tbl.findfield("nama") falamat = tbl.findfield("alamat") ftelepon = tbl.findfield("telepon") fnilaix = tbl.findfield("Nilai_X") fnilaiy = tbl.findfield("Nilai_Y") expresi = "[id_pemadam] = "+id_pemadam.gettext.quote tbl.query(expresi,theBitmap,#vtab_seltype_new) tbl.UpdateSelection for each rec in tbl.GetSelection ada = true
iid_pemadam = tbl.returnvalue(fid_pemadam,rec) inama = tbl.returnvalue(fnama,rec) ialamat = tbl.returnvalue(falamat,rec) itelepon = tbl.returnvalue(ftelepon,rec) inilaix = tbl.returnvalue(fnilaix,rec) inilaiy = tbl.returnvalue(fnilaiy,rec) end if ( ada = true ) then nama.settext(inama) alamat.settext(ialamat) telepon.settext(itelepon) nilaix.settext(inilaix.AsString) nilaiy.settext(inilaiy.AsString) else
nama.settext("") alamat.settext("") telepon.settext("") nilaix.settext("") nilaiy.settext("") end ============================ 2.2 "1-Update Pemadam Entri Simpan" ============================ dial= av.getproject.finddialog("Dialog Pemadam") id_pemadam = dial.findbyname("id_pemadam") nama = dial.findbyname("nama") alamat = dial.findbyname("alamat") telepon = dial.findbyname("telepon") nilaix = dial.findbyname("nilaix") nilaiy = dial.findbyname("nilaiy") theView=av.getproject.finddoc("PETA POS PENANGANAN KEBAKARAN") grafik=theView.getgraphics thePrj = theView.GetProjection theTheme = theView.FindTheme("Pemadam_kebakaran.shp") inilaix = nilaix.Gettext.asnumber inilaiy = nilaiy.Gettext.asnumber titik=point.make(inilaix,inilaiy) theView.SetEditableTheme(theTheme) if (theTheme <> nil) then thePrj = theView.GetProjection theField = theTheme.GetFTab.FindField("Shape") fid_pemadam = theTheme.GetFTab.findfield("id_pemadam") fnama = theTheme.GetFTab.findfield("nama") falamat = theTheme.GetFTab.findfield("alamat")
ftelepon = theTheme.GetFTab.findfield("telepon") fnilaix = theTheme.GetFTab.findfield("Nilai_X") fnilaiy = theTheme.GetFTab.findfield("Nilai_Y") iid_pemadam = id_pemadam.Gettext inama = nama.Gettext ialamat = alamat.Gettext itelepon = telepon.Gettext theTheme.GetFTab.BeginTransaction rec = theTheme.GetFTab.AddRecord theTheme.GetFTab.SetValue(theField, rec, titik) theTheme.GetFTab.setvalue(fid_pemadam,rec,iid_pemadam) theTheme.GetFTab.setvalue(fnama,rec,inama) theTheme.GetFTab.setvalue(falamat,rec,ialamat) theTheme.GetFTab.setvalue(ftelepon,rec,itelepon) theTheme.GetFTab.setvalue(fnilaix,rec,inilaix) theTheme.GetFTab.setvalue(fnilaiy,rec,inilaiy) theTheme.GetFTab.EndTransaction theTheme.GetFTab.GetSelection.ClearAll theTheme.GetFTab.GetSelection.Set(rec) theTheme.GetFTab.UpdateSelection else shapebaru=graphicshape.make(titik) grafik.add(shapebaru) end av.GetProject.SetModified(true) editThm = theView.GetEditableTheme if (editThm <> nil) then doSave = MsgBox.YesNoCancel("Save edits to "+editThm.GetName+ "?","Save Edits",true) if (doSave = nil) then return nil end if (doSave.not) then ' user changed her mind return nil else ' save edits and stop editing if (editThm.StopEditing(TRUE).Not) then ' save failed, remain editing MsgBox.Info("Unable to Save Edits, please use the Save Edits As option", "") return nil end ' restart editing theView.SetEditableTheme(editThm)
end end =============================== 2.3 "1-Update Pemadam Entri Kosongan" =============================== dial= av.getproject.finddialog("Dialog Pemadam") id_pemadam = dial.findbyname("id_pemadam") nama = dial.findbyname("nama") alamat = dial.findbyname("alamat") telepon = dial.findbyname("telepon") nilaix = dial.findbyname("nilaix") nilaiy = dial.findbyname("nilaiy") nama.settext("") alamat.settext("") telepon.settext("") nilaix.settext("") nilaiy.settext("") ========================= 3. Pemeliharaan data "Pos Polisi" ========================= p = av.getproject.finddialog("Dialog pos polisi_2") p.open =============== 3.1 "1-Polisi entri" =============== dial= av.getproject.finddialog("Dialog pos polisi") id_polisi = dial.findbyname("id_polisi") nama = dial.findbyname("nama") alamat = dial.findbyname("alamat") telepon = dial.findbyname("telepon") nilaix = dial.findbyname("nilaix") nilaiy = dial.findbyname("nilaiy") tabel=av.getproject.finddoc("5. Polisi") tbl=tabel.getvtab theBitmap=tbl.getselection ADA=FALSE fid_polisi = tbl.findfield("id_polisi") fnama = tbl.findfield("Nama") falamat = tbl.findfield("alamat") ftelepon = tbl.findfield("telepon") fnilaix = tbl.findfield("nilai_X") fnilaiy = tbl.findfield("nilai_Y") expresi = "[id_polisi] = "+id_polisi.gettext.quote tbl.query(expresi,theBitmap,#vtab_seltype_new) tbl.UpdateSelection for each rec in tbl.GetSelection ada = true
iid_polisi = tbl.returnvalue(fid_polisi,rec) inama = tbl.returnvalue(fnama,rec) ialamat = tbl.returnvalue(falamat,rec) itelepon = tbl.returnvalue(ftelepon,rec) inilaix = tbl.returnvalue(fnilaix,rec) inilaiy = tbl.returnvalue(fnilaiy,rec) end if ( ada = true ) then nama.settext(inama) alamat.settext(ialamat) telepon.settext(itelepon) nilaix.settext(inilaix.AsString) nilaiy.settext(inilaiy.AsString) else nama.settext("") alamat.settext("") telepon.settext("") nilaix.settext("") nilaiy.settext("") end ==================== 3.2 "1-Polisi entri Simpan" ==================== dial= av.getproject.finddialog("Dialog pos polisi") id_polisi = dial.findbyname("id_polisi") nama = dial.findbyname("nama") alamat = dial.findbyname("alamat") telepon = dial.findbyname("telepon") nilaix = dial.findbyname("nilaix") nilaiy = dial.findbyname("nilaiy") theView=av.getproject.finddoc("PETA POS PENANGANAN KEBAKARAN") grafik=theView.getgraphics thePrj = theView.GetProjection theTheme = theView.FindTheme("Polisi.shp") inilaix = nilaix.Gettext.asnumber inilaiy = nilaiy.Gettext.asnumber titik=point.make(inilaix,inilaiy) theView.SetEditableTheme(theTheme) if (theTheme <> nil) then thePrj = theView.GetProjection theField = theTheme.GetFTab.FindField("Shape") fid_polisi = theTheme.GetFTab.findfield("id_polisi") fnama = theTheme.GetFTab.findfield("Nama") falamat = theTheme.GetFTab.findfield("alamat") ftelepon = theTheme.GetFTab.findfield("telepon") fnilaix = theTheme.GetFTab.findfield("nilai_X") fnilaiy = theTheme.GetFTab.findfield("nilai_Y")
iid_polisi = id_polisi.Gettext inama = nama.Gettext ialamat = alamat.Gettext itelepon = telepon.Gettext theTheme.GetFTab.BeginTransaction rec = theTheme.GetFTab.AddRecord theTheme.GetFTab.SetValue(theField, rec, titik) theTheme.GetFTab.setvalue(fid_polisi,rec,iid_polisi) theTheme.GetFTab.setvalue(fnama,rec,inama) theTheme.GetFTab.setvalue(falamat,rec,ialamat) theTheme.GetFTab.setvalue(ftelepon,rec,itelepon) theTheme.GetFTab.setvalue(fnilaix,rec,inilaix) theTheme.GetFTab.setvalue(fnilaiy,rec,inilaiy) theTheme.GetFTab.EndTransaction theTheme.GetFTab.GetSelection.ClearAll theTheme.GetFTab.GetSelection.Set(rec) theTheme.GetFTab.UpdateSelection else shapebaru=graphicshape.make(titik) grafik.add(shapebaru) end av.GetProject.SetModified(true) editThm = theView.GetEditableTheme if (editThm <> nil) then doSave = MsgBox.YesNoCancel("Save edits to "+editThm.GetName+ "?","Save Edits",true) if (doSave = nil) then return nil end if (doSave.not) then ' user changed her mind return nil else ' save edits and stop editing if (editThm.StopEditing(TRUE).Not) then ' save failed, remain editing MsgBox.Info("Unable to Save Edits, please use the Save Edits As option", "") return nil end ' restart editing theView.SetEditableTheme(editThm) end end ======================= 3.3 "1-Polisi entri Kosongkan" =======================
dial= av.getproject.finddialog("Dialog pos polisi") id_polisi = dial.findbyname("id_polisi") nama = dial.findbyname("nama") alamat = dial.findbyname("alamat") telepon = dial.findbyname("telepon") nama.settext("") alamat.settext("") telepon.settext("") =========================== 4. Pemeliharaan data "Rumah Sakit" =========================== p = av.getproject.finddialog("Dialog RS_2") p.open =================== 4.1 "1-Update RS entri" =================== dial= av.getproject.finddialog("Dialog RS") id_rs = dial.findbyname("id_rs") nama = dial.findbyname("nama") alamat = dial.findbyname("alamat") telepon = dial.findbyname("telepon") nilaix = dial.findbyname("nilaix") nilaiy = dial.findbyname("nilaiy") tabel=av.getproject.finddoc("6. Rumah sakit") tbl=tabel.getvtab theBitmap=tbl.getselection ADA=FALSE fid_rs = tbl.findfield("id_rs") fnama = tbl.findfield("Nama_rs") falamat = tbl.findfield("alamat") ftelepon = tbl.findfield("telepon") fnilaix = tbl.findfield("Nilai_X") fnilaiy = tbl.findfield("Nilai_Y") expresi = "[id_rs] = "+id_rs.gettext.quote tbl.query(expresi,theBitmap,#vtab_seltype_new) tbl.UpdateSelection for each rec in tbl.GetSelection ada = true iid_rs = tbl.returnvalue(fid_rs,rec) inama = tbl.returnvalue(fnama,rec) ialamat = tbl.returnvalue(falamat,rec) itelepon = tbl.returnvalue(ftelepon,rec) inilaix = tbl.returnvalue(fnilaix,rec) inilaiy = tbl.returnvalue(fnilaiy,rec) end
if ( ada = true ) then nama.settext(inama) alamat.settext(ialamat) telepon.settext(itelepon) nilaix.settext(inilaix.AsString) nilaiy.settext(inilaiy.AsString) else
nama.settext("") alamat.settext("") telepon.settext("") nilaix.settext("") nilaiy.settext("") end ======================== 4.2 "1-Update RS entri Simpan" ======================== dial= av.getproject.finddialog("Dialog RS") id_rs = dial.findbyname("id_rs") nama = dial.findbyname("nama") alamat = dial.findbyname("alamat") telepon = dial.findbyname("telepon") nilaix = dial.findbyname("nilaix") nilaiy = dial.findbyname("nilaiy") theView=av.getproject.finddoc("PETA POS PENANGANAN KEBAKARAN") grafik=theView.getgraphics thePrj = theView.GetProjection theTheme = theView.FindTheme("Rumah sakit.shp") inilaix = nilaix.Gettext.asnumber inilaiy = nilaiy.Gettext.asnumber titik=point.make(inilaix,inilaiy) theView.SetEditableTheme(theTheme) if (theTheme <> nil) then thePrj = theView.GetProjection theField = theTheme.GetFTab.FindField("Shape") fid_rs = theTheme.GetFTab.findfield("id_rs") fnama = theTheme.GetFTab.findfield("Nama_rs") falamat = theTheme.GetFTab.findfield("alamat")
ftelepon = theTheme.GetFTab.findfield("telepon") fnilaix = theTheme.GetFTab.findfield("Nilai_X") fnilaiy = theTheme.GetFTab.findfield("Nilai_Y") iid_rs = id_rs.Gettext inama = nama.Gettext ialamat = alamat.Gettext itelepon = telepon.Gettext theTheme.GetFTab.BeginTransaction rec = theTheme.GetFTab.AddRecord theTheme.GetFTab.SetValue(theField, rec, titik) theTheme.GetFTab.setvalue(fid_rs,rec,iid_rs) theTheme.GetFTab.setvalue(fnama,rec,inama) theTheme.GetFTab.setvalue(falamat,rec,ialamat) theTheme.GetFTab.setvalue(ftelepon,rec,itelepon) theTheme.GetFTab.setvalue(fnilaix,rec,inilaix) theTheme.GetFTab.setvalue(fnilaiy,rec,inilaiy) theTheme.GetFTab.EndTransaction theTheme.GetFTab.GetSelection.ClearAll theTheme.GetFTab.GetSelection.Set(rec) theTheme.GetFTab.UpdateSelection else shapebaru=graphicshape.make(titik) grafik.add(shapebaru) end av.GetProject.SetModified(true) editThm = theView.GetEditableTheme if (editThm <> nil) then doSave = MsgBox.YesNoCancel("Save edits to "+editThm.GetName+ "?","Save Edits",true) if (doSave = nil) then return nil end if (doSave.not) then ' user changed her mind return nil else ' save edits and stop editing if (editThm.StopEditing(TRUE).Not) then ' save failed, remain editing MsgBox.Info("Unable to Save Edits, please use the Save Edits As option", "") return nil end ' restart editing theView.SetEditableTheme(editThm) end end
======================= 4.3 "1-Update RS Kosongkan" ======================= dial= av.getproject.finddialog("Dialog RS") id_rs = dial.findbyname("id_rs") nama = dial.findbyname("nama") alamat = dial.findbyname("alamat") telepon = dial.findbyname("telepon") nama.settext("") alamat.settext("") telepon.settext("") =============================== M. Laporan " Penyebaran Kejadian Kebakaran" =============================== =================================== 1. Peta Penyebaran Kejadian Kebakaran Per kelurahan "1-viewKebakaran" =================================== theView = av.GetActiveDoc 'theView.GetWin.Close objProject=Av.GetProject objNamaView="PETA PENYEBARAN KEBAKARAN KELURAHAN" objView=objProject.FindDoc(objNamaView) objWindow=objView.GetWin objWindow.Open
theThemes = theView.GetActiveThemes r = Rect.MakeEmpty for each t in theThemes r = r.UnionWith(t.ReturnExtent) end if (r.IsEmpty) then return nil elseif ( r.ReturnSize = (0@0) ) then theView.GetDisplay.PanTo(r.ReturnOrigin) else theView.GetDisplay.SetExtent(r.Scale(1.1)) end myProject = av.GetProject theView = av.GetActiveDoc theGraphics = theView.GetGraphics if (theGraphics.Count = 0) then exit end for each g in theGraphics if (g.GetObjectTag.AsString="Cari") then theGraphics.RemoveGraphic(g) break end end for each g in theGraphics if (g.GetObjectTag.AsString="Grafik") then theGraphics.RemoveGraphic(g) break end end for each g in theGraphics if (g.GetObjectTag.AsString="cetak") then theGraphics.RemoveGraphic(g) break end end for each g in theGraphics if (g.GetObjectTag.AsString="tutup") then theGraphics.RemoveGraphic(g) break end end ' place label buttons on view theView.GetWin.Invalidate vRect = theView.GetDisplay.ReturnVisExtent theDisplay = theView.GetDisplay aWidth = theDisplay.ReturnExtent.GetWidth aHeight = theDisplay.ReturnExtent.GetHeight theOrigin = theDisplay.ReturnVisExtent.ReturnOrigin ' factor for spacing buttons xfac = aWidth/26500 yfac = aHeight/355 ' ensure button widths are properly sized
butWidth = aWidth * 0.20 butHeight = aWidth * 0.03 ' make label button and set script & label 'theChart = av.GetActiveDoc lblSoil = LabelButton.Make lblSoil.SetClick("1-Grafik") lblSoil.SetLabel("Grafik") lblSoil.SetObjectTag("Grafik") xFac1 = xFac*1050 ' bwat geser ke samping kiri tombol buka tabel dan layout xFac2 = xFac*6750 ' bwat geser ke samping kiri tombol grafik dan tutup cari = yFac*40 ' Size control to 20% by 7% of display width newPoint = Point.Make(theOrigin.GetX+xFac1,theOrigin.GetY+cari) aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblSoil, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("Cari") theGraphics.AddName(aGraphicControl) 'this also sets name of control aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) ' make label button and set script & label lblHydro = LabelButton.Make lblHydro.SetClick("edit legenda") lblHydro.SetLabel("Sebaran") lblHydro.SetObjectTag("Sebaran") ' Size control to 20% by 7% of display width grafik = yFac*15 '1800 newPoint = Point.Make(theOrigin.GetX+xFac2,theOrigin.GetY+cari) aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblHydro, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("Grafik") theGraphics.AddName(aGraphicControl) 'this also sets name of control
aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) ' make label button and set script & label lblZoning = LabelButton.Make lblZoning.SetClick("1-buat layout") lblZoning.SetLabel("Layout") lblHydro.SetObjectTag("Cetak") ' Size control to 20% by 7% of display width cetak = yfac*15 '3800 newPoint = Point.Make(theOrigin.GetX+xFac1,theOrigin.GetY+cetak) aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblZoning, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("Cetak") theGraphics.AddName(aGraphicControl) 'this also sets name of control aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) av.GetProject.SetModified(true) ' make label button and set script & label lblZoning = LabelButton.Make lblZoning.SetClick("1-Tutup") lblZoning.SetLabel("Tutup") lblHydro.SetObjectTag("tutup") ' Size control to 20% by 7% of display width tutup = yFac*5 '3800 newPoint = Point.Make(theOrigin.GetX+xFac2,theOrigin.GetY+cetak ) aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblZoning, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("tutup") theGraphics.AddName(aGraphicControl) 'this also sets name of control aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) av.GetProject.SetModified(true)
=================================== 2. Peta Penyebaran Kejadian Kebakaran Per kecamatan "1-viewKebakaran_kecamatan" =================================== theView = av.GetActiveDoc 'theView.GetWin.Close objProject=Av.GetProject objNamaView="PETA PENYEBARAN KEBAKARAN KECAMATAN" objView=objProject.FindDoc(objNamaView) objWindow=objView.GetWin objWindow.Open theThemes = theView.GetActiveThemes r = Rect.MakeEmpty for each t in theThemes r = r.UnionWith(t.ReturnExtent) end if (r.IsEmpty) then return nil elseif ( r.ReturnSize = (0@0) ) then theView.GetDisplay.PanTo(r.ReturnOrigin) else theView.GetDisplay.SetExtent(r.Scale(1.1)) end myProject = av.GetProject theView = av.GetActiveDoc theGraphics = theView.GetGraphics if (theGraphics.Count = 0) then exit end for each g in theGraphics if (g.GetObjectTag.AsString="Cari") then theGraphics.RemoveGraphic(g) break end end for each g in theGraphics if (g.GetObjectTag.AsString="Grafik") then theGraphics.RemoveGraphic(g) break end end for each g in theGraphics if (g.GetObjectTag.AsString="cetak") then theGraphics.RemoveGraphic(g) break end end for each g in theGraphics if (g.GetObjectTag.AsString="tutup") then theGraphics.RemoveGraphic(g) break
end end ' place label buttons on view theView.GetWin.Invalidate vRect = theView.GetDisplay.ReturnVisExtent theDisplay = theView.GetDisplay aWidth = theDisplay.ReturnExtent.GetWidth aHeight = theDisplay.ReturnExtent.GetHeight theOrigin = theDisplay.ReturnVisExtent.ReturnOrigin ' factor for spacing buttons xfac = aWidth/26500 yfac = aHeight/355 ' ensure button widths are properly sized butWidth = aWidth * 0.20 butHeight = aWidth * 0.03 ' make label button and set script & label 'theChart = av.GetActiveDoc lblSoil = LabelButton.Make lblSoil.SetClick("1-Grafik") lblSoil.SetLabel("Grafik") lblSoil.SetObjectTag("Grafik") xFac1 = xFac*1050 ' bwat geser ke samping kiri tombol buka tabel dan layout xFac2 = xFac*6750 ' bwat geser ke samping kiri tombol grafik dan tutup cari = yFac*40 ' Size control to 20% by 7% of display width newPoint = Point.Make(theOrigin.GetX+xFac1,theOrigin.GetY+cari) aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblSoil, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("Cari") theGraphics.AddName(aGraphicControl) 'this also sets name of control aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) ' make label button and set script & label lblHydro = LabelButton.Make lblHydro.SetClick("edit legenda") lblHydro.SetLabel("Sebaran")
lblHydro.SetObjectTag("Sebaran") ' Size control to 20% by 7% of display width grafik = yFac*15 '1800 newPoint = Point.Make(theOrigin.GetX+xFac2,theOrigin.GetY+cari) aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblHydro, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("Grafik") theGraphics.AddName(aGraphicControl) 'this also sets name of control aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) ' make label button and set script & label lblZoning = LabelButton.Make lblZoning.SetClick("1-buat layout") lblZoning.SetLabel("Layout") lblHydro.SetObjectTag("Cetak") ' Size control to 20% by 7% of display width cetak = yfac*15 '3800 newPoint = Point.Make(theOrigin.GetX+xFac1,theOrigin.GetY+cetak) aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblZoning, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("Cetak") theGraphics.AddName(aGraphicControl) 'this also sets name of control aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) av.GetProject.SetModified(true) ' make label button and set script & label lblZoning = LabelButton.Make lblZoning.SetClick("1-Tutup") lblZoning.SetLabel("Tutup") lblHydro.SetObjectTag("tutup") ' Size control to 20% by 7% of display width tutup = yFac*5 '3800
newPoint = Point.Make(theOrigin.GetX+xFac2,theOrigin.GetY+cetak ) aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblZoning, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("tutup") theGraphics.AddName(aGraphicControl) 'this also sets name of control aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) av.GetProject.SetModified(true) =================================== 3. Peta Penyebaran Kejadian Kebakaran Per Bulannya "1-viewKebakaran_perbulan" =================================== theView = av.GetActiveDoc 'theView.GetWin.Close objProject=Av.GetProject objNamaView="PETA PENYEBARAN KEBAKARAN PERBULAN" objView=objProject.FindDoc(objNamaView) objWindow=objView.GetWin objWindow.Open theThemes = theView.GetActiveThemes r = Rect.MakeEmpty for each t in theThemes r = r.UnionWith(t.ReturnExtent) end if (r.IsEmpty) then return nil elseif ( r.ReturnSize = (0@0) ) then theView.GetDisplay.PanTo(r.ReturnOrigin) else theView.GetDisplay.SetExtent(r.Scale(1.1)) end myProject = av.GetProject theView = av.GetActiveDoc theGraphics = theView.GetGraphics if (theGraphics.Count = 0) then exit end for each g in theGraphics if (g.GetObjectTag.AsString="Cari") then theGraphics.RemoveGraphic(g) break end end
for each g in theGraphics if (g.GetObjectTag.AsString="Grafik") then theGraphics.RemoveGraphic(g) break end end for each g in theGraphics if (g.GetObjectTag.AsString="cetak") then theGraphics.RemoveGraphic(g) break end end for each g in theGraphics if (g.GetObjectTag.AsString="tutup") then theGraphics.RemoveGraphic(g) break end end ' place label buttons on view theView.GetWin.Invalidate vRect = theView.GetDisplay.ReturnVisExtent theDisplay = theView.GetDisplay aWidth = theDisplay.ReturnExtent.GetWidth aHeight = theDisplay.ReturnExtent.GetHeight theOrigin = theDisplay.ReturnVisExtent.ReturnOrigin ' factor for spacing buttons xfac = aWidth/26500 yfac = aHeight/355 ' ensure button widths are properly sized butWidth = aWidth * 0.20 butHeight = aWidth * 0.03 ' make label button and set script & label 'theChart = av.GetActiveDoc lblSoil = LabelButton.Make lblSoil.SetClick("1-Grafik") lblSoil.SetLabel("Grafik") lblSoil.SetObjectTag("Grafik") xFac1 = xFac*1050 ' bwat geser ke samping kiri tombol buka tabel dan layout xFac2 = xFac*6750 ' bwat geser ke samping kiri tombol grafik dan tutup cari = yFac*40 ' Size control to 20% by 7% of display width
newPoint = Point.Make(theOrigin.GetX+xFac1,theOrigin.GetY+cari) aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblSoil, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("Cari") theGraphics.AddName(aGraphicControl) 'this also sets name of control aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) ' make label button and set script & label lblHydro = LabelButton.Make lblHydro.SetClick("edit legenda") lblHydro.SetLabel("Sebaran") lblHydro.SetObjectTag("Sebaran") ' Size control to 20% by 7% of display width grafik = yFac*15 '1800 newPoint = Point.Make(theOrigin.GetX+xFac2,theOrigin.GetY+cari) aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblHydro, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("Grafik") theGraphics.AddName(aGraphicControl) 'this also sets name of control aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) ' make label button and set script & label lblZoning = LabelButton.Make lblZoning.SetClick("1-buat layout") lblZoning.SetLabel("Layout") lblHydro.SetObjectTag("Cetak") ' Size control to 20% by 7% of display width cetak = yfac*15 '3800 newPoint = Point.Make(theOrigin.GetX+xFac1,theOrigin.GetY+cetak) aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize)
aGraphicControl = GraphicControl.Make(lblZoning, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("Cetak") theGraphics.AddName(aGraphicControl) 'this also sets name of control aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) av.GetProject.SetModified(true) ' make label button and set script & label lblZoning = LabelButton.Make lblZoning.SetClick("1-Tutup") lblZoning.SetLabel("Tutup") lblHydro.SetObjectTag("tutup") ' Size control to 20% by 7% of display width tutup = yFac*5 '3800 newPoint = Point.Make(theOrigin.GetX+xFac2,theOrigin.GetY+cetak ) aSize = (butWidth*0.9)@(butHeight*2.5) aRect= Rect.Make(newPoint, aSize) aGraphicControl = GraphicControl.Make(lblZoning, aRect) theGraphics.UnselectAll aGraphicControl.SetSelected(false) aGraphicControl.SetEditable(false) aGraphicControl.SetObjectTag("tutup") theGraphics.AddName(aGraphicControl) 'this also sets name of control aGraphicControl.SetConstraint(#GRAPHICCONTROL_CONSTRAINT_NONE) av.GetProject.SetModified(true) ======================= N. Grafik "1-Grafik" ======================= theView = av.GetActiveDoc for each t in theView.GetActiveThemes if (t.HasTable) then t.EditTable end theTable = av.GetActiveDoc theChart = Chart.MakeUsingDialog(theTable.GetVTab, "Chart") if (theChart <> NIL) then theChart.GetWin.Open end end
======================= O. Cetak "1-buat layout" ======================= t = TemplateMgr.Show if (t <> nil) then theView = av.GetActiveDoc docs = av.GetProject.GetDocs docs.Shuffle(theView, 0) objs = List.Make objs.Add(theView.GetName) objs.Merge(docs) layouts = List.Make for each d in docs if (d.Is(Layout) and d.Is(DialogEditor).Not) then layouts.Add(d) end end if (layouts.Count = 0) then l = Layout.Make else new = Layout.Make name = new.GetName new.SetName("<New Layout>") layouts.Insert(new) l = MsgBox.List(layouts, "Select a Layout", "View - Layout") if (l = new) then l.SetName(name) else av.GetProject.RemoveDoc(new) end end if (l <> nil) then l.UseTemplate(t) l.GetGraphics.FillFrames(objs) l.GetWin.Open end end ======================= P. Sebaran "Edit Legenda " ======================= Sebaran Edit legenda theView = av.getActiveDoc for each t in theView.getActiveThemes s = t.getLegendEditorScript if (s.isnull.not) then av.run(s,t) end end
======================= Q. "Buffer" ======================= buffer theThemes = av.GetActiveDoc.GetThemes for each aTheme in theThemes aTheme.SetActive(False) end theThemes = av.GetActiveDoc aTheme=theThemes.FindTheme("Jaringan_jalan.shp") aTheme.SetActive(True) TBW = av.FindDialog("WizardBuffer") Pthemelist = {} for each athm in av.GetActiveDoc.GetThemes if (athm.is(FTHEME)) then Pthemelist.Add(athm) end end if (Pthemelist.Count = 0) then Msgbox.Info("Your view contains no feature themes. The buffer wizard will only work for feature themes, i.e., ShapeFiles.","") else TBW.Open end theThemes = av.GetActiveDoc.GetThemes for each aTheme in theThemes aTheme.SetActive(True) end ======================= R. "Tutup View" ======================= theView=Av.GetActiveDoc theView.GetWin.Close