Laporan PKL PBI TI 2013

67
APLIKASI DATA INVENTARIS PADA PT.PLN (Persero) AREA PEMATANGSIANTAR LAPORAN KERJA PRAKTEK LAPANGAN Oleh ANNA VERA NAPITUPULU (12110005) NOVARINA (12110014) RICHARD BERLIEN (12110004) PROGRAM STUDI TEKNIK KOMPUTER

description

Laporan PKL (Praktik Kerja Lapangan) Mahasiswa Politeknik Bisnis Indonesia Prodi Teknik Komputer Stambuk 2013

Transcript of Laporan PKL PBI TI 2013

APLIKASI DATA INVENTARIS PADA PT.PLN (Persero)AREA PEMATANGSIANTAR

LAPORAN KERJA PRAKTEK LAPANGAN

OlehANNA VERA NAPITUPULU (12110005)NOVARINA (12110014)RICHARD BERLIEN (12110004)

PROGRAM STUDI TEKNIK KOMPUTERPOLITEKNIK BISNIS INDONESIAPEMATANGSIANTAR

2014LEMBARAN PENGESAHANAPLIKASI DATA INVENTARIS PADA PT.PLN (Persero)AREA PEMATANGSIANTAR

KERJA PRAKTEK LAPANGAN

OlehANNA VERA NAPITUPULU (12110005)NOVARINA (12110014)RICHARD BERLIEN (12110004)

D-III Teknik KomputerPoliteknik Bisnis Indonesia Murni SadarPematangsiantar

Pematangsiantar, 8 Desember 2014

Disetujui oleh : Diketahui dan disahkan oleh :Dosen Pembimbing Ketua Program StudiTeknik Komputer D3

.........SURAT PERNYATAANPerihal KP PI PKLSaya yang bertanda tangan dibawah ini:Anna Vera Napitupulu

Nama : NIM : Program Studi : Jenjang Studi : Konsentrasi Bidang : Jaringan dan Web DesignDiploma III (DIII)Teknik Komputer12110005

Telah melaksanakan Kerja Praktek / Penulisan Ilmiah / PKL dengan judul dan tempat Kerja Praktek / Penulisan Ilmiah / PKL sebagai berikut:Aplikasi Data Inventaris PT.PLN

Judul Laporan : (diisi bila KP/PI/PKL di perusahaan)PT.PLN (Persero)Anna Vera Napitupulu

Tempat : Jln.Kapten MH.Sitorus

Alamat : No. Telepon : +62 821 653 304 435

Sehubungan dengan Kerja Praktek/ Penulisan Ilmiah/ PKL tersebut, dengan ini saya menyatakan dengan sebenar benarnya bahwa Kerja Praktek/ Penulisan Ilmiah/ PKL dan pembuatan laporannya merupakan hasil kerja saya sendiri (tidak menyuruh orang lain yang mengerjakan). Bila pernyataan saya ini ternyata tidak benar, maka saya bersedia dikenakan sanksi yang telah ditetapkan oleh Politeknik Bisnis Indonesia Pematangsiantar yakni Pembatalan Laporan Kerja Praktek/ Penulisan Ilmiah/ PKL, dan harus saya ulang pada semester berikutnya.

Demikian surat pernyataan ini saya perbuat dengan sungguh sungguh, dalam keadaan sadar dan tanpa ada tekanan dari pihak manapun.

Pematangsiantar, September 2014Saya yang membuat pernyataanMateraiRp. 6000.SURAT PERNYATAANPerihal KP PI PKLSaya yang bertanda tangan dibawah ini:Novarina

Nama : NIM : Program Studi : Jenjang Studi : Konsentrasi Bidang : Jaringan dan Web DesignDiploma III (DIII)Teknik Komputer12110014

Telah melaksanakan Kerja Praktek / Penulisan Ilmiah / PKL dengan judul dan tempat Kerja Praktek / Penulisan Ilmiah / PKL sebagai berikut:Aplikasi Data Inventaris PT.PLN

Judul Laporan : (diisi bila KP/PI/PKL di perusahaan)PT.PLN (Persero)

Tempat : Jln.Kapten MH.Sitorus

Alamat : No. Telepon : +62 821 653 304 435

Sehubungan dengan Kerja Praktek/ Penulisan Ilmiah/ PKL tersebut, dengan ini saya menyatakan dengan sebenar benarnya bahwa Kerja Praktek/ Penulisan Ilmiah/ PKL dan pembuatan laporannya merupakan hasil kerja saya sendiri (tidak menyuruh orang lain yang mengerjakan). Bila pernyataan saya ini ternyata tidak benar, maka saya bersedia dikenakan sanksi yang telah ditetapkan oleh Politeknik Bisnis Indonesia Pematangsiantar yakni Pembatalan Laporan Kerja Praktek/ Penulisan Ilmiah/ PKL, dan harus saya ulang pada semester berikutnya.

Demikian surat pernyataan ini saya perbuat dengan sungguh sungguh, dalam keadaan sadar dan tanpa ada tekanan dari pihak manapun.

Pematangsiantar, September 2014Saya yang membuat pernyataanMateraiRp. 6000.

SURAT PERNYATAANPerihal KP PI PKLSaya yang bertanda tangan dibawah ini:Richard Berlien

Nama : NIM : Program Studi : Jenjang Studi : Konsentrasi Bidang : Jaringan dan Web DesignDiploma III (DIII)Teknik Komputer12110004

Telah melaksanakan Kerja Praktek / Penulisan Ilmiah / PKL dengan judul dan tempat Kerja Praktek / Penulisan Ilmiah / PKL sebagai berikut:Aplikasi Data Inventaris PT.PLN

Judul Laporan : (diisi bila KP/PI/PKL di perusahaan)PT.PLN (Persero)

Tempat : Jln.Kapten MH.Sitorus

Alamat : No. Telepon : +62 821 653 304 435

Sehubungan dengan Kerja Praktek/ Penulisan Ilmiah/ PKL tersebut, dengan ini saya menyatakan dengan sebenar benarnya bahwa Kerja Praktek/ Penulisan Ilmiah/ PKL dan pembuatan laporannya merupakan hasil kerja saya sendiri (tidak menyuruh orang lain yang mengerjakan). Bila pernyataan saya ini ternyata tidak benar, maka saya bersedia dikenakan sanksi yang telah ditetapkan oleh Politeknik Bisnis Indonesia Pematangsiantar yakni Pembatalan Laporan Kerja Praktek/ Penulisan Ilmiah/ PKL, dan harus saya ulang pada semester berikutnya.

Demikian surat pernyataan ini saya perbuat dengan sungguh sungguh, dalam keadaan sadar dan tanpa ada tekanan dari pihak manapun.

Pematangsiantar, September 2014Saya yang membuat pernyataanMateraiRp. 6000.KATA PENGANTAR

Puji syukur kehadirat Tuhan yang Maha Esa sehingga penulis dapat menyelesaikan laporan Kereja Praktek (KP) tepat waktu, sebagai salah satu syarat untuk dapat menyelesaikan studi pada program Teknik Komputer di Politeknik Bisnis Indonesia Murni Sadar (PBIMS).Dengan dilakukannya Kerja Praktek (KP) ini, penulis dapat mengerti bagaimana dunia kerja yang sebenarnya, disini dituntut bagaimana seseorang itu mandiri dan dapat bekerja dalam satu Tim. Dalam KP ini penulis memdapat pengalaman yang luar biasa, pengalaman dapat bekerjasama dengan Tim yang bekerja di Perusahaan BUMN.Terwujud Laporan Kerja Praktek (KP) ini adalah berkat bantuan, dukungan dan saran dari berbagai pihak yang telah bersedia meluangkan waktunya dalam membimbing penulis baik secara langsung maupun tidak langsung. Maka patutlah sekiranya bila kesempatan ini penulis juga mengucapkan banyak terimah kasih kepada:1. Bapak Calen, SE. MM., selaku Direktur Politeknik Bisnis Indonesia Murni Sadar.2. Bapak Ayannes S. Girsang, selaku Manajer PT. PLN (Persero) Area Pematangsiantar yang telah menerima kami PKL di PT. PLN Area Pematangsiantar.3. Bapak Johannes Manurung, selaku Pembimbing Instansi Kerja Praktek.4. Bapak Sahat Sitanggang, M.Kom, selaku Ketua Prodi dan Pembimbing Teknik Komputer di PBIMS.5. Bapak Victor, S.Kom, selaku dosen Jaringan di PBIMS.6. Bapak Novendra Sinaga, S.Kom, selaku dosen Web Design.7. Seluruh staf dan karyawan PT. PLN (Persero) Area Pematangsiantar,yang tidak dapat saya sebutkan satu per satu, yang memberikan bantuannya secara langsung maupun tidak langsung.8. Rekan-rekan Mahasiswa / Mahasiswi yang memberikan bantuannya dalam menyelesaikan laporan ini.9. Rekan-rekan dari POLMED yang membantu dan dapat bekerjasama dengan baik dalam menyelesaikan pekerjaan selama PKL berlangsung.10. Orang-orang takkan terlupakan dalam hidup penulis, yaitu, kedua orang tua penulis yang telah merawat, memberikan dukungan, Doa restunya baik moral maupun material.

