11
BAB II TINJAUAN PUSTAKA
2.1
Profil Instansi Setiap instansi memiliki profil yang menggambarkan kesuluruhan atau
garis besar mengenai instansi tersebut. Gambarn berupa kapasitas kerja instansi tersebut, satuan kerjanya, beban tugasnya, dan sebagainya. Demikian halnya dengan Dinas Koperasi & UMKM Provinsi Jatim yang sebagai tempat diadakannya penelitian skripsi ini merupakan suatu instansi pemerintah yang bergerak dalam bidang perekonomian. DINKOP & UMKM sendiri mengelola kegiatan masyarakat yang berkaitan dengan koperasi juga mengelola kegiatan mapenelitirakat yang bergerak di bidang UMKM (usaha masyarakat kecil & menengah). Sehubungan dengan Peraturan daerah Provinsi Jawa Timur Nomor 17 tahun 2000 tentang Dinas Koperasi,Pengusaha Kecil dan Menengah Propinsi Jawa Timur, maka Gubernur Jawa Timur menimbang : a.
Bahwa dalam rangka mewujudkan penyelenggaraan kegiatan koperasi serta pembinaan pengusaha kecil dan menengah di lingkungan Pemerintah propinsi Jawa Timur sesuai dengan kewenangan dan ketentuan dalam Undang-undang Nomor 22 Tahun 1999 tentang Pemerintah Daerah, sehinggga menjadi lembaga dan usaha unggulan yang berkembang secara sehat,
11
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
12
efisien, tangguh dan mandiri, maka perlu dibentuk suatu lembaga Dinas Koperasi, Pengusaha kecil dan Menengah yang menangani bidang Koperasi serta pembinaan pengusaha kecil dan menengah. b.
Bahwa berdasarkan pertimbangan sebagaimana dimaksud dalam huruf a, perlu menata Kantor Wilayah Departemen Koperasi, Pengusaha Kecil dan Menengah Propinsi Jawa Timur menjadi Dinas Daerah dan menuangkan ketentuan-ketentuannya dalam Peraturan Daerah.
Koperasi didefiniskan sebagai badan usaha yang beranggotakan orangseorang
atau badan hukum koperasi dengan melandaskan kegiatannya
berdasarkan prinsip-prinsip koperasi sekaligus sebagai gerakan ekonomi rakyat yang berdasarkan asas kekeluargaan. Menurut Undang-undang No.25 tahun 1992 dijelaskan bahwa fungsi dan peran koperasi sebagai berikut: a.
Membangun dan mengembangkan potensi dan kemampuan ekonomi anggota pada khususnya dan masyarakat pada umumnya untuk meningkatkan kesejahteraan ekonomi dan sosialnya.
b.
Berperan serta secara aktif dalam upaya mempertinggi kualitas kehidupan manusia dan masyarakat.
c.
Memperkokoh perekonomian rakyat sebagai dasar kekuatan dan ketahanan perekonomian nasional dengan koperasi sebagai soko gurunya.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
13
d.
Berusaha untuk mewujudkan dan mengembangkan perekonomian nasional yang merupakan usaha bersama berdasarkan atas asas kekeluargaan dan demokrasi ekonomi.
e.
Mengembangkan kreativitas dan membangun jiwa berorganisasi bagi para pelajar bangsa.
Atas
dasar
itu,
telah disusun Program
Pembangunan
Nasional
(PROPENAS) Bidang Koperasi dan Pengusaha Kecil Menengah, dengan tujuan: a.
Meningkatnya partisipasi masyarakat dan dunia usaha untuk menumbuhkembangkan Usaha Koperasi dan Pengusaha Kecil Menengah.
b.
Meningkatnya produktivitas, daya saing dan pangsa pasar koperasi dan Pengusaha Kecil Menengah.
c.
Meningkatnya citra koperasi dan Pengusaha Kecil Menengah sebagai pelaku ekonomi yang tangguh, professional, mandiri .
2.2
Struktur Organisasi Instansi Setiap instansi atau lembaga pemerintahan laiinnya selalu memiliki
struktur organisasi yang merupakan tata
kelola instansi tersebut dalam
memanajemen karyawan atau pegawainya dengan menggunakan tata pola tersebut sebagai acuannya. Pada gambar 2.1 merupakan pola struktur organisasi dari pada Dinas Koperasi & UMKM Provinsi Jatim. Dengan kepala dinas yang membawahi 2 kelompok fungsional.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
14
KEPALA DINAS
SEKRETARIAT
KELOMPOK JABATAN FUNGSIONAL
SUB BAG. TATA USAHA
BIDANG KELEMBAGAAN KOPERASI
BIDANG USAHA MIKRO,KECIL DAN MENENGAH (UMKM)
BIDANG USAHA KOPERASI
SUB BAG. PENYUSUNAN PROGRAM
SUB BAG. KEUANGAN
BIDANG FASILITASI,PEMBIAYAAN DAN USAHA SIMPAN PINJAM
SEKSI ORGANISASI DAN TATA LAKSANA
SEKSI USAHA PERTANIAN,PERKEBUNAN DAN KEHUTANAN
SEKSI PENGEMBANGAN KERJA SAMA UMKM
SEKSI USAHA SIMPAN PINJAM
SEKSI PENYULUHAN,ADVO KASI DAN HUKUM
SEKSI USAHA PERIKANAN DAN PETERNAKAN
SEKSI PENGEMBANGAN INFORMASI BISNIS
SEKSI PENGENDALIAN SIMPAN PINJAM
SEKSI PENGAWASAN DAN AKUNTABILITAS
SEKSI USAHA PERDAGANGAN,INDUSTRI DAN PETAMBANGAN
SEKSI PENGEMBANGAN PEMASARAN
SEKSI PEMBIAYAAN JASA KEUANGAN
UPTD
Gambar 2.1 Struktur Organisasi Dinas Koperasi & UMKM
2.3
Sistem Informasi Sistem Informasi merupakan sistem, yang berisi jaringan SPD (sistem
pengolahan data), yang dilengkapi dengan kanal-kanal komunikasi yang digunakan dalam sistem organisasi data. Elemen proses dari sitem informasi antara lain mengumpulkan data (data gathering), mengelola data yang tersimpan, menyebarkan informasi. Agar sistem informasi berjalan dengan baik, diperlukan orang-orang yang bertugas untuk mengelola dan memelihara sumber daya dan layanan peralatan
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
15
sistem informasi, yang digunakan untuk mendukung proses-proses di dalam organisasi. Di dalam sistem informasi, manusia berinteraksi dengan manusia, manusia berinteraksi dengan komputer, dan komputer berinteraksi dengan komputer lain. Di dalam sistem informasi, data, informasi dan/atau pengetahuan mengalir dibawa oleh dokumen atau media komunikasi elektronik, seperti telepon atau jaringan komputer. Keberadaan sistem infornasi juga diperlukan dalam suatu organisasi untuk mendampingi proses-proses bisnis dari organisasi.
2.3.1 Data Data adalah representasi dari suatu fakta, yang dimodelkan dalam bentuk gambar, kata, atau angka. Manfaat data adalah sebagai satuan representasi yang dapat diingat, direkam, dan dapat diolah menjadi informasi. Karakteristiknya, data bukanlah fakta, namun representasi dari fakta. Kata sederhananya, data adalah catatan tentang fakta, atau data merupakan rekaman catatan tentang fakta. Data yang baik adalah data yang sesuai dengan faktanya. 2.3.2 Informasi Informasi adalah rangkaian data yang mempunyai sifat sementara, tergantung dengan waktu, mampu memberi kejutan datau surprise pada yang menerimanya. Intensitas dan lamanya kejutan dari sistem informasi, disebut nilai informasi. ”Informasi” yang tidak mempunyai nilai, biasanya
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
16
karena rangkaian data yang tidak lengkap. Manfaat informasi adalah untuk mengurangi ketidakpastian. Hal ini sangat berguna untuk proses pengambilan keputusan (Witarto, 2004).
2.4
Karakteristik Sistem Suatu sistem mempunyai karakteristik atau sifat-sifat yang tertentu, yaitu
mempunyai komponen-komponen (components), batas sistem (boundary), lingkungan luar sistem (enviroments), penghubung (interface), masukan (input), keluaran (output), pengolah (process), dan sasaran (objecives) atau tujuan (goal). Pada sistem berbasis komputer, biasanya sulit untuk mendefinisikan batasbatasnya. Batas-batasnya ditentukan oleh perancang yang menyatakan mana ssaja elemen-elemen yang termasuk di dalam sistem dan mana saja elemen-elemen yang termasuk sebagai lingkungan. Aturan yang diterapkan adalah segala sesuatu sebagai di dalam batas bila sistem dapat/mampu mengendalikannya. Serta segala sesuatu sebagai elemen-elemen di luar batas bila sistem tidak dapat/mampu mengendalikannya. 2.4.1 Batas Sistem Batas sistem merupakan daerah yang membatasai antara sistem dengan sistem yang lainnya atau dengan lingkungan luarnya. Batas sistem ini memungkinkan suatu sistem dipandang sebagai satu kesatuan. batas suatu sistem menunjukkan ruang lingkup (scope) dari sistem tersebut.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
17
2.4.2 Lingkungan Luar Sistem Lingkungan luar dari suatu sistem adalah apapun di luar batas dari sistem yang mempengaruhi operasi sistem. Lingkungan luar sistem dapat bersifat menguntungkan dan dapat juga bersifat merugikan sistem tersebut. Lingkungan luar yang menguntungkan merupakan energi dari sistem dan dengan demikian harus tetap dijaga dan dipelihara. Sedang lingkungan luar yang merugikan harus ditahan dan dikendalikan, kalau tidak maka akan mengganggu kelangsungan hidup dari sistem. 2.4.3 Penghubung Sistem Penghubung merupakan media penghubung antara satu subsistem dengan yang lainnya. Mealui penghubung ini memungkinkan sumbersumber daya mengalir dari satu susbsistem ke subsistem yang lainnya. Keluaran (output)
dari satu subsistem akan menjadi masukan (input)
untuk subsitem yang laiinya dengan melalui penghubng. Dengan penghubung satu subsitem dapat berintegrasi dengan lainnya membentuk satu kesatuan. 2.4.4 Masukan Sistem Masukan sistem adalah energi yang dimasukkan ke dalam sistem. Masukan dapat berupa masukan perawatan (maintenance input) dan masukan sinyal (signal input). Maintenance input adalah energi yang dimasukkan supaya sistem tersebut dapat beroperasi. Signal input adalah energi yang diproses untuk didapatkan keluaran. Sebagai contoh di dalam
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
18
sistem komputer, program adalah maintenance input yang digunakan untuk mnegoperasikan komputernya dan data adalah signal input untuk diolah menjadi informasi. 2.4.5
Keluaran Sistem Keluaran adalah hasil dari energi yang diolah dan diklasifikasikan
menjadi keluaran yang berguna dan sisa pembuangan. Keluaran dapat merupakan masukan untuk subsistem yang lain atau kepada supra sistem. Misalnya untuk sistem komputer, panas yang dihasilkan adalah keluaran yang tidak berguna merupakan hasil sisa pembuangan, sedang informasi adalah keluaran yang dibutuhkan. 2.4.6 Pengolah Sistem Suatu sistem dapat mempunyai suatu bagian pengolah atau sistem itu sendiri sebagai pengolahnya. Pengolah yang akan mengubah masukan menjadi keluaran. Suatu sistem produksi akan mengolah masukan berupa bahan baku dan bahan-bahan yang lain menjadi keluaran barang jadi. 2.4.7 Sasaran Sistem Suatu sistem pasti mempunyai tujuan (goal) atau sasaran (objective). Kalau suatu sistem tidak mempunyai sasaran, maka operasi sistem idak akan ada gunanya. Sasaran dari sistem sangat menentukan sekali masukan yang dibutuhkan sistem dan keluaran yang akan dihasilkan. Suatu sistem dikatakan berhasil bila mengenai sasaran.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
19
2.5
Komponen Sistem Informasi Sistem informasi terdiri dari komponen-komponen yang disebutnya
dengan istilah blok bangunan (building block), yaitu blok masukan (input block), blok model (model block)¸ blok keluaran (output block), blok teknologi (technology block)¸blok basis data (database block), dan blok kendali (controls block). Sebagai suatu sistem, keenam blok tersebut masing-masing saling berinteraksi satu dengan yang lainnya membentuk satu kesatuan untuk mencapai sasarannya. a.
Blok Masukan Input mewakili data yang masuk ke dalam sistem informasi. Input di sini termasuk metode-metode dan media untuk menangkap data yang akan dimasukkan, yang dapat berupa dokumen-dokumen dasar.
b.
Blok Model Blok ini terdiri dari kombinasi prosedur, logika dan model matematik yang akan memanipulasi data input dan data yang tersimpan di basis data dengan cara yang sudah tertentu untuk menghasilkan keluaran yang diinginkan.
c.
Blok Keluaran Produk dari sistem informasi adalah keluaran yang merupakan informasi berkualitas dan dokumentasi yang berguna untuk semua tingkatan manajemen serta semua pemakai sistem. Keluaran merupakan hasil akhir dari suatu sistem yang diperlukan oleh pengguna sistem itu sendiri.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
20
d.
Blok Teknologi Teknologi merupakan ”kotak alat” (tool box) dalam sistem informasi. Teknologi yang digunakan dan mengakses data, menghasilkan
dan
mengirimkan
keluaran
dan
membantu
pengendalian dari sistem secara keseluruhan. e.
Blok Basis Data Blok ini merupakan kumpulan dari data yang saling berhubungan satu dengan yang lainnya, tersimpan di perangkat keras komputer dan digunakan perangkat lunak untuk memanipulasinya.
f.
Blok Kendali Beberapa pengendalian perlu dirancang dan diterapkan untuk meyakinkan bahwa hal-hal yang dapat merusak sistem dapat dicegah ataupun bila terlanjur terjadi kesalahan-kesalahan dapat langsung cepat diatasi (John Burch, Gary Grudnitski, 1986).
Gambar 2.2 Komponen Sistem Informasi 2.6
Sistem Informasi Manajemen Sistem informasi manajemen (management information systems) atau
lebih sering dikenal dengan singkatannya MIS merupakan penerapan sistem
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
21
informasi di dalam organisasi untuk mendukung informasi-informasi yang dibutuhkan oleh semua tingkatan manajemen. SIM didefinisikan sebagai kumpulan dari interaksi-interaksi sistem-sistem informasi yang menyediakan informasi baik untuk kebutuhan manajerial maupun kebutuhan operasi. SIM merupakan suatu sistem yang melakukan fungsi-fungsi untuk menyediakan semua informasi yang mempengaruhi semua operasi organisasi. SIM merupakan kumpulan dari sistem-sistem operasi. SIM tergantung dari besar kecilnya organisasi (George M. Scott, 1986).
2.7
Pemodelan Data Pada perancangan konseptual diperlukan suatu pendekatan yang
digunakan untuk menggambarkan hubungan antara satu data dengan data yang lain. Hubungan tersebut dinyatakan dalam bentuk model E-R. Dengan konsep Pemodelan data adalah kumpulan perangkat konseptual untuk mengembangkan data, hubungan data, semantik (makna) data, dan batasan data. Semuanya memiliki keterkaitan dalam database sistem. 2.7.1 Model E-R Model
E-R
adalah
suatu
model
yang
digunakan
untuk
menggambarkan data dalam bentuk entitas, atribut dan hubungan antar entitas. Huruf E sendiri menyatakan entitas dan R menyatakan hubungan (dari kata relationship). Model ini dinyatakan dalam bentuk diagram E-R.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
22
Perlu diketahui bahwa model seperti ini tidak mencerminkan bentuk fisik yang bersifat konseptual. Itulah sebabnya model E-R tidak bergantung pada produk DBMS yang akan digunakan. Tabel 2.2 Contoh Entitas dan Attribut
Entitas
Attribut
Pegawai Departemen Proyek Tanggungan
NoKTP, Nama, Alamat, JenisKel, Gaji Nomor, Nama, Lokasi, JmlPegawai Nomor, Nama, Lokasi Nama, JenisKel, TglLahir, Hubungan
Setiap entitas pasti memiliki attribut yang mendeskripsikan karakteristik (property) dari entitas tersebut. Penetapan attribut dari sebuah entitas berdasarkan fakta yang ada atau berdasarkan kebutuhan. Attribut identik dengan kolom data atau field dalam sebuah tabel. Karenanya setiap entitas selalu memiliki atributnya masing-masing dengan primary key berbeda. Relasi menyatakan hubungan antar entitas, termasuk terhadap entitas itu sendiri (rekursif). Misalnya entitas seorang pegawai dengan NoKTP: ”001” dengan nama ”Ali”, memiliki relasi dengan sebuah data di entitas departemen dengan nomor=11 nama=”personalia”, mengandung arti bahwa pegawai tersebut bekerja di departemen yang peneliti tinjau. Derajat kardinalitas relasi (Cardinality Ratio) ialah kardinalitas relasi yang menunjukan jumlah maksimum data entitas yang dapat berelasi dengan entitas lain.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
23
a.
One to one relationship (satu ke satu) Satu record dipetakan dengan satu record di entitas lain. Contohnya satu nasabah punya satu account.
Gambar 2.3 One to One Relationship Setiap data pada entitas A berhubungan dengan maksimal satu data pada entitas B, begitu pula sebaliknya. b.
One to many relationship Satu record dapat dipetakan menjadi beberapa record di entitas lain. Contoh: satu nasabah dapat punya lebih dari satu account.
Gambar 2.4 One to Many Relationship c.
Many to many relationship Beberapa record dapat dipetakan menjadi beberapa record di entitas lain. Contoh: satu nasabah dapat memiliki lebih dari satu account. Satu account dapat dimiliki lebih dari satu nasabah (join account).
Gambar 2.5 Many to Many Relationship
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
24
2.7.2 Data Flow Diagram (DFD) Data Flow Diagram (DFD) adalah alat pembuatan model yang memungkinkan profesional sistem untuk menggambarkan sistem sebagai suatu jaringan proses fungsional yang dihubungkan satu sama lain dengan alur data, baik secara manual maupun komputerisasi. DFD ini sering disebut juga dengan nama Bubble chart, Bubble diagram, model proses, diagram alur kerja, atau model fungsi. DFD ini 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. Syarat-syarat pembuatan DFD ini adalah : a.
Pemberian nama untuk tiap komponen DFD.
b.
Pemberian nomor pada komponen proses.
c.
Penggambaran DFD sesering mungkin agar enak dilihat.
d.
Penghindaran penggambaran DFD yang rumit.
e.
Pemastian DFD yang dibentuk itu konsiten secara logika.
2.7.3 Context Diagram Syarat-syarat pembuatan DFD ini adalah : a.
Pemberian nama untuk tiap komponen DFD.
b.
Pemberian nomor pada komponen proses.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
25
c.
Penggambaran DFD sesering mungkin agar enak dilihat.
d.
Penghindaran penggambaran DFD yang rumit.
e.
Pemastian DFD yang dibentuk itu konsiten secara logika.
Gambar 2.6 Penggambaran Context Diagram Gambar 2.6 menjelasakan hubungan antara masing-masing elemen dalam context diagaram.
2.8
Power Designer Power designer adalah alat pemodelan perusahaan kolaboratif yang
diproduksi oleh Sybase. Power designer berjalan di bawah Microsoft Windows sebagai aplikasi asli, dan berjalan di bawah Eclipse melalui plugin. Power designer mendukung model-driven desain arsitektur perangkat lunak. Power designer menggunakan format file pdm.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
26
Gambar 2.7 dan gambar 2.8 merupakan contoh tampilan halaman pembuka pada Power designer 12.5 yang merupakan software untuk pembuatan CDM & PDM sistem informasi manajemen surat ini. Sedangkan pada gambar 2.8 merupakan contoh tampilan pada halaman pembuatan new project yang merupakan langkah awal memulai pembuatan diagram suatu sistem informasi.
Gambar 2.7 Halaman Pembuka Power Designer 12.5
Gambar 2.8 Halaman Pembuatan New Project 2.9
Diagram Use Case (Use Case Diagram) Diagram use case merupakan salah satu diagram untuk memodelkan aspek
perilaku sistem. Masing-masing diagram use case menunjukkan sekumpulan use
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
27
case , aktor dan hubungannya. Diagram use case adalah penting untuk memvisualisasikan, menspesifikasikan, dan mendokumentasikan kebutuhan perilaku sistem. Diagram-diagram use case merupakan pusat pemodelan perilaku sistem, subsistem, dan kelas. Use case adalah interaksi antara aktor eksternal dari sistem, hasil yang dapat diamati oleh aktor, berorientasi pada tujuan, dideskripsikan di diagram use case dan teks. Diagram use case melibatkan : a. Sistem, yaitu sesuatu yang hendak peneliti bangun b. Aktor, entitas-entitas luar yang berkomunikasi dengan sistem c. Use case adalah fungsionalitas yang dipersepsi oleh aktor d. Relasi adalah relasi antara aktor dengan use case
Perwalian Dosen Wali
Gambar 2. 9 Aktor dan Use case Use case adalah cara spesifik penggunaan sistem oleh aktor. Ciri-ciri dari use case adalah : a. Pola perilaku yang harus dipenuhi oleh sistem b. Sekuen transaksi terhubung yang dilakukan aktor dan sistem c. Memberikan sesuatu yang berharga bagi aktor Use case melibatkan interaksi antara aktor-aktor dari sistem. Use case mengemukakan suatu kerja yang tampak. Dari perspektif aktor, use case melakukan sesuatu yang berharga bagi aktor seperti menghitung sesuatu,
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
28
menghasilkan objek baru, atau mengubah state objek lain. Kegunaan diagram use case adalah untuk memodelkan konteks sistem dan memodelkan kebutuhan sistem. Use case dapat diterapkan untuk seluruh sistem, bagian sistem termasuk subsistem atau bahkan satu kelas tunggal dan antarmuka. (Bambang Hariyanto,Ir., MT., 2004)
2.10
Diagram Aktivitas (Activity Diagram) Diagram aktivitas adalah diagram flowchart yang diperluas yang
menunjukkan aliran kendali satu aktivitas ke aktivitas lain. Diagram ini digunakan untuk memodelkan aspek dinamis sistem. Aktivitas adalah eksekusi nonatomik yang berlangsung di state machine. Diagram aktivitas mendeskripsikan aksi-aksi dan hasilnya. Diagram aktivitas berupa operasi-operasi dan aktivitas-aktivitas di use case. Diagram aktivitas dapat digunakan untuk : a. Pandangan dalam yang dilakukan di operasi b. Pandangan dalam bagaimana objek-objek bekerja c. Pandangan dalam di aksi-aksi dan pengaruhnya pada objek-objek d. Pandangan dalam dari suatu use case e. Logik dari proses bisnis Diagram aktivitas berfokus pada aktivitas-aktivitas, potongan-potongan dari proses yang boleh jadi (mungkin) berkorespondensi dengan metode-metode atau fungsi-fungsi anggota dan pengurutan dari aktivitas-aktivitas ini. Diagram aktivitas berbeda dengan flowchart terutama Karena diagram aktivitas secara eksplisit mendukung aktivitas-aktivitas pararel dan sinkronisasi aktivitas-aktivitas
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
29
itu. Kelemahan utama diagaram aktivitas adalah diagram tidak secara eskplisit menyatakan objek-objek yang mengeksekusi aktivitas-aktivitas itu dan cara pertukaran pesan-pesan di antara objek-objek itu. Elemen-elemen diagram aktivitas adalah Activity state dan action state, Transisi, dan Objek. Langkahlangkah pembuatan diagaram aktivitas adalah : a. Identifikasi lingkup dari diagram aktivitas b. Tambahkan titik awal dan akhir c. Tambahkan aktivitas d. Tambahkan transisi-transisi dari aktivitas-aktivitas e. Tambahkan titik-titik keputusan f. Identifikasi peluang aktivitas-aktivitas pararel Seringnya, diagram aktivitas digunakan di awal-awal pemodelan untuk memperoleh gambaran menyeluruh mengenai proses di sistem. Setelah itu, peneliti
menggunakan
diagram-diagram
interaksi
untuk
membantu
mengalokasikan aktivitas-aktivitas itu ke kelas-kelas sistem. Pembuatan diagram aktivitas untuk pemodelan workflow adalah sebagai berikut. a. Tetapkan focus dari workflow. Untuk sistem yang tidak sepele atau sistem yang terlalu krusial, tidak mungkin menunjukkan semua workflow yang penting dalam satu diagram. b. Pilih objek bisnis yang mempunyai tanggung jawab level tinggi untuk bagian dari workflow. ini dapat berupa sesuatu yang nyata di sistem, atau lebih abstrak. Dalam kasus tertentu dapat digunakan swimlane untuk masing-masing objek bisnis penting
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
30
c. Identifikasikan precondition dari state awal workflow
dan
postcondition dari state akhir workflow. Ini penting untuk memodelkan batas dari workflow d. Mulai dari state awal workflow, spesifikasikan aktivitas dan aksi yang ada dan tempatkan sebagai aktivitas di diagram e. Untuk aksi yang rumit, atau sekolompok aksi yang muncu berulang kali, jadikan menjadi satu state
aktivitas dan kemudian buat
diagram aktivitas tersendiri untuk menggambarkannya f. Buat transisi yang menghubungkan antar aktivitas Jika terdapat objek penting yang terlibat di workflow, maka gambarkan di diagram aktivitas. . (Bambang Hariyanto,Ir., MT., 2004) g.
Gambar 2.10 Contoh Diagram Aktivitas dalam Sebuah Sistem
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
31
2.11
CDM (Conceptual Data Model) CDM singkatan dari Conseptual Data Model. CDM dipakai untuk
menggambarkan secara detail struktur basis data dalam bentuk logik. Struktur ini independen terhadap semua software maupun struktur data storage tertentu yang digunakan dalam aplikasi ini. CDM (Conceptual Data Model) merupakan Model yang dibuat berdasarkan anggapan bahwa dunia nyata terdiri dari koleksi obyek-obyek dasar yang dinamakan entitas (entity) serta hubungan (relationship) antara entitasentitas itu. Biasanya direpresentasikan dalam bentuk Entity Relationship Diagram. Adapun manfaat Penggunaan CDM dalam perancangan database, yaitu memberikan gambaran yang lengkap dari struktur basis data yaitu arti, hubungan, juga batasan-batasan dan alat komunikasi antar pemakai basis data, designer, dan analis. CDM terdiri dari objek yang tidak diimplementasikan secara langsung kedalam basis data yang sesungguhnya. Model ini dibuat berdasarkan anggapan bahwa dunia nyata terdiri dari koleksi obyek-obyek dasar yang dinamakan entitas (entity) serta hubungan (relationship) antara entitas-entitas itu. CDM ini biasanya direpresentasikan dalam bentuk Entity Relationship Diagram.
2.12
PDM (Phsycal Data Model) PDM kependekan dari Physical Data Model. PDM Merupakan model
yang menggunakan sejumlah tabel untuk menggambarkan data serta hubungan
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
32
antara data-data tersebut. Setiap tabel mempunyai sejumlah kolom di mana setiap kolom memiliki nama yang unik.
2.13
Microsoft Visio 2007 Menggambar teknik menggunakan Microsoft Visio semudah mengetik di
Word 2007, semua fasilitasnya ada dan tentu saja tersedia ribuan template yang bisa digunakan kapan saja dan disesuikan dengan tema.
Gambar 2.11 Tampilan Pembuka Microsoft Visio 2007
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
33
2.14
Microsoft SQL Server 2008
Microsoft SQL Server adalah sebuah sistem manajemen basis data relasional (RDBMS) produk Microsoft. Bahasa query utamanya adalah TransactSQL yang merupakan implementasi dari SQL standar ANSI/ISO yang digunakan oleh Microsoft dan Sybase. Umumnya SQL Server digunakan di dunia bisnis yang memiliki basis data berskala kecil sampai dengan menengah, tetapi kemudian berkembang dengan digunakannya SQL Server pada basis data besar.
Microsoft SQL Server dan Sybase/ASE dapat berkomunikasi lewat jaringan dengan menggunakan protokol TDS (Tabular Data Stream). Selain dari itu, Microsoft SQL Server juga mendukung ODBC (Open Database Connectivity), dan mempunyai driver JDBC untuk bahasa pemrograman Java. Fitur yang lain dari SQL Server ini adalah kemampuannya untuk membuat basis data mirroring dan clustering. Pada versi sebelumnya, MS SQL Server 2000 terserang oleh cacing komputer SQL Slammer yang mengakibatkan kelambatan akses internet pada tanggal 25 Januari 2003. SQL Server 2008 merupakan pengembangan dari SQL Server 2000.
2.14.1 Enterprise Manager Enterprise Manager merupakan „jantung‟ SQL server yang bisa diedit dengan GUI. Namun selain setting user dan password-nya, admin bisa meng-override hampir semua setting di sini langsung dari aplikasi front-end user tersebut dengan membuat hardcode sesuai syntax-syntax
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
34
manual. Di sini admin bisa me-restore database, membuat backup database secara otomatis, bahkan memproteksi enterprise manager itu sendiri.
Caranya, buka tab security di sebelah kiri. Lalu ubah properties user „sa‟, masukkan password untuk „sa‟ dua kali. Kemudian user administrator/system, bikin „upn‟. Lantas di nama sql instance tersebut, klik kanan dan pilih „edit sql server registration properties’. Di tab security, centang opsi „always ask password‟. Klik OK, user akan didisconnect dan diminta password „sa‟ untuk connect kembali ke sql server. Hati-hati jangan lupa password ini, atau user terpaksa menghapus instance itu dan membuat instance baru.
2.14.2 SQL Query Analyzer
Syntax sql apapun yang user ketikkan, akan langsung dieksekusi ke database user. Dan sebaiknya untuk tidak lupa memilih nama database user di drop-down menu di bagian atas toolbar.
Dua syntax yang paling sering dipakai adalah INSERT untuk menambah record, dan ALTER untuk mengubah record (atau bahkan struktur tabel). Contohnya, jika tabel dilindungi trigger, ketikkan ALTER table [namatabel] disable trigger [namatrigger] untuk menonaktifkan sementara trigger itu. Ganti disable dengan enable jika akan mengaktifkannya kembali.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
35
Gambar 2.12 Contoh Tampilan SQL Query Analyzer Penjelasan pada gambar 2.12 yang merupakan contoh tampilan dalam SQL Query Analyzer. Dengan Windows XP sebagai sistem operasinya (Didik Dwi Prasetyo, 2005).
2.15
Microsoft Visual Basic 2010 Microsoft Visual Basic .NET adalah sebuah alat untuk mengembangkan
dan membangun aplikasi yang bergerak di atas sistem .NET Framework, dengan menggunakan bahasa BASIC. Dengan menggunakan alat ini, para programmer dapat membangun aplikasi Windows Forms, Aplikasi web berbasis ASP.NET, dan juga aplikasi command-line. Alat ini dapat diperoleh secara terpisah dari beberapa produk lainnya (seperti Microsoft Visual C++, Visual C#, atau Visual J#), atau juga dapat diperoleh secara terpadu dalam Microsoft Visual Studio .NET. bahasa pemrograman ini sendiri merupakan bahasa pemrograman pengembangan.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
36
Bahasa pemrograman Visual Basic, dikembangkan oleh Microsoft sejak tahun 1991, merupakan pengembangan dari pendahulunya yaitu bahasa pemrograman BASIC (Beginner’s All-purpose Symbolic Instruction Code) yang dikembangkan pada era 1950-an. Visual Basic merupakan salah satu Development Tool adalah alat bantu dalam membangun dan mengembangkan program aplikasi komputer dengan desain form secara visual dan adanya kemampuan untuk menggunakan komponen-komponen ActiveX yang dibuat yang disediakan oleh Microsoft Visual Basic ataupun pihak lain. Visual Basic yang pertama adalah Visal Basic 1.0 yang dikenalkan pada tahun 1991, pendekatan yang dilakukan untuk menghubungkan bahasa pemrograman dengan GUI berasal dari prototype yang dikembang oleh “Alan Cooper” yang disebut TRIPOD. Kemudian Microsoft mengontrak copper dan asosiasinya utk mengembangkan tripod agar dapat digunakan di Windows 3.0 di bawah nama kode Ruby. Bahasa Visual Basic .NET sendiri menganut paradigma bahasa pemrograman berorientasi objek yang dapat dilihat sebagai evolusi dari Microsoft Visual Basic versi sebelumnya yang diimplementasikan di atas .NET Framework. Peluncurannya mengundang kontroversi, mengingat banyak sekali perubahan yang dilakukan oleh Microsoft, dan versi baru ini tidak kompatibel dengan versi terdahulu. 2.15.1 Form Pembuka Visual Basic Setiap project yang akan dikerjakan selalu memerlukan bentuk form yang akan didesain sesuai kepentingan user atau client. Pada form
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
37
itulah desain dari sistem atau aplikasi yang akan dibuat dituangkan dalam form tersebut. Penggunaan form dalam Visual Basic didukung dengan tersedianya toolbox yang berisi komponen-komponen desain yang diperlukan dalam perancangan suatu aplikasi. Seperti gambar 2.13 merupakan contoh tampilan form pembuka pada Visual Basic.
Gambar 2.13 Tampilan Form Pembuka Visual Basic 2.15.2 Penambahan Komponen Gambar merupakan salah satu komponen yang memiliki peran penting dalam pengembangan pembuatan program. Dengan menambahkan gambar atau icon-icon tertentu pada sebuah aplikasi akan membuat user atau pengguna menjadi tidak cepat bosan dengan aplikasi yang monoton hanya tulisan dan angka, dan bisa menjalankan aplikasi dengan lebih cepat karena fungsi gambar tersebut juga bersinggungan dengan akses cepat.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
38
Jika menggunakan program aplikasi database, jika ada 10 buah form,
kemungkinan
8
buahnya
menggunakan
button.
Dengan
menambahkan gambar user akan lebih lebih mudah dibandingkan dengan aplikasi yang buton-nya hanya menampilkan kata SIMPAN, BERSIH, HAPUS, dan TUTUP. Seperti yang sudah disebutkan pada subbab sebelumnya, bahwa penamabahan komponen seperti toolbox merupakan kunci utama dalam mengawali merancang desain antarmuka aplikasi. Seperti Gambar 2.14.
Gambar 2.14 Contoh Penambahan Komponen Gambar 2.14 merupakan contoh tampilan penambahan komponen pada Visual Basic 2008, nantinya beberapa komponen tersebut akan digunakan untuk mendesaian sistem informasi. Sedangkan gambar 2.15 adalah gambar yang berupa contoh tampilan sebuah form dari new project. Dimana pada form ini yang
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
39
nantinya akan digunakan dalam pembuatan desain sistem beserta coding untuk sistem tersebut. untuk lebih jelasnya dapat dilihat pada gambar 2.15.
Gambar 2.15 Penjabaran Detail Jendela Visual Basic Pada toolbox berfungsi untuk menambahkan beberapa komponen yang akan disertakan dalam sebuah form. Sedangakan pada Properties Windows merupakan properti atau kriteria-kriteria yang akan ditentukan untuk keseluruhan dari pada form tersebut. sedangkan pada baris toolbar menu berisi sederetan icon yang memiliki fungsi langsung pada sistem tanpa harus menggunakan pilihan pada baris menu. Dan fungsi icon tersebut memudahkan user ketikan akan mengeksekusi suatu perintah dalam aplikasi tersebut. Pada project explorer menunjukan form yang sedang aktif, atau menampilakn beberapa lembar form yang telah dibuat oleh user.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
40
BAB III ANALISIS DAN PERANCANGAN SISTEM
Pada bab ini akan dibahas tentang perancangan sistem dari aplikasi sistem informasi manajemen surat yang akan dibuat. Pembahasan meliputi analisis kebutuhan,
perancangan
aplikasi,
dan
implementasi.
Sistem
informasi
manajemen surat tersebut menjadikan Dinas Koperasi dan UMKM Jawa Timur sebagai tempat studi kasus. Desain aplikasi itu sendiri digunakan untuk penggambaran umum terhadap aplikasi yang akan dibuat sehingga kebutuhan akan konsep aplikasi dapat diketahui sebelum pembuatan aplikasi.
3.1
Analisis Pada subbab ini akan meliputi pembahasan seperti analisis kebutuhan
perangkat lunak dari sistem yang dibuat, yang terdiri dari deskripsi umum mengenai perangkat lunak, arsitektur sistem yang akan dibangun/dirancang, juga meliputi spesifikasi kebutuhan perangkat lunak. Kemudian juga akan disertakan actor-aktor yang terlibat di dalam sistem, dan skenario use case. 3.1.1 Analisis Sistem Sebelum peniliti menentukan apakah permasalahan yang ada bagaimana peniliti menentukan permasalahan itu ada, maka peniliti perlu melakukan
adanya
analisa
atau
pengamatan
dengan
prioritas
40 Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
41
permasalahan yang ada untuk menentukan bagaimana solusi yang tepat untuk menyelesaikan permasalahan yang ada. Pada analisis sistem, peniliti akan mempelajari bagaimana suatu sistem akan bekerja dan bagaimana proses yang terjadi pada saat sistem tersebut bekerja. Dengan menjadikan surat sebagai objek yang nantinya dari surat tersebut dapat dilakukan penganalisaan pada tahap selanjutnya. Poin-poin yang terdapat dalam sebuah surat yang merupakan objek dari sebuah sistem, pada tahap berikutnya akan diteruskan mengikuti kebutuhan dari pada admin itu sendiri.
Setelah peniliti menentukan
permasalahan tersebut, peniliti juga dapat memikirkan solusi untuk permasalahan yang ada. Analisis sistem meliputi tiga bagian, yaitu: arsitektur sistem, analisis informasi, analisis permasalahan, dan analisis solusi. 3.1.2 Arsitektur Sistem Arsitektur sistem dari sistem informasi manajemen surat ini dapat ditunjukan seperti yang terlihat pada gambar 3.1. Pada gambar tersebut dua akun yang berbeda dengan karakteristik yang berbeda pula pada setiap akunnya. Untuk admin/client disini dimaksudkan adalah siapa saja yang menggunakan sistem informasi tersebut, dengan catatan admin harus memiliki id dan password
dengan level pada sistem yang berbeda.
Kemudian sistem informasi yang dimaksudkan adalah menuju pada sistem informasi manajemen surat sendiri yang berbasis desktop. Sistem tersebut menangani pendataan untuk surat masuk, surat keluar, surat
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
42
disposisi, dan juga surat pengajuan cuti. Dari sisi server, terdapat dua server, Application Server, tempat aplikasi ditanam, Database Server, tempat penyimpanan data, dan Print Server, yang merupakan tempat pencetakkan data yang telah disimpan.
Server
Data Terintegrasi
Database Server SQL Server 2008 Data yang telah dientrikan dan diolah
Application Server Microsoft Visual Studio 2010 Client Data Storage Pencetakkan Data tersimpan Login
Admin/User
Sistem Informasi Manajemen Surat
Print Server
Data yang dientrikan
Menganalisa Dientrikan
Surat/Data
Gambar 3.1 Arsitektur Sistem 3.1.3 Spesifikasi Kebutuhan Perangkat Lunak Berdasarkan hasil analisa kebutuhan yang telah dilakukan terhadap proses pendataan surat masuk maupun surat keluar pada Dinas Koperasi & UMKM Jawa Timur, maka secara garis besar, kebutuhan fungsional yang hendak dipenuhi oleh keberadaan aplikasi ini adalah
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
43
pengguna/admin dapat melakukan pendataan surat masuk, surat keluar, maupun kebutuhan pengajuan surat cuti. Data yang telah dientrikan pada sistem dapat dicetak pada menu report surat. Dengan menyertakan tampilan bukti fisik surat yang telah dientrikan, maka ketika ketika pencarian surat masuk maupun keluar, akan disertai tampilan bukti surat fisik di dalamnya yang telah discaning sebelumnya. Sedangkan form pengajuan surat cuti juga dapat dicetak.
Pengguna dapat mendata surat masuk maupun surat keluar
Pengguna dapat Melakukan pencarian data surat masuk dan surat keluar pada report
Pengguna dapat membuat surat disposisi setelah mengisi menu surat masuk
Pengguna dapat menyimpan data yang telah dientrikan
Sistem Informasi Manajemen Surat Pengguna dapat mencetak surat disposisi dan surat pengajuan cuti
Gambar 3.2 Spesifikasi Kebutuhan Sistem Disamping itu, juga dilakukan pemetaan kebutuhan nonfungsional yang mampu dipenuhi oleh aplikasi ini. Kebutuhan tersebut
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
44
adalah hak akses personal terhadap dokumen yang akan dientrikan. Yaitu setiap pengguna harus memiliki username dan password yang berbeda dari masing-masing pengguna yang lain. 3.1.4 Aktor Sistem informasi ini mempunyai 2 jenis aktor, seperti yang terlihat pada gambar 3.2 yang terdiri dari Pengguna/admin pada umumnya , dan Sistem Informasi manajemen surat pada khususnya. Aktor
Admin/Pengguna
Sistem Informasi Manajemen Surat
Gambar 3.3 Aktor Sistem Pada Gambar 3.3, terdapat dua aktor yang dapat berinteraksi dengan aplikasi. Perbedaanya terletak pada kebutuhan masing-masing actor,
dimana pada Admin/Pengguna adalah Pengguna yang hanya
memanfaatkan fungsi dari sistem itu sendiri, yaitu pemanfaatan sistem ini dari sisi aplikasi klien untuk mendata/mengentri surat masuk ataupun surat keluar. Sedangkan, aktor Sistem Informasi Manajemen Surat adalah aktor dari pada sistem itu sendiri. Untuk lebih detail, akan dijelaskan pada tabel 3.1.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
45
Tabel 3.1 Tabel Aktor Aplikasi
Kategori Aktor 3.1.5 S Admin/Pengguna k Sistem e Informasi n Manajemen a Surat r
Hak Akses ke Aplikasi 1. Login ( masuk ke form menu ). 2. Memasukkan data pada surat masuk, surat keluar,
surat
disposisi
dan
insert
kode
klasifikasi. 3. Merubah data pada surat masuk, surat keluar, surat disposisi dan insert kode klasifikasi.
i
4. Menghapus data pada surat masuk, surat keluar,
o
surat disposisi dan insert kode klasifikasi. 5. Mengunggah bukti surat fisik.
U
6. Menampilkan data surat yang telah dientrikan
s
pada halaman report.
e
7. Mencetak form pengajuan surat cuti 8. Logout ( keluar dari form menu ).
C
3.1.5 Skenario Use Case Use Case
yang diilustrasikan oleh Use
Case Diagram
menggambarkan tentang kapasitas atau kemampuan utama yang dapat dilakukan oleh sistem ini sekaligus mendeklarasikan beberapa fitur yang dapat dilakukan oleh para aktor. Untuk penjabaran skenario use case
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
46
sistem ini dapat direpresentasikan oleh use case diagram seperti yang terlihat pada gambar 3.4.
Mendaftarkan Akun *
*
Admin
<<extend>> Manajemen Surat Entri Surat Masuk *
<
> <<extend>>
*
<<extend>>
*
<>
Sistem Informasi Manajemen Surat *
Menyimpan Data Surat
<> <>
<>
Entri Surat Keluar <<extend>> <>
*
<<extend>>
* Mengedit Data Surat
*
<>
<>
Surat Diposisi <> Mencetak Laporan Surat
Tersimpan Pada Laporan
*
<<extend>> <>
<<extend>>
Menghapus Data Surat
<> <<extend>>
Pengajuan Cuti Mencetak Kartu Surat <>
Mencetak Surat Disposisi
Gambar 3.4
Mencatat Data Surat
Use Case Sistem
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
47
Seperti yang terlihat pada diagram use case di Gambar 3.4, terdapat dua aktor yang akan berinteraksi dengan sistem informasi manajemen surat. Aktor – aktor tersebut dapat melakukan beberapa hal diantaranya entri surat masuk, entri surat keluar, surat disposisi. Daftar use case beserta kode use case dapat dilihat pada tabel 3.2 Tabel 3.2 Deskripsi Use Case
No
Kode Use Case
Nama Use Case
Keterangan
1
UC-001
Use Case Mendaftar Akun
Admin/Pengguna perlu mendaftarkan diri terlebih dahulu sebelum masuk pada sistem.
UC-002
Use Case Manajemen Surat
Ketika Admin atau Sistem Informasi Manajemen Surat telah berhasil login, ada beberapa mekanisme manajerial digitalisasi surat dalam sistem.
UC-003
Use Case Entri Surat Masuk
Admin dan Sistem Informasi Manajemen Surat dapat mengakses Entri Surat Masuk untuk melakukan pendataan surat yang telah diterima.
UC-004
Use Case Entri Surat Keluar
Admin dan Sistem Informasi Manajemen Surat dapat mengakses menu ini untuk melakukan pendataan terhadap surat yang keluar dari instansi itu sendiri. Sehingga bisa dicetak kartu surat keluarnya setelah data tersimpan.
UC-005
Use Case Surat Disposisi
Menu ini ditujukan oleh Sistem Manajemen Surat untuk melakukan forward surat dari satu bidang ke bidang lain yang dientrikan langsung oleh admin.
Use Case Pengajuan Cuti
Admin menggunakan menu ini untuk pengajuan cuti. Setelah semua kolom terisi, data yang telah dientrikan dapat disimpan, dan apabila penyimpanan berhasil, Admin akan dikonfirmasi oleh sistem apakah ingin mencetak laporan dari form pengajuan cuti atau tidak.
2
3
4
5
6
UC-006
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
48
7
8
9
UC-007
Use Case Menyimpan Data Surat
UC-008
Use Case Menghapus Data
UC-009
Use Case Mengedit Data Surat
10
UC-010
11
UC-011
12
13
14
Use Case Tersimpan Pada Laporan Use Case Mencetak Laporan Surat
Admin dapat menyimpan data yang telah dientrikan pada menu Entri Surat Masuk/Keluar, Surat Disposisi, Pengajuan Cuti sebelum keluar dari menu tersebut. Admin dapat mengakses pilihan ini ketika data yang dientrikan sudah tidak valid atau tidak digunakan lagi oleh instansi yang bersangkutan. Pada pilihan ini yang disediakan oleh sistem, bertujuan untuk mengedit data surat yang telah dientrikan sebelumnya, misal membenahi tanggal atau nomor surat karna faktor human error. Data yang telah dientrikan oleh admin sebelumnya akan tersimpan pada menu laporan surat untuk dicek kebenrannya. Pada pilihan ini Admin dapat melakukan pencetakan surat yang telah dientri. Dalam artian pencetakan laporan surat tersebut.
UC-012
Use Case Mencetak Kartu Surat
Admin bisa memanfaatkan pilihan ini setelah kolom inputan pada menu Entri Surat Keluar telah tersisi smua dan telah tersimpan, maka sebelum keluar sistem akan mengkonfirmasi Admin apakah ingin mencetak surat keluar atau tidak.
UC-013
Use Case Mencatat Data Surat
Admin menggunakan pilihan ini sebagai pilihan terpenting dalam sistem karena semua proses diawali dari pendataan terhadap surat masuk, surat keluar maupun surat disposisi.
UC-014
Use Case Mencetak Surat Disposisi
Sistem Informasi Manajemen Surat ini menyediakan bentuk form tersendiri untuk hasil pencetakan pada surat disposisi, yang berbeda dari hasil cetak surat masuk dan surat keluar.
Tabel di atas merupakan penjabaran pada masing-masing use case yang terdapat pada sistem informasi manajemen surat. Selain spesifikasi use case, disetakan pula activity diagram yang merupakan ilustrasi alur normal dari use case yang bersangkutan.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
49
3.1.5.1 Use Case Mendaftarkan Akun Mendaftarkan
akun
adalah
langkah
awal
sebelum
memasuki sistem dan menggunakannya. Berikut dijelaskan spesifikasi dari use case mendaftarkan akun. Tabel 3.3
Spesifikasi Use Case Mendaftarkan Akun
Nama Use Case
Mendaftarkan Akun
Nomor
UC-001
Deskripsi
Admin atau pengguna perlu meregistrasikan dirinya sebelum memulai untuk memasuki dan menggunakan sistem melalui validasi saat login
Aktor Kondisi Awal Kondisi Akhir
Admin Admin atau pengguna belum terdaftar dalam sistem Admin atau pengguna telah terdaftar 1. Admin atau pengguna membuka aplikasi, dan akan muncul login form, dan pilih menu Registrasi 2. Sistem akan menampilkan form pendaftaran beserta kolom isian yang harus dilengkapi.
Alur Normal
3. Pengguna mendaftarkan nama akun dan mengisikan password beserta verifikasi password. A1. Pengguna tidak mengisikan secara lengkap informasi yang diperlukan untuk pendaftaran 4. Pengguna Mengkonfirmasi pendaftaran akun 5. Sistem akan menampilkan informasi status pendaftaran akun kepada pengguna tau admin
Alur Alternatif
A1. Pengguna tidak mengisikan secara lengkap informasi yang diperlukan untuk pendaftaran 1. Sistem menampilkan pesan bahwa isian belum lengkap 2. Kembali ke Alur Normal nomor 2 3. Selesai
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
50
Use case ini memenuhi diagram aktivitas sebagaimana tampak pada Gambar 3.5.
Gambar 3.5 Activity Diagram Mendaftarkan Akun 3.1.5.2 Use Case Manajemen Surat Manajemen surat merupakan aktifitas pengelolaan surat yang terjadi di sistem informasi ini. Manajemen surat meliputi beberapa menu yang akan masuk pada submenu. Submenu tersebut memiliki kebutuhan berbeda, namun ada 2 submenu yang saling terkait satu sama lain dalam pendataanya. Keterangan manajemen surat dapat dilihat di Tabel 3.4.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
51
Tabel 3.4
Spesifikasi Use Case Manajemen Surat
Nama Use Case
Manajemen Surat
Nomor
UC-002
Deskripsi
Ketika Admin atau Sistem Informasi Manajemen Surat telah berhasil login, ada beberapa mekanisme manajerial digitalisasi surat dalam sistem.
Aktor
Admin dan Sistem Informasi Manajemen Surat
Kondisi Awal
Admin diwajibkan login terlebih dahulu untuk mengakses sistem
Kondisi Akhir
Admin berhasil login dan memasuki sistem untuk memilih menu yang akan diakses 1. Admin diwajibkan login terlebih dahulu 2. Setelah login sukses, beberapa menu pada sistem telah aktif dan dapat digunakan 3. Admin memilih salah satu dijalankan
Alur Normal
menu untuk
4. Pengentrian data dilakukan setelah admin menjalankan salah satu menu 5. Ketika seluruh data telah dientri, admin dapat menyimpan data dan keluar dari menu 6. Dan sistem akan menampilkan status penyimpanan data yang telah dientrikan sebelum keluar dari sistem.
Alur Alternatif
-
Setelah melalui tabel di atas, langkah selanjutnya setelah use case manajemen surat ini adalah pengembangan dengan pembuatan diagram aktivitas yang merupakan penggambaran atau pengilustrasian dengan menggambarkan alur dari sistem tersebut, bagaimana sistem itu dibuat majemuk antara pengguna dan sistem utama, seperti yang terlihat pada Gambar 3.6.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
52
Gambar 3.6
Activity Diagram Manajemen Surat
3.1.5.3 Use Case Entri Surat Masuk Menu Entri Surat Masuk ini digunakan untuk mendata surat-surat serta berkas masuk yang diterima atau ditujukan untuk Dinas Koperasi & UMKM Provinsi Jawa Timur. Menu ini merupakan langkah awal untuk memasuki menu Surat Disposisi. Adapun penjelasan alurnya akan dicantumkan pada Tabel 3.6 serta pengilustrasian dari menu ini dibuat dalam bentuk use case dan activity diagram pada Gambar 3.7.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
53
Tabel 3.5
Spesifikasi Use Case Entri Surat Masuk
Nama Use Case
Entri Surat Masuk
Nomor
UC-003 Admin dan Sistem Informasi Manajemen Surat dapat mengakses menu ini untuk melakukan pendataan terhadap surat-surat atau berkas yang diterima oleh instansi tersebut. Admin/Pengguna dan Sistem Informasi Manajemen Surat Pengguna atau Sistem Informasi Manajemen Surat melakukan pendataan terhadap surat atau berkas yang telah diterima dengan menyiapkan berkas atau surat yang akan didata dengan menu Entri Surat Masuk. Surat atau Berkas masuk yang telah didata dan diisikan pada isian yang tersedia di sistem dapat disimpan di penyimpanan 1. Admin atau pengguna berhasil login dan masuk pada halaman menu utama
Deskripsi
Aktor
Kondisi Awal
Kondisi Akhir
Alur Normal
2. Admin atau pengguna mengaktifkan menu Entri Surat Masuk untuk memulai pendataan terhadap dokumen yang telah dipersiapkan terlebih dahulu 3. Sistem Menampilkan halam Entri Surat Masuk yang di dalamnya terdapat isian yang harus dilengkapi sesuai yang tercantum pada berkas atau surat masuk 4. Pengguna memilih dokumen yang akan dientrikan pada sistem 5. Pengguna mengisi semua isian yang tercantum pada menu Entri Surat Masuk 6. Setelah seluruh isian telah diisi sesuai data yang tercantum pada berkas atau surat, Pengguna dapat melakukan penyimpanan data. A1. Pengguna kurang melengkapi seluruh isian yang tercantum pada menu Entri Surat Masuk atau masih terdapat menu isian yang masih kosong dan belum terisi data 7. Sistem akan menampilkan status penyimpanan data masuk yang telah dientrikan pada sistem 8. Sebelum Keluar dari menu ini, Admin atau pengguna akan dikonfirmasi apakah yakin keluar atau tidak
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
54
Alur Alternatif
9. Data telah berhasil disimpan pada database sistem informasi tersebut A1. Pengguna kurang melengkapi seluruh isian yang tercantum pada menu Entri Surat Masuk atau masih terdapat menu isian yang masih kosong dan belum terisi data 1. Sistem menampilkan pesan bahwa isian belum lengkap dan tidak dapat melakukan penyimpanan 2. Kembali ke Alur Normal nomor 3 3. Selesai
Tahap berikutnya adalah pengilustrasian menggunakan activity diagram yang ditunjukan pada Gambar 3.7 yang mengacu berdasarkan use case dan spesifikasi pada Tabel 3.6
Gambar 3.7 Activity Diagram Entri Surat Masuk
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
55
3.1.5.4 Use Case Entri Surat Keluar Berbeda dengan menu Entri Surat Masuk, pada menu Entri Surat Keluar ini melakukan pendataan terhadap surat atau berkas yang keluar atau dikirim Dinas Koperasi & UMKM terhadap instansi lain maupun individu yang terkait. Dan berikut adalah spesifikasi use case Entri Surat keluar dapat dilihat pada Tabel 3.7. Tabel 3.6
Spesifikasi Use Case Entri Surat Keluar
Nama Use Case
Entri Surat Keluar
Nomor
UC-004 Admin dan Sistem Informasi Manajemen Surat dapat mengakses menu ini untuk melakukan pendataan terhadap surat-surat atau berkas yang keluar atau dikirm oleh instansi tersebut. Admin/Pengguna dan Sistem Informasi Manajemen Surat Pengguna atau Sistem Informasi Manajemen Surat melakukan pendataan terhadap surat atau berkas yang telah diterima dengan menyiapkan berkas atau surat yang akan didata dengan menu Entri Surat Masuk.
Deskripsi
Aktor
Kondisi Awal
Kondisi Akhir
Alur Normal
Surat atau Berkas keluar yang telah didata dan diisikan pada isian yang tersedia di sistem dapat disimpan di penyimpanan dan dapat dicetak sesuai kebutuhan 1. Admin atau pengguna berhasil login dan masuk pada halaman menu utama 2. Admin atau pengguna mengaktifkan menu Entri Surat Keluar untuk memulai pendataan terhadap dokumen yang telah dipersiapkan terlebih dahulu 3. Sistem Menampilkan halaman Entri Surat Keluar yang di dalamnya terdapat isian yang harus dilengkapi sesuai yang tercantum pada berkas atau surat keluar 4. Pengguna memilih dokumen yang akan dientrikan pada sistem
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
56
5. Pengguna mengisi semua isian yang tercantum pada menu Entri Surat Keluar 6.
Setelah seluruh isian telah diisi sesuai data yang tercantum pada berkas atau surat, Pengguna dapat melakukan penyimpanan data A1.
Pengguna kurang melengkapi seluruh isian yang tercantum pada menu Entri Surat Keluar atau masih terdapat menu isian yang masih kosong dan belum terisi data
7. Sistem akan menampilkan status penyimpanan data masuk yang telah dientrikan pada sistem 8. Sebelum Keluar dari menu ini, pengguna akan dikonfirmasi apakah ingin mencetak kartu surat keluar atau tidak 9.
Data telah berhasil disimpan pada database sistem informasi tersebut A1.
Alur Alternatif
Pengguna kurang melengkapi seluruh isian yang tercantum pada menu Entri Surat Keluar atau masih terdapat menu isian yang masih kosong dan belum terisi data
1. Sistem menampilkan pesan bahwa isian belum lengkap dan tidak dapat melakukan penyimpanan 2. Kembali ke Alur Normal nomor 3 3. Selesai
Langkah berikutnya setelah pembuatan spesifikasi use case dari Entri Surat Masuk dengan menggunakan tabel adalah penggambaran menggunakan activity diagram yang didasarkan use case dan spesifikasi tabel di atas. Activity diagram pada menu ini tidak jauh berbeda dengan menu activity diagram menu Entri Surat Masuk. Yang membedakan hanya tidak terdapatnya menu Jadwal Retensi pada menu Surat Keluar ini. Untuk lebih jelasnya dapat dilihat pada gambar 3.8.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
57
Gambar 3.8
Activity Diagaram Entri Surat Keluar
3.1.5.5 Use Case Surat Disposisi Surat Disposisi digunakan untuk meneruskan surat ke bagian atau ke pihak yang tersebut dalam surat atau berkas yang diterima. Surat Disposisi baru bias diakses setelah melakukan pendataan atau pengentrian pada menu Entri Surat Masuk. Keterangan lebih jelasnya dari use case Surat Disposisi ditampilkan pada Tabel 3.8.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
58
Tabel 3.7
Spesifikasi Use Case Surat Disposisi
Nama Use Case
Surat Disposisi
Nomor
UC-005
Deskripsi
Aktor
Kondisi Awal
Kondisi Akhir
Alur Normal
Alur Alternatif
Menu ini ditujukan oleh Sistem Informasi Manajemen Surat untuk melakukan forward surat dari satu bidang ke bidang yang lain yang dientrikan oleh pengguna Pengguna dan Sistem Informasi Manajemen Surat Pengguna melakukan pendataan surat atau berkas masuk di menu Entri Surat Masuk terlebih dahulu sebelum mengakses menu Surat Disposisi Surat Disposisi dapat disimpan dan dicetak sesuai yang terisikan pada menu Entri Surat Masuk 1. Pengguna Mengisikan data terlebih dahulu pada menu Entri Surat Keluar, sebagai akses utama mengaktifkan surat Disposisi 2. Pengguna/admin mengaktifkan menu Surat Disposisi untuk memulai sinkronisasi antara data pada Entri Surat Masuk dan Surat Disposisi 3. Sistem menampilkan menu Surat Disposisi yang telah aktif 4. Pengguna mengarahkan pilihan pada isian nomor surat yang sebelumnya sama dengan nomor surat pada surat masuk A1. Pengguna/admin tidak mengakses dan mengentrikan data terlebih dahulu pada menu Entri Surat Masuk 5. Maka seluruh isian pada menu ini akan aktif dan sudah terisi sesuai dengan yang tercatat pada Entri Surat Masuk 6. Berikutnya s istem akan menampilkan status penyimpanan surat disposisi 7. Sebelum Keluar dari menu ini, Admin atau pengguna akan dikonfirmasi apakah yakin keluar dari menu dan melakukan pencetakan laporan surat disposisi 8. Data telah berhasil disimpan pada database sistem informasi tersebut A1. Pengguna tidak mengakses dan
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
59
mengentrikan data terlebih dahulu pada menu Entri Surat Masuk 1. Menu Surat Disposisi tidak dapat diaktifkan atau diakses 2. Kembali ke Alur Normal nomor 1 3. Selesai
Tahapan selanjutnya adalah pengilustrasian menggunakan activity diagram yang ditunjukan Gambar 3.9.
Gambar 3.9
Activity Diagram Surat Disposisi
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
60
3.1.5.6 Use Case Pengajuan Cuti Pengajuan Cuti merupakan menu yang digunakan untuk pegawai atau karyawan yang ingin mengajukan cuti sesuai keterangan yang akan dilampirkan pada laporan cuti nantinya. Tabel 3.8
Spesifikasi Use Case Pengajuan Cuti
Nama Use Case
Pengajuan Cuti
Nomor
UC-006 Pengguna menggunakan menu ini untuk mengajukan cuti. Setelah semua kolom terisi, data yang telah dientrikan dapat disimpan, dan apabila penyimpanan berhasil, pengguna akan dikonfirmasi oleh sistem apakah ingin mencetak laporan dari form pengajuan cuti atau tidak
Deskripsi
Aktor Kondisi Awal
Kondisi Akhir
Pengguna dan Sistem Informasi Manajemen Surat Pegawai yang hendak mengajukan cuti menyiapkan syarat-syarat untuk pengajuan cuti yang akan diinputkan pada sistem Surat pengajuan cuti telah terisi data dan dilampiri syarat-syarat atau keterangan yang diperlukan, kemudian laporan dapat dicetak 1. Pengguna harus login terlebih dahulu 2. Pengguna mengaktifkan menu Form Pengajuan Cuti 3. Sistem menampilkan menu Form Pengajuan Cuti yang telah aktif
Alur Normal
4. Pengguna melengkapi kolom isian pada menu tersebut, beserta tanggal pengajuan cuti A1. Tanggal pengajuan cuti dengan tanggal berakhirnya cuti sama 5. Setelah data tersebut tersimpan, sistem akan menampilkan status penyimpanan 6. Sistem akan mengonfirmasi pengguna apakah ingin mencetak laporan atau tidak 7. Sebelum Keluar dari menu ini, Admin atau pengguna akan dikonfirmasi apakah yakin keluar dari menu dan melakukan pencetakan laporan surat disposisi
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
61
Alur Alternatif
A1. Tanggal pengajuan cuti dengan tanggal berakhirnya cuti sama 1. Data gagal dimasukan 2. Kembali ke Alur Normal nomor 3 3. Selesai
Pengilustrasian berikutnya ditunjukan dengan activity diagram seperti yang terlihat pada Gambar 3.10.
Gambar 3.10
Activity Diagram Pengajuan Cuti
3.1.5.7 Use Case Menyimpan Data Surat Setiap
pengaksesan
menu
yang
berkaitan
dengan
manajemen surat, maka akan bersinggungan dengan aktifitas
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
62
penyimpanan data, baik Entri Surat Masuk, Entri Surat Keluar, Surat Disposisi, maupun Pengajuan Cuti. Alur dari proses ini dapat dilihat pada Tabel 3.10. Tabel 3.9
Spesifikasi Use Case Menyimpan Data Surat
Nama Use Case
Menyimpan Data Surat
Nomor
UC-007
Deskripsi
Pengguna dapat menyimpan data yang telah dientrikan pada menu Entri Surat Masuk, Entri Surat Keluar, Surat Disposisi, serta Pengajuan Cuti, sebelum pengguna keluar dari menu yang sedang dieksekusi
Aktor
Pengguna dan Sistem Informasi Manajemen Surat
Kondisi Awal
Pengguna atau Sistem Informasi Manajemen Surat usai menginputkan data pada suatu menu dan akan melakukan penyimpanan
Kondisi Akhir
Sistem akan menampilkan status penyimpanan terhadap suatu data tersebut 1. Pengguna atau Sistem Informasi Manajemen Surat telah masuk ke dalam menu yang sedang dijalankan
Alur Normal
Alur Alternatif T
2. Pengguna telah usai menginputkan semua data yang akan disimpan 3. Sistem menampilkan status penyimpanan data yang telah berhasil -
Tahap selanjutnya mengenai use case Menyimpan Data Surat adalah penggambaran menggunakan activity diagram. Menu penyimpanan ini tersedia d setiap menu Sistem Informasi Manajemen Surat, itu sebabnya di awal telah dijelaskan bahwa
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
63
menu ini bersinggungan dengan bagian menu yang lain, sebagaimana terlihat pada Gambar 3.11.
Gambar 3.11 Activity Diagram Menyimpan Data Surat 3.1.5.8 Use Case Menghapus Data Sama halnya dengan pilihan Menyimpan Data Surat yang disebutkan di atas, menu Menghapus Data juga bersinggungan
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
64
dengan beberapa menu yang lain. Dalam penjabarannya akan ditunjukan oleh Tabel 3.11 .
Tabel 3.10
Spesifikasi Use Case Menghapus Data
Nama Use Case
Menghapus Data
Nomor
UC-008
Deskripsi
Pengguna dapat mengakses pilihan ini ketika terdapat data yang salah ketik atau data yang tidak valid ataupun data yang sudah tidak dipergunakan lagi oleh instansi yang bersangkutan
Aktor
Pengguna dan Sistem Informasi Manajemen Surat
Kondisi Awal
Pengguna atau Sistem Informasi Manajemen Surat melakukan pengentrian terhadap data yang diperlukan dan hendak menghapus beberapa isian atau data tersebut karena human error dengan melibatkan pilihan Menghapus Data untuk proses eksekusinya
Kondisi Akhir
Data yang telah dipilih oleh pengguna untuk dihapus telah terhapus dan pengguna dapat menginputkan data baru kembali 1. Pengguna masuk ke suatu menu yang terdapat dalam Sistem Informasi Manajemen Surat
Alur Normal
2. Pengguna melihat data bagian mana yang akan dihapus 3. Pengguna memilih data yang akan dihapus dalam menu tersebut 4. Memilih pilihan Hapus pada menu tersebut untuk menghapus data yang terpilih tersebut
Alur Alternatif
Pada
-
tahapan
berikutnya
adalah
penggambaran
menggunakan activity diagram untuk use case Menghapus Data.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
65
Karena pilihan atau aktifitas menu ini berkaitan dengan menu utama lainnya, maka penggambaran activity diagram-nya tidak jauh berbeda dengan pilihan Menyimpan Data yang disebutkan di atas.
Gambar 3.12
Activity Diagram Menghapus Data
3.1.5.9 Use Case Mengedit Data Surat Keperluan dalam mengedit data surat yang telah dientrikan diperlukan oleh Sistem Informasi Manajemen Surat ini. Sesuai
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
66
penggambarannya yang terdapat pada use case di atas. Untuk alur dari proses ini seperti yang terlihat pada Tabel 3.12. Tabel 3.11 Spesifikasi Use Case Mengedit Data Surat
Nama Use Case
Mengedit Data Surat
Nomor
UC-009
Deskripsi
Pada pilihan ini yang disediakan oleh sistem bertujuan untuk mengedit data surat yang telah dientrikan sebelumnya, misal membenahi tanggal atau nomor surat
Aktor
Pengguna dan Sistem Informasi Manajemen Surat
Kondisi Awal
Pengguna atau Sistem Informasi Manajemen memilih data yang akan diubah sesuai kebutuhan dengan memperbaharuinya
Kondisi Akhir
Pengguna memperbaharui data yang telah diedit dan menyimpannya pada database sistem Pengguna masuk ke suatu menu yang terdapat dalam Sistem Informasi Manajemen Surat Pengguna memilih data yang akan dihapus dalam menu tersebut
Alur Normal
Pengguna melihat data bagian mana yang akan diperbaharui Sistem menampilkan data yang akan diedit Pengguna mengubah data yang telah tersimpan sebelumnya dengan data yang baru Pengguna menyimpan data yang telah diperbaharui tersebut
Alur Alternatif
-
Dalam tabel di atas dijelaskan bagaimana kondisi awal dan akhir proses pengeditan data tersebut hingga penyimpanan. Setiap menu dalam Sistem Informasi Manajemen Surat memiliki pilihan
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
67
“Edit”
untuk
manajemen
datanya.
Kemudian
untuk
pengilustrasian yang lebih jelasnya lagi dapat dilihat pada activity diagram pada Gambar 3.13
Gambar 3.13 Activity Diagram Mengedit Data Surat 3.1.5.10 Use Case Tersimpan Pada Laporan Setiap data yang dientrikan oleh pengguna pada sistem, baik itu di menu Entri Surat Masuk, Entri Surat Keluar, Surat Disposisi, maupun Pengajuan Cuti, semua memiliki laporan yang
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
68
menampilkan keseluruhan data yang telah disimpan pada database sistem. Untuk alur dari use case tersebut dapat dilihat pada Tabel 3.13. Tabel 3.12 Spesifikasi Use Case Tersimpan Pada Laporan
Nama Use Case
Tersimpan Pada Laporan
Nomor
UC-010
Deskripsi
Data yang telah dientrikan oleh admin sebelumnya akan tersimpan pada menu laporan surat atau Report untuk dikrsocek validasinya
Aktor
Pengguna dan Sistem Informasi Manajemen Surat
Kondisi Awal
Pengguna atau Sistem Informasi Manajemen Surat usai menginputkan data pada suatu menu dan melakukan penyimpanan
Kondisi Akhir
Sistem mengelola data yang telah tersimpan dan mengalokasikan data tersebut pada menu Laporan atau Report 1. Pengguna atau Sistem Informasi Manajemen Surat telah masuk ke dalam menu yang sedang dijalankan 2. Pengguna telah usai menginputkan semua data yang disimpan
Alur Normal
3. Sistem menampilkan status penyimpanan data yang telah berhasil A1. Pengguna belum melakukan penyimpanan dan langsung keluar dari menu tanpa melakukan penyimpanan terlebih dahulu 4. Data yang telah tersimpan, oleh sistem dikelola dan ditempatkan pada menu Laporan
Alur Alternatif
A1. Pengguna belum melakukan penyimpanan dan langsung keluar dari menu tanpa melakukan penyimpanan terlebih dahulu
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
69
1. Data tidak tersimpan pada Laporan atau Report 2. Kembali ke alur nomor 1 3. Selesai
Dalam Tabel 3.13 disebutkan bahwa use case dari proses memiliki alur alternatif. Kemudian pada tahapan berikutnya diilustrasikan dengan activity diagram seperti yang terlihat pada Gambar 3.14.
Gambar 3.14
Activity Diagram Tersimpan Pada Laporan
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
70
3.1.5.11 Use Case Mencetak Laporan Surat Pada skenario use case kali ini dijelaskan bahwa setelah prose penyimpanan data pada Laporan Surat langkah berikutnya adalah pencetakan dari laporan tersebut. Prosesi tersebut akan melewati 2 alur yaitu alur normal dan alur alternatif. Seperti yang terlihat pada Tabel 3.14. Tabel 3.13 Spesifikasi Use Case Mencetak Laporan Surat
Nama Use Case
Mencetak Laporan Surat
Nomor
UC-011
Deskripsi
Pada pilihan ini admin dapat melakukan pencetakan surat yang telah dientri, dalam artian pencetakan laporan surat tersebut
Aktor
Pengguna dan Sistem Informasi Manajemen Surat
Kondisi Awal
Pengguna atau Sistem Informasi Manajemen Surat akan mencetak laporan surat berdasarkan data yang telah tersimpan sebelumnya
Kondisi Akhir
Sistem mengelola data yang telah tersimpan pada laporan, dan mencetaknya 1. Pengguna atau Sistem Informasi Manajemen Surat telah masuk ke dalam salah satu menu Laporan Surat
Alur Normal
2. Pengguna memilih pilihan untuk mencetak laporan 3. Sistem menampilkan hasil himpunan data yang talah tersimpan dalam bentuk Laporan 4. Data tercetak berdasarkan data yang telah tersimpan
Alur Alternatif
-
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
71
Pada prosesnya, Laporan Surat baru akan tercetak setelah seluruh data yang dientrikan sebelumnya telah dientrikan pada sistem, sehingga ketika sistem memunculkan Laporan Surat di salah satu menu surat, pengguna dapat mencetak laporan tersebut. Data yang belum tersimpan tidak akan muncul pada Laporan Surat karena belum disimpan dalam database sistem tersebut. Langkah selanjutnya setelah alur proses tersebut dikemas dalam bentuk tabel, untuk penggambaran berikutnya ditampilkan dalam bentuk activity diagram seperti yang terlihat pada Gambar 3.15.
Gambar 3.15 Activity Diagram Untuk Mencetak Laporan Surat
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
72
3.1.5.12 Use Case Mencetak Kartu Surat Untuk menu pencetakan terbagi menjadi dua yang diantaranya adalah Mencetak Laporan Surat dan Mencetak Kartu Surat. Untuk pencetakan kartu surat hanya berlaku dalam menu Entri Surat Keluar. Alurnya adalah setelah data selesai diinputkan dan semua kokolm isian telah terlengkapi, kemudian pengguna telah menyimpan data tersebut, selanjutnya akan muncul kotak dialog apakah pengguna hendak mencetak kartu surat keluar tersebut atau tidak, terlihat seperti Tabel 3.15. Tabel 3.14
Spesifikasi Use Case Mencetak Kartu Surat
Nama Use Case
Mencetak Kartu Surat
Nomor
UC-012
Deskripsi
Admin atau pengguna dapat memanfaatkan pilihan ini setelah kolom isian pada menu Entri Surat Keluar telah terisi semua dan telah tersimpan, maka sebelum keluar sistem akan mengkonfirmasi Admin apakah ingin mencetak Kartu Surat keluar atau tidak
Aktor
Pengguna dan Sistem Informasi Manajemen Surat
Kondisi Awal
Pengguna atau Sistem Informasi Manajemen Surat selesai melengkapi kolom isian dan hendak keluar setelah menyimpan data
Kondisi Akhir
Sistem mengelola data yang telah tersimpan pada laporan, dan mencetaknya dalam bentuk Kartu Surat Keluar
Alur Normal
1. Pengguna atau Sistem Informasi Manajemen Surat telah masuk ke dalam menu Entri Surat Keluar 2. Pengguna selesai menginputkan data
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
73
3. Pengguna menyimpan data yang telah dientri, dan ingin mencetak Kartu Surat Keluar 4. Pengguna menerima hasil cetakan Alur Alternatif
-
Langkah selanjutnya adalah pembuatan alur menggunakan activity diagram seperti yang terlihat pada Gambar 3.16. Jika tabel di atas hanya menyatakan alurnya dalam bentuk kalimat, maka pada Gambar 3.16 ditampilkan dalam bentuk gambar di bawah ini.
Gambar 3.16
Activity Diagaram Mencetak Kartu Surat
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
74
3.1.5.13 Use Case Mencatat Surat Setiap menu dalam sistem ini bertujuan untuk mendata beberapa kegiatan surat dalam Dinas Koperasi & UMKM. Adapun proses utamanya adalah mencatat atau mengentri data fisik ke dalam sistem informasi ini. Alur prosesi dari kegiatan mencatat akan disajikan dalam bentuk tabel seperti di bawah ini. Tabel 3.15
Spesifikasi Use Case Mencatat Data Surat
Nama Use Case
Mencatat Data Surat
Nomor
UC-013
Deskripsi
Admin menggunakan pilihan ini sebagai pilihan terpenting dalam sistem karena semua proses diwalai dari pendataan terhadap surat masuk , surat keluar, surat disposisi, dan pengajuan cuti
Aktor
Pengguna dan Sistem Informasi Manajemen Surat
Kondisi Awal
Pengguna Login dan akan memasuki halaman utama untuk mengakses menu mana yang hendak dilakukan pengentrian terhadap data surat
Kondisi Akhir
Pengguna mengentri data yang tercantum pada surat ke dalam sistem, dan sistem mengelolanya dalam bentuk data tersimpan
Alur Normal
1.
Pengguna Login pada Sistem Informasi Manajemen Surat
2.
Sistem menampilkan halaman menu utama daripada sistem informasi tersebut
3.
Pengguna mengakses manajemen surat
4.
Pengguna menginputkan data yang telah disiapkan
5.
Pengguna melengkapi menyimpan data
salah
kolom
satu
isian
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
menu
dan
75
6. Alur Alternatif
Sistem menampilkan status penyimpanan -
Tahap berikutnya adalah penggunaan activity diagram sebagai langkah berikutnya dalam penggambaran alur proses pencatatn surat ke dalam sistem informasi ini seperti Gambar 3.17.
Gambar 3.17
Activity Diagram Mencatat Data Surat
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
76
3.1.5.14 Use Case Mencetak Surat Disposisi Pada menu Surat Disposisi disisipkan laporan surat, yang berupa kartu surat disposisi yang menampilkan hasil dari inputan yang sebelmunya telah diinputkan pada Entri Surat Masuk. Pada alur prosesnya, pengguna terlebih dahulu menginputkan data pada surat masuk, barulah menu Surat Disposisi bias diakses dan dicetak laporan suratnya, terlihat pada Tabel 3.17. Tabel 3.16
Spesifikasi Use Case Mencetak Surat Disposisi
Nama Use Case
Mencetak Surat Disposisi
Nomor
UC-014
Deskripsi
Sistem Informasi ini menyediakan bentuk form tersendiri untuk hasil pencetakan surat disposisi, yang berbeda dari hasil cetak surat masuk dan surat keluar
Aktor
Pengguna dan Sistem Informasi Manajemen Surat
Kondisi Awal
Pengguna menginputkan data pada menu ini sesuai data yang telah tersimpan pada Entri Surat Masuk
Kondisi Akhir
Pengguna menerima hasil cetakan Surat Disposisi setelah semua data dilengkapi dan disimpan Pengguna mengakses menu Surat Disposisi
Alur Normal
Pengguna memasukan nomor surat pada menu isian nomor surat di Surat Disposisi seperti yang tercantum pada surat masuk Pengguna menyimpan data yang telah dientri, dan ingin mencetak Kartu Surat Keluar Pengguna menerima hasil cetakan
Alur Alternatif
-
Selanjutnya adalah penggambaran dalam bentuk activity diagram. Jika dalam tabel disebutkan bahwa harus mengakses
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
77
Menu Entri Surat Masuk sebelum mengakses Surat Disposisi, maka untuk penggambaranya hanya akan ditampilkan proses dari Surat Disposisi itu sendiri. Seperti yang tampak pada Gambar 3.18.
Gambar 3.18
Activity Diagram Mencetak Surat Disposisi
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
78
3.2
Perancangan Data Pada subbab ini akan membahas beberapa pokok bahasan meliputi
perancangan perangkat lunak dari aplikasi tersebut yang terdiri dari perancangan data, perancangan proses dan antar muka, serta perancangan laporan. 3.2.1 Perancangan Dokumen Masukan Perancangan data, atau dalam konteksnya dapat disebut sebagai perancangan input sistem yang dibagi menjadi dua. Yang pertama adalah perancangan input dari sistem ini sendiri, yaitu dokumen yang akan dientrikan pada sistem. Dokumen atau surat yang akan dimasukan pada sistem ini tentu memiliki beberapa klasifikasi sesuai kapasitasnya masing-masing. Tabel 3.17 Spesifikasi Dokumen Masukkan untuk Setiap Menu
Manajemen Surat
Dokumen Masukan
Entri Surat Masuk
Berkas dokumen atau surat yang akan diinputkan merupakan berkas/surat yang ditujukan langsung untuk Dinas Koperasi & UMKM tersebut. Pada bagian menu ini akan disediakan jadwal retensi dokumen/surat tersebut.
Entri Surat Keluar
Berkas dokumen atau surat yang akan dientrikan pada sistem merupakan surat yang dikeluarkan oleh Dinas Koperasi & UMKM untuk instansi lain ataupun individu dengan kepentingan tertentu. Menu ini akan dilengkapi pencetakkan kartu surat keluar apabila dikehendaki oleh admin.
Surat Disposisi
Menu ini hanya bisa diakses setelah mengentri data pada Entri Surat Masuk. Surat akan diteruskan pada yang bersangkutan sesuai yang tercantum pada isi
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
79
dari pada surat tersebut dan akan disertai laporan disposisi surat yang dapat dicetak sesuai kebutuhan admin.
3.2.2 Perancangan Tabel Sistem Langkah awal dalam memulai perancangan database adalah dari perancangan tabel seperti yang terlihat pada Tabel 3.4 dan tabel 3.5. Kemudian tahapan berikutnya adalah Conceptual Data Model (CDM) yang dapat dilihat pada Gambar 3.5 dan perancangan Data Physical Model (PDM) sistem yang dijelaskan pada Gambar 3.6 . Sistem informasi ini menggunakan tabel-tabel sebagai berikut. a)
Admin Berfungsi untuk menyimpan data Admin yang dapat mengakses ke dalam Sistem Informasi Manajemen Surat. Tabel 3.18
Nama Kolom
b)
Admin
Keterangan
Username
Nama admin yang merupakan primary key
Password
Kata sandi admin
Manajemen Surat Manajemen surat sendiri berfungsi sebagai aktifitas manajerial surat di Dinas Koperasi & UMKM yang berkaitan dengan sistem informasi. Dalam penerapannya nanti akan disesuaikan dengan
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
80
data yang tercantum pada surat atau berkas-berkas itu sendiri, singkatnya dapat dilihat pada Tabel 3.20. Tabel 3.19 Manajemen Surat
Nama Kolom
3.3
Keterangan
Nomor_Urut_Agenda
Nomor urut dari pendataan surat
Tanggal
Tanggal pengentrian surat pada sistem
Nomor_Surat
Nomor surat yang diterima maupun nomor surat keluar
Kepada
Alamat tertuju dari surat tersebut
Kode Klasifikasi
Merupakan kode pada masing-masing bidang sesuai kebutuhan surat
Perihal
Pokok surat
Pengirim
Pengirim surat
Tanggal_diterima
Tanggal surat diterima oleh instansi
Sifat_surat
Mengacu pada karakter/sifat dari pada surat tersebut
Jenis_surat
Jenis surat
Lampiran
Lampiran pada surat jika dicantumkan
Catatan
Garis besar dari isi surat tersebut
Rak
Tempat penyimpanan surat
Penyimpanan
Merupakan bagian penyimpanan sesuai bidang yang tercantum pada surat
Jadwal_retensi
Durasi penentu lamanya penyimpanan surat sesuai kapasitas surat
Perancangan Basis Data (Database) Suatu aplikasi komputer diperlukan suatu database yang mampu
menampung data yang akan diinputkan oleh pengguna. Maka dari itu
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
81
perancangan database sangat diperlukan karena dengan melakukan perancangan terlebih dahulu, dapat mengetahui seperti apa program yang ingin dibuat sehingga dapat menghasilkan suatu database yang mampu untuk digunakan dengan kapasitas sesuai yang diinginkan pengguna. 3.3.1 Perancangan Konteks Diagram Konteks diagram dari smenu utama sistem informasi ini adalah sperti terlihat pada gambar berikut. DIAGRAM CONTEXT APLIKASI SURAT
Laporan Umum Surat M asuk
Peng irim
Kepala Dinas
0 Laporan Umum Surat Keluar
Data Surat Masuk Aplikasi Surat
+
Laporan Umum Surat Disposisi
Laporan Surat Keluar Data Surat Keluar
Penerima
Gambar 3.19 Konteks Diagaram Sistem Informasi Manajemen Surat
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
82
2 Pemrosesan Data Surat Masuk dan Pembuatan Laporan
Hasil Data yang Sudah Diolah
Rekap Data Surat Disposisi 4
Stor_45
6 Penerusan Pembuatan Surat Disposisi
1 Peng irim
+
Mencatat Surat Masuk
Data Surat Masuk
Data Surat Disposisi
Data yang Sudah Diolah Laporan Umum Surat M asuk
7
1
Data Surat Masuk
2
Data Surat Keluar
Rekap Data Surat M asuk
Pembuatan Laporan Surat Disposisi
Rekap Data Surat Keluar Kepala Dinas
Laporan Umum Surat Disposisi 3 Penerima Data Surat Keluar
Mencatat Data Surat Keluar
Hasil Data Surat Keluar yang Sudah Diolah
Laporan Umum Surat Keluar Hasil Data Surat Keluar
5
Laporan Surat Keluar
Pemrosesan Data Surat Keluar dan Pembuatan Laporan
4 Pembuatan Laporan Umum Surat Keluar
Gambar 3.20 DFD Level 0 Sistem Informasi Manajemen Surat
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
83
Rekap Data Srt Disposisi
4
Data Srt Masuk
3
Data Surat Disposisi
Data Akhir Surat Disposisi
Penerusan Peng olahan Data Surat Disposisi
5 Pembuatan Laporan Surat Disposisi1
2
Peng olahan Data Surat Masuk
Data Akhit Surat Masuk
3 Pembuatan Laporan Umum Laporan Umum Surat M asuk
Kepala Dinas
Laporan Surat Disposisi
Gambar 3.21 DFD Level 1 Pemrosesan Data Surat Masuk
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
84
3.3.2 Perancangan CDM (Conceptual Data Model) CDM (Conceptual Data Model) merupakan perancangan basis data yang berdasarkan pengumpulan data dan analisis. Pembuatan CDM adalah suatu tahap dimana pembuatan sistem melakukan proses indentifikasi dan analisa kebutuhan-kebutuhan data yang disebut pengumpulan data dan analisa. Untuk menentukan kebutuhan-kebutuhan suatu sistem basis data, pembuatan sistem harus mengenal terlebih dahulu bagian-bagian lain dari sistem informasi yang akan berinteraksi dengan sistem basis data. Tipe data bersifat general dan tidak spesifik. CDM yang valid bisa dikonversikan ke PDM. Dapat dilihat gambar CDM Sistem Informasi Manajemen Surat pada Gambar 3.19. Dalam CDM tersebut digambarkan bahwa sistem informasi ini memiliki 6 Entitas dengan masing-masing atribut yang berbeda. Ada beberapa entitas yang tidak direlasikan dengan entitas lain dikarenakan tidak saling bersinggungan satu sama lain, karena yang terjadi ketika satu entitas dengan entitas lain direlasikan, sedangkan keduanya tidak memiliki ketertkaitan satu sama lain dalam sistem, yang akan terjadi adalah eror, relasi tidak lagi sesuai alurnya, namun akan berbalik, dan hal demikian dapat menghambat proses generate pada PDM. Hanya terdapat 3 relasi dalam CDM sistem informasi ini, karena ketiga entitasnya saling terkait satu sama lain, seperti yang terlihat pada Gambar 3.19.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
85
# o o o o o o o o o o o o
tb SuratMasuk No_SuratMasuk Variable characters (50) NoUrut Variable characters (10) Tanggal_SuratMasuk Date & Time Kepada_SuratMasuk Variable characters (50) Prihal Variable characters (50) Jenis Variable characters (20) AslSrtMasuk Variable characters (50) TglTerima_SuratMasuk Date & Time Isi Variable characters (20) Lamp_SrtMasuk Variable characters (20) Rak_SrtMasuk Variable characters (25) Penyimpanan Variable characters (50) Jadwal_Retensi Long characters (15) ... Relationship_5
tbKodeSurat # KodeS Variable characters (50) o Prihal_Klasifikasi Variable characters (50)
Relationship_1
# o o o o o o o o o o o
tbDisposisi NoAgd Variable characters (10) AslSrt Variable characters (50) Tanggal_Disposisi Date & Time Tanggal_Terima Date & Time Sifat Variable characters (50) Prihal_SuratDisposisi Variable characters (50) Kepada_SuratDisposisi Variable characters (50) Harap Variable characters (50) S1 Variable characters (50) S2 Variable characters (50) S3 Variable characters (50) S4 Variable characters (50) ... Relationship_6
tbLogin # Username Variable characters (50) o Nama_Lengkap Variable characters (100) o Password Variable characters (50) ...
Relationship_3
Relationship_4
# o o o o o o o o
tbSuratKeluar No_SuratKeluar Variable characters (50) Tanggal_SuratKeluar Date & Time Sifat_SuratKeluar Variable characters (50) Kepada_SuratKeluar Variable characters (50) Prihal_SuratKeluar Variable characters (50) Pengirim Variable characters (50) Lamp Variable characters (50) Cat Variable characters (100) Rak Variable characters (50) ...
Cuti # No_Surat Variable characters (30) o Nama_Pemohon Variable characters (50) o Jabatan Variable characters (50) o Tanggal_Mulai Date & Time o Tanggal_Berakhir Date & Time o Jenis_Cuti Variable characters (20) o Alasan_Cuti Variable characters (200) ...
Gambar 3.22 Conceptual Data Model Sistem Informasi Manajemen Surat
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
86
3.3.3 Perancangan PDM (Physical Data Model) Perancangan PDM (Physical Data Model) merupakan representasi fisik atau sebenarnya dari database dengan mempertimbangkan software DBMS serta model struktur yang akan digunakan. Tipe data bersifat lebih khusus dan spesifik. PDM yang valid dapat dikonversikan ke CDM tanpa eror, begitu juga sebaliknya. Berikut tampilan PDM pada Gambar 3.20.
tb SuratMasuk No_SuratMasuk NoUrut Tanggal_SuratMasuk Kepada_SuratMasuk Prihal Jenis AslSrtMasuk TglTerima_SuratMasuk Isi Lamp_SrtMasuk Rak_SrtMasuk Penyimpanan Jadwal_Retensi ...
varchar(50) varchar(10) timestamp varchar(50) varchar(50) varchar(20) varchar(50) timestamp varchar(20) varchar(20) varchar(25) varchar(50) varchar(15)
tbDisposisi NoAgd No_SuratMasuk Username AslSrt Tanggal_Disposisi Tanggal_Terima Sifat FK_TBDISPOS_RELATIONS_TB_SURAT Prihal_SuratDisposisi Kepada_SuratDisposisi Harap S1 S2 S3 S4 ...
FK_TBKODESU_RELATIONS_TB_SURAT
varchar(10) varchar(50) varchar(50) varchar(50) timestamp timestamp varchar(50) varchar(50) varchar(50) varchar(50) varchar(50) varchar(50) varchar(50) varchar(50)
FK_TBDISPOS_RELATIONS_TBLOGIN
tbLogin tbKodeSurat KodeS varchar(50) No_SuratMasuk varchar(50) Prihal_Klasifikasi varchar(50) ...
Username varchar(50) Nama_Lengkap varchar(100) Password varchar(50) ...
FK_TBSURATK_RELATIONS_TBKODESU FK_CUTI_RELATIONS_TBLOGIN Cuti tbSuratKeluar No_SuratKeluar KodeS Tanggal_SuratKeluar Sifat_SuratKeluar Kepada_SuratKeluar Prihal_SuratKeluar Pengirim Lamp Cat Rak ...
varchar(50) varchar(50) timestamp varchar(50) varchar(50) varchar(50) varchar(50) varchar(50) varchar(100) varchar(50)
No_Surat Username Nama_Pemohon Jabatan Tanggal_Mulai Tanggal_Berakhir Jenis_Cuti Alasan_Cuti ...
varchar(30) varchar(50) varchar(50) varchar(50) timestamp timestamp varchar(20) varchar(200)
Gambar 3.23 Physical Data Model Sistem Informasi Manajemen Surat
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
87
Dalam penggambaran PDM di atas digambarkan bahwa terdapat 6 entitas dari sistem informasi ini. Terdapat 2 entitas yang tidak memiliki relasi antara keduanya atau relasi dengan entitas lain. Dua buah entitas yang tidak memiliki relasi tersebut ialah login dan Cuti, karena cuti tidak terkait dengan aktifitas manajemen surat lainnya.
3.4
Perancangan Struktur Menu Pertama, dalam merancang struktur menu
sebuah
aplikasi
ataupun
sistem informasi, acuan yang digunakan adalah mengenai aktor, maka berikut adalah struktur menu aplikasi yang mengakomodasi aktor – aktor yang terlibat, yaitu
dari
sisi
Pengguna
dan
Sistem
Informasi
Manajemen
Surat.
Entri Surat Masuk
Entri Surat Keluar Laporan Surat Masuk
Surat Disposisi Registrasi Akun
Halaman Beranda Laporan Surat Keluar
Laporan
Laporan Surat Disposisi
Pencarian
Laporan Pengajuan Cuti
Pengajuan Cuti
Kode Klasifikasi
Gambar 3.24 Struktur Menu Sistem Informasi Manajemen Surat
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
88
3.5
Perancangan Antarmuka atau Interface Pengguna Desain interface atau desain antar muka dibuat untuk memudahkan
pengguna maupun admin dalam penggunaan sistem. Form-form yang dirancang meliputi konsep interaksi manusia dengan komputer dimana seorang pengguna atau admin dengan mellihat form dapat mengerti langkah apa saja yang akan dilakukan dalam proses penginputan data. Berikut adalah rancangan tampilan form-form pada aplikasi Sistem Informasi Manajemen Surat. 3.5.1 Rancangan Antarmuka Halaman Awal
Desain halaman utama merupakan tampilan pertama ketika sistem informasi dijalankan. Terdapat isian yang harus dilengkapi oleh pengguna jika belum terdaftar dalam sistem informasi ini. Rancang halaman awal dapat dilihat pada Gambar 3.22
Gambar 3.25
Rancangan Antarmuka Halaman Awal
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
89
Pada halaman awal seperti tampak pada gambar 3.22, diperlukan dua inputan yaitu,
a. Username [textbox] : string b. Password [textbox] : string (input hanya menampakkan tanda bulat hitam) Selain dua inputan tersebut, terdapat lagi satu tombol, yaitu Login, untuk meminta sistem melakukan proses autentikasi terhadap inputan yang sudah dimasukkan, dan Register, untuk meminta sistem membuka halaman pendaftaran akun. 3.5.2 Rancangan Antarmuka Halaman Registrasi
Halaman registrasi seperti tampak pada gambar 3.23, disediakan bagi calon Pengguna yang ingin mendaftarkan akunnya. Ada 4 inputan data yang diperlukan dan berikut adalah desain rancangannya.
Gambar 3.26 Rancangan Antarmuka Halaman Registrasi
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
90
Terdapat 4 inputan dalam desain antarmuka halaman registrasi di atas, yaitu : a.
Username [textbox] : string
b.
Nama Lengkap [textbox] : string
c.
Password [textbox] : string
d.
Verifikasi password [textbox] : string [mengetik ulang Password]
Selain inputan teks, ada dua tombol, yaitu Reset, untuk pengulangan pengisian dari awal proses registrasi, dan satu lagi yaitu Tambah, untuk konfirmasi inputan yang telah diisi dan sekaligus memerintahkan sistem untuk memasukkan data yang telah diinputkan disimpan ke database. 3.5.3 Rancangan Antarmuka Halaman Beranda Halaman beranda atau lebih dikenalnya sebagai halaman menu utama atau Homepage merupakan halaman dimana setelah pengguna berhasil login , maka sistem akan menampilkan halaman utama yang merupakan lanjutan tahapan dari sistem itu sendiri. Jika setelah login, dan tampil halaman beranda, namun pengguna hendak membatalkan aktifitas manajemen surat, maka pengguna dapat keluar dari sistem dengan memilih icon “Logout”. Dan pengguna akan keluar dari sistem, selanjutnya pilih Exit untuk menutup lembar halaman Sistem Informasi Manajemen Surat ini, ataupun pengguna dapat memilih icon silang pada pojok kanan atas untuk langsung keluar tanpa konfirmasi
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
91
dari sistem itu sendiri. Rancang tampilan halaman utama atau beranda dari Sistem Informasi Manajemen Surat ini dapat dilihat pada gambar 3.24.
Gambar 3.27 Rancangan Antarmuka Halaman Beranda Tampilan antarmuka di atas merupakan halaman utama dari pada Sistem Informasi Manajemen Surat itu sendiri. Pada tampilan tersebut di sebutkan bahwa terdapat nama pengguna beserta nama lengkapnya. 3.5.4 Rancangan Antarmuka Halaman Ubah Password Halaman Ubah Password ini bertujuan untuk mengubah password login yang digunakan oleh pengguna ketika hendak mengakses sistem. Dimana pengguna menghendaki mengganti password lamanya dengan password baru. Rancang antarmukanya seperti Gambar 3.25.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
92
Gambar 3.28 Rancangan Antarmuka Halaman Ubah Password 3.5.5
Rancangan Antarmuka Halaman Logout Desain halaman ini hanya sederhana berupa tampilan kotak dialog
konfirmasi kepada pengguna sebelum keluar dari sistem informasi ini, seperti Gambar 3.26.
Gambar 3.29 Rancangan Antarmuka Halaman Logout
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
93
3.5.6 Rancangan Antarmuka Halaman Entri Surat Masuk Halaman Surat Masuk merupakan halaman yang menjadi manajemen utama dalam sistem informasi ini, seperti terlihat pada Gambar3.27.
Gambar 3.30 Rancangan Antarmuka Halaman Entri Surat Masuk 3.5.7 Rancangan Antarmuka Halaman Entri Surat Keluar Tampilan halaman ini tidak jauh berbeda dengan tampilan halaman pada menu Entri Surat Masuk, lebih jelasnya bias dilihat pada Gambar 3.28.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
94
Gambar 3.31 Rancangan Antarmuka Halaman Entri Surat Keluar 3.5.8 Rancangan Antarmuka Halaman About Halaman ini berisi garis besar atau fungsionalitas dari Sistem Informasi Manajemen Surat, seperti Gambar 3.28.
Gambar 3.32 Rancangan Antarmuka Halaman About
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
95
3.5.9 Rancangan Antarmuka Halaman Disposisi Surat Halaman ini mengacu pada surat disposisi yang digunakan lintas bidang di Dinas Koperasi & UMKM, terlihat pada Gambar 3.29.
Gambar 3.33 Rancangan Antarmuka Halaman Surat Disposisi 3.5.10 Rancangan Antarmuka Halaman Pengajuan Cuti Halaman ini dirancang untuk mengajukan cuti yang dapat digunakan oleh pegawai atau karyawan dari instansi Dinas Koperasi & UMKM tersebut. Dan di halaman ini disertakan Jabatan pengaju cuti untuk keterangan dalam pengolahan jenis cuti yang akan di ambil.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
96
Gambar 3.34 Rancangan Antarmuka Halaman Pengajuan Cuti 3.5.11 Rancangan Antarmuka Halaman Insert Kode Klasifikasi Halaman ini digunakan untuk inputan kode surat masuk.
Gambar 3.35 Rancangan Antarmuka Halaman Kode Klasifikasi
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
97
3.5.12 Rancangan Antarmuka Halaman Pencarian Surat Halaman pencarian ini diperuntukkan dalam mencari jenis surat. Yang ditampilakan dalam pencrian surat adalah klasifikasi dan nomor surat, maka data akan ditampilkan dal/am bentuk menu tabel pada kotak dialo di bawahnya. Seperti yang nampak pada gambar berikut.
Gambar 3.36 Rancangan Antarmuka Halaman Kode Klasifikasi
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
98
BAB IV IMPLEMENTASI PROGRAM
Bab impelmentasi program ini akan mengupas dan menjabarkan tentang implementasi program dari hasil analisa dan perancangan sistem yang ada pada bab tiga, serta bagaimana cara sistem tersebut dijalankan. Dalam implementasi ini berisi langkah-langkah untuk membuat aplikasi Sistem Informasi Manajemen Surat menggunakan Visual Basic 2010 sebagai aplikasi pemogramannnya
4.1 Kebutuhan Perangkat Lunak Yang Digunakan Pada bab perancangan dan implementasi program, terdapat atau disertakannya juga beberapa perangkat lunak (software) yang digunakan untuk mendukung pembuatan Sistem Informasi Manajemen Surat Berbasis Desktop adalah sebagai berikut. 4.1.1 Kebutuhan Perangkat Lunak (Software) Dalam pembuatan Sistem Informasi Manajemen Surat Berbasis Desktop ini peneliti menggunakan beberapa perangkat lunak (software), diantaranya adalah sebagai berikut: a. Windows 7 Ultimate merupakan sistem operasi yang digunakan b. Microsoft Office Word 2010 digunakan untuk menyusun laporan Skripsi
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
99
c. Microsoft Office Visio 2007 digunakan untuk membuat rancangan atau aturan-aturan yang ada dalam aplikasi ini d. Microsoft Office Excel 2010 digunakan untuk pembuatan tabel spesifikasi use case sistem informasi ini e. Snipping Tool digunakan untuk memotong sebagian gambar yang digunakan untuk ditampilkan dalam pembuatan laporan f. Visual Basic 2010 merupakan aplikasi bahasa pemrograman yang dipakai g. Power Designer 15 digunakan untuk membuat rancangan data flowdiagram (DFD) dan membuat rancangan Conceptual Data Model (CDM) serta Physical Data Model (PDM) h. SQL Server 2008 digunakan untuk perancangan basis data 4.1.2
Kebutuhan Perangkat Keras (Hardware) Dalam pembuatan aplikasi Sistem Informasi Manajemen Surat ini
menggunakan beberapa perangkat keras (hardware), diantaranya adalah sebagai berikut. a. Processor Intel (R) Core (TM) 2 Duo CPU b. Memory (RAM) 1 GB c. Hard Disk 250 GB d. Monitor e. Keyboard f. Mouse g. Printer
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
100
4.2
Instalasi Program dan Pengaturan Sistem Dalam pembuatan aplikasi Sistem Informasi Manajemen Surat ini
dibutuhkan perangkat lunak yang sudah terinstalasi. Adapun tahapan instalasi dan setting sistem, diantaranya adalah sebagai berikut: a. Install sistem operasi : Windows 7, Microsoft Office Word 2010 Microsoft Office Visio 2007, Microsoft Office Excel 2010, dan Snipping Tool b. Install aplikasi pemrograman ialah Visual Basic 2010 dan Power Designer 15 c. Install aplikasi database SQL Server 2008
4.3
Implementasi Aplikasi Desain Antarmuka Dalam pembahasan implementasi aplikasi desain antarmuka pada aplikasi
Sistem Informasi Manajemen Surat akan membahas beberapa form, form, yang diantaranta terdapat form halaman awal, form Registrasi form Beranda, form ubah password, form logout, form Entri Surat Masuk, form Entri Surat Keluar, form about, form Disposisi Surat, form pengajuan cuti, form insert
kode
klasifikasi, form data surat masuk, dan form data surat keluar. Selain form tersebut, juga terdapat menu Laporan Surat Masuk dan Laporan Surat Keluar. Adapun pada beberapa menu akan disisipkan laporan pada masing-masing menunya. Laporan tersebut selain dapat dicetak dan digunakan oleh pengguna untuk memperoleh keakuratan data dalam bentuk fisik, juga dapat dijadikan himpunan data surat tersimpan yang terdapat dalam sistem.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
101
4.3.1
Form Halaman Awal
Halaman awal atau yang lebih dikenal dengan home page adalah halaman dimana pengguna memasuki tahapan login sebelum pengaksesan ke dalam suatu aplikasi. Desain halaman utama merupakan tampilan pertama ketika sistem informasi dijalankan. Terdapat isian yang harus dilengkapi oleh pengguna jika belum terdaftar dalam sistem informasi ini, halaman awal dapat dilihat pada Gambar 4.1
Gambar 4.1
Tampilan Halaman Awal
Pada halaman awal seperti yang tampak pada gambar 4.1 diperlukan dua inputan untuk mengakses ke dalam sistem, dimana masingmasing inputan tersebut memiliki fungsi berbeda dalam sistem informasi ini. Logo Pemerintah Provinsi Jawa Timur sebagai simbolik.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
102
a. Username [textbox] : string b. Password [textbox] : string (input hanya menampakkan tanda bulat hitam) Selain dua inputan tersebut, terdapat lagi satu tombol, yaitu Login, untuk meminta sistem melakukan proses autentikasi terhadap inputan yang sudah dimasukkan, dan Register, untuk meminta sistem membuka halaman pendaftaran akun. 4.3.2
Form Halaman Registrasi
Halaman registrasi seperti tampak pada gambar 4.2, disediakan bagi calon Pengguna yang ingin mendaftarkan akunnya. Ada 4 inputan data yang diperlukan dan berikut adalah desain rancangannya.
Gambar 4.2 Halaman Registrasi Terdapat 4 inputan dalam desain antarmuka halaman registrasi di atas, yaitu : a.
Username [textbox] : string
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
103
b.
Nama Lengkap [textbox] : string
c.
Password [textbox] : string
d.
Verifikasi password [textbox] : string [mengetik ulang Password]
Selain inputan teks, ada dua tombol, yaitu Reset, untuk pengulangan pengisian dari awal proses registrasi, dan satu lagi yaitu Tambah, untuk konfirmasi inputan yang telah diisi dan sekaligus memerintahkan sistem untuk memasukkan data yang telah diinputkan disimpan ke database. 4.3.3
Form Halaman Beranda Halaman beranda atau lebih dikenalnya sebagai halaman menu
utama atau Homepage merupakan halaman dimana setelah pengguna berhasil login , maka sistem akan menampilkan halaman utama yang merupakan lanjutan tahapan dari sistem itu sendiri. Jika setelah login, dan tampil halaman beranda, namun pengguna hendak membatalkan aktifitas manajemen surat, maka pengguna dapat keluar dari sistem dengan memilih icon “Logout”. Dan pengguna akan keluar dari sistem, selanjutnya pilih Exit untuk menutup lembar halaman Sistem Informasi Manajemen Surat ini, ataupun pengguna dapat memilih icon silang pada pojok kanan atas untuk langsung keluar tanpa konfirmasi dari sistem itu sendiri. Pada saat halaman ini diakses, maka halaman ini akan tampul dalam ukuran maximize sesuai dengan luas form itu sendiri ketika
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
104
dirancangan. Di sebelah kiri terdapat nama pengguna beserta nama lengkap dari pengguna tersebut. Tampilan halaman utama atau beranda dari Sistem Informasi Manajemen Surat ini dapat dilihat pada gambar 4.3.
Gambar 4.3 Rancangan Antarmuka Halaman Beranda Tampilan antarmuka di atas merupakan halaman utama dari pada Sistem Informasi Manajemen Surat itu sendiri. 4.3.4
Form Halaman Ubah Password Halaman ini bertujuan untuk mengubah password pengguna.
Dimana pengguna menghendaki mengganti password lamanya dengan
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
105
password baru. Proses ini diawali dengan penginputan password lama kemudian diikuti dengan penginputan password baru, yang pada tahapan akhirnya diakhiri dengan pengisian pada kolom Verifikasi password., tampak seperti Gambar 4.4.
Gambar 4.4 Form Halaman Ubah Password Untuk penyimpanannya pengguna harus memilih pilihan “Proses” untuk penyimpanan inputan password baru pada database system. Setelah data tersimpan dan sistem menampilkan status penyimpanan, pengguna bisa memilih pilihan “Tutup”. 4.3.5
Form Halaman Logout Halaman ini hanya sederhana berupa tampilan konfirmasi kepada
pengguna sebelum keluar dari sistem. Jika pengguna hendak keluar dari sistem, pengguna diwajibkan melakukan logout dari sistem, yang
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
106
bertujuan penutupan akun pengguna agar tidak diakses oleh pengguna lain. Adapaun tampilan halamannya seperti Gambar 4.6
Gambar 4.5 Halaman Logout 4.3.6
Form Halaman Entri Surat Masuk Halaman Surat Masuk merupakan halaman yang menjadi
manajemen utama dalam sistem informasi ini, seperti terlihat pada Gambar 4.7.
Gambar 4.6 Halaman Entri Surat Masuk
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
107
Pengguna dapat meninputkan data yang tercantum pada surat fisik, dan melengkapi isian yang sesuai dengan yang terlihat pada sistem. Setelah data dilengkapi dan disimpan, maka data tadi akan muncul di tabel bawah. Tabel tersebut bertujuan jika pengguna ingin menghapus atau mengedit data yang sebelumnya dientrikan pada sistem. 4.3.7
Form Halaman Entri Surat Keluar Tampilan halaman ini tidak jauh berbeda dengan tampilan halaman
pada menu Entri Surat Masuk, lebih jelasnya bias dilihat pada Gambar 4.8
Gambar 4.7 Halaman Entri Surat Keluar Pada halaman ini isian yang tersedia tidak jauh berbeda dengan isian yang terdapat pada Entri Surat Masuk, yang membedakan adalah tidak terdapatnya isian untuk Penyimpanan dan Jadwal Retensi, karena
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
108
memang isian tersebut hanya diperuntukan untuk surat atau berkas masuk saja. 4.3.8
Form Halaman About Halaman ini berisi garis besar atau fungsionalitas dari Sistem
Informasi Manajemen Surat, seperti Gambar 4.9
Gambar 4.8 Halaman About Seperti yang tampak pada gambar di atas, dicantumkan bahwa sistem ini hanya mengangani aktifitas berupa manajemen surat masuk, surat keluar, data pengguna, surat disposisi, dank ode klasifikasi, serta pengajuan cuti 4.3.9
Form Halaman Disposisi Surat Halaman ini mengacu pada surat disposisi yang digunakan lintas
bidang di Dinas Koperasi & UMKM. Menu ini bisa diakses setelah terinputkan data pada menu Entri Surat Masuk sebelumnya, dengan begitu nomor surat yang telah diinputkan pada menu Entri Surat Masuk dapat muncul pada menu Disposisi Surat, dan pengguna selanjunya dapat
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
109
mengisi isian lain untuk diterskan pada yang bersangkutan, sperti terlihat pada Gambar 4.10
Gambar 4.9 Halaman Surat Disposisi Dalam menu ini dilengkapi pilihan untuk mencetak lembar Disposisi yang diperlukan instansi terkait untuk dijadikan bukti fisik dari output sistem informasi ini. Pada lembar laporan yang tercetak nanti terisi sesuai yang terinputkan pada kolom isian di atas, jika terdapat kolom isian yang dikosongi, maka pada lembar disposisi nanti juga akan kosong pada isian tersebut.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
110
4.3.10 Form Halaman Pengajuan Cuti
Halaman ini digunakan untuk pengajuan cuti yang dapat digunakan oleh pegawai atau karyawan dari instansi Dinas Koperasi & UMKM tersebut.
Gambar 4.10 Halaman Pengajuan Cuti Pengguna harus melengkapi data pada isian halaman ini, jika ingin melakukan pencetakan laporan dari menu Pengajuan Cuti ini. Jika pengaju cuti mengajukan cuti karena sakit, maka dalam bukti fisiknya harus dilampirkan bukti fisik surat keterangan sakit dari pihak yang berwenang. Pengguna juga harus mengisikan tanggal pengajuan cuti dan tanggal berakhirnya cuti. Pada penerapannya, tanggal pengajuan cuti tidak boleh sama dengan tanggal cuti berakhirnya cuti, jika terisi sama, maka
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
111
sistem akan menampilkan kotak dialog bahwa tanggal pengajuan dan tanggal berakhir tidak boleh sama, dan sistem akan mereset data pada menu ini untuk diinputkan kembali dari awal. 4.3.11 Form Halaman Insert Kode Klasifikasi
Halaman Kode Klasifikasi digunakan untuk inputan kode surat masuk. Setiap bidang memiliki kode klasifikasi berbeda.
Gambar 4.11 Halaman Kode Klasifikasi Pada halaman ini bertujuan untuk penginputan kode klasifikasi yang diperlukan dalam pengisian menu Entri Surat Masuk dan juga menu Entri Surat Keluar. Adapun kode klasifikasi tersebut memiliki perihalnya sendiri sesuai dengan masing-masing bidang yang terdapat pada Dinas Koperasi & UMKM Jawa Timur.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
112
4.3.12 Form Halaman Pencarian
Halaman pencarian ini digunakan untuk mencari data surat yang telah tersimpan pada database system.
Gambar 4.12 Halaman Pencarian Surat Pengguna yang telah masuk dalam sistem dapat melakukan pencarian surat sesuai klasifikasi surat. Kalsifikasi surat dibedakan menjadi pencarian sesuai nomor surat dan instansi pengirim surat tersebut. Jika dipilih nomor surat maka akan tampil kolom untuk pengisian nomor surat tersebut. Pada tabel di bawahnya akan ditampilkan lampiran yang tercatat sesuai data yang telah dientrikan, dan pada picture box dapat ditampilkan surat yang telah di-scaning.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
113
BAB V UJI COBA DAN EVALUASI
Pada bab ini membahas uji coba dan evaluasi perangkat lunak Sistem Informasi Manajemen Surat. Perangkat lunak diuji coba dari segi fungsionalitas dengan scenario yang akan dibuat untuk pengujian sistem. Pengujian akan dilakukan sesuai dengan perancangan use case dan implementasi yang semuanya telah dijelaskan pada bab 3.
5.1
Lingkungan Uji Coba Pada aplikasi berbasis desktop yang dibuat ini, disertai uji coba program
secara detail mengenai tata kelola pendataan surat yang terjadi dalam instansi tersebut, khusunya pada Dinas Koperasi & UMKM Provinsi Jawa Timur. Uji coba aplikasi dilakukan dengan menggunakan satu buah komputer sebagai piranti perantara antara perangkat lunak dengan pengguna.
Komputer Pengguna Spesifikasi hardware - Intel(R) Core(TM)2 Duo CPU T5800 @ 2.00GHz - RAM 1.00 GB Spesifikasi software - Windows 7 Ultimate
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
114
- Microsoft Visual Studio 2010 - Microsoft SQL Server 2008
5.2
Skenario Uji Coba Berdasarkan Implementasi Desain Interface
Uji coba ini dilakukan untuk menguji apakah fungsionalitas yang diidentifikasi
pada
tahap
implementasi
desain
interface
benar-benar
diimplementasi dan bekerja seperti yang semestinya. Uji coba akan didasarkan pada beberapa skenario untuk menguji kesesuaian respon aplikasi. 5.2.1 Pengujian Halaman Eksekusi Aplikasi Ketika Aplikasi desktop ini dieksekusi oleh pengguna, maka tampilan
pertama yang didapati oleh pengguna adalah tampilan
splashscreen yang dirancang sebagai tampilan pembuka aplikasi ini.
Gambar 5.1 Tampilan Splashscreen Aplikasi Surat
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
115
Tampilan di atas merupakan tampilan pembuka sebelum pengguna memasuki halaman login atau halaman awal dari sistem informasi ini. Seperti yang terlihat pada Gambar 5.1 di atas bahwa terdapat prosentase dari proses eksekusi yang sedang berjalan. Pada halaman spalshscreen juga dicantumkan Dinas Koperasi & UMKM sebagai instansi dimana aplikasi ini diperuntukkan, dan dirancang oleh Indah Winastuti Aisyah sebagai pembuat sekaligus peneliti yang terkait dengan sistem informasi ini. 5.2.2 Pengujian Menu Login Sistem Informasi Halaman login merupakan halaman pokok sebelum pengguna masuk ke dalam sistem informasi. Dimana halaman ini merupakan halaman vital karena tanpa login, pengguna tidak akan bisa mengakses sistem dan melakukan pendataan. Pengujian sistem menggunakan scenario sesuai Tabel 5.1 Tabel 5.1
Skenario Pendaftaran Akun
ID Nama Tujuan uji coba Kondisi Awal
UJ-01 Uji Coba Menu Login Menguji fitur pendaftaran akun Pengguna belum terdaftar
Skenario 1
Pengguna tidak memasukkan kombinasi nama dan password
Masukan
Nama Akun dan kata sandi yang sesuai Nama akun : Kata sandi :
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
116
Keluaran yang diharapkan
Sistem menampilkan notifikasi bahwa nama akun dan password tidak terdaftar dan pengguna tidak bisa mengakses sistem
Hasil uji coba
BERHASIL
Skenario 2
Masukan
Pengguna memasukkan kombinasi nama dan password yang sesuai Nama Akun dan kata sandi yang sesuai Nama akun : indah Kata sandi : indah
Keluaran yang diharapkan
Pengguna dapat masuk ke dalam sistem
Hasil uji coba
BERHASIL
Skenario 3
Pengguna memasukkan kombinasi nama dan password yang tidak sesuai
Masukan
Nama Akun dan kata sandi yang tidak sesuai Nama akun : salah Kata sandi : salah
Keluaran yang diharapkan
Muncul notifikasi dari sistem dan pengguna gagal mengakses sistem
Hasil uji coba
BERHASIL
Pada gambar 5.1 adalah tampilan halaman awal atau halaman login yang bersinggungan dengan sistem. Dimana pada halaman tersebut disediakan textbox untuk pengisian nama beserta kata sandi atau password yang menjadi kunci untuk mengakses sistem informasi ini. Pada halaman tersebut juga ditampilkan logo Pemerintah Provinsi Jawa Timur, dimana Dinas Koperasi & UMKM sebagai instansi terkait tempat diadakannya penelitian ini. Sedangkan Gambar 5.2 dan gambar berikutnya merupakan hasil skenario dari pengujian halaman login. Pada tabel di atas telah dicantumkan 3 skenario untuk pengujian pada menu login ini.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
117
Gambar 5.2 Tampilan Halaman Login Sistem Informasi Uji coba skenario 1 dengan pengosongan pada isian username dan password, dan sistem akan menampilkan notifikasi peringatan kegagalan mengakses sistem seperti yang terlihat pada Gambar 5.3.
Gambar 5.3 Notifikasi Hasil Uji Coba Skenario 1
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
118
Pada tahap berikutnya adalah pengujian skenario 2 dengan memasukkan kombinasi username dan password yang telah terdaftar pada sistem.
Dengan
memasukkan
“indah”
sebagai
username,
dan
dikombinasikan dengan “indah” sebagai passwordnya.
Gambar 5.4
Tampilan Pengujian Skenario 2
Setelah memilih Login, maka sesuai yang tertera pada skenario 2 bahwa akan muncul notifikasi dari sistem seperti terlihat pada Gambar 5.5.
Gambar 5.3 Notifikasi Hasil Uji Coba Skenario 2
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
119
Skenario berikutnya adalah skenario 3 dengan menginputkan kombinasi nama dan kata sandi yang tidak sesuai. Alur dari skenario 3 telah tertera pada Tabel 5.1 dan tampilannya sebagai berikut.
Gambar 5.6
Tampilan Pengujian Skenario 3
Karena pengguna melakukan kesalahan yang mungkin tidak sengaja sesuai skenario 3 dengan kombinasi antara nama dan kata sandi yang tidak sesuai, maka sistem menampilkan notifikasi peringatan, dan pengguna gagal mengakses sistem.
Gambar 5.7 Notifikasi Hasil Uji Coba Skenario 3
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
120
5.2.3 Pengujian Menu Pendaftaran Akun atau Data Account Pendaftaran akun merupakan ketentuan awal ketika pengguna tidak memiliki ID yang telah terdaftar pada sistem informasi ini. Untuk langkah awalnya adalah pengaksesan melalui halaman login dengan memilih Register, maka sistem akan menampilkan halaman pendaftaran akun atau Data Account. Untuk itu dibuatlah skenario pengujian sistem sesuai Tabel 5.2. Tabel 5.2 Skenario Pengujian Pendaftaran Akun
ID Nama Tujuan uji coba Kondisi Awal
UJ-02 Uji Coba Pendaftaran Akun Menguji fitur pendaftaran akun Pengguna belum terdaftar
Skenario 1
Pengguna tidak melengkapi isian menu pada fitur pendaftaran akun
Masukan
Nama Akun dan kata sandi yang tidak lengkap Nama akun : Winastuti Nama Lengkap: Winastuti Aisyah Password : 123456 Verifikasi Password :
Keluaran yang diharapkan
Sistem menampilkan notifikasi bahwa data harus dilengkapi dan sistem kembali mereset daftar isian menu tersebut
Hasil uji coba Skenario 2
Masukan
BERHASIL Pengguna memasukkan kombinasi password dan verifikasi password yang tidak sesuai Nama Akun dan kata sandi yang tidak sesuai Nama akun : Winastuti Nama Lengkap: Winastuti Aisyah Password : 123456 Kata sandi : asdfghjkl
Keluaran yang diharapkan
Sistem menampilkan notifikasi kesesuaian antara password dan verifikasi password tidak cocok
Hasil uji coba
BERHASIL
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
121
Skenario 3
Pengguna mendaftarkan nama yang sebelumnya telah terdaftar dalam pengguna sistem
Masukan
Nama Akun dan kata sandi yang sesuai Nama akun : Winastuti Nama Lengkap: Winastuti Aisyah Password : 123456 Verifikasi Password : 123456
Keluaran yang diharapkan
Muncul notifikasi dari sistem username telah terdaftar, dan dipersilahkan untuk menggunakan username lain
Hasil uji coba
BERHASIL
Skenario 4
Pengguna mendaftarakn akun baru dengan kombinasi nama dan kata sandi yang berbeda Nama Akun dan kata sandi yang baru
Masukan
Nama akun : Aisyah
Nama Lengkap: Winastuti Aisyah
Password : 123456
Verifikasi Password : 123456
Keluaran yang diharapkan
Data akun pengguna berhasil tersimpan dan pengguna berhasil terdaftar dalam sistem
Hasil uji coba
BERHASIL
Uji coba skenario 1 seperti gambar 5.8.
Gambar 5.8 Uji Coba Skenario 1 Pendaftaran Akun
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
122
Dan sesuai skenario 1 yang tertera pada tabel 5.2, maka sistem menampilkan notifikasi seperti berikut.
Gambar 5.9 Notifikasi Hasil Uji Coba Skenario 1 Tahap berikutnya adalah uji coba menggunakan skenario 2 dengan verifikasi kata sandi yang tidak sesuai dengan kata sandi yang diinputkan seperti terlihat pada gambar 5.10.
Gambar 5.10 Uji Coba Password dan Verifikasi Password Tidak Sesuai
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
123
Hasil uji coba dari skenario 2 dengan notifikasi dari sistem seperti terlihat pada gambar 5.11.
Gambar 5.11 Notifikasi Hasil Uji Coba Skenario 2 Tahapan berikutnya adalah pengujian skenario 3, yaitu kombinasi antara nama, nama lengkap, password¸dan verifikasi password
yang
sesuai.
Gambar 5.12 Uji Coba Skenario 3 Dengan Kombinasi Yang Sesuai
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
124
Hasil uji coba dari skenario 3dengan notifikasi dari sistem seperti terlihat pada gambar 5.13.
Gambar 5.13 Notifikasi Kesamaan Username Terdaftar Berdasarkan hasil notifikasi dari skenario 3 tersebut yang terdapat kesamaan user name terdaftar dengan user name yang akan didaftarkan, maka sistem menampilkan notifikasi seperti Gambar 5.13. Hasilnya pada isian User name akan dikosongi untuk diisi dengan user name baru. Seperti terlihat pada Gambar 5.14.
Gambar 5.14 Isian User Name Direset Oleh Sistem Karena Kesamaan
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
125
Pengujian skenario yang terakhir adalah skenario 4 dengan menginputkan user name baru yang belum terdaftar dalam sistem.
Gambar 5.15 Pengujian Skenario 4 Dengan Inputan User Name Baru Sebagai hasil dari pengujian skenario 4 dengan penginputan user name baru yang belum terdaftar dalam sistem, maka sistem menampilkan notifikasi dari hasil uji coba skenario 4 seperti yang terlihat pada Gambar 5.16.
Gambar 5.16 Notifikasi Data Akun Berhasil Tersimpan & Terdaftar
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
126
5.2.4 Pengujian Menu Beranda/Home Page Untuk pengujian menu ini tidak menggunakan skenario, karena setelah pengguna berhasil login dan bisa mengakses sistem, maka sistem akan menampilkan halaman beranda ini atau yang sering dikenal dengan istilah home page sebagai halaman awal sebelum memulai pengaksesan terhadap menu lain. Tampilannya seperti berikut.
Gambar 5.17 Tampilan Menu Beranda atau Home Page Dalam menu bar tercantum beberapa aktifitas untuk pengolahan surat, yang diantaranya terdapat menu Entri Surat Masuk, Entri Surat Keluar, Surat Disposisi, dan Surat Pengajuan Cuti. Dalam tampilannya, terdapat nama pengguna beserta nama lengkapnya yang dalam sistem ditampilkan sebagai User dan Fullname.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
127
5.2.5 Pengujian Menu Ganti Password Dalam pengaksesannya, uji coba pada menu ini melibatkan password lama dan password baru yang akan digunakan dan disimpan. Tabel 5.3 ID Nama Tujuan uji coba
Skenario Uji Coba Pergantian Password UJ-03 Uji Coba Ganti Password Menguji fitur pergantian password lama dengan password baru
Kondisi Awal
Pengguna belum terdaftar
Skenario 1
Pengguna tidak melengkapi isian menu pada fitur pergantian password
Masukan
Password yang kurang lengkap Password Lama : admin Password Baru : samin Ulang Password Baru :
Keluaran yang Sistem menampilkan notifikasi peringatan dan diharapkan kembali mereset daftar isian menu tersebut Hasil uji coba Skenario 2
Masukan
sistem
BERHASIL Pengguna memasukkan kombinasi password dan verifikasi password yang tidak sesuai Kombinasi password yang tidak sesuai Password Lama : admin Password Baru : samin Ulang Password Baru : 8samini
Keluaran yang Sistem menampilkan notifikasi password ulang tidak sama diharapkan dan sistem kembali mereset daftar isian menu tersebut Hasil uji coba
BERHASIL Pengguna mengganti password baru yang sesuai dengan Skenario 3 kelengkapan menu Kombinasi password lama dan baru yang sesuai Password Lama : admin Masukan Password Baru : samin Ulang Password Baru : samin Keluaran yang Password pengguna berhasil diperbaharui dan tersimpan diharapkan dalam sistem Hasil uji coba BERHASIL
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
128
Uji coba skenario pertama dengan tidak dilengkapinya isian pada “Ulang Password Baru”, dan terlihat seperti berikut.
Gambar 5.18 Uji Coba Menggunakan Skenario 1 Sedangkan hasil dari uji coba di atas seperti terlihat pada notifikasi gambar di bawah ini.
Gambar 5.19 Notifikasi Kegagalan Pada notifikasi di atas tertera pada isian “Ulang Password” tidak dilengkapi, maka ketika dieksekusi, sistem menampilkan notifikasi peringatan yang bahwasannya terjadi ketidaksamaan.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
129
Tahapan selanjutnya adalah pengujian skenario 2 dengan menggunakan metode memasukkan kombinasi password
baru dan
verifikasi password yang tidak sesuai.
Gambar 5.20 Pengujian Skenario 2 Ketidak Sesuian Kombinasi Sistem menampilkan notifikasi yang sama seperti notifikasi untuk uji coba skenario 1 di atas. Setelah notifikasi di terima pengguna, maka sistem kembali mereset isian pada fitur menu tersebut.
Gambar 5.21 Notifikasi Hasil Skenario 2
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
130
Karena notifikasi di atas tampil sebagai peringatan, selanjutnya sistem mereset seluruh isian yang tercantum pada menu Ubah Password. Seperti yang terlihat pada Gambar 5.22.
Gambar 5.22 Sistem Mereset Isian Password Untuk Diperbaharui
Gambar 5.23 Uji Skenario 3 Dengan Kesesuaian Antar Password
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
131
Pengujian skenario 3 menggunakan kombinasi kesesuaian antara password baru dengan pengulangan password baru. Selanjutnya pengguna memilih “Proses” untuk mengolah inputan tersebut.
Gambar 5.24 Notifikasi Berhasil Update Notifikasi di atas merupakan hasil uji coba skenario 3 yang menunjukkan bahwa pembaharuan password telah sukses dan tersimpan pada sistem. 5.2.6 Pengujian Menu Surat Masuk Pada menu berikut ini yaitu menu Entri Surat Masuk, menu ini digunakan untuk mendata surat masuk atau berkas masuk yang terjadi di Dinas Koperasi & UMKM Jawa Timur. Untuk itu dibuatlah skenario uji coba yang sama halnya dengan skenario uji coba meneu-menu sebelumnya. Seperti yang tercantum pada Tabel 5.4. Tabel 5.4 Skenario Uji Coba Surat Masuk
ID
UJ-04
Nama
Uji Coba Entri Surat Masuk
Tujuan uji coba
Menguji fitur pendataan surat atau berkas masuk
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
132
Kondisi Awal
Pengguna atau Sistem Informasi Manajemen Surat mengakses menu ini dan menyiapkan dokumen yang akan di data
Skenario 1
Pengguna tidak melengkapi salah satu isian menu
Masukan
Melengkapi data sesuai yang tertera pada dokumen
Keluaran yang Sistem menampilkan notifikasi peringatan diharapkan lengkapnya isian dan sistem mereset kembali
kurang
Hasil uji coba
BERHASIL
Skenario 2
Pengguna melakukan pendataan surat masuk sesuai yang tertera pada dokumen
Masukan
Dokumen/surat yang akan dientrikan pada sistem
Keluaran yang Status penyimpanan dokumen dan Data dapat tersimpan diharapkan dalam sistem Hasil uji coba
BERHASIL
Skenario 3
Pengguna hendak mengedit data yang telah tersimpan sebelumnya
Masukan
Pengeditan data yang telah tersimpan sebelumnya
Keluaran yang Status pembaharuan data yang berhasil diedit diharapkan Hasil uji coba
BERHASIL
Skenario 4
Pengguna hendak menghapus dientrikan dan tersimpan
Masukan
Dokumen/surat yang dipilih untuk dihapus pada data grid
data
yang
telah
Keluaran yang Status berhasilnya penghapusan dokumen diharapkan Hasil uji coba
BERHASIL
Skenario 5
Pengguna hendak mencetak laporan surat masuk
Masukan
Dokumen/surat yang telah tersimpan pada sistem
Keluaran yang Print out laporan surat masuk diharapkan Hasil uji coba
BERHASIL
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
133
Contoh dokumen yang akan dientrikan pada sistem..
Gambar 5.25 Contoh Dokumen/Surat Masuk Yang Akan Diinputkan
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
134
Contoh surat di atas merupakan contoh surat masuk yang diterima oleh Dinas Koperasi & UMKM. Surat di atas merupakan surat pengantar kerja praktek yang ditujukan pada Dinas Koperasi & UMKM. Dengan menggunakan Tabel 5.4 sebagai dasar untuk memulai skenario, maka skenario pertama dieksekusi dengan menggunakan contoh surat di atas.
Gambar 5.26 Skenario 1 Entri Data Dengan Isian Yang Kurang Lengkap
Gambar 5.27 Notifikasi Kelengkapan Data
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
135
Notifikasi di atas muncul ketika terdapat isian yang belum dilengkapi atau masih kosong, sehingga sistem gagal menyimpan data dengan munculnya notifikasi tersebut, sistem kembali mereset seluruh isian pada menu dan kembali dan status skenario 1 adalah BERHASIL.
Gambar 5.28 Menu Isian Yang Tereset Otomatis Oleh Sistem
Gambar 5.29 Uji Coba Menggunakan Skenario 2
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
136
Pada gambar 5.29 adalah uji coba menggunakan skenario 2. Dimana dalam skenario tersebut alurnya adalah dengan penginputan data pada sistem, dan setelah seluruh isian yang terdapat dalam menu Entri Surat Masuk terisi semua. Pilihan “Simpan” menjadi pilihan akhir pengguna. Maka sistem menampilkan status penyimpanan.
Gambar 5.30 Status Penyimpanan Berhasil Seusai tahap skenario 2, kini saatnya uji coba menggunakan skenario 3.
Gambar 5.31 Data Tersimpan Sebelum Diedit Dengan Skenario 3
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
137
Gambar 5.31 adalah gambar dimana data sebelum dieksekusi menggunkan skenario 3. Yaitu pada Jadwal Retensi terisi none, sedangkan pada skenario 3 Jadwal Retensi tersebut akan diganti menjadi 1 tahun.
Gambar 5.32 Data Surat Masuk Setelah Skenario 3 Pengguna dapat mengakses pilihan edit dengan cara mengklik 2x pada nomor urut surat, maka kolom isian akan memunculkan data dari nomor surat tersebut.. Untuk status skenario 3 ini adalah BERHASIL.
Gambar 5.33 Data Berhasil Diperbaharui
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
138
Penggunaa
skenario
berikutnya
adalah
skenario
4
untuk
penghapusan data. Alur eksekusi skenario ini hampir sama dengan alur eksekusi data dimana untuk mengaksesnya dalah melakukan klik pada nomor surat yang terdapat pada tabel data grid, lalu pengguna dapat memilih “Hapus” untuk mengeksekusinya. Seperti yang terlihat pada gambar berikut.
Gambar 5.34 Data Uji Coba Skenario 4 Yang Akan Dihapus
Gambar 5.35 Notifikasi Peringatan Sebelum Data Terhapus
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
139
Kemudian skenario berikutnya adalah skenario 5 dengan tujuan mencetak laporan surat berdasarkan data surat yang telah tersimpan dalam sistem dan terhimpun pada menu Laporan Surat Masuk. Untuk mengakses menu Laporan Surat Ini dapat dilihat gambar di bawah ini.
Gambar 5.36 Alur Akses Untuk Menu Laporan Surat Masuk
Gambar 5.37 Crystal Report Laporan Surat Masuk
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
140
Gambar 5.38 Print Out Laporan Surat Masuk Yang Diterima Pengguna 5.2.7 Pengujian Menu Surat Keluar Pada menu berikut ini yaitu menu Entri Surat Keluar, menu ini digunakan untuk mendata surat keluar atau berkas keluar yang terjadi di Dinas Koperasi & UMKM Jawa Timur. Untuk itu dibuatlah skenario uji coba yang sama halnya dengan skenario uji coba meneu-menu sebelumnya. Uji coba menu ini tidak jauh berbeda dengan uji coba pada Entri Surat Masuk Seperti yang tercantum pada Tabel 5.5. Tabel 5.5 Skenario Uji Coba Surat Keluar
ID
UJ-05
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
141
Nama
Uji Coba Entri Surat Keluar
Tujuan uji coba
Menguji fitur pendataan surat atau berkas keluar
Kondisi Awal
Pengguna atau Sistem Informasi Manajemen Surat mengakses menu ini dan menyiapkan dokumen yang akan di data
Skenario 1
Pengguna tidak melengkapi salah satu isian menu
Masukan
Melengkapi data sesuai yang tertera pada dokumen
Keluaran yang Sistem menampilkan notifikasi peringatan diharapkan lengkapnya isian dan sistem mereset kembali
kurang
Hasil uji coba
BERHASIL
Skenario 2
Pengguna melakukan pendataan surat keluar sesuai yang tertera pada dokumen
Masukan
Dokumen/surat yang akan dientrikan pada sistem
Keluaran yang Status penyimpanan dokumen dan Data dapat tersimpan diharapkan dalam sistem Hasil uji coba
BERHASIL
Skenario 3
Pengguna hendak mengedit data yang telah tersimpan sebelumnya
Masukan
Pengeditan data yang telah tersimpan sebelumnya
Keluaran yang Status pembaharuan data yang berhasil diedit diharapkan Hasil uji coba
BERHASIL
Skenario 4
Pengguna hendak menghapus dientrikan dan tersimpan
Masukan
Dokumen/surat yang dipilih untuk dihapus pada data grid
data
yang
telah
Keluaran yang Status berhasilnya penghapusan dokumen diharapkan Hasil uji coba
BERHASIL
Skenario 5
Pengguna hendak mencetak laporan surat keluar
Masukan
Dokumen/surat yang telah tersimpan pada sistem
Keluaran yang Print out laporan surat keluar diharapkan Hasil uji coba
BERHASIL
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
142
Contoh dokumen yang akan dientrikan pada sistem.
Gambar 5.39 Contoh Dokumen/Surat Keluar Yang Akan Diinputkan
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
143
Contoh surat di atas merupakan contoh surat keluar yang dikeluarkan oleh Dinas Koperasi & UMKM. Surat di atas merupakan surat pengantar kerja praktek yang ditujukan pada Dinas Koperasi & UMKM. Dengan menggunakan Tabel 5.5 sebagai dasar untuk memulai skenario, maka skenario pertama dieksekusi dengan menggunakan contoh surat di atas.
Gambar 5.40 Skenario 1 Entri Data Dengan Isian Yang Kurang Lengkap
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
144
Gambar 5.41 Notifikasi Kelengkapan Data Notifikasi di atas muncul ketika terdapat isian yang belum dilengkapi atau masih kosong, sehingga sistem gagal menyimpan data dengan munculnya notifikasi tersebut, sistem kembali mereset seluruh isian pada menu dan kembali dan status skenario 1 adalah BERHASIL.
Gambar 5.42 Menu Isian Yang Tereset Otomatis Oleh Sistem
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
145
Gambar 5.43 Uji Coba Menggunakan Skenario 2 Pada gambar 5.43 adalah uji coba menggunakan skenario 2. Dimana dalam skenario tersebut alurnya adalah dengan penginputan data pada sistem, dan setelah seluruh isian yang terdapat dalam menu Entri Surat Keluar terisi semua. Pilihan “Simpan” menjadi pilihan akhir pengguna. Maka sistem menampilkan status penyimpanan
Gambar 5.44 Status Penyimpanan Berhasil
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
146
Setelah data berhasil disimpan akan muncul pemberitahuan apakah pengguna hendak mencetak kartu surat keluar juga, seperti gambar berikut.
Gambar 5.45 Konfirmasi Pencetakan Kartu Surat Keluar Muncul Jendela report yang merupakan halaman untuk pencetakan kartu surat keluar seperti berikut.
Gambar 5.46 Halaman Report Kartu Surat Keluar
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
147
Seusai tahap skenario 2, kini saatnya uji coba menggunakan skenario 3.
Gambar 5.47 Data Tersimpan Sebelum Diedit Dengan Skenario 3 Gambar 5.45 adalah gambar dimana data sebelum dieksekusi menggunkan skenario 3. Yaitu pada rak penyimpanan akan diubah menjadi D20
Gambar 5.48 Data Surat Masuk Setelah Skenario 3
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
148
Gambar 5.49 Data Berhasil Diperbaharui Penggunaa skenario berikutnya adalah skenario 4 untuk penghapusan data. Alur eksekusi skenario ini hampir sama dengan alur eksekusi data dimana untuk mengaksesnya dalah melakukan klik pada nomor surat yang terdapat pada tabel data grid, lalu pengguna dapat memilih “Hapus” untuk mengeksekusinya. Seperti yang terlihat pada gambar berikut.
Gambar 5.50 Data Uji Coba Skenario 4 Yang Akan Dihapus
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
149
Gambar 5.51 Notifikasi Peringatan Sebelum Data Terhapus Kemudian skenario berikutnya adalah skenario 5 dengan tujuan mencetak laporan surat berdasarkan data surat yang telah tersimpan dalam sistem dan terhimpun pada menu Laporan Surat Masuk. Untuk mengakses menu Laporan Surat Ini dapat dilihat gambar di bawah ini.
Gambar 5.52 Alur Akses Untuk Menu Laporan Surat Keluar
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
150
Gambar 5.53 Crystal Report Laporan Surat Keluar
Gambar 5.54 Print Out Laporan Surat Keluar Yang Diterima Pengguna
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
151
5.2.8 Pengujian Menu Surat Disposisi Surat disposisi dalam Dinas Koperasi & UMKM digunakan sebagai surat yang akan diteruskan kepada pihak terkait. Sehingga menu pengisian surat disposisi berdasarkan data yang tersimpan pada menu Surat Masuk. Pengaksesanyya dengan memilih ikon disposisi pada menu utama sistem informasi. Ikon disposisi ditunjukkan dengan tanda merah.
Gambar 5.55 Akses Menu Menuju Menu Surat Disposisi Setelah menu disposisi diakses, maka pengguna akan masuk jendela menunya. Pengisian tujuan dari pada surat terssebut sudah ada dalam sistem. Dalam menu ini juga dilengkapi pencetakan lembar disposisi sebagai laporan atau hasil akhir dari pengolahan beberapa surat masuk yang akan d disposisikan. Adapaun laporannya nanti akan dibagi menjadi dua, untuk secretariat dan untuk penerima surat disposisi itu sendiri. Dapat dilihat pada gambar 5.56.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
152
Gambar 5.56 Akses Menu Menuju Menu Surat Disposisi Sedangkan untuk pencetakan menu lembar disposisinya atau laporannya, dapat diakses dengan memilih tombol “Cetak Lembar Disposisi”. Seperti berikut.
Gambar 5.57 Halaman Laporan Lembar Disposisi Surat
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
153
Jika yang tersebut diatas adalah laporan untuk lembar disposisi, maka pada gambar berikutnya merupakan laporan untuk pengguna atau laporan yang telah dan menerima disposisi surat.
Gambar 5.58 Halaman Laporan Umum Disposisi Surat 5.2.9 Pengujian Menu Pengajuan Cuti Menu pengajuan cuti ini diperuntukkan bagi pegawai yang akan mengajukan cuti dengan pendataan melalui sistem informasi ini. Pada menu ini disertai pula laporan umum pengajuan cuti yang menunjukkan data siapa saja pegawai yang mengajukan cuti.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
154
Gambar 5.59 Halaman Pengjuan Cui
Gambar 5.60 Halaman Laporan Umum Pengajuan Cuti
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
155
5.2.10 Pengujian Menu Help Menu help ini diperuntukkan bagi pengguna yang kesulitan untuk mengoperasikan sistem informasi ini. Oleh karenanya dirancanglah menu Help untuk memecahakan permasaahan tadi. Menu Help dapat diakses melalu barisan toolbars seperti berikut.
Gambar 5.61 Alur Akses Menuju Menu Help Kemudian pengguna akan mendapati tampilan seperti berikut.
Gambar 5.62 Tampilan Jendela Menu Help
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
156
5.2.11 Pengujian menu Pencarian Surat Menu pencariaan ini bertujuan untuk pecarian yang dilakukan oleh pengguna. Pencariaan surat tersebut dikelompokan sesuai jenis suratnya. Kemudian
untuk
tahap
berikutnya
dalam
pencarian
disesuaikan
berdasarkan instansi asal surat ataupun nomor surat yang akan dicari datanya. Langkah pertama dalam melakukan pencarian adalah dengan memasukkan jenis suratnya, kemudian pencarian dilakukan berdasarkan nomor surat atau instansi asal surat. Jika yang dipilih adalah pencarian berdaarkan nomor surat, makan akan ditampilkan pula hasil scaning dari surat tersebut. Akan tetapi bila pencarian berdasarkan instansi asal surat, maka pada picture box tidak dapat menampilkan gambar hasil scaning dari surat tersebut.
Gambar 5.63 Tampilan Pencarian Surat
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
BAB VI PENUTUP
Pada bab ini akan dibahas tentang kesimpulan dan saran dari pembuatan Sistem Informasi Manajemen Surat Pemerintah Provinsi Jawa Timur Berbasis Desktop Menggunakan Visual Basic 2010
6.1
Kesimpulan Dari hasil yang telah diuraikan maka dapat diperoleh kesimpulan sebagai
berikut. a.
Penanganan
atau
manajemen
surat
digital
atau
berbasis
komputerisasi memiliki beberapa kelebihan dalam pengefisian waktu pendataan dibanding penanganan surat secara konvensional (classical archives management). Terdapatnya menu tempat penyimpanan juga membuat admin lebih cepat dalam menemukan lokasi penyimpanan surat masuk (fisik). b.
Sistem informasi berbasis aplikasi desktop ini memberikan akses dalam pendataan surat masuk, surat keluar surat disposisinya, beserta surat pengajuan cuti dilengkapi dengan laporannya pada masing-masing menu tersebut sehingga tidak terbaur menjadi satu dengan laporan menu lain.. 157
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
158
c.
Admin bisa melakukan pencetakan form surat keluar serta surat disposisi untuk digunakan sesuai kebutuhan. Form tersebut merupakan form kosong yang dapat diisi sendiri sesuai masingmasing divisi.
d.
Penyusunan surat dapat dilakukan secara otomatis berdasarkan tanggal, dan jenis surat.
6.2
Saran Dari hasil yang telah diuaraikan sebelumnya, beberapa saran diberikan
yang sifatnya membangun, saran ini nantinya bisa dipertimbangkan untuk mengembangkan sistem yang telah dibuat. Karena aplikasi sudah dikembangkan dengan menggunakan teknologi atau bahasa pemrograman yang mampu dijalankan melalui aplikasi desktop maka untuk ke depannya berpotensi untuk dikembangkan menjadi sistem yang lebih baik dengan kemungkinan untuk diaplikasikan pada sistem informasi yang berbasis web. Pengembangan dapat berbentuk SMS Gateway, sehingga pengguna dari sistem tersebut dapat melakukan pengecekan laporan melalui SMS dan dapat dilakukan dimana pun tanpa harus berhadapan dengan PC dimana sistem informasi tersebut biasa diakses. Dan dimudahkannya tanpa ada batasan antar pengguna, dimana tidak dirancanganya sekat antara client dan server, jadi semua pengguna memiliki hak yang sama untuk mengakses aplikasi tersebut.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
DAFTAR PUSTAKA
George M. Scott, Principles of Management Information Systems, New York: McGraw-Hill, Inc., 1986, p.371. John Burch, Gary Grudnitski, Information Systems Theory and Practice, New York: John Wiley & Sons, fourth edition, 1986, pp.37-40. Witarto, MemahamiSistemInformasi, Bandung: Informatika Bandung, 2004. DidikDwiPrasetyo, Mengolah Database dengan Visual Basic .NET dan MySQL Server, Jakarta: PT Elex Media Komputindo, 2005. Abdul
Kadir,
DasarPerancangan&Implementasi
Database
Relasional,
Yogyakarta: Andi, 2008. Fairuzelsaid, 2010, AnanalisaSistemInformasi& Diagram Alir Data Rizky, Soeftam, Learning By Sample Visual Basic 2008, Jakarta: PT Prestasi Pustakarya, 2010
205 Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
159
LAMPIRAN
Pada bab lampiran ini akan dicantumkan source code dari Sistem Informasi Manajemen Surat ini. Source code dikategorikan sesuai masing-masing menu pada sistem ini.
Menu Login
Imports System.Data.SqlClient Public Class LoginForm_ok Dim cmd As SqlCommand Dim simpanID As Integer Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Call ConDatabase() con.Open() Try Dim sql = "select username, password from tblogin where username = '" & UsernameTextBox.Text & "' and password = '" & PasswordTextBox.Text & "'" cmd = New SqlCommand(sql, con) Dim dr As SqlDataReader = cmd.ExecuteReader If dr.Read = False Then MsgBox("Maaf Data Pengguna Tidak Sesuai !! ", MsgBoxStyle.OkOnly + MsgBoxStyle.Exclamation, "Login-System") dr.Close() bersih() UsernameTextBox.Focus() Else dr.Close() MsgBox("Login Sukses......!!! " & vbCrLf & "Selamat Datang " & UsernameTextBox.Text & vbCrLf & "Di Sistem Informasi Manajemen Surat", MsgBoxStyle.OkOnly + MsgBoxStyle.Information, "Welcome") Menu_Utama_OK.Show() bersih() con.Close() Me.Close() End If Catch ex As Exception
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
160
MsgBox(ex.Message) End Try End Sub Sub bersih() UsernameTextBox.Text = "" PasswordTextBox.Text = "" End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click bersih() frmDataAccount.Show() End Sub Private Sub PictureBox2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox2.Click Me.Close() SplashScreen1.Close() Menu_Utama_OK.Close() End Sub
Private Sub UsernameTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles UsernameTextBox.TextChanged End Sub Private Sub PasswordTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PasswordTextBox.TextChanged End Sub End Class
Menu Data Account
Imports Imports Imports Imports
System.Management System System.Data System.Data.SqlClient
Public Class frmDataAccount Dim nama, level As String Dim c As Integer Private Sub frmDataAccount_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Close() End Sub Private Sub TambahAccount() Call ConDatabase() con.Open() Dim CMDInsert As SqlCommand = con.CreateCommand
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
161
If txtNama.Text = "" Or txtNamaLengkap.Text = "" Or txtPass.Text = "" Or txtPassVer.Text = "" Then MsgBox("Data Harus Diisi Dengan Lengkap!") ElseIf txtPass.Text <> txtPassVer.Text Then MsgBox("Verifikasi Password Tidak Sama", MsgBoxStyle.Exclamation, "Erorr..!") Else Try Dim com As New SqlCommand("select count(username) from tbLogin where username = '" & txtNama.Text & "' ", con) c = CInt(com.ExecuteScalar()) If c = 1 Then MsgBox("Username Sudah Ada, Silahkan Menggunakan Username Lain!") txtNama.Text = "" ElseIf c = 0 Then Dim Sql As String = "INSERT INTO tbLogin(Username, Nama_Lengkap, Password)" Sql &= "VALUES(@Username, @Nama_Lengkap, @Password)" With CMDInsert .CommandText = Sql .Connection = con .Parameters.Add("@Username", SqlDbType.VarChar, 50).Value = txtNama.Text .Parameters.Add("@Nama_Lengkap", SqlDbType.VarChar, 100).Value = txtNamaLengkap.Text .Parameters.Add("@Password", SqlDbType.VarChar, 50).Value = txtPass.Text .ExecuteNonQuery() End With MsgBox("Data Berhasil Disimpan!") HapusText() End If Catch ex As Exception MessageBox.Show(ex.Message, "Terjadi Kegagagalan!", MessageBoxButtons.OK, MessageBoxIcon.Error) Finally CMDInsert.Dispose() con.Close() con = Nothing End Try End If End Sub Private Sub HapusText() txtNama.Text = "" txtNamaLengkap.Text = "" txtPass.Text = ""
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
162
txtPassVer.Text = "" Simpan.Enabled = True End Sub 'Private Sub disAcc() ' ModAcc.Enabled = False ' ModData.Enabled = False 'End Sub 'Private Sub enAcc() ' ModAcc.Enabled = True ' ModData.Enabled = True 'End Sub Private Sub Simpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Simpan.Click Call TambahAccount() End Sub Private Sub Reset_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Reset.Click Call HapusText() End Sub Private Sub Button2_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim keluar As MsgBoxResult keluar = MessageBox.Show("Anda Ingin Keluar?", "Keluar", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) If keluar = MsgBoxResult.Yes Then LoginForm_ok.Show() Me.Close() End If End Sub Sub cekusername() Call ConDatabase() con.Open() Try Dim com As New SqlCommand("select count(username) from tbLogin where username = '" & txtNama.Text & "' ", con) Dim c As Integer c = CInt(com.ExecuteScalar()) If c = 1 Then MsgBox("Username Sudah Ada, Silahkan Menggunakan Username Lain!") txtNama.Text = "" ElseIf c = 0 Then txtNamaLengkap.Focus() End If Catch ex As Exception MsgBox(ex.Message) End Try
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
163
con.Close() End Sub Private Sub txtNama_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtNama.KeyPress If e.KeyChar = Chr(13) Then Call cekusername() End If End Sub Private Sub txtNamaLengkap_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtNamaLengkap.KeyPress If e.KeyChar = Chr(13) Then txtPass.Focus() End If End Sub Private Sub txtPass_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtPass.KeyPress If e.KeyChar = Chr(13) Then txtPassVer.Focus() End If End Sub Private Sub txtPassVer_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtPassVer.KeyPress If e.KeyChar = Chr(13) Then Simpan.Focus() End If End Sub
Private Sub txtNama_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtNama.TextChanged End Sub End Class
Halaman Beranda
Imports System.Data.SqlClient Public Class Menu_Utama_OK Dim status As String Dim coman1 As SqlCommand Private Sub Menu_Utama_OK_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Call ConDatabase() con.Open() Try Label3.Text = LoginForm_ok.UsernameTextBox.Text coman1 = New SqlCommand("select nama_lengkap from tblogin where username = '" & Label3.Text & "'", con)
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
164
Label4.Text = CStr(coman1.ExecuteScalar()) Catch ex As Exception MsgBox(ex.Message) End Try Timer1.Start() End Sub Private Sub ExitToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ExitToolStripMenuItem1.Click keluar_menu.Show() End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Logout.Show() 'Label4.Text = "" End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click UbahPassword.Show() End Sub Private Sub PictureBox2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox2.Click Logout.Show() 'Label4.Text = "" End Sub Private Sub PictureBox3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox3.Click frmSuratMasuk.Show() End Sub Private Sub PictureBox4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox4.Click frmSuratKeluar.Show() End Sub Private Sub PictureBox5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox5.Click frmDispossisi.Show() End Sub Private Sub PictureBox7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox7.Click frmKodeKlasifikasi.Show() End Sub Private Sub PictureBox8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox8.Click Try keluar_menu.Show() con.Close() Catch ex As Exception
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
165
MsgBox(ex.Message) End Try End Sub Private Sub LogoutToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Me.Enabled = False End Sub 'Private Sub DataSuratMasukToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DataSuratMasukToolStripMenuItem.Click ' frmDataSuratMasuk.Show() 'End Sub 'Private Sub DataSuratKeluarToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DataSuratKeluarToolStripMenuItem.Click ' frmDataSuratKeluar.Show() 'End Sub Private Sub DataAccountToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) frmDataAccount.Show() End Sub Private Sub EntriSuratMasukToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EntriSuratMasukToolStripMenuItem.Click frmSuratMasuk.Show() End Sub Private Sub EntriSuratKeluarToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EntriSuratKeluarToolStripMenuItem.Click frmSuratKeluar.Show() End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Label13.Text = Microsoft.VisualBasic.Right(Label13.Text, 1) + Microsoft.VisualBasic.Left(Label13.Text, Len(Label13.Text) - 1) End Sub Private Sub HelpToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles HelpToolStripMenuItem1.Click frmAbout.Show() End Sub Private Sub HelpToolStripMenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles HelpToolStripMenuItem2.Click frmHelp.Show() End Sub Private Sub LaporanSuratMasukToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LaporanSuratMasukToolStripMenuItem.Click
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
166
FrmLaporanSuratMasuk.Show() End Sub Private Sub PictureBox6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox6.Click Pengajuan_Cuti.Show() End Sub Private Sub LaporanSuratKeluarToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LaporanSuratKeluarToolStripMenuItem.Click frmLapUmumSuratKeluar.Show() End Sub
Private Sub SystemToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SystemToolStripMenuItem.Click End Sub Private Sub ViewToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) End Sub
Private Sub LaporanUmumSuratDisposisiToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LaporanUmumSuratDisposisiToolStripMenuItem.Click LapUmumSuratDisposisi.Show() End Sub Private Sub LaporanUmumPengajuanCutiToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LaporanUmumPengajuanCutiToolStripMenuItem.Click LapUmumPengajuanCuti.Show() End Sub Private Sub Label3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label3.Click End Sub End Class
Menu Entri Surat Masuk
Imports Imports Imports Imports Imports
System.Management System System.Data System.Data.SqlClient System.IO
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
167
Public Class frmSuratMasuk Dim dt As New DataTable Dim da As New SqlDataAdapter Dim coman1 As New SqlCommand Dim simpan1 As String Private Sub frmSuratMasuk_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Call ConDatabase() Call Combo() txtKlas.Text = "" txtPeri.Text = "" Call view() Hapus.Enabled = False Edit.Enabled = False LihatGmbr.Enabled = False Timer1.Start() End Sub Private Sub Simpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Simpan.Click Call SimpanSurat() Call view() End Sub Private Sub SimpanSurat() Call ConDatabase() Dim CMDInsert As SqlCommand = con.CreateCommand If txtUrut.Text = "" Or dtTgl.Text = "" Or cmbSifat.Text = "" Or txtKpd.Text = "" Or txtKlas.Text = "" Or txtPeri.Text = "" Or txtPeng.Text = "" Or txtIsi.Text = "" Or txtLam.Text = "" Or txtNoSrt.Text = "" Or dtTglTrim.Text = "" Or txtRak.Text = "" Or ComboBox_Penyimpanan.Text = "" Or ComboBox_Jadwal.Text = "" Then MsgBox("Data Harus Diisi Dengan Lengkap") Else Try con.Open() 'coman1 = New SqlCommand("insert into [tbSuratMasuk] values ('" & txtUrut.Text & "'," & dtTgl.Value & ",'" & txtNoSrt.Text & "','" & txtKpd.Text & "','" & txtKlas.Text & _ ' "','" & txtPeri.Text & "','" & cmbSifat.Text & "','" & txtPeng.Text & "'," & dtTglTrim.Value & ",'" & txtIsi.Text & "','" & txtLam.Text & "','" & txtRak.Text & _ ' "','" & ComboBox_Penyimpanan.Text & "','" & ComboBox-Jadwal.Text & "',@gambar)", con) Dim Sql As String = "INSERT INTO tbSuratMasuk(NoUrut, Tanggal, NoSurat, Kepada, KodeKlas, Prihal, Jenis, AsalSrt, TglTerima, Isi, Lamp, Rak, Penyimpanan, Jadwal_Retensi, gambar)" Sql &= "VALUES(@Norut, @Tanggal, @NoSurat, @Kepada, @KodeKlas, @Prihal, @Jenis, @Asal, @TglTrim, @Isi, @Lamp, @Rak, @Penyimpanan, @Jadwal_Retensi, @gambar)"
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
168
With CMDInsert .CommandText = Sql .Connection = con .Parameters.Add("@Norut", SqlDbType.VarChar, 10).Value = txtUrut.Text .Parameters.Add("@Tanggal", SqlDbType.DateTime).Value = dtTgl.Value .Parameters.Add("@NoSurat", SqlDbType.VarChar, 50).Value = CStr(txtNoSrt.Text) .Parameters.Add("@Kepada", SqlDbType.VarChar, 50).Value = txtKpd.Text .Parameters.Add("@KodeKlas", SqlDbType.VarChar, 15).Value = txtKlas.Text .Parameters.Add("@Prihal", SqlDbType.VarChar, 50).Value = txtPeri.Text .Parameters.Add("@Jenis", SqlDbType.VarChar, 20).Value = cmbSifat.Text .Parameters.Add("@Asal", SqlDbType.VarChar, 50).Value = txtPeng.Text .Parameters.Add("@TglTrim", SqlDbType.DateTime).Value = dtTglTrim.Value .Parameters.Add("@Isi", SqlDbType.VarChar, 200).Value = txtIsi.Text .Parameters.Add("@Lamp", SqlDbType.VarChar, 20).Value = txtLam.Text .Parameters.Add("@Rak", SqlDbType.VarChar, 25).Value = txtRak.Text .Parameters.Add("@Penyimpanan", SqlDbType.VarChar, 50).Value = ComboBox_Penyimpanan.Text .Parameters.Add("@Jadwal_Retensi", SqlDbType.VarChar, 15).Value = ComboBox_Jadwal.Text Dim ms As New MemoryStream() PictureBox1.Image.Save(ms, PictureBox1.Image.RawFormat) Dim data As Byte() = ms.GetBuffer() Dim p As New SqlParameter("@gambar", SqlDbType.Image) p.Value = data .Parameters.Add(p) .ExecuteNonQuery() End With coman1 = New SqlCommand("insert into tbDisposisi values ('" & txtPeng.Text & "'," & dtTgl.Value & ",'" & txtNoSrt.Text & "'," & dtTglTrim.Value & ",'" & txtUrut.Text & _ "','" & cmbSifat.Text & "','" & txtPeri.Text & "','" & txtKpd.Text & "','" & txtLam.Text & "','" & S1.Text & "','" & S2.Text & "','" & S3.Text & _ "','" & S4.Text & "')", con) coman1.ExecuteNonQuery() MsgBox("Data Berhasil Disimpan") Call HapusText() Catch ex As Exception MsgBox(ex.Message) End Try End If
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
169
End Sub Private Sub EditSurat() Call ConDatabase() Dim CMDEdit As SqlCommand = con.CreateCommand If txtUrut.Text <> "" Then 'If MessageBox.Show("Data Berhasil Diupdate !!", "Pembaharuan", MessageBoxButtons.OK, MessageBoxIcon.Information) Then Try con.Open() Dim Sql As String = "UPDATE tbSuratMasuk SET Tanggal=@Tanggal,NoSurat=@NoSurat,Kepada=@Kepada,KodeKlas=@KKlas,Prihal=@Pr ihal,Jenis=@Jenis,AsalSrt=@Asal,TglTerima=@TglTrim,Isi=@Isi,Lamp=@Lamp, Rak=@Rak," & _ " penyimpanan=@Penyimpanan, Jadwal_Retensi=@Jadwal_Retensi, gambar=@gambar WHERE NoUrut=@Norut;" With CMDEdit .CommandText = Sql .Connection = con .Parameters.Add("@Norut", SqlDbType.VarChar, 50).Value = txtUrut.Text .Parameters.Add("@Tanggal", SqlDbType.DateTime).Value = dtTgl.Value .Parameters.Add("@NoSurat", SqlDbType.VarChar, 50).Value = CStr(txtNoSrt.Text) .Parameters.Add("@Kepada", SqlDbType.VarChar, 50).Value = txtKpd.Text .Parameters.Add("@KKlas", SqlDbType.VarChar, 50).Value = txtKlas.Text .Parameters.Add("@Prihal", SqlDbType.VarChar, 300).Value = txtPeri.Text .Parameters.Add("@Jenis", SqlDbType.VarChar, 50).Value = cmbSifat.Text .Parameters.Add("@Asal", SqlDbType.VarChar, 50).Value = txtPeng.Text .Parameters.Add("@TglTrim", SqlDbType.DateTime).Value = dtTglTrim.Value .Parameters.Add("@Isi", SqlDbType.VarChar, 300).Value = txtIsi.Text .Parameters.Add("@Lamp", SqlDbType.VarChar, 20).Value = txtLam.Text .Parameters.Add("@Kpd", SqlDbType.VarChar, 50).Value = txtT.Text .Parameters.Add("@Hrp", SqlDbType.VarChar, 50).Value = txtTT.Text .Parameters.Add("@Rak", SqlDbType.VarChar, 25).Value = txtRak.Text .Parameters.Add("@Penyimpanan", SqlDbType.VarChar, 50).Value = ComboBox_Penyimpanan.Text .Parameters.Add("@Jadwal_Retensi", SqlDbType.VarChar, 15).Value = ComboBox_Jadwal.Text Dim ms As New MemoryStream() PictureBox1.Image.Save(ms, PictureBox1.Image.RawFormat) Dim data As Byte() = ms.GetBuffer()
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
170
Dim p As New SqlParameter("@gambar", SqlDbType.Image) p.Value = data .Parameters.Add(p) .ExecuteNonQuery() MessageBox.Show("Data Berhasil Diupdate !!", "Pembaharuan", MessageBoxButtons.OK, MessageBoxIcon.Information) End With Catch ex As Exception MessageBox.Show(ex.Message, "Terjadi Kegagagalan!", MessageBoxButtons.OK, MessageBoxIcon.Error) Finally CMDEdit.Dispose() con.Close() con = Nothing End Try 'End If End If End Sub Private Sub EditDisposisi() Call ConDatabase() Dim CMDEdit As SqlCommand = con.CreateCommand If txtUrut.Text <> "" Then 'If MessageBox.Show("Data Berhasil Diupdate !!", "Pembaharuan", MessageBoxButtons.OK, MessageBoxIcon.Information) Then Try con.Open() Dim Sql As String = "UPDATE tbDisposisi SET AslSrt=@Asal, Tanggal=@Tanggal, NoSurat=@NoSurat, TglTerima=@TglTrim, Sifat=@Jenis, Prihal=@Prihal, Kepada=@Kpd, Harap=@Hrp, S1=@S1, S2=@S2, S3=@S3, S4=@S4 WHERE NoAgd=@Norut;" With CMDEdit .CommandText = Sql .Connection = con .Parameters.Add("@Norut", SqlDbType.VarChar, 50).Value = txtUrut.Text .Parameters.Add("@Tanggal", SqlDbType.DateTime).Value = dtTgl.Value .Parameters.Add("@NoSurat", SqlDbType.VarChar, 50).Value = CStr(txtNoSrt.Text) .Parameters.Add("@Kepada", SqlDbType.VarChar, 50).Value = txtKpd.Text .Parameters.Add("@KKlas", SqlDbType.VarChar, 50).Value = txtKlas.Text .Parameters.Add("@Prihal", SqlDbType.VarChar, 300).Value = txtPeri.Text .Parameters.Add("@Jenis", SqlDbType.VarChar, 50).Value = cmbSifat.Text .Parameters.Add("@Asal", SqlDbType.VarChar, 50).Value = txtPeng.Text .Parameters.Add("@TglTrim", SqlDbType.DateTime).Value = dtTglTrim.Value
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
171
.Parameters.Add("@Isi", SqlDbType.VarChar, 300).Value = txtIsi.Text .Parameters.Add("@Lamp", SqlDbType.VarChar, 50).Value = txtLam.Text .Parameters.Add("@Kpd", SqlDbType.VarChar, 50).Value = txtT.Text .Parameters.Add("@Hrp", SqlDbType.VarChar, 50).Value = txtTT.Text .Parameters.Add("@S1", SqlDbType.VarChar, 50).Value = S1.Text .Parameters.Add("@S2", SqlDbType.VarChar, 50).Value = S2.Text .Parameters.Add("@S3", SqlDbType.VarChar, 50).Value = S3.Text .Parameters.Add("@S4", SqlDbType.VarChar, 50).Value = S4.Text .ExecuteNonQuery() End With Catch ex As Exception MessageBox.Show(ex.Message, "Terjadi Kegagagalan!", MessageBoxButtons.OK, MessageBoxIcon.Error) Finally CMDEdit.Dispose() con.Close() con = Nothing End Try 'End If End If End Sub Private Sub TampilSurat() Call ConDatabase() Dim DataReader As SqlDataReader Dim CMDTampilData As SqlCommand = con.CreateCommand() Try con.Open() If txtUrut.Text <> "" Then Dim Sql As String = "SELECT * FROM tbSuratMasuk WHERE NoUrut=@Norut" CMDTampilData.Parameters.Add("@Norut", SqlDbType.VarChar, 50).Value = txtUrut.Text CMDTampilData.CommandText = Sql DataReader = CMDTampilData.ExecuteReader() If DataReader.Read() Then txtUrut.Text = DataReader("NoUrut").ToString dtTgl.Value = DataReader("Tanggal").ToString txtNoSrt.Text = DataReader("NoSurat").ToString txtKpd.Text = DataReader("Kepada").ToString txtKlas.Text = DataReader("KodeKlas").ToString txtPeri.Text = DataReader("Prihal").ToString cmbSifat.Text = DataReader("Jenis").ToString txtPeng.Text = DataReader("AsalSrt").ToString dtTglTrim.Value = DataReader("TglTerima").ToString txtIsi.Text = DataReader("Isi").ToString txtLam.Text = DataReader("Lamp").ToString
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
172
txtRak.Text = DataReader("Rak").ToString Dim coman As New SqlCommand("select gambar from tbsuratmasuk where nourut = " & txtUrut.Text & "", con) Dim imageData As Byte() = DirectCast(coman.ExecuteScalar(), Byte()) Dim newImage As Image = Nothing If Not imageData Is Nothing Then Using ms As New MemoryStream(imageData, 0, imageData.Length) ms.Write(imageData, 0, imageData.Length) newImage = Image.FromStream(ms, True) End Using PictureBox1.Image = newImage End If Else End If End If Catch ex As Exception MessageBox.Show(ex.Message, "Terjadi Kegagagalan!", MessageBoxButtons.OK, MessageBoxIcon.Error) Finally 'CMDTampilData.Dispose() con.Close() 'con = Nothing End Try End Sub Private Sub TampilKlasifikasi() Call ConDatabase() Dim DataReader As SqlDataReader Dim CMDTampilData As SqlCommand = con.CreateCommand() Try con.Open() If txtKlas.Text <> "" Then Dim Sql As String = "SELECT * FROM tbKodeSurat WHERE KodeS=@noSurat" CMDTampilData.Parameters.Add("@noSurat", SqlDbType.NVarChar, 50).Value = txtKlas.Text CMDTampilData.CommandText = Sql DataReader = CMDTampilData.ExecuteReader() If DataReader.Read() Then txtKlas.Text = DataReader("KodeS").ToString txtPeri.Text = DataReader("Prihal").ToString Else End If End If Catch ex As Exception MessageBox.Show(ex.Message, "Terjadi Kegagagalan!", MessageBoxButtons.OK, MessageBoxIcon.Error) Finally 'CMDTampilData.Dispose() con.Close() 'con = Nothing End Try End Sub
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
173
Private Sub HapusSurat() Call ConDatabase() Dim CMDDelete As SqlCommand = con.CreateCommand con.Open() Try If txtUrut.Text <> "" Then coman1 = New SqlCommand("delete from tbsuratmasuk where NoUrut = '" & txtUrut.Text & "'", con) coman1.ExecuteNonQuery() coman1 = New SqlCommand("delete from tbdisposisi where NoAgd = '" & txtUrut.Text & "'", con) coman1.ExecuteNonQuery() MsgBox("Data Berhasil Dihapus") End If Catch ex As Exception MsgBox(ex.Message) End Try con.Close() End Sub
Private Sub Combo() Koneksi.ConDatabase() dtAdapter = New SqlDataAdapter("SELECT DISTINCT KodeS FROM tbKodeSurat", Koneksi.con) Dim tbKS As New DataTable tbKS.Clear() dtAdapter.Fill(tbKS) Me.txtKlas.ValueMember = "KodeS" Me.txtKlas.DisplayMember = "KodeS" Me.txtKlas.DataSource = tbKS End Sub Private Sub HapusText() txtUrut.Text = "" dtTgl.Text = "" cmbSifat.Text = "" txtKpd.Text = "" txtKlas.Text = "" txtPeri.Text = "" txtPeng.Text = "" txtIsi.Text = "" txtLam.Text = "" txtNoSrt.Text = "" dtTglTrim.Text = "" txtRak.Text = "" ComboBox_Penyimpanan.Text = "" ComboBox_Jadwal.Text = "" PictureBox1.Image = Nothing End Sub
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
174
Private Sub txtUrut_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtUrut.Leave Call TampilSurat() End Sub Private Sub Hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Hapus.Click Call HapusSurat() 'Call HapusDisposisi() Call HapusText() Call view() Hapus.Enabled = False Edit.Enabled = False LihatGmbr.Enabled = False Simpan.Enabled = True Reset.Enabled = True End Sub Private Sub Reset_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Reset.Click Call HapusText() End Sub Private Sub Keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Me.Close() End Sub Private Sub Edit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Edit.Click Call EditSurat() Call EditDisposisi() Call HapusText() Call view() Edit.Enabled = False Hapus.Enabled = False LihatGmbr.Enabled = False Simpan.Enabled = True Reset.Enabled = True End Sub Private Sub Keluar_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Keluar.Click Dim keluar As MsgBoxResult keluar = MessageBox.Show("Anda Ingin Keluar?", "Keluar", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) If keluar = MsgBoxResult.Yes Then Menu_Utama_OK.Show() Me.Close() End If End Sub
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
175
Private Sub cmbSifat_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbSifat.SelectedIndexChanged If cmbSifat.Text = "Sangat Segera" Then S1.Text = "X" S2.Text = "" S3.Text = "" S4.Text = "" ElseIf cmbSifat.Text = "Rahasia" Then S2.Text = "X" S1.Text = "" S3.Text = "" S4.Text = "" ElseIf cmbSifat.Text = "Segera" Then S3.Text = "X" S1.Text = "" S2.Text = "" Else S4.Text = "X" S1.Text = "" S2.Text = "" S3.Text = "" End If End Sub Private Sub txtKlas_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtKlas.SelectedIndexChanged Call TampilKlasifikasi() End Sub Sub view() Try Call ConDatabase() con.Open() dt.Clear() da = New SqlDataAdapter("SELECT * da.Fill(dt) DataGridView1.DataSource = dt Catch ex As Exception MsgBox("Gagal Menampilkan Data") End Try con.Close() End Sub
FROM tbsuratmasuk", con)
Private Sub DataGridView1_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick Try Hapus.Enabled = True Edit.Enabled = True LihatGmbr.Enabled = True Simpan.Enabled = False Reset.Enabled = False Dim index As Integer = DataGridView1.CurrentRow.Index Dim row As DataGridViewRow = DataGridView1.Rows(index)
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
176
txtUrut.Text = CStr(row.Cells("NoUrut").Value) dtTgl.Text = CStr(row.Cells("Tanggal").Value) txtNoSrt.Text = CStr(row.Cells("NoSurat").Value) txtKpd.Text = CStr(row.Cells("Kepada").Value) txtKlas.Text = CStr(row.Cells("KodeKlas").Value) txtPeri.Text = CStr(row.Cells("Prihal").Value) cmbSifat.Text = CStr(row.Cells("Jenis").Value) txtPeng.Text = CStr(row.Cells("AsalSrt").Value) dtTglTrim.Text = CStr(row.Cells("TglTerima").Value) txtIsi.Text = CStr(row.Cells("Isi").Value) txtLam.Text = CStr(row.Cells("Lamp").Value) txtRak.Text = CStr(row.Cells("Rak").Value) ComboBox_Penyimpanan.Text = CStr(row.Cells("Penyimpanan").Value) ComboBox_Jadwal.Text = CStr(row.Cells("Jadwal_Retensi").Value) Catch ex As Exception End Try End Sub Private Sub txtUrut_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtUrut.TextChanged End Sub Private Sub PictureBox1_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.DoubleClick Dim datagambar As New OpenFileDialog() datagambar.Filter = "jpeps|*.jpg|bitmaps|*.bmp" If (datagambar.ShowDialog() = DialogResult.OK) Then PictureBox1.Image = Bitmap.FromFile(datagambar.FileName) End If End Sub Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.Click End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LihatGmbr.Click Call ConDatabase() Try con.Open() Dim coman As New SqlCommand("select gambar from tbsuratmasuk where nourut = " & txtUrut.Text & "", con) Dim imageData As Byte() = DirectCast(coman.ExecuteScalar(), Byte()) Dim newImage As Image = Nothing If Not imageData Is Nothing Then
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
177
Using ms As New MemoryStream(imageData, 0, imageData.Length) ms.Write(imageData, 0, imageData.Length) newImage = Image.FromStream(ms, True) End Using PictureBox1.Image = newImage End If Catch ex As Exception MsgBox(ex.Message) End Try con.Close() End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Label11.Text = Microsoft.VisualBasic.Right(Label11.Text, 1) + Microsoft.VisualBasic.Left(Label11.Text, Len(Label11.Text) - 1) End Sub Private Sub Label11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label11.Click End Sub Private Sub ComboBox_Jadwal_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox_Jadwal.SelectedIndexChanged End Sub Private Sub txtTT_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTT.TextChanged End Sub 'Private Sub txtLam_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles txtLam.KeyUp ' If e.KeyCode = Keys.A Then ' txtLam.Text = "" ' Elseif ' e.KeyCode = Keys.B then ' txtLam.Text = "" ' 'Exit Sub 'Or e.KeyCode = Keys.NumPad1 Or e.KeyCode = Keys.NumPad2 Or e.KeyCode = Keys.NumPad3 Or e.KeyCode = Keys.NumPad4 Or e.KeyCode = Keys.NumPad5 Or e.KeyCode = Keys.NumPad6 Or e.KeyCode = Keys.NumPad7 Or e.KeyCode = Keys.NumPad8 Or e.KeyCode = Keys.NumPad9 ' End If 'End Sub ' Private Sub txtLam_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtLam.TextChanged End Sub End Class
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
178
Menu Entri Surat Keluar
Imports Imports Imports Imports Imports
System.Management System System.Data System.Data.SqlClient System.IO
Public Class frmSuratKeluar Dim dt As New DataTable Dim da As SqlDataAdapter Private Sub SimpanSurat() Call ConDatabase() Dim CMDInsert As SqlCommand = con.CreateCommand If txtNo.Text = "" Or dtTgl.Text = "" Or cmbSifat.Text = "" Or txtKpd.Text = "" Or txtKlas.Text = "" Or txtPeri.Text = "" Or txtPeng.Text = "" Or txtLam.Text = "" Or txtCat.Text = "" Or txtRak.Text = "" Then MsgBox("Data Belum Terisi dengan lengkap!") Else 'If MessageBox.Show("Data Berhasil Disimpan !!", "Penyimpanan", MessageBoxButtons.OK, MessageBoxIcon.Information) Then Try con.Open() Dim Sql As String = "INSERT INTO tbSuratKeluar(NoSurat, Tanggal, Sifat, Kepada, KodeKlas, Prihal, Pengirim, Lamp, Cat, Rak, Gambar)" Sql &= "VALUES(@NoSurat, @Tanggal, @Sifat, @Kepada, @KKlas, @Prihal, @Pengirim, @Lamp, @Cat, @Rak, @Gambar)" With CMDInsert .CommandText = Sql .Connection = con .Parameters.Add("@NoSurat", SqlDbType.VarChar, 50).Value = txtNo.Text .Parameters.Add("@Tanggal", SqlDbType.DateTime).Value = dtTgl.Value .Parameters.Add("@Sifat", SqlDbType.VarChar, 50).Value = cmbSifat.Text .Parameters.Add("@Kepada", SqlDbType.VarChar, 50).Value = txtKpd.Text .Parameters.Add("@KKlas", SqlDbType.VarChar, 50).Value = txtKlas.Text .Parameters.Add("@Prihal", SqlDbType.VarChar, 300).Value = txtPeri.Text .Parameters.Add("@Pengirim", SqlDbType.VarChar, 50).Value = txtPeng.Text .Parameters.Add("@Lamp", SqlDbType.VarChar, 50).Value = txtLam.Text .Parameters.Add("@Cat", SqlDbType.VarChar, 300).Value = txtCat.Text .Parameters.Add("@Rak", SqlDbType.VarChar, 50).Value = txtRak.Text Dim ms As New MemoryStream() PictureBox1.Image.Save(ms, PictureBox1.Image.RawFormat) Dim data As Byte() = ms.GetBuffer()
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
179
Dim p As New SqlParameter("@gambar", SqlDbType.Image) p.Value = data .Parameters.Add(p) .ExecuteNonQuery() MessageBox.Show("Data Berhasil Disimpan !!", "Penyimpanan", MessageBoxButtons.OK, MessageBoxIcon.Information) End With Dim cetak As MsgBoxResult cetak = MessageBox.Show("Anda Ingin Cetak Surat '" & txtNo.Text & "'?", "Cetak", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) If cetak = MsgBoxResult.Yes Then frmLapSrtKeluar.Show() ElseIf cetak = MsgBoxResult.No Then HapusText() End If Catch ex As Exception MessageBox.Show(ex.Message, "Terjadi Kegagagalan!", MessageBoxButtons.OK, MessageBoxIcon.Error) Finally CMDInsert.Dispose() con.Close() con = Nothing End Try 'End If End If End Sub Private Sub EditSurat() Call ConDatabase() Dim CMDEdit As SqlCommand = con.CreateCommand If txtNo.Text <> "" Then 'If MessageBox.Show("Data Berhasil Diupdate !!", "Pembaharuan", MessageBoxButtons.OK, MessageBoxIcon.Information) Then Try con.Open() Dim Sql As String = "UPDATE tbSuratKeluar SET Tanggal=@Tanggal,Sifat=@Sifat,Kepada=@Kepada,KodeKlas=@KKlas,Prihal=@Prihal ,Pengirim=@Pengirim,Lamp=@Lamp,Cat=@Cat,Rak=@Rak, gambar=@gambar WHERE NoSurat=@noSurat;" With CMDEdit .CommandText = Sql .Connection = con .Parameters.Add("@noSurat", SqlDbType.VarChar, 50).Value = txtNo.Text .Parameters.Add("@Tanggal", SqlDbType.DateTime).Value = dtTgl.Value .Parameters.Add("@Sifat", SqlDbType.VarChar, 50).Value = cmbSifat.Text
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
180
.Parameters.Add("@Kepada", SqlDbType.VarChar, 50).Value = txtKpd.Text .Parameters.Add("@KKlas", SqlDbType.VarChar, 50).Value = txtKlas.Text .Parameters.Add("@Prihal", SqlDbType.VarChar, 300).Value = txtPeri.Text .Parameters.Add("@Pengirim", SqlDbType.VarChar, 50).Value = txtPeng.Text .Parameters.Add("@Lamp", SqlDbType.VarChar, 50).Value = txtLam.Text .Parameters.Add("@Cat", SqlDbType.VarChar, 300).Value = txtCat.Text .Parameters.Add("@Rak", SqlDbType.VarChar, 50).Value = txtRak.Text Dim ms As New MemoryStream() PictureBox1.Image.Save(ms, PictureBox1.Image.RawFormat) Dim data As Byte() = ms.GetBuffer() Dim p As New SqlParameter("@gambar", SqlDbType.Image) p.Value = data .Parameters.Add(p) .ExecuteNonQuery() MessageBox.Show("Data Berhasil Diupdate !!", "Pembaharuan", MessageBoxButtons.OK, MessageBoxIcon.Information) End With HapusText() Catch ex As Exception MessageBox.Show(ex.Message, "Terjadi Kegagagalan!", MessageBoxButtons.OK, MessageBoxIcon.Error) Finally CMDEdit.Dispose() con.Close() con = Nothing End Try 'End If End If End Sub Private Sub TampilSurat() Call ConDatabase() Dim DataReader As SqlDataReader Dim CMDTampilData As SqlCommand = con.CreateCommand() Try con.Open() If txtNo.Text <> "" Then Dim Sql As String = "SELECT * FROM tbSuratKeluar WHERE NoSurat=@noSurat" CMDTampilData.Parameters.Add("@noSurat", SqlDbType.VarChar, 50).Value = txtNo.Text CMDTampilData.CommandText = Sql DataReader = CMDTampilData.ExecuteReader() If DataReader.Read() Then txtNo.Text = DataReader("NoSurat").ToString dtTgl.Text = DataReader("Tanggal").ToString cmbSifat.Text = DataReader("Sifat").ToString
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
181
txtKpd.Text = DataReader("Kepada").ToString txtKlas.Text = DataReader("KodeKlas").ToString txtPeri.Text = DataReader("Prihal").ToString txtPeng.Text = DataReader("Pengirim").ToString txtLam.Text = DataReader("Lamp").ToString txtCat.Text = DataReader("Cat").ToString txtRak.Text = DataReader("Rak").ToString Else End If End If Catch ex As Exception MessageBox.Show(ex.Message, "Terjadi Kegagagalan!", MessageBoxButtons.OK, MessageBoxIcon.Error) Finally CMDTampilData.Dispose() 'con.Close() con = Nothing End Try End Sub Private Sub TampilKlasifikasi() Call ConDatabase() Dim DataReader As SqlDataReader Dim CMDTampilData As SqlCommand = con.CreateCommand() Try con.Open() If txtKlas.Text <> "" Then Dim Sql As String = "SELECT * FROM tbKodeSurat WHERE KodeS=@noSurat" CMDTampilData.Parameters.Add("@noSurat", SqlDbType.NVarChar, 50).Value = txtKlas.Text CMDTampilData.CommandText = Sql DataReader = CMDTampilData.ExecuteReader() If DataReader.Read() Then txtKlas.Text = DataReader("KodeS").ToString txtPeri.Text = DataReader("Prihal").ToString Else End If End If Catch ex As Exception MessageBox.Show(ex.Message, "Terjadi Kegagagalan!", MessageBoxButtons.OK, MessageBoxIcon.Error) Finally CMDTampilData.Dispose() con.Close() con = Nothing End Try End Sub Private Sub HapusSurat() Call ConDatabase() Dim CMDDelete As SqlCommand = con.CreateCommand If txtNo.Text <> "" Then
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
182
If MessageBox.Show("Anda Yakin Nomor Surat Keluar " & txtNo.Text & " Akan Dihapus...?", "Peringatan!", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) = Windows.Forms.DialogResult.Yes Then Try con.Open() Dim Sql As String = "DELETE FROM tbSuratKeluar WHERE NoSurat=@noSurat;" With CMDDelete .CommandText = Sql .Parameters.Add("@noSurat", SqlDbType.VarChar, 50).Value = txtNo.Text .ExecuteNonQuery() End With Call HapusText() Catch ex As Exception MessageBox.Show(ex.Message, "Terjadi Kegagagalan!", MessageBoxButtons.OK, MessageBoxIcon.Error) Finally CMDDelete.Dispose() con.Close() con = Nothing End Try End If End If End Sub Private Sub HapusText() txtNo.Text = "" dtTgl.Text = "" cmbSifat.Text = "" txtKpd.Text = "" txtKlas.Text = "" txtPeri.Text = "" txtPeng.Text = "" txtLam.Text = "" txtCat.Text = "" txtRak.Text = "" PictureBox1.Image = Nothing End Sub Private Sub txtNo_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtNo.Leave Call TampilSurat() End Sub Private Sub Lihat_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) If txtNo.Text <> "" Then Call ConDatabase() frmLapSrtKeluar.Show() End If End Sub Private Sub Keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Keluar.Click Dim keluar As MsgBoxResult
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
183
keluar = MessageBox.Show("Anda Ingin Keluar?", "Keluar", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) If keluar = MsgBoxResult.Yes Then Menu_Utama_OK.Show() Me.Close() End If End Sub Private Sub Edit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Edit.Click Call EditSurat() Call view() Edit.Enabled = False Hapus.Enabled = False Simpan.Enabled = True Reset.Enabled = True LihatGmbr.Enabled = False End Sub Private Sub frmSuratKeluar_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Call ConDatabase() Call Combo() txtKlas.Text = "" txtPeri.Text = "" Edit.Enabled = False Hapus.Enabled = False Call view() txtPeri.Enabled = False Timer1.Start() LihatGmbr.Enabled = False End Sub Private Sub Reset_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Reset.Click Call HapusText() End Sub Private Sub Hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Hapus.Click Call HapusSurat() Call view() Edit.Enabled = False Hapus.Enabled = False Simpan.Enabled = True Reset.Enabled = True LihatGmbr.Enabled = False End Sub Private Sub Simpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Simpan.Click Call SimpanSurat() Call view() End Sub
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
184
Private Sub txtKlas_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtKlas.SelectedIndexChanged Call TampilKlasifikasi() End Sub Private Sub Combo() Koneksi.ConDatabase() dtAdapter = New SqlDataAdapter("SELECT DISTINCT KodeS FROM tbKodeSurat", Koneksi.con) Dim tbKS As New DataTable tbKS.Clear() dtAdapter.Fill(tbKS) Me.txtKlas.ValueMember = "KodeS" Me.txtKlas.DisplayMember = "KodeS" Me.txtKlas.DataSource = tbKS End Sub Sub view() Call ConDatabase() con.Open() dt.Clear() da = New SqlDataAdapter("SELECT * da.Fill(dt) DataGridView1.DataSource = dt con.Close() End Sub
FROM tbsuratkeluar", con)
Private Sub DataGridView1_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick Try Hapus.Enabled = True Edit.Enabled = True Simpan.Enabled = False Reset.Enabled = False LihatGmbr.Enabled = True Dim index As Integer = DataGridView1.CurrentRow.Index Dim row As DataGridViewRow = DataGridView1.Rows(index) 'Dim Sql As String = "INSERT INTO tbSuratKeluar(NoSurat, Tanggal, Sifat, Kepada, KodeKlas, Prihal, Pengirim, Lamp, Cat, Rak)" txtNo.Text = CStr(row.Cells("NoSurat").Value) dtTgl.Text = CStr(row.Cells("Tanggal").Value) cmbSifat.Text = CStr(row.Cells("Sifat").Value) txtKpd.Text = CStr(row.Cells("Kepada").Value) txtKlas.Text = CStr(row.Cells("KodeKlas").Value) txtPeri.Text = CStr(row.Cells("Prihal").Value) txtPeng.Text = CStr(row.Cells("Pengirim").Value) txtLam.Text = CStr(row.Cells("Lamp").Value) txtCat.Text = CStr(row.Cells("cat").Value) txtRak.Text = CStr(row.Cells("Rak").Value) Catch ex As Exception
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
185
End Try End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Label11.Text = Microsoft.VisualBasic.Right(Label11.Text, 1) + Microsoft.VisualBasic.Left(Label11.Text, Len(Label11.Text) - 1) End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) End Sub Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.Click End Sub Private Sub LihatGmbr_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LihatGmbr.Click Call ConDatabase() Try con.Open() Dim coman As New SqlCommand("select gambar from tbSuratKeluar where NoSurat = '" & txtNo.Text & "'", con) Dim imageData As Byte() = DirectCast(coman.ExecuteScalar(), Byte()) Dim newImage As Image = Nothing If Not imageData Is Nothing Then Using ms As New MemoryStream(imageData, 0, imageData.Length) ms.Write(imageData, 0, imageData.Length) newImage = Image.FromStream(ms, True) End Using PictureBox1.Image = newImage End If Catch ex As Exception MsgBox(ex.Message) End Try con.Close() End Sub Private Sub txtNo_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtNo.TextChanged End Sub Private Sub PictureBox1_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox1.DoubleClick Dim datagambar As New OpenFileDialog() datagambar.Filter = "jpeps|*.jpg|bitmaps|*.bmp" If (datagambar.ShowDialog() = DialogResult.OK) Then
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
186
PictureBox1.Image = Bitmap.FromFile(datagambar.FileName) End If End Sub End Class
Menu Disposisi Surat
Imports Imports Imports Imports
System.Management System System.Data System.Data.SqlClient
Public Class frmDispossisi Dim reader As SqlDataReader Private Sub Keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Close() End Sub Private Sub Simpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Simpan.Click Call EditSurat() 'hapus1() End Sub Private Sub EditSurat() Call ConDatabase() Dim CMDEdit As SqlCommand = con.CreateCommand If txtUrut.Text <> "" Then If MessageBox.Show("Data Sudah Masuk !!", "Penyimpanan", MessageBoxButtons.OK, MessageBoxIcon.Information) Then Try con.Open() 'Dim Sql As String = "UPDATE tbDisposisi SET AslSrt=@Asal, Tanggal=@Tanggal, NoSurat=@NoSurat, TglTerima=@TglTrim, Sifat=@Jenis, Prihal=@Prihal, Kepada=@Kpd, Harap=@Hrp WHERE NoAgd=@Norut;" 'Dim Sql As String = "UPDATE tbDisposisi SET Kepada=@Kpd, Harap=@Hrp, K1=@K1, K2=@K2, K3=@K3, K4=@K4, K5=@K5, K6=@K6, K7=@K7, H1=@H1, H2=@H2, H3=@H3, H4=@H4, Lain=@Lain WHERE NoAgd=@Norut;" Dim Sql As String = "UPDATE tbDisposisi SET Kepada=@Kpd, Harap=@Hrp WHERE NoAgd=@Norut;" With CMDEdit .CommandText = Sql .Connection = con .Parameters.Add("@Norut", SqlDbType.VarChar, 50).Value = txtUrut.Text .Parameters.Add("@Tanggal", SqlDbType.DateTime).Value = dtTgl.Text .Parameters.Add("@NoSurat", SqlDbType.VarChar, 50).Value = ComboNoSurat.Text .Parameters.Add("@Prihal", SqlDbType.VarChar, 300).Value = txtPeri.Text
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
187
.Parameters.Add("@Jenis", SqlDbType.VarChar, 50).Value = cmbSifat.Text .Parameters.Add("@Asal", SqlDbType.VarChar, 50).Value = txtPeng.Text .Parameters.Add("@TglTrim", SqlDbType.DateTime).Value = dtTglTrim.Text .Parameters.Add("@Kpd", SqlDbType.VarChar, 50).Value = cmbKepada.Text .Parameters.Add("@Hrp", SqlDbType.VarChar, 50).Value = cmbHrmt.Text .Parameters.Add("@S1", SqlDbType.VarChar, 50).Value = S1.Text .Parameters.Add("@S2", SqlDbType.VarChar, 50).Value = S2.Text .Parameters.Add("@S3", SqlDbType.VarChar, 50).Value = S3.Text .Parameters.Add("@S4", SqlDbType.VarChar, 50).Value = S4.Text '.Parameters.Add("@K5", SqlDbType.VarChar, 50).Value = K5.Text '.Parameters.Add("@K6", SqlDbType.VarChar, 50).Value = K6.Text '.Parameters.Add("@K7", SqlDbType.VarChar, 50).Value = K7.Text '.Parameters.Add("@H1", SqlDbType.VarChar, 50).Value = H1.Text '.Parameters.Add("@H2", SqlDbType.VarChar, 50).Value = H2.Text '.Parameters.Add("@H3", SqlDbType.VarChar, 50).Value = H3.Text '.Parameters.Add("@H4", SqlDbType.VarChar, 50).Value = H4.Text .Parameters.Add("@Lain", SqlDbType.VarChar, 50).Value = txtLain.Text .ExecuteNonQuery() End With Catch ex As Exception MessageBox.Show(ex.Message, "Terjadi Kegagagalan!", MessageBoxButtons.OK, MessageBoxIcon.Error) Finally 'CMDEdit.Dispose() con.Close() 'con = Nothing End Try End If End If End Sub Sub nosurat() Call ConDatabase() con.Open() Dim coman As SqlCommand = New SqlCommand("select NoSurat from tbDisposisi", con) Dim reader As SqlDataReader = coman.ExecuteReader() If reader.HasRows = True Then While (reader.Read())
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
188
Me.ComboNoSurat.Items.Add(reader.Item(0)) End While End If reader.Close() con.Close() End Sub Private Sub TampilSurat() Call ConDatabase() Dim DataReader As SqlDataReader Dim CMDTampilData As SqlCommand Try con.Open() If txtUrut.Text <> "" Then CMDTampilData = New SqlCommand("SELECT * FROM tbDisposisi WHERE NoAgd= '" & ComboNoSurat.Text & "'", con) 'Dim Sql As String = "SELECT * FROM tbDisposisi WHERE NoAgd=@Norut" 'CMDTampilData.Parameters.Add("@Norut", SqlDbType.VarChar, 50).Value = txtUrut.Text 'CMDTampilData.CommandText = Sql DataReader = CMDTampilData.ExecuteReader If DataReader.Read() Then txtUrut.Text = DataReader("NoAgd").ToString dtTgl.Text = DataReader("Tanggal").ToString ComboNoSurat.Text = DataReader("NoSurat").ToString txtPeri.Text = DataReader("Prihal").ToString cmbSifat.Text = DataReader("Sifat").ToString txtPeng.Text = DataReader("AslSrt").ToString dtTglTrim.Text = DataReader("TglTerima").ToString cmbHrmt.Text = DataReader("Harap").ToString cmbKepada.Text = DataReader("Kepada").ToString Else End If End If Catch ex As Exception MessageBox.Show(ex.Message, "Terjadi Kegagagalan!", MessageBoxButtons.OK, MessageBoxIcon.Error) Finally 'CMDTampilData.Dispose() con.Close() 'con = Nothing End Try End Sub Private Sub frmDispossisi_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load enableFalse() cmbKepada.Focus() nosurat() txtLain.Enabled = False Timer1.Start() End Sub Sub enableFalse()
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
189
txtPeng.Enabled = False dtTgl.Enabled = False dtTglTrim.Enabled = False txtUrut.Enabled = False cmbSifat.Enabled = False txtPeri.Enabled = False End Sub Private Sub Lihat_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Lihat.Click frmLapDisposisi.Show() End Sub Private Sub cmbKepada_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbKepada.SelectedIndexChanged If cmbKepada.Text = "Kepala Dinas" Then S1.Text = "X" S2.Text = "" S3.Text = "" S4.Text = "" 'S5.Text = "" 'S6.Text = "" 'S7.Text = "" 'K5.Text = "" 'K6.Text = "" 'K7.Text = "" ElseIf cmbKepada.Text = "Sekretaris" Then S1.Text = "" S2.Text = "X" S3.Text = "" S4.Text = "" 'S5.Text = "" 'S6.Text = "" 'S7.Text = "" 'K5.Text = "" 'K6.Text = "" 'K7.Text = "" ElseIf cmbKepada.Text = "Kepala Bidang UMKM" Then S1.Text = "" S2.Text = "" S3.Text = "X" S4.Text = "" 'K5.Text = "" 'K6.Text = "" 'K7.Text = "" ElseIf cmbKepada.Text = "Kepala FPUSP" Then S1.Text = "" S2.Text = "" S3.Text = "" S4.Text = "X" 'K5.Text = "" 'K6.Text = "" 'K7.Text = "" 'ElseIf cmbKepada.Text = "Kepala Bidang UMKM" Then ' S1.Text = "" ' S2.Text = ""
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
190
' S3.Text = "" ' S4.Text = "" ' K5.Text = "X" ' K6.Text = "" ' K7.Text = "" 'ElseIf cmbKepada.Text = "Kepala Bidang FPUSP" Then ' S1.Text = "" ' S2.Text = "" ' S3.Text = "" ' S4.Text = "" ' K5.Text = "" ' K6.Text = "X" ' K7.Text = "" 'Else ' S1.Text = "" ' S2.Text = "" ' S3.Text = "" ' S4.Text = "" ' K5.Text = "" ' K6.Text = "" ' K7.Text = "X" End If End Sub Private Sub cmbHrmt_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbHrmt.SelectedIndexChanged If cmbHrmt.Text = "Tanggapan dan Saran" Then H1.Text = "X" H2.Text = "" H3.Text = "" H4.Text = "" txtLain.Enabled = False ElseIf cmbHrmt.Text = "Proses Lebih Lanjut" Then H1.Text = "" H2.Text = "X" H3.Text = "" H4.Text = "" txtLain.Enabled = False ElseIf cmbHrmt.Text = "Koordinasi / Konfirmasi" Then H1.Text = "" H2.Text = "" H3.Text = "X" H4.Text = "" txtLain.Enabled = False Else H1.Text = "" H2.Text = "" H3.Text = "" H4.Text = "X" txtLain.Enabled = True End If End Sub Sub hapus1() txtPeng.Text = "" dtTgl.Text = "" dtTglTrim.Text = ""
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
191
txtUrut.Text = "" cmbSifat.Text = "" txtPeri.Text = "" ComboNoSurat.Text = "" cmbKepada.Text = "" cmbHrmt.Text = "" End Sub Private Sub Keluar_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Keluar.Click Dim keluar As MsgBoxResult keluar = MessageBox.Show("Anda Ingin Keluar?", "Keluar", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) If keluar = MsgBoxResult.Yes Then Menu_Utama_OK.Show() Me.Close() End If End Sub Sub tampil() Try Dim coman As SqlCommand = New SqlCommand("select aslsrt, tanggal, tglterima, noagd, sifat, prihal from tbdisposisi where nosurat = '" & ComboNoSurat.Text & "'", con) reader = coman.ExecuteReader() If reader.HasRows = True Then While (reader.Read()) txtPeng.Text = reader.Item(0) dtTgl.Text = reader.Item(1) dtTglTrim.Text = reader.Item(2) txtUrut.Text = reader.Item(3) cmbSifat.Text = reader.Item(4) txtPeri.Text = reader.Item(5) End While End If Catch ex As Exception MsgBox(ex.Message()) End Try reader.Close() End Sub Private Sub ComboNoSurat_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboNoSurat.SelectedIndexChanged Call ConDatabase() con.Open() Try Dim coman As SqlCommand = New SqlCommand("select aslsrt, tanggal, tglterima, noagd, sifat, prihal from tbdisposisi where nosurat = '" & ComboNoSurat.Text & "'", con) reader = coman.ExecuteReader() If reader.HasRows = True Then
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
192
While (reader.Read()) txtPeng.Text = reader.Item(0) dtTgl.Text = reader.Item(1) dtTglTrim.Text = reader.Item(2) txtUrut.Text = reader.Item(3) cmbSifat.Text = reader.Item(4) txtPeri.Text = reader.Item(5) End While End If Catch ex As Exception MsgBox(ex.Message()) End Try reader.Close() con.Close() End Sub Private Sub Hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Hapus.Click hapus1() End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Label11.Text = Microsoft.VisualBasic.Right(Label11.Text, 1) + Microsoft.VisualBasic.Left(Label11.Text, Len(Label11.Text) - 1) End Sub Private Sub Label11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label11.Click End Sub Private Sub S3_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles S3.TextChanged End Sub End Class
Menu Pengajuan Cuti
Imports System.Data.SqlClient Public Class Pengajuan_Cuti Dim com As SqlCommand Dim connect As SqlConnection Private Sub Pengajuan_Cuti_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Timer1.Start() End Sub Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Call ConDatabase() connect = con connect.Open()
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
193
Dim Dim Dim Dim Dim Dim
date1 As Date = DateTimePicker1.Text date2 As Date = DateTimePicker2.Text jumlahBulan1 As Integer = date1.Month jumlahBulan2 As Integer = date2.Month jumlahhari1 As Integer = date1.Day jumlahhari2 As Integer = date2.Day
If TextBox1.Text = "" Or TextBox2.Text = "" Or TextBox3.Text = "" Or ComboBox3.Text = "" Or RichTextBox1.Text = "" Then MsgBox("Data Harus Diisi Lengkap!") ElseIf DateTimePicker1.Text = DateTimePicker2.Text Then MsgBox("Maaf Tanggal akhir cuti tidak boleh sama dengan tanggal awal cuti") ElseIf jumlahhari2 < jumlahhari1 Or jumlahBulan2 < jumlahBulan1 Then MsgBox("Maaf Tanggal Akhir harus lebih besar dari Tanggal Awal") Else Try com = New SqlCommand("insert into Cuti values ('" & TextBox1.Text & "','" & TextBox2.Text & "','" & TextBox3.Text & _ "','" & DateTimePicker1.Text & "','" & DateTimePicker2.Text & "','" & ComboBox3.Text & "','" & RichTextBox1.Text & "')", connect) com.ExecuteNonQuery() MsgBox("Data Berhasil Dimasukkan!") laporan() Catch ex As Exception MessageBox.Show(ex.Message, "Data gagal dimasukkan!", MessageBoxButtons.OK, MessageBoxIcon.Error) End Try connect.Close() End If End Sub Sub laporan() Dim cetak As MsgBoxResult cetak = MessageBox.Show("Anda Ingin Cetak Surat '" & TextBox1.Text & "'?", "Cetak", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) If cetak = MsgBoxResult.Yes Then frmPengajuanCuti.Show() ElseIf cetak = MsgBoxResult.No Then Me.Show() End If End Sub Sub bersih() TextBox1.Text = ""
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
194
TextBox2.Text = "" TextBox3.Text = "" ComboBox3.Text = "" RichTextBox1.Text = "" End Sub Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click bersih() End Sub Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click Dim keluar As MsgBoxResult keluar = MessageBox.Show("Anda Ingin Keluar?", "Keluar", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) If keluar = MsgBoxResult.Yes Then Menu_Utama_OK.Show() Me.Close() End If End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click bersih() End Sub Private Sub Label11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label11.Click End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Label11.Text = Microsoft.VisualBasic.Right(Label11.Text, 1) + Microsoft.VisualBasic.Left(Label11.Text, Len(Label11.Text) - 1) End Sub Private Sub DateTimePicker2_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DateTimePicker2.ValueChanged End Sub Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged End Sub End Class
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
195
Menu Kode Klasifikasi
Imports Imports Imports Imports
System.Management System System.Data System.Data.SqlClient
Public Class frmKodeKlasifikasi Dim dt As New DataTable Dim da As SqlDataAdapter Private Sub HapusKode() Call ConDatabase() Dim CMDDelete As SqlCommand = con.CreateCommand If txtKlas.Text <> "" Then If MessageBox.Show("Anda Yakin Kode Klasifikasi " & txtKlas.Text & " Akan Dihapus...?", "Peringatan!", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) = Windows.Forms.DialogResult.Yes Then Try con.Open() Dim Sql As String = "DELETE FROM tbKodeSurat WHERE KodeS=@KodeS" With CMDDelete .CommandText = Sql .Parameters.Add("@KodeS", SqlDbType.NVarChar, 50).Value = txtKlas.Text .ExecuteNonQuery() End With Catch ex As Exception MessageBox.Show(ex.Message, "Terjadi Kegagagalan!", MessageBoxButtons.OK, MessageBoxIcon.Error) Finally CMDDelete.Dispose() con.Close() con = Nothing End Try End If End If End Sub Private Sub SimpanKode() Call ConDatabase() Dim CMDInsert As SqlCommand = con.CreateCommand Dim Sql As String If txtKlas.Text <> "" Then If MessageBox.Show("Data Berhasil !!", "Penyimpanan", MessageBoxButtons.OK, MessageBoxIcon.Information) Then Try con.Open() Sql = "INSERT INTO tbKodeSurat(KodeS, Prihal)" Sql &= "VALUES(@KodeS, @Prihal)" With CMDInsert .CommandText = Sql .Connection = con
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
196
.Parameters.Add("@KodeS", SqlDbType.VarChar, 50).Value = txtKlas.Text .Parameters.Add("@Prihal", SqlDbType.VarChar, 100).Value = txtPeri.Text .ExecuteNonQuery() End With Catch ex As Exception MessageBox.Show(ex.Message, "Terjadi Kegagagalan!", MessageBoxButtons.OK, MessageBoxIcon.Error) Finally CMDInsert.Dispose() con.Close() con = Nothing End Try End If End If End Sub
Private Sub EditKode() Call ConDatabase() Dim CMDEdit As SqlCommand = con.CreateCommand If txtKlas.Text <> "" Then If MessageBox.Show("Data Sudah Masuk !!", "Penyimpanan", MessageBoxButtons.OK, MessageBoxIcon.Information) Then Try con.Open() Dim Sql As String = "UPDATE tbKodeSurat SET Prihal=@Prihal WHERE KodeS=@KodeS;" With CMDEdit .CommandText = Sql .Connection = con .Parameters.Add("@KodeS", SqlDbType.VarChar, 50).Value = txtKlas.Text .Parameters.Add("@Prihal", SqlDbType.VarChar, 100).Value = txtPeri.Text .ExecuteNonQuery() End With Catch ex As Exception MessageBox.Show(ex.Message, "Terjadi Kegagagalan!", MessageBoxButtons.OK, MessageBoxIcon.Error) Finally CMDEdit.Dispose() con.Close() con = Nothing End Try End If End If End Sub Private Sub HapusText()
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
197
txtKlas.Text = "" txtPeri.Text = "" End Sub Private Sub TampilKode() Call ConDatabase() Dim DataReader As SqlDataReader Dim CMDTampilData As SqlCommand = con.CreateCommand() Try con.Open() If txtKlas.Text <> "" Then Dim Sql As String = "SELECT * FROM tbKodeSurat WHERE KodeS=@KodeS" CMDTampilData.Parameters.Add("@KodeS", SqlDbType.VarChar, 50).Value = txtKlas.Text CMDTampilData.CommandText = Sql DataReader = CMDTampilData.ExecuteReader() If DataReader.Read() Then txtKlas.Text = DataReader("KodeS").ToString txtPeri.Text = DataReader("Prihal").ToString Else End If End If Catch ex As Exception MessageBox.Show(ex.Message, "Terjadi Kegagagalan!", MessageBoxButtons.OK, MessageBoxIcon.Error) Finally CMDTampilData.Dispose() con.Close() con = Nothing End Try End Sub 'Private Sub TampilDataKode() ' Koneksi.ConDatabase() ' Try ' dtAdapter = New SqlClient.SqlDataAdapter("SELECT KodeS As [Kode Klasifikasi], Prihal As [Prihal] FROM tbKodeSurat ORDER BY KodeS", Koneksi.con) ' Dim tbKodeSurat As New DataTable ' tbKodeSurat.Clear() ' dtAdapter.Fill(tbKodeSurat) ' DataGridView1.DataSource = tbKodeSurat ' Catch ex As Exception ' MsgBox(ex.Message, MsgBoxStyle.Information, "Perhatian") ' End Try 'End Sub Sub view() Koneksi.ConDatabase() dt.Clear() da = New SqlDataAdapter("SELECT KodeS As [Kode Klasifikasi], Prihal As [Prihal] FROM tbKodeSurat", Koneksi.con) da.Fill(dt) DataGridView1.DataSource = dt End Sub
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
198
Private Sub Simpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Simpan.Click Call SimpanKode() Call view() Call HapusText() End Sub Private Sub Edit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Edit.Click Call EditKode() Call view() Call HapusText() Edit.Enabled = False Hapus.Enabled = False Simpan.Enabled = True Reset.Enabled = True End Sub Private Sub Reset_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Reset.Click Call HapusText() End Sub Private Sub Hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Hapus.Click Call HapusKode() Call view() Call HapusText() Edit.Enabled = False Hapus.Enabled = False Simpan.Enabled = True Reset.Enabled = True End Sub Private Sub Keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Keluar.Click Dim keluar As MsgBoxResult keluar = MessageBox.Show("Anda Ingin Keluar?", "Keluar", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) If keluar = MsgBoxResult.Yes Then Menu_Utama_OK.Show() Me.Close() End If End Sub Private Sub txtKlas_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtKlas.Leave Call TampilKode() End Sub Private Sub frmKodeKlasifikasi_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
199
view() Timer1.Start() End Sub Private Sub DataGridView1_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick Edit.Enabled = True Hapus.Enabled = True Simpan.Enabled = False Reset.Enabled = False Dim index As Integer = DataGridView1.CurrentRow.Index Dim row As DataGridViewRow = DataGridView1.Rows(index) txtKlas.Text = CStr(row.Cells("Kode Klasifikasi").Value) txtPeri.Text = CStr(row.Cells("Prihal").Value) End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Label11.Text = Microsoft.VisualBasic.Right(Label11.Text, 1) + Microsoft.VisualBasic.Left(Label11.Text, Len(Label11.Text) - 1) End Sub Private Sub txtKlas_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtKlas.TextChanged End Sub End Class
Menu Ubah Password
Imports System.Data.SqlClient Public Class UbahPassword 'Dim kon As SqlConnection 'Dim str As String = "data source = .\sqlexpress;initial catalog = dbSurat;integrated security = true" Dim coman2 As SqlCommand Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'kon = New SqlConnection(str) 'kon.Open() Try Call ConDatabase() con.Open() TextBox1.Enabled = False coman2 = New SqlCommand("select password from tbLogin where username = '" & Menu_Utama_OK.Label3.Text & "' and Nama_Lengkap = '" & Menu_Utama_OK.Label4.Text & "'", con) TextBox1.Text = CStr(coman2.ExecuteScalar()) TextBox2.Focus() Catch ex As Exception
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
200
MsgBox(ex.Message) End Try End Sub Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Try If TextBox2.Text <> TextBox3.Text Then MsgBox("Maaf Ulang Password Anda Tidak Sama") bersih() ElseIf TextBox2.Text = "" Or TextBox3.Text = "" Then MsgBox("Maaf Form Belum Lengkap Terisi!") bersih() Else Dim coman As SqlCommand = New SqlCommand("update tblogin set password = '" & TextBox2.Text & "'where username = '" & Menu_Utama_OK.Label3.Text & "' and Nama_Lengkap = '" & Menu_Utama_OK.Label4.Text & "'", con) coman.ExecuteNonQuery() MsgBox("Update Password Succes !") bersih() End If Catch ex As Exception MsgBox(ex.Message) End Try End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Me.Close() con.Close() End Sub Sub bersih() TextBox2.Text = "" TextBox3.Text = "" End Sub Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged End Sub End Class
Menu Pencarian Surat
Imports System.Data.SqlClient Imports System.IO Public Class Pencarian Dim dt As New DataTable Dim da As SqlDataAdapter
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
201
Dim command As New SqlCommand Dim id As Integer Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress If e.KeyChar = Chr(13) Then tampil() TextBox1.Focus() End If End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click tampil() TextBox1.Focus() End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click bersih() PictureBox1.Image = Nothing dt.Clear() LihatGmbr.Enabled = False End Sub Sub bersih() TextBox1.Text = "" End Sub Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Dim keluar As MsgBoxResult keluar = MessageBox.Show("Anda Ingin Keluar?", "Keluar", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) If keluar = MsgBoxResult.Yes Then Menu_Utama_OK.Show() Me.Close() End If End Sub Sub tampil() Call ConDatabase() con.Open() dt.Clear() Try If ComboBox1.Text = "SURAT MASUK" Then If ComboBox2.Text = "No Surat" Then command = New SqlCommand("select count (nosurat) from tbsuratmasuk where NoSurat = '" & TextBox1.Text & "'", con) id = CInt(command.ExecuteScalar()) If id = 1 Then
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
202
da = New SqlDataAdapter("SELECT * FROM tbsuratmasuk where NoSurat = '" & TextBox1.Text & "'", con) ElseIf id = 0 Then MsgBox("Maaf No Surat yang Anda Cari Tidak Ada!") dt.Clear() End If LihatGmbr.Enabled = True ElseIf ComboBox2.Text = "Instansi" Then da = New SqlDataAdapter("SELECT * FROM tbsuratmasuk where asalsrt like '%" & TextBox1.Text & "%'", con) End If ElseIf ComboBox1.Text = "SURAT KELUAR" Then If ComboBox2.Text = "No Surat" Then command = New SqlCommand("select count (nosurat) from tbsuratkeluar where NoSurat = '" & TextBox1.Text & "'", con) id = CInt(command.ExecuteScalar()) If id = 1 Then da = New SqlDataAdapter("SELECT * FROM tbsuratkeluar where NoSurat = '" & TextBox1.Text & "'", con) ElseIf id = 0 Then MsgBox("Maaf No Surat yang Anda Cari Tidak Ada!") dt.Clear() End If LihatGmbr.Enabled = False ElseIf ComboBox2.Text = "Instansi" Then da = New SqlDataAdapter("SELECT * FROM tbsuratkeluar where pengirim like '%" & TextBox1.Text & "%'", con) LihatGmbr.Enabled = False End If ElseIf ComboBox1.Text = "SURAT DISPOSISI" Then If ComboBox2.Text = "No Surat" Then command = New SqlCommand("select count (nosurat) from tbDisposisi where NoSurat = '" & TextBox1.Text & "'", con) id = CInt(command.ExecuteScalar()) If id = 1 Then da = New SqlDataAdapter("SELECT * FROM tbDisposisi where NoSurat = '" & TextBox1.Text & "'", con) ElseIf id = 0 Then MsgBox("Maaf No Surat yang Anda Cari Tidak Ada!") dt.Clear() End If LihatGmbr.Enabled = False ElseIf ComboBox2.Text = "Instansi" Then da = New SqlDataAdapter("SELECT * FROM tbDisposisi where aslsrt like '%" & TextBox1.Text & "%'", con) LihatGmbr.Enabled = False End If ElseIf ComboBox1.Text = "PENGAJUAN CUTI" Then If ComboBox2.Text = "No Surat" Then command = New SqlCommand("select count (No_Surat) from cuti where No_Surat = '" & TextBox1.Text & "'", con) id = CInt(command.ExecuteScalar()) If id = 1 Then
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
203
da = New SqlDataAdapter("SELECT * FROM cuti where No_Surat = '" & TextBox1.Text & "'", con) ElseIf id = 0 Then MsgBox("Maaf No Surat yang Anda Cari Tidak Ada!") dt.Clear() End If LihatGmbr.Enabled = False ElseIf ComboBox2.Text = "Instansi" Then MsgBox("Maaf Tidak Ada Instansi pada Surat pengajuan Cuti") End If End If da.Fill(dt) DataGridView1.DataSource = dt Catch ex As Exception MsgBox(ex.Message) End Try con.Close() End Sub Sub tampilgambar() Call ConDatabase() Try con.Open() Dim coman As New SqlCommand("select gambar from tbSuratmasuk where NoSurat = '" & TextBox1.Text & "'", con) Dim imageData As Byte() = DirectCast(coman.ExecuteScalar(), Byte()) Dim newImage As Image = Nothing If Not imageData Is Nothing Then Using ms As New MemoryStream(imageData, 0, imageData.Length) ms.Write(imageData, 0, imageData.Length) newImage = Image.FromStream(ms, True) End Using PictureBox1.Image = newImage End If Catch ex As Exception MsgBox(ex.Message) End Try con.Close() End Sub Sub pilih_gambar() If ComboBox1.Text = "SURAT MASUK" Then tampilgambar() ElseIf ComboBox1.Text = "SURAT KELUAR" Then MsgBox("Maaf Gambar Pada Tabel ini Tidak Ada") ElseIf ComboBox1.Text = "SURAT DISPOSISI" Then MsgBox("Maaf Gambar Pada Tabel ini Tidak Ada")
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
204
ElseIf ComboBox1.Text = "PENGAJUAN CUTI" Then MsgBox("Maaf Gambar Pada Tabel ini Tidak Ada") End If End Sub Private Sub LihatGmbr_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LihatGmbr.Click tampilgambar() End Sub Private Sub Pencarian_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load LihatGmbr.Enabled = false End Sub Private Sub ComboBox2_SelectedIndexChanged_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox2.SelectedIndexChanged If ComboBox2.Text = "No Surat" Then Label2.Text = "No Surat" ElseIf ComboBox2.Text = "Instansi" Then Label2.Text = "Nama Instansi" End If End Sub Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged End Sub End Class
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.