Penulis menyadari bahwa Laporan Kerja Praktek ini masih jauh dari sempurna. Oleh karena itu, penulis dengan rendah hati menerima kritik dan saran dari pembaca.

Pematangsiantar, Desember 2014

Penulis

DAFTAR ISISURAT PERNYATAAN3KATA PENGANTAR6DAFTAR ISI8BAB I11PENDAHULUAN11Latar Belakang11

HalamanHalaman JudulHALAMAN PENGESAHANSURAT PERNYATAANKATA PENGANTARDAFTAR ISIBAB IPendahuluan1.1 Latar Belakang1.2 Tujuan1.3 Manfaat1.3.1 Manfaat Bagi Penulis1.3.2 Manfaat Bagi Objek Kerja Praktek1.3.3 Manfaat Bagi Akademik1.4 Ruang Lingkup1.5 Metode Pengumpulan Data1.6 Waktu dan Tempat Kerja PraktekBAB II`Gambaran Umum PT.PLN (Persero)2.1 Sejarah Singkat2.2 Fungsi Pokok PT.PLN (Persero)2.2.1 Visi2.2.2 Misi2.3 Struktur OrganisasiBAB III Tinjauan Pustaka2 3 3.1 Visual BASIC3.1.1 Pengertian Visual BASIC3.1.2 Perkembangan Visual Basic3.1.3 Keistimewaan Visual Basic3.2 Database3.3 Microsoft Access3.3.1 Tipe Data Microsoft Access3.3.2 Cara Membuat DatabaseBAB IV Hasil Pengamatan Dan Pembahasan2 3 4 4.1 4.1 Analisis Sistem4.1.1 Sistem Yang Berjalan4.1.2 Sistem Yang Baru4.2 Pembahasan Sistem4.2.1 Menu Utama4.2.2 Form Log Masuk4.2.3 Form Input Data Inventaris4.2.3.1 Form Memasukkan Data Baru4.2.3.2 Form Masukkan Jenis Baru4.2.3.3 Form Tampilkan Data4.2.3.4 Form Ubah Data4.2.3.5 Form Hapus Data4.2.4 Form Pencarian4.2.5 Form Tampilan Rekap4.2.6 Form Log KeluarBAB V Kesimpulan Dan Saran5 5.1 Kesimpulan5.2 SaranDAFTAR GAMBARDAFTAR PUSTAKA LAMPIRAN

BAB IPENDAHULUAN

1. Latar BelakangPerkembangan teknologi informasi sangat dirasakan begitu pesat dan hampir seluruh aktivitas yang di lakukan oleh setiap pegawai menggunakan teknologi yang canggih seperti komputer. Pegunaan komputer dalam melakukan suatu pekerjaan memiliki banyak manfaat dalam penyelesaian tugas-tugas karyawan yang tidak memakan waktu yang banyak dan lama, dan mutu pekerjaan yang baik serta memberikan informasi dengan cepat dan tepat.Dengan adanya komputer akan mempermudah manusia ataupun pekeja dalam melakukan pekerjaan yang sulit dan rumit jika di kerjakan secara manual, sehingga dengan demikian pekerjaan tersebut akan terhindar dari ketidakefisienan kerja. Selain itu dengan adanya komputer maka kinerja perusahaan dan operasionalnya pun dapat meningkatkan kualitas dan mutu kerja yang dihasilakan.PT.PLN (Persero) Area Pematangsiantar merupakan salah satu perusahaan BUMN (Bandan Usaha Milik Negara) yang bergerak di bidang kelistrikan Negara. Secara keseluruhan pengolahan data di perusahaan ini sudah berbasis komputerisasi dan terpusat, hanya saja dalam melakukan pendataan inventaris masih belum terkomputerisasi atau masih sistem pencatatan manual. Maka dalam hal pendataan inventaris kuarang efektif dan sangat rumit untuk mendata secara manual karena dapat terjadi kesalahan dalam pendataan inventaris di setiap ruangan.Maka penulis merasa perlu untuk membuat suatu aplikasi data inventaris pada PT.PLN (Persero) Area Pematangsiantar untuk dapat lebih mudah dalam mendata semua inventaris yang ada di setiap ruangan.Dalam mengatasi masalah tersebut, maka perlu adanya dukungan program aplikasi komputer dalam mendata semua inventaris. Berdasarkan latar belakang tersebut, penulis termotivasi untuk membentuk suatu aplikasi yang lebih efektif dan efisien dengan mengunakan pemograman Visual Basic. Dengan adanya aplikasi tersebut, dapat membantu permasalahan yang terjadi. Maka penulis menggunakan Pemograman Visual Basic yang di jadikan laporan akhir dengan judul:Aplikasi Data Inventaris Pada PT.PLN (Persero) Area Pematangsiantar

1.1 TujuanTujuan yang dicapai dalam Laporan Kerja Praktek ini adalah membuat Aplikasi Data Inventaris Pada PT.PLN (Persero) Area Pematangsiantar.

1.2 Manfaat1.2.1 Manfaat Bagi PenulisMendapatkan pengetahuan baru dalam merancang dan membuat Aplikasi Data Inventaris Pada PT.PLN (Persero) Area Pematangsiantar. Untuk menerapkan ilmu pengetahuan yang didapat dari perkuliahan khususnya pengetahuan perancangan sistem aplikasi dan pemograman.

1.2.2 Manfaat Bagi Objek Kerja PraktekMemberikan kemudahan kepada PT.PLN (Persero) Area Pematangsiantar dalam mendata semua inventaris PLN.

1.2.3 Manfaat Bagi AkademikManfaat Praktek Kerja Lapangan ini sendiri bagi pihak Akademik yaitu untuk menambah pengalaman dan pengetahuan khususnya mengenai aplikasi di dalam pengolahan data dan untuk menerapkan ilmu pengetahuan selama mengikuti kuliah di PBIMS Pematangsiantar.

1.3 Ruang LingkupAdapun ruang lingkup dalam Praktek Kerja Lapangan yang dilaksanakan di PT.PLN (Persero) Area Pematangsiantar, yakni pendataan seluruh inventori yang digunakan di setiap ruangan PT.PLN (Persero) Area Pematangsiantar untuk perancangan Aplikasi Data Inventaris PT.PLN (Persero) Area Pematangsiantar.

1.4 Metode Pengumpilan DataAdapun metode pengumpulan data yang digunakan, yaitu dengan melakukan wawancara dengan karyawan di PT.PLN (Persero) Area Pematangsiantar untuk menanayakan informasi dan sistem kerja PT.PLN (Persero) Area Pematangsiantar. Dan juga melakukan observasi di setiap bagian PT.PLN (Persero) Area Pematangsiantar untuk mengumpulkan informasi yang berhubungan dengan aplikasi inventaris yang dirancang.

1.5 Waktu dan Tempat Kerja PraktekWaktu Kerja Praktek (KP) di lakukan dari tanggal 4 Agustus 2014 sampai dengan 4 September 2014.Lokasi penulis melaksanakan PKL yaitu di PT.PLN (Persero) Area Pematangsiantar. Alamat Jln.Kapten MH.Sitorus No.1

BAB IIGAMBARAN UMUM PT.PLN (Persero)2.1 Sejarah SingkatBerawal dari abad ke-19, perkembangan ketenagalistrikan di Indonesia mulai di tingkatkan saat beberapa perusahaan asal Belanda yang bergerak di bidang pabrik gula dan pabrik teh mendirikan pembangkit listrik untuk keperluan sendiri.Sekitar tahun 1942-1945 terjadi peralihan pengelolaan perusahaan-perusahaan Belanda tersebut oleh Jepang, setelah Belanda menyerah kepada pasukan tentara Jepang diawal Perang Dunia II.Proses peralihan kekuasaan kembali terjadi di akhir perang Dunia II pada Agustus 1945, saat Jepang menyerah kepada Sekutu.Kesempatan ini dimanfaatkan oleh para pemuda dan buruh listrik melalui delegasi Buruh/Pegawai Listrik dan Gas yang bersama-sama dengan Pimpinan perusahaan tersebut kepada Pemerintah Republik Indonesia. Pada 27 Oktober 1945, Presiden Soekarno membentuk Jawatan Listrik dan Gas di bawah Departemen Pekerjaan Umum dan Tenaga dengan Kapasitas pembangkit tenaga listrik sebesar 157,5 MW.Pada tanggal 1 Januari 1961, Jawatan Listrik dan Gas diubah menjadi BPU-PLN (Badan Pimpinan Umum Perusahaan Listrik Negara) yang bergerak di bidang listrik, gas dan kokas yang dibubarkan pada tanggal 1 Januari 1965. Pada saat yang sama, 2 (dua) perusahaan Negara yaitu Perusahaan Listrik Negara (PLN) sebagai pengelola tenaga listrik milik negara dan Perusahaan Gas Negara (PGN) sebagai pengelola gas diresmikan.Pada tahun 1972, sesuai dengan Peraturan Pemerintah No.17, status Perusahaan Listrik Negara (PLN) ditetapkan sebagai Perusahaan Umum Listrik Negara dan sebagai Pemegang Kuasa Usaha Ketenaga Listrikan (PKUK) dengan tugas menyediakan tenaga listrik bagi kepentingan umum.Seiring dengan kebijakan Pemerintah yang memberikan kesempatan kepada sektor swasta untuk bergerak dalam bisnis penyediaan listrik, maka sejak tahun 1994 status PLN beralih dari Perusahaan Umum menjadi Perseroan (Persero) dan juga sebagai PKUK dalam menyediakan listrik bagi kepentingan umum hingga sekarang.2.2 Fungsi Pokok PLN (Persero) Untuk mencapai fungsi pokok dan sasaran yang ingin dicapai oleh PT.PLN (Persero), maka dengan itu PT.PLN (Persero) menjalankan Visi dan Misi.Adapun Visi dan Misi Perusahaan Listrik Negara sebagai berikut:2.2.1 VisiDiakui sebagai Perusahaan Kelas Dunia yang Bertumbuh kembang, Unggul dan Terpercaya dengan bertumpu pada Potensi Insani.2.2.2 MisiAdapun Misi PT.PLN (Persero), yaitu:1. Menjalankan bisnis kelistrikan dan bidang lain terkait, berorientasi pada kepuasan pelanggan, anggota perusahaan dan pemegang saham.2. Menjadikan tenaga listrik sebagai media untuk meningkatkan kualitas kehidupan masyarakat.3. Mengupayakan agar tenaga listrik menjadi pendorong kegiatan ekonomi.4. Menjalankan kegiatan usaha yang berwawasan lingkuangan.

Adapun motto Perusahaan Listrik Negara (PLN) yang dipegang sampai sekarang ini yaitu: Listrik Kehidupan Yang Lebih Baik (The Elecricity For A Better Life) dengan demikian Perusahaan Listrik Negara (PLN) mempunyai tugas pokok yaitu memberikan pelayanan yang terbaik pada konsumen demi tercapainya kesejahteraan bersama.

2.3 Struktur Organisasi

Gambar 2.1 Struktur Organisasi PT.PLN (Presero) Area Pematangsiantar

BAB IIITINJAUAN PUSTAKA

Pada bab ini akan dibahas mengenai teori dari aplikasi yang berkaitan dengan perancangan sistem dalam Laporan Kerja Praktek ini.3.1 Visual BASIC3.1.1 Pengertian Visual BASICMicrosoft Visual Basic (VB) merupakan sebuah bahasa pemrograman yang menawarkan Integrated Development Environment (IDE) visual untuk membuat program perangkat lunak berbasis sistem operasi Microsoft Windows dengan menggunakan model pemrograman "Common Object Model (COM)". Visual Basic merupakan turunan bahasa pemrograman BASIC dan menawarkan pengembangan perangkat lunak komputer berbasis grafik dengan cepat. Beberapa bahasa skrip seperti Visual Basic for Applications (VBA) dan Visual Basic Scripting Edition (VBScript), mirip seperti halnya Visual Basic, tetapi cara kerjanya yang berbeda. Para programmer dapat membangun aplikasi dengan menggunakan komponen-komponen yang disediakan oleh Microsoft Visual Basic. Program-program yang ditulis dengan Visual Basic juga dapat menggunakan Windows API, tapi membutuhkan deklarasi fungsi luar tambahan. Dalam pemrograman untuk bisnis, Visual Basic memiliki pangsa pasar yang sangat luas. Dalam sebuah survei yang dilakukan pada tahun 2005, 62% pengembang perangkat lunak dilaporkan menggunakan berbagai bentuk Visual Basic, yang diikuti oleh C++, JavaScript, C#, dan Java.3.1.2 Perkembangan Visual Basic VB 1.0 dikenalkan pada tahun 1991, pendekatan yg dilakukan untuk menghubungkan bahasa pemrograman dengan GUI berasal dari prototype yg dikembang oleh Alan Cooper yg disebut TRIPOD, Kemudian Microsoft mengontrak copper dan asosiasinya untuk mengembangkan tripod agar dapat digunakan di windows 3.0 dibawah nama kode Ruby. Berikut Perjalanan Visual Basic: 1. Visual Basic 1.0 (Mei 1991) di rilis untuk windows pada COMDEX/Windows Wordltrade yg dipertunjukan di Atlanta , Georgia2. Visual Basic 1.0 untuk DOS dirilis pada bulan September 1992. Bahasa ini tidak kompatibel dengan Visual Basic For Windows. VB 1.0 for DOS ini pada kenyataaanya merupakan versi kelanjutan dari compiler BASIC, QuickBasic dan BASIC Professional Development System.3. Visual Basic 2.0 dirilis pada November 1992, Cakupan pemrogramannya cukup mudah untuk digunakan dan kecepatannya juga telah di modifikasi. Khususnya pada Form yg menjadikan objek dapat dibuat secara seketika, serta konsep dasar dari Class modul yg berikutnya di implementasikan pada VB 4.4. Visual Basic 3.0 dirilis pada musim panas 1993 dan dibagi menjadi versi standard dan professional. VB 3 memasukan Versi 1.1 dari Microsoft Jet Database Engine yg dapat membaca serta menulis database Jet.5. Visual Basic 4.0 (Agustus 1995) merupakan versi pertama yang dapat membuat windows program 32 bit sebaik versi 16 bit nya. VB 4 juga memperkenalkan kemampuan untuk menulis non-GUI class pada Visual Basic6. Visual Basic 5.0 (Februari 1997), Microsoft merilis secara eksklusif Visual basic untuk versi windows 32 bit. Programmer yg menulis programnya pada versi 16 bit dapat dengan mudah melakukan import porgramnya dari VB4 ke VB5. dan juga sebaliknya, program VB5 dapat diimport menjadi VB4. VB 5 memperkenalakan kemampuan untuk membuat User Control.7. Visual Basic 6.0 (pertengahan 1998) memperbaiki beberapa cakupan, temasuk kemapuannya untuk membuat Aplikasi Web-based. Visual Basic 6 di jadwalkan akan memasuki Microsoft fasa non Supported dimulai pada Maret 2008.

Pemrograman Berorientasi Objek (OOP) Visual Basic merupakan bahasa yang mendukung Pemrograman berorientasi objek, namun tidak sepenuhnya. Beberapa karakteristik obyek tidak dapat dilakukan pada Visual Basic, seperti Inheritance tidak dapat dilakukan pada class module, Polymorphism secara terbatas bisa dilakukan dengan mendeklarasikan class module yang memiliki Interface tertentu. Visual Basic (VB) tidak bersifat case sensitif.

3.1.3 Keistimewaan Visual BasicSejak dikembangkan pada tahun 80-an, Visual Basic, kini telah mencapaiversinya yang ke-6. Beberapa keistimewaan utama dari Visual Basic 6 ini di anaranya seperti: Menggunakan platform pembuatan rogram yang diberi nama Developer Studio, yang memiliki tampilan dan sarana yang sama dengan C++ dan Visual J++. Dengan bagitu Anda dapat bermigrasi atau belajar bahasa pemrograman lainnya dengan mudah dan cepat, tanpa harus belajar dari nol lagi. Memiliki compiler andal yang dapat menghasilkan file executable yang lebih cepat dan lebih efisien dari sebelumnya. Memiliki beberapa tambahan sarana Wizard yang baru. Wizard adalah sarana yang mempermudah di dalam pembuatan aplikasi dengan mengotomatisasi tugas-tugas tertentu. Tambahan kontrol-kontrol baru yang lebih canggih serta peningkatan kaidah struktur bahasa Visual Basic Kemampuan membuat ActiveX dan fasilitas internet yang lebih banyak Sarana akses data yang lebih cepat dan andal untuk membuat aplikasi database yang berkemampuan tinggi Visual Basic 6 memiliki beberapa versi atau edisi yang disesuaikan dengan kebutuhan pemakainya.

3.2 DatabaseData adalah informasi yang mengandung arti. Data diperlukan dalam segala hal, baik berupa pengukuran, pencatatan, pengambilan keputusan, pengumpulan informasi dan masih banyak lagi. Data sangat dibutuhkan karena informasi yang ada memiliki arti yang sangat penting baik untuk saat ini maupun dimasa mendatang.Sedangkan database adalah sebagai pengatur, pengolahan serta penyajian informasi tersebut. Database adalah suatu kumpulan data-data yang disusun sedemikian rupa sehingga membentuk informasi yang sangat berguna.Database terbentuk dari sekelompok data-data yang memiliki jenis/sifat sama. Contohnya: data mahasiswa, data dosen, dll. Demikian juga, kumpulan dari data-data mahasiswa, data-data dosen, data-data keuangan dan lainnya dapat dikumpulkan lagi menjadi kelompok besar. Bahkan dalam perkembangannya, data-data tersebut dapat berbentuk berbagai macam data, misalkan dapat berupa program, lembaran-lembaran untuk entry (memasukkan) data, laporan-laporan. Kesemuanya itu dapat dikumpulkan menjadi satu yang disebut dengan database.Database secara mudah dapat digambarkan sebagai kumpulan dari tabel-tabel yang saling berelasi dan membentuk suatu tujuan tertentu.Contoh: Database Akademik, Database Perusahaan, dll

3.3 Microsoft AccessSalah satu aplikasi yang biasa dipergunakan untuk mengolah database (basis data) ialah Microsoft Acces. Microsoft Access adalah salah satu dari Relasional Database Management System (DBMS). DBMS adalah sebuah program yang memiliki fasilitas penyimpanan dan pemanggilan struktur informasi pada sistem komputer.

3.3.1 Tipe Data Microsoft AccessBerikut adalah berbagai tipe data yang ada dalam Microsoft Access: Text merupakan tipe data yang sering digunakan (Alfabetic dan Numeric). Panjang maksimumnya 255 karakter. Number, hanya digunakan untuk menyimpan data numerik untuk perhitungan matematis. Date/Time, digunakan untuk menyimpan nilai tanggal dan jam. Panjang maksimumnya 8 karakter. Berisi nilai data tanggal dan waktu untuk tahun 100 sampai dengan 9999 Memo, dapat menerima teks apa saja sebagai catatan atau keterangan dan mampu menampung nilai sampai 65535 karakter. Currency, sering digunakan untuk nilai mata uang dan bilangan yang digunakan dalam perhitungan matematis termasuk data dengan 1 sampai 4 angka di sebelah kanan tanda desimal dan 15 digit di sebelah tanda desimal. AutoNumber, berisi angka urut yang sudak ditetapkan oleh Microsoft Access yang muncul secara otomatis dan nilainya tidak dapat diubah. Yes/No, berisi dua nilai saja yaitu Yes/No atau True/false dan On/Off. OLE Object, digunakan untuk eksternal objek. Misalnya gambar, suara, dan sebagainya. Hyperlink, gabungan dari Text dan Numerik yang disimpan dalam bentuk Text. Digunakan untuk menyimpan pointer ke situs web. Lookup Wizard, untuk memilih sebuah nilai dari tabel lain atau List Box atau Combo Box.

3.3.2 Cara Membuat DatabaseDalam Access, ada 3 (tiga) cara untuk membuat database:1. Membuat database baru.Pilihan yang digunakan adalah: Blank Access database.2. Menggunakan database wizard.Pilihan yang digunakan adalah: Access database wizard, pages and projects.3. Menggunakan database yang sudah pernah dibuat.Pilihan yang digunakan adalah: Open an existing file.

Di Microsoft Visual Studio, anda bisa melakukan koneksi dengan file Access.hal ini dimungkinkan dengan adanya microsoft.ace.oledb.12.0 pada Microsoft Visual Studio.Untuk membuat koneksi, diperlukan perintah:Dim CONECT As NewOleDb.OleDbConnection("provider=microsoft.ace.oledb.12.0;data source= " & Application.StartupPath & "\nama_file_access.accdb")

BAB IVHASIL PENGAMATAN DAN PEMBAHASAN

4.1 Analisis Sistem4.1.1 Sistem Yang BerjalanSistem yang saat ini sedang digunakan di PT.PLN (Persero) Area Pematangsiantar. Sistem lama yang sedang berjalan saat ini, yaitu:a. Peralatan - pealatan seperti: meja, kursi, printer, komputer, dll, dibeli degan uang kas PT.PLN (Persero) untuk memenuhi kebutuhan.b. Setelah dibeli, peralatan tersebut langsung diletakkan di ruangan yang membutuhkan fasilitas tersebut.c. Bagian keuangan menulis laporan kepada atasan berupa jenis barang yang dibeli.d. Ketika peralatan tersebut sudah rusak, diletakkan di gudang sementara untuk dieksekusi.

Berdasarkan analis diatas, sistem tersebut sering kali timbul permasalahan seperti, membutuhkan waktu yang lama untuk memperbaiki peralatan yang rusak karena tidak diketahuinya kondisi dan tempat peralatan tersebut. Kelemahan yang lain yaitu, sering terjadinya kehilangan pada peralatan yang berukuran kecil seperti, mouse, kabel LAN, hub jaringan, dll, karena kurangnya pengawasan ataupun peralatan tersebut sering berpindah-pindah dari ruangan yang satu ke ruangan yang lain.

4.1.2 Sistem Yang BaruSistem yang baru dibuat untuk mempermudah dalam pendataan peralatan yang ada pada setiap ruangan di PT.PLN (Persero) Pematangsiantar, perangkat keras dan perangkat lunak yang digunakan harus sesuai dengan keadaan pada PT tersebut.

a. Hardware (perangkat keras) Alat-alat computer yang dapat dilihat dan dapat disentuh disebut perangkat keras (hardware). Perangkat keras terdiri dari suatu sistem komputer yang pada dasarnya terdiri dari beberapa komponen masukkan, unit memori, unit pemroses, dan unit keluaran.Dalam perancangan untuk aplikasi ini, perangkat keras yang digunakan yaitu: Komputer dengan spesifikasi Pentium (R) Dual-Core, RAM (Random Access Memory) 896 Mb, Harddisk 320GB. Keyboard digunakan sebagai alat untuk mengetik data-data. Mouse digunakan sebagai alat penunjuk dan mengatur posisi kusor dilayar. Monitor digunakan untuk melihat data. Printer digunaka untuk mencetak data.

b. Software (Perangkat Lunnak)Perangkat lunak yang dibutuhkan dalam perancangan Aplikasi Data Inventaris Pada PT.PLN (Persero) Area Pematangsiantar yaitu: Windows XP Profesional sebagai sistem operasi. Visual Basic Versi 6.0 sebagai pemrograman yang memberikan instruksi atau perintah program dalam membangun aplikasi data inventaris. Microsoft Office Access 2007 sebagai pemrograman untuk membuat database. Crystal Report 5.8 sebagai pemrograman yang menampilkan laporan yang akan dicetak.

4.2 Pembahasan Sistem4.2.1 Menu UtamaMenu utama merupakan tampilan utama dari aplikasi yang telah dibuat, pada menu utama terdapat beberapa sub menu pilihan, yang dapat dipanggil dengan cara mengklik salah satu sub menu tersebut.Tampilan menu utama:

Gambar 4.1 Tampilan Menu Utama4.2.2 Form Log MasukLog masuk merupakan tampilan untuk memproses siapa-siapa saja yang diperbolehkan untuk mengakses data inventaris. Pada form log masuk terdapat 2(dua) cara akses, yaitu masuk sebagai admin dan masuk sebagai tamu. Apabila pengguna masuk sebagai admin, maka pengguna dapat mengakses input data inventaris, pencarian dan tampilan rekap. Dan bila pengguna masuk sebagai tamu, maka pengguna hanya dapat mengakses pencarian dan tamplan rekap.Tampilan form log masuk:

Gambar 4.2 Form Log Masuk4.2.3 Form Input Data InventarisApabila pengguna masuk sebagai admin, maka pengguna dapat mengakses input data. Pada form input data inventaris terdapat sub menu yang dapat digunakan untuk memasukkan data baru, memasukkan jenis baru, menampilkan data, mengubah data, dan menghapus data.Tampilan form input data inventaris:

Gambar 4.3 Form Input Data Inventaris4.2.3.1 Form Memasukkan Data BaruPada form memasukkan data baru, pengguna dapat mengolah data inventaris yang baru.Tampilan form memasukkan data baru:

Gambar 4.4 Form Memasukkan Data Baru4.2.3.2 Form Masukkan Jenis BaruPada form masukkan jenis baru, pengguna data memasukkan jenis inventaris baru yang belum terdaftar.Tampilan form masukkan jenis baru:

Gambar 4.5 Form Masukkan Jenis Baru

4.2.3.3 Form Tampilkan DataPada form tampilkan data, pengguna dapat melihat data-data inventaris yang sudah disimpan.Tampilan form tampilkan data:

Gmbar 4.6 Form Tampilkan Data4.2.3.4 Form Ubah DataPada form ubah data, pengguna dapat mengubah data inventaris yang sudah disimpan.Tampilan fom ubah data:

Gambar 4.7 Form Ubah Data

4.2.3.5 Form Hapus DataPada form hapus data, pengguna dapat menghapus data inventaris yang sudah disimpan.Tampilan fom hapus data:

Gambar 4.8 Form Hapus Data4.2.4 Form PencarianPada form pencarian, pengguna dapat mencari data inventaris yang sedang diperlukan pengguna.Tampilan form pencarian:

Gambar 4.9 Form Pencarian

4.2.5 Form Tampilan RekapPada form tampilan rekap, pengguna dapat menampilkan hasil rekap data inventaris, yang nantinya dapat dicetak untuk dijadikan laporan data inventaris.Tampilan form tampilkan rekap:

Gambar 4.10 Rekap Data Inventaris4.2.6 Form Log KeluarLog keluar meruoakan menu untuk keluar dari user yang digunakan.Tampilan form log keluar:

Gambar 4.11 Form Log Keluar

BAB VKESIMPULAN DAN SARAN

5.1 KesimpulanKesimpulan yang dapat diambil dari penulisan laporan kerja praktek ini adalah sebagai berikut:1. Aplikasi yang dihasilkan adalah aplikasi data inventaris pada PT.PLN (Persero) Area Pematangsiantar yang dibuat dengan menggunakan bahasa pemrograman visual basic 6.0.2. Mempermudah pengolahan data inventaris untuk mengatasi masalah-masalah khususnya dalam proses pemasukkan data, pencarian data dan pembuatan laporan.

5.2 SaranPada bagian akhir dari pembahasan laporan kerja praktek ini, penulis memberikan beberapa saran kepada PT.PLN (Persero) Area Pematangsiantar.Saran-saran tersebut adalah sebagai berikut:1. Agar PT.PLN (Persero) Area Pematangsiantar dapat menerapkan aplikasi data Inventaris baru ini.2. Untuk mempercepat kinerja sistem dan untuk meningkatkan mutu pelayanan diharapkan PT.PLN (Persero) Area Pematangsiantar memiliki komputer dengan spesifikasi yang memadai, perangkat keras maupun perangkat lunak yang baik agar dapat mendukung kecepatan pengaksesan aplikasi tersebut.

DAFTAR GAMBAR

HalamanGambar 2.1 Struktur Organisasi PT.PLN (Presero) Area PematangsiantarGambar 4.1 Tampilan Menu UtamaGambar 4.2 Form Log MasukGambar 4.3 Form Input Data InventarisGambar 4.4 Form Memasukkan Data BaruGambar 4.5 Form Masukkan Jenis BaruGmbar 4.6 Form Tampilkan DataGambar 4.7 Form Ubah DataGambar 4.8 Form Hapus DataGambar 4.9 Form PencarianGambar 4.10 Rekap Data InventarisGambar 4.11 Form Log Keluar

DAFTAR PUSTAKA

Emigawaty, M Sobri 2009, Pengantar Teknologi Informasi. Palembang. Universitas Bina Darma PressHartono, Jogiyanto 2005, Analisis dan Disain Sistem Informasi: pendekatan terstruktur teori dan praktek aplikasi bisnis. Yogyakarta. Andi YogyakartaNugroho, Adi. 2005. Rational Rose untuk Pemodelan Berorientasi Objek. Bandung. InformatikaTim Divisi Penelitian dan Pengembangan MADCOMS. 2008. Microsoft Visual Basic Versi 6.0 Untuk Pemula. Yogyakarta. Andi Yogyakartahttp://hack.spyrozone.net/0184_MENGENAL_DATABASE_DENGAN_MS_ACCESS_by_TruN0LD_WWW.SPYROZONE.TK_01_Februari_2007.htmlhttp://illtorro.blogspot.com/http://blacknet92.blogspot.com/2013/03/cara-koneksi-database-access-pada.htmlhttp://sartickha-blogger.blogspot.com/2013/02/penjelasan-tentang-visual-basic.html

LAMPIRANLISTING PROGRAM

List Program Visual BasicForm Menu UtamaImports System.Data.OleDbPublic Class lbl_logintry

Public ADP As New OleDbDataAdapter Public DT As New DataTable Public DS As New DataSet Public BS As New BindingSource Friend Shared MasterFileToolStripMenuItem As Object Dim connection As New OleDb.OleDbConnection ' koneksi ke db Dim dbcmd As OleDb.OleDbCommand ' menjalankan perintah SQL Dim dbdr As OleDb.OleDbDataReader ' menyimpan hasil baca tbl Dim strSql As String Dim conStr As String Dim retry_times As String Dim logintime As String Dim logouttime As String

Sub StartUpRestriction() retry_times = 4 lbl_login.Text = "" mstrip_utama.ShowItemToolTips = True LOGMASUKToolStripMenuItem1.Enabled = True INPUTDATAINVENTARISToolStripMenuItem.Enabled = False INPUTDATAINVENTARISToolStripMenuItem.ToolTipText = "Anda Belum Dapat Menggunakan ini, Silahkan login dahulu" KELUARToolStripMenuItem.Enabled = False KELUARToolStripMenuItem.ToolTipText = "Anda tidak masuk sebagai User" End Sub

Sub GuestRestriction() mstrip_utama.ShowItemToolTips = True LOGMASUKToolStripMenuItem1.Enabled = False INPUTDATAINVENTARISToolStripMenuItem.Enabled = False INPUTDATAINVENTARISToolStripMenuItem.ToolTipText = "Tamu Tidak Berhak Melakukan Perintah ini" KELUARToolStripMenuItem.Enabled = True KELUARToolStripMenuItem.ToolTipText = "" End Sub

Sub AdminControl() mstrip_utama.ShowItemToolTips = True LOGMASUKToolStripMenuItem1.Enabled = False INPUTDATAINVENTARISToolStripMenuItem.Enabled = True INPUTDATAINVENTARISToolStripMenuItem.ToolTipText = "" KELUARToolStripMenuItem.Enabled = True KELUARToolStripMenuItem.ToolTipText = "" End Sub

Public Function validating_login() Dim dt As New DataTable Dim ds As New DataSet Dim da As New OleDbDataAdapter("SELECT * FROM tlogin WHERE user = '" & txt_user.Text & "' and password = '" & txt_psw.Text & "'", connection) ds.Tables.Add(dt) connection.Open() da.Fill(dt) For Each DataRow In dt.Rows If txt_user.Text = DataRow.item(0) And txt_psw.Text = DataRow(1) Then connection.Close() Return True End If Next connection.Close() Return False End Function

Sub InputLoginHistoryForAdmin() logintime = lbl_datetime.Text conStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\PKL PLN\WIP_INV\s\inventaris.accdb" connection.ConnectionString = conStr Try connection.Open() strSql = "INSERT INTO thistorilogin(tanggal_login,nama_pengguna) values('" & logintime & "','" & txt_user.Text & "')" dbcmd = New OleDbCommand(strSql, connection) dbcmd.ExecuteNonQuery() Catch ex As Exception MessageBox.Show("Ada Kesalahan Pada Koneksi Pada :" & Err.Description) End Try connection.Close() End Sub

Sub InputExitHistory() logouttime = lbl_datetime.Text conStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\PKL PLN\WIP_INV\s\inventaris.accdb" connection.ConnectionString = conStr Try connection.Open() strSql = "UPDATE(thistorilogin) SET tanggal_logout=('" & logouttime & "') WHERE tanggal_login=('" & logintime & "'); " dbcmd = New OleDbCommand(strSql, connection) dbcmd.ExecuteNonQuery() Catch ex As Exception MessageBox.Show("Ada Kesalahan Pada Koneksi Pada :" & Err.Description) End Try connection.Close() End Sub

Sub InputLoginHistoryForGuest() logintime = lbl_datetime.Text conStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\PKL PLN\WIP_INV\s\inventaris.accdb" connection.ConnectionString = conStr Try connection.Open() strSql = "INSERT INTO thistorilogin(tanggal_login,nama_pengguna) values('" & logintime & "','guest')" dbcmd = New OleDbCommand(strSql, connection) dbcmd.ExecuteNonQuery() Catch ex As Exception MessageBox.Show("Ada Kesalahan Pada Koneksi Pada :" & Err.Description) End Try connection.Close() End Sub

Sub Proses() If validating_login() = True Then InputLoginHistoryForAdmin() grp_login.Hide() lbl_logas.Text = "Anda Masuk sebagai " & txt_user.Text AdminControl() Else retry_times = retry_times - 1 lbl_login.Text = "Password Salah!, " + retry_times + " kali lagi kesempatan mencoba." txt_user.Text = "" txt_psw.Text = "" If retry_times = 0 Then MessageBox.Show("Anda telah Gagal login berturut-turut, program akan ditutup!", "Informasi", MessageBoxButtons.OK, MessageBoxIcon.Warning) Me.Close() End If End If End Sub

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load StartUpRestriction() grp_login.Hide() lbl_datetime.Text = System.DateTime.Now.ToString() connection.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\PKL PLN\WIP_INV\s\inventaris.accdb" WaktuSekarang.Start() End Sub

Private Sub LOGMASUKToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles LOGMASUKToolStripMenuItem1.Click grp_login.Show() grp_login.Left = (Screen.PrimaryScreen.WorkingArea.Width - grp_login.Width) / 2 grp_login.Top = (Screen.PrimaryScreen.WorkingArea.Height - grp_login.Height) / 2 txt_user.Clear() txt_psw.Clear() txt_user.Focus() End Sub

Private Sub WaktuSekarang_Tick(sender As Object, e As EventArgs) Handles WaktuSekarang.Tick lbl_datetime.Text = System.DateTime.Now.ToString() End Sub

Private Sub btn_admin_Click(sender As Object, e As EventArgs) Handles btn_admin.Click Proses() End Sub

Private Sub txt_user_KeyUp(sender As Object, e As KeyEventArgs) Handles txt_user.KeyUp If e.KeyCode = Keys.Enter Then Proses() e.SuppressKeyPress = True End If End Sub

Private Sub txt_psw_KeyUp(sender As Object, e As KeyEventArgs) Handles txt_psw.KeyUp If e.KeyCode = Keys.Enter Then Proses() e.SuppressKeyPress = True End If End Sub

Private Sub btn_nonadmin_Click(sender As Object, e As EventArgs) Handles btn_nonadmin.Click InputLoginHistoryForGuest() txt_user.Text = "" grp_login.Hide() lbl_logas.Text = "Anda Masuk sebagai Tamu" GuestRestriction() End Sub

Private Sub KELUARToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles KELUARToolStripMenuItem.Click If MsgBox("Log keluar dari fungsi user sekarang?", vbYesNo) = vbYes Then InputExitHistory() lbl_logas.Text = "Anda Belum Masuk sebagai User" StartUpRestriction() End If End Sub

Private Sub INPUTDATAINVENTARISToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles INPUTDATAINVENTARISToolStripMenuItem.Click Form_Data.ShowDialog() End Sub

Private Sub TAMPILREKAPToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles TAMPILREKAPToolStripMenuItem.Click Form_Report.Show() End Sub

Private Sub PENCARIANToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles PENCARIANToolStripMenuItem.Click Form_Pencarian2.Show() End SubEnd Class

Form Data InventarisImports System.Data.OleDbPublic Class Form_Data

Public ADP As New OleDbDataAdapter Public DT As New DataTable Public DS As New DataSet Public BS As New BindingSource Dim SQL As String Friend Shared MasterFileToolStripMenuItem As Object Dim LOKASI As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\PKL PLN\WIP_INV\s\inventaris.accdb" Dim connection As New OleDb.OleDbConnection(LOKASI) ' koneksi ke db Dim dbcmd As OleDb.OleDbCommand Dim dbcmd2 As OleDb.OleDbCommand 'menjalankan perintah SQL Dim dbdr As OleDb.OleDbDataReader ' menyimpan hasil baca tbl Dim strSql As String Dim conStr As String

Sub DisableEntries() txt_noinv.Enabled = False txt_namainv.Enabled = False cb_jenis.Enabled = False dt_masuk.Enabled = False cb_bagian.Enabled = False cb_keterangan.Enabled = False cb_kondisi.Enabled = False cb_seksi.Enabled = False cb_ruangan.Enabled = False btn_input.Enabled = False btn_clear.Enabled = False btn_hapus.Enabled = False btn_edit.Enabled = False End Sub

Sub EnableInput() txt_noinv.Enabled = True txt_namainv.Enabled = True cb_jenis.Enabled = True dt_masuk.Enabled = True cb_keterangan.Enabled = True cb_bagian.Enabled = True cb_kondisi.Enabled = True cb_seksi.Enabled = True cb_ruangan.Enabled = True btn_input.Enabled = True btn_clear.Enabled = True btn_hapus.Enabled = False btn_edit.Enabled = False End Sub

Sub ClearEverything() txt_noinv.Text = "" txt_namainv.Text = "" cb_jenis.Text = "-Pilih-" dt_masuk.Text = "" cb_bagian.Text = "-Pilih-" cb_keterangan.Text = "-Pilih-" cb_kondisi.Text = "-Pilih-" cb_seksi.Enabled = False cb_ruangan.Enabled = False cb_seksi.Text = "-Silahkan Pilih Bagian-" cb_ruangan.Text = "-Silahkan Pilih Bagian-" End Sub

Sub DataGridView() BS = Nothing DS.Clear() Try Dim LOKASI As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\PKL PLN\WIP_INV\s\inventaris.accdb" Dim connection As New OleDb.OleDbConnection(LOKASI) Dim query As String = "Select * from tbarang" ADP = New OleDbDataAdapter(query, connection) ADP.Fill(DS, "tbarang") connection.Close() datagrid.DataSource = DS datagrid.DataMember = "tbarang" ADP.Update(DS, "tbarang") Catch ex As Exception MessageBox.Show(ex.Message) Finally connection.Dispose() End Try End Sub

Sub EnableInputMenuStrip() MASUKKANDATABARUToolStripMenuItem.Enabled = True MASUKKANDATABARUToolStripMenuItem.ToolTipText = "" MASUKKANJENISBARUToolStripMenuItem.Enabled = True MASUKKANDATABARUToolStripMenuItem.ToolTipText = "" End Sub

Sub DisableInputMenuStrip() MASUKKANDATABARUToolStripMenuItem.Enabled = False MASUKKANDATABARUToolStripMenuItem.ToolTipText = "Menu ini tidak dapat digunakan dalam keadaan ini" MASUKKANJENISBARUToolStripMenuItem.Enabled = False MASUKKANJENISBARUToolStripMenuItem.ToolTipText = "Menu ini tidak dapat digunakan dalam keadaan ini" End Sub

Sub UbahData() Dim selectedindex As Integer = CInt(datagrid.CurrentRow.Index) Dim LOKASI As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\PKL PLN\WIP_INV\s\inventaris.accdb" Dim connection As New OleDb.OleDbConnection(LOKASI) Try If connection.State = ConnectionState.Closed Then connection.Open() End If strSql = "UPDATE tbarang SET no_inventaris='" & txt_noinv.Text & "',nama_inventaris ='" & txt_namainv.Text & "',jenis ='" & cb_jenis.Text & "',tahun='" & dt_masuk.Text & "',bagian='" & cb_bagian.Text & "',seksi='" & cb_seksi.Text & "',ruangan='" & cb_ruangan.Text & "',kondisi='" & cb_kondisi.Text & "',keterangan='" & cb_keterangan.Text & "'WHERE no_inventaris ='" & txt_noinv.Text & "' " dbcmd = New OleDbCommand(strSql, connection) dbcmd.ExecuteNonQuery() MsgBox("Edit Data Sukses") DisableEntries() ClearEverything() DisableUbahHapus() Catch ex As Exception MessageBox.Show(Err.Description) End Try End Sub

Sub HapusData() Dim LOKASI As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\PKL PLN\WIP_INV\s\inventaris.accdb" Dim connection As New OleDb.OleDbConnection(LOKASI) Try If connection.State = ConnectionState.Closed Then connection.Open() End If strSql = "DELETE from tbarang where no_inventaris ='" & txt_noinv.Text & "' " dbcmd = New OleDbCommand(strSql, connection) dbcmd.ExecuteNonQuery() MsgBox("Data telah Dihapus") DisableEntries() DisableUbahHapus() ClearEverything() Catch ex As Exception MessageBox.Show(Err.Description) End Try End Sub

Public Sub OpenDBForJenis() Dim LOKASI As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\PKL PLN\WIP_INV\s\inventaris.accdb" Dim connection As New OleDb.OleDbConnection(LOKASI) If connection.State = ConnectionState.Closed Then connection.Open() End If SQL = "SELECT * FROM tjenis" dbcmd = New OleDbCommand(SQL, connection) dbdr = dbcmd.ExecuteReader cb_jenis.Items.Clear() Do While dbdr.Read() cb_jenis.Items.Add(dbdr("jenis_inventaris")) Loop connection.Close() End Sub

Sub DisableUbahHapus() UBAHDATAToolStripMenu.Enabled = False UBAHDATAToolStripMenu.ToolTipText = "Menu ini tidak dapat digunakan dalam keadaan ini" btn_edit.Enabled = False HAPUSDATAToolStripMenuItem.Enabled = False HAPUSDATAToolStripMenuItem.ToolTipText = "Menu ini tidak dapat digunakan dalam keadaan ini" btn_hapus.Enabled = False End Sub

Sub EnableUbahHapus() UBAHDATAToolStripMenu.Enabled = True UBAHDATAToolStripMenu.ToolTipText = "" btn_edit.Enabled = True HAPUSDATAToolStripMenuItem.Enabled = True HAPUSDATAToolStripMenuItem.ToolTipText = "" btn_hapus.Enabled = True btn_input.Enabled = False btn_clear.Enabled = False End Sub

Sub CboxRefreshforJenis() Dim LOKASI As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\PKL PLN\WIP_INV\s\inventaris.accdb" Dim connection As New OleDb.OleDbConnection(LOKASI) If connection.State = ConnectionState.Closed Then connection.Open() End If SQL = "SELECT * FROM tjenis" dbcmd = New OleDbCommand(SQL, connection) dbdr = dbcmd.ExecuteReader cb_terdaftar.Items.Clear() Do While dbdr.Read() cb_terdaftar.Items.Add(dbdr("jenis_inventaris")) Loop connection.Close() End Sub

Sub RepositionGrpData() grp_data.Left = (Me.Width - grp_data.Width) / 2 grp_data.Top = (Me.Height - grp_data.Height) / 2 End Sub

Sub RepositionGrpJenis() grp_jenis.Left = (Me.Width - grp_jenis.Width) / 2 grp_jenis.Top = (Me.Height - grp_jenis.Height) / 2 End Sub

Private Sub Form_Data_Load(sender As Object, e As EventArgs) Handles MyBase.Load datagrid.Hide() datagrid.Width = (Me.Width) datagrid.Height = (Me.Height - 0.15 * Me.Height) datagrid.Left = (Me.Width - datagrid.Width) / 2 datagrid.Top = (Me.Height - datagrid.Height) / 2 grp_data.Left = (Me.Width - grp_data.Width) / 2 grp_data.Top = (Me.Height - grp_data.Height) / 2 grp_jenis.Hide() grp_jenis.Left = (Me.Width - grp_jenis.Width) / 2 grp_jenis.Top = (Me.Height - grp_jenis.Height) / 2 DisableEntries() DisableUbahHapus() OpenDBForJenis() ClearEverything() End Sub

Private Sub btn_clear_Click(sender As Object, e As EventArgs) Handles btn_clear.Click ClearEverything() End Sub

Private Sub MASUKKANDATABARUToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles MASUKKANDATABARUToolStripMenuItem.Click EnableInput() grp_data.Show() datagrid.Hide() grp_jenis.Hide() cb_seksi.Enabled = False cb_ruangan.Enabled = False DisableUbahHapus() End Sub

Private Sub btn_input_Click(sender As Object, e As EventArgs) Handles btn_input.Click Dim LOKASI As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\PKL PLN\WIP_INV\s\inventaris.accdb" Dim connection As New OleDb.OleDbConnection(LOKASI) Try If connection.State = ConnectionState.Closed Then connection.Open() End If strSql = "INSERT INTO tbarang(no_inventaris,nama_inventaris,jenis,tahun,bagian,seksi,ruangan,kondisi,keterangan) values('" & txt_noinv.Text & "','" & txt_namainv.Text & "','" & cb_jenis.Text.ToString & "','" & dt_masuk.Text.ToString & "','" & cb_bagian.Text.ToString & "','" & cb_seksi.Text.ToString & "','" & cb_ruangan.Text.ToString & "','" & cb_kondisi.Text.ToString & "','" & cb_keterangan.Text.ToString & "')" dbcmd = New OleDbCommand(strSql, connection) dbcmd.ExecuteNonQuery() If MsgBox("Penyimpanan Data Sukses, Untuk menginput data lagi, silahkan klik OK", MsgBoxStyle.YesNo) = MsgBoxResult.No Then DisableEntries() Else ClearEverything() End If Catch ex As Exception MessageBox.Show(Err.Description) End Try End Sub

Private Sub TAMPILKANDATAToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles TAMPILKANDATAToolStripMenuItem1.Click grp_data.Hide() grp_jenis.Hide() datagrid.Show() DataGridView() DisableUbahHapus() End Sub

Private Sub cb_bagian_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cb_bagian.SelectedIndexChanged If cb_bagian.SelectedItem = "Jaringan" Then cb_seksi.Enabled = True cb_seksi.Items.Clear() cb_seksi.Items.Add("Operasi") cb_seksi.Items.Add("Pemeliharaan") cb_seksi.SelectedItem = "Operasi" 'cbruangan' cb_ruangan.Enabled = True cb_ruangan.Items.Clear() cb_ruangan.Items.Add("Seksi Pemeliharaan Distribusi") cb_ruangan.Items.Add("Seksi Operasi Distribusi") cb_ruangan.Items.Add("Seksi Logistik") cb_ruangan.SelectedItem = "Seksi Pemeliharaan Distribusi" ElseIf cb_bagian.SelectedItem = "Transaksi Energi Listrik / TEL" Then cb_seksi.Enabled = True cb_seksi.Items.Clear() cb_seksi.Items.Add("TEL") cb_seksi.Items.Add("Pengendalian Susut") cb_seksi.Items.Add("Pemeliharaan Meter") cb_seksi.SelectedItem = "TEL" 'cbruangan' cb_ruangan.Enabled = True cb_ruangan.Items.Clear() cb_ruangan.Items.Add("Transaksi Energi Listrik") cb_ruangan.Items.Add("Sekretaris Asman TEL") cb_ruangan.Items.Add("Seksi TEL") cb_ruangan.Items.Add("Seksi HAR Meter") cb_ruangan.Items.Add("Seksi Proteksi") cb_ruangan.Items.Add("TERA") cb_ruangan.Items.Add("P2TL") cb_ruangan.SelectedItem = "Transaksi Energi Listrik" ElseIf cb_bagian.SelectedItem = "Pelayanan dan Administrasi / ADM" Then cb_seksi.Enabled = True cb_seksi.Items.Clear() cb_seksi.Items.Add("PPL") cb_seksi.Items.Add("Administrasi Umum") cb_seksi.SelectedItem = "PPL" 'cbruangan' cb_ruangan.Enabled = True cb_ruangan.Items.Clear() cb_ruangan.Items.Add("Asman PAD") cb_ruangan.Items.Add("Keuangan") cb_ruangan.Items.Add("Akuntansi") cb_ruangan.Items.Add("SDM") cb_ruangan.Items.Add("Sekretariat Umum") cb_ruangan.Items.Add("Humas") cb_ruangan.Items.Add("Ruang Rapat") cb_ruangan.Items.Add("Penagihan") cb_ruangan.Items.Add("Seksi PPL") cb_ruangan.Items.Add("Operator Telepon") cb_ruangan.Items.Add("Kasir") cb_ruangan.SelectedItem = "Asman PAD" ElseIf cb_bagian.SelectedItem = "Non-Bagian" Then cb_seksi.Enabled = True cb_seksi.Items.Clear() cb_seksi.Items.Add("Non-Seksi") cb_seksi.SelectedItem = "Non-Seksi" 'cbruangan' cb_ruangan.Enabled = True cb_ruangan.Items.Clear() cb_ruangan.Items.Add("Manajer") cb_ruangan.Items.Add("Sekretaris Manajer") cb_ruangan.Items.Add("Ahli Kinerja") cb_ruangan.Items.Add("SP") cb_ruangan.Items.Add("P2BJ") cb_ruangan.SelectedItem = "Manajer" End If End Sub

Private Sub datagrid_CellDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles datagrid.CellDoubleClick datagrid.Hide() grp_jenis.Hide() grp_data.Show() RepositionGrpData() EnableUbahHapus() Dim row As Integer = CInt(datagrid.CurrentRow.Index) txt_noinv.Text = datagrid.Item(0, row).Value.ToString txt_namainv.Text = datagrid.Item(1, row).Value.ToString cb_jenis.Text = datagrid.Item(2, row).Value.ToString cb_bagian.Text = datagrid.Item(3, row).Value.ToString dt_masuk.Text = datagrid.Item(4, row).Value.ToString cb_seksi.Text = datagrid.Item(8, row).Value.ToString cb_ruangan.Text = datagrid.Item(7, row).Value.ToString cb_kondisi.Text = datagrid.Item(6, row).Value.ToString cb_keterangan.Text = datagrid.Item(5, row).Value.ToString DisableEntries() DisableInputMenuStrip() btn_input.Enabled = False End Sub

Private Sub MASUKKANJENISBARUToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles MASUKKANJENISBARUToolStripMenuItem.Click CboxRefreshforJenis() datagrid.Hide() grp_data.Hide() grp_jenis.Show() ClearEverything() btn_edit.Enabled = False btn_hapus.Enabled = False RepositionGrpJenis() cb_terdaftar.Text = "-Klik untuk mengecek data yang sudah terdaftar-" End Sub

Private Sub KEMBALIToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles KEMBALIToolStripMenuItem.Click Me.Close() End Sub

Private Sub btn_inputinv_Click(sender As Object, e As EventArgs) Handles btn_inputinv.Click btn_deleteinv.Enabled = False Dim LOKASI As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\PKL PLN\WIP_INV\s\inventaris.accdb" Dim connection As New OleDb.OleDbConnection(LOKASI) Try If connection.State = ConnectionState.Closed Then connection.Open() End If Dim commandText = "SELECT count(*) from tjenis where jenis_inventaris ='" & txt_jenis.Text & "'" Dim selecte As OleDbCommand = New OleDbCommand(commandText, connection) selecte.Parameters.AddWithValue("@p1", txt_jenis.Text) Dim count = Convert.ToInt32(selecte.ExecuteScalar()) If count > 0 Then MsgBox(" Data telah terdaftar, tidak dapat dimasukkan") txt_jenis.Clear() Else strSql = "INSERT into tjenis values ('" & txt_jenis.Text & "')" dbcmd = New OleDbCommand(strSql, connection) dbcmd.ExecuteNonQuery() txt_jenis.Clear() MsgBox("Data telah ter-input!") OpenDBForJenis() CboxRefreshforJenis() cb_terdaftar.Text = "-Klik untuk mengecek data yang sudah terdaftar-" End If Catch ex As Exception MessageBox.Show(Err.Description) End Try btn_deleteinv.Enabled = True End Sub

Private Sub UBAHDATAToolStripMenu_Click(sender As Object, e As EventArgs) Handles UBAHDATAToolStripMenu.Click EnableInput() DisableInputMenuStrip() btn_edit.Enabled = True txt_noinv.Enabled = False btn_input.Enabled = False btn_clear.Enabled = False End Sub

Private Sub HAPUSDATAToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles HAPUSDATAToolStripMenuItem.Click DisableEntries() DisableInputMenuStrip() btn_hapus.Enabled = True btn_input.Enabled = False End Sub

Private Sub btn_hapus_Click(sender As Object, e As EventArgs) Handles btn_hapus.Click If MsgBox("Yakin Hapus Data ini?", vbYesNo) = vbYes Then HapusData() End If EnableInputMenuStrip() End Sub

Private Sub btn_edit_Click(sender As Object, e As EventArgs) Handles btn_edit.Click If MsgBox("Yakin mengubah Data ini?", vbYesNo) = vbYes Then UbahData() End If EnableInputMenuStrip() End Sub

Private Sub btn_deleteinv_Click(sender As Object, e As EventArgs) Handles btn_deleteinv.Click btn_inputinv.Enabled = False Dim LOKASI As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\PKL PLN\WIP_INV\s\inventaris.accdb" Dim connection As New OleDb.OleDbConnection(LOKASI) Try If connection.State = ConnectionState.Closed Then connection.Open() End If Dim commandText = "SELECT count(*) from tjenis where jenis_inventaris ='" & txt_jenis.Text & "'" Dim selecte As OleDbCommand = New OleDbCommand(commandText, connection) selecte.Parameters.AddWithValue("@p1", txt_jenis.Text) Dim count = Convert.ToInt32(selecte.ExecuteScalar()) If count > 0 Then strSql = "DELETE from tjenis where jenis_inventaris = '" & txt_jenis.Text & "'" dbcmd = New OleDbCommand(strSql, connection) dbcmd.ExecuteNonQuery() txt_jenis.Clear() MsgBox("Data telah ter-hapus!") OpenDBForJenis() CboxRefreshforJenis() cb_terdaftar.Text = "-Klik untuk mengecek data yang sudah terdaftar-" Else MsgBox(" Data belum terdaftar, tidak dapat dihapus!") txt_jenis.Clear() End If Catch ex As Exception MessageBox.Show(Err.Description) End Try btn_inputinv.Enabled = True End Sub

Private Sub txt_noinv_LostFocus(sender As Object, e As EventArgs) Handles txt_noinv.LostFocus Dim LOKASI As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\PKL PLN\WIP_INV\s\inventaris.accdb" Dim connection As New OleDb.OleDbConnection(LOKASI) Try If connection.State = ConnectionState.Closed Then connection.Open() End If strSql = "Select * FROM tbarang WHERE no_inventaris='" & txt_noinv.Text & "'" dbcmd = New OleDbCommand(strSql, connection) dbcmd.CommandText = strSql dbdr = dbcmd.ExecuteReader() Do While (dbdr.Read()) MessageBox.Show("Nomor ini telah ada di database, silahkan masukkan nomor yang lain", "Pesan", MessageBoxButtons.OK, MessageBoxIcon.Exclamation) ClearEverything() txt_noinv.Focus() Loop Finally connection.Close() End Try

End Sub

End Class

Form PencarianImports System.Data.OleDbPublic Class Form_Pencarian2

Public ADP As New OleDbDataAdapter Public DT As New DataTable Public DS As New DataSet Public BS As New BindingSource Dim SQL As String Friend Shared MasterFileToolStripMenuItem As Object Dim LOKASI As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\PKL PLN\WIP_INV\s\inventaris.accdb" Dim connection As New OleDb.OleDbConnection(LOKASI) ' koneksi ke db Dim dbcmd As OleDb.OleDbCommand Dim dbcmd2 As OleDb.OleDbCommand 'menjalankan perintah SQL Dim dbdr As OleDb.OleDbDataReader ' menyimpan hasil baca tbl Dim strSql As String Dim conStr As String

Sub DataGridView() DS.Clear() Try Dim LOKASI As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\PKL PLN\WIP_INV\s\inventaris.accdb" Dim connection As New OleDb.OleDbConnection(LOKASI) Dim query As String = "Select * from tbarang" ADP = New OleDbDataAdapter(query, connection) ADP.Fill(DS, "tbarang") BS.DataSource = DS connection.Close() datagridcari.DataSource = DS datagridcari.DataMember = "tbarang" ADP.Update(DS, "tbarang") Catch ex As Exception MessageBox.Show(ex.Message) Finally connection.Dispose() End Try End Sub

Sub DataGridFilterMethod2() Dim DV As DataView = New DataView(DS.Tables("tbarang")) datagridcari.DataSource = DV Dim SQL As String = "" If cb_kategori.SelectedIndex = 0 Then MsgBox("Silahkan Pilih Kategori Dahulu!") ElseIf cb_kategori.SelectedIndex = 1 Then SQL = String.Format("no_inventaris like '%{0}%'", txtkeyword.Text) ElseIf cb_kategori.SelectedIndex = 2 Then SQL = String.Format("nama_inventaris like '%{0}%'", txtkeyword.Text) ElseIf cb_kategori.SelectedIndex = 3 Then SQL = String.Format("jenis like '%{0}%'", txtkeyword.Text) ElseIf cb_kategori.SelectedIndex = 4 Then SQL = String.Format("tahun like '%{0}%'", txtkeyword.Text) ElseIf cb_kategori.SelectedIndex = 5 Then SQL = String.Format("bagian like '%{0}%'", txtkeyword.Text) ElseIf cb_kategori.SelectedIndex = 6 Then SQL = String.Format("seksi like '%{0}%'", txtkeyword.Text) ElseIf cb_kategori.SelectedIndex = 7 Then SQL = String.Format("ruangan like '%{0}%'", txtkeyword.Text) ElseIf cb_kategori.SelectedIndex = 8 Then SQL = String.Format("kondisi like '%{0}%'", txtkeyword.Text) ElseIf cb_kategori.SelectedIndex = 9 Then SQL = String.Format("keterangan like '%{0}%'", txtkeyword.Text) End If DV.RowFilter = SQL End Sub

Private Sub Form_Pencarian_Load(sender As Object, e As EventArgs) Handles MyBase.Load DataGridView() cb_kategori.Text = "-Pilih Kategori-" End Sub

Private Sub txtkeyword_TextChanged(sender As Object, e As EventArgs) Handles txtkeyword.TextChanged DataGridFilterMethod2() End Sub

Private Sub cb_kategori_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cb_kategori.SelectedIndexChanged txtkeyword.Clear() End SubEnd Class

Form Report

Public Class Form_Report

Private Sub Form_Report_Load(sender As Object, e As EventArgs) Handles MyBase.Load 'TODO: This line of code loads data into the 'inventarisDataSet.tbarang' table. You can move, or remove it, as needed. Me.tbarangTableAdapter.Fill(Me.inventarisDataSet.tbarang) Me.ReportViewer1.RefreshReport() End SubEnd Class