disusun oleh : ahmad musthalihafif program studi teknik
TRANSCRIPT
LAPORAN KERJA PRAKTEK
MEMBANGUN SISTEM INFORMASI INVENTORY
BERBASIS WEB PADA CV.GRAHA KONTRUKSI
Diajukan sebagai salah satu syarat
Untuk memperoleh gelar sarjana Teknik Informatika
Disusun oleh :
Ahmad MusthalihAfif
08651008
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SUNAN KALIJAGA
YOGYAKARTA
2012
i
ii
KATA PENGANTAR
Alhamdulillah kami panjatkan puji syukur kehadirat Allah SWT yang
telah memberikan rahmat,hidayah dan inayah-Nya sehingga penulis dapat
menyelesaikan Kerja Praktek yang berjudul “Membangun Sistem Informasi
Inventory Berbasis Web CV. Graha Kontruksi Yogyakarta” sebagai salah
satu syarat untuk mencapai gelar kesarjanaan pada program teknik Informatika
UIN Sunan Kalijaga Yogyakarta.
Kerja praktek merupakan studi lapangan yang bertujuan untuk
memberikan suatu gambaran kepada seluruh mahasiswa yang telah
menyelesaikan sebagian dari teori yang didapatkan dibangku kuliah. Dengan
adanya pelaksanaan kerja praktek ini dapat memberikan suatu masukan dan
praktek dilapangan tentang bagaimana situasi dan kondisi yang ada di tempat
pelaksanaan kerja praktek dan dapat mengimplementaasikan teori ilmu yang
di dapat dibangku kuliah sesuai dengan konsentrasi yang ditawarkan di
Program Studi Teknik Informatika UIN Sunan Kalijaga Yogyakarta.
Penulisan laporan kerja praktek ini tidak lepas dari bantuan dan dukungan
serta bimbingan berbagai pihak. Dalam kesempatan ini penulis mengucapkan
terima kasih dan penghargaan sebesar-besarnya kepada :
1. Bapak Agus Mulyanto,M.Kom selaku Ketua Program Studi Teknik
Informatika UIN Sunan Kalijaga Yogyakarta.
2. Shofwatul „Uyun, M.Kom selaku dosen pembimbing kerja praktek
yang telah banyak memberi dukungan serta pangarahan demi
kelancaran pelaksanaan kerja prkatek.
iii
3. Seluruh dosen Program Studi Teknik Informatika UIN Sunan Kalijaga
,terima kasih atas kerjasamanya dan bantuannya.
4. A. Imam S.R., S.T., M.Eng sebagai pemilik sekaligus pembimbing
lapangan dalam membuat profil sistem informasi CV. Graha Kontruksi
ini yang telah banyak membantu dan memberikan masukan serta
kritikan kepada saya.
5. Ayahanda dan ibunda tercinta yang telah memberikan dukungan baik
berupa doa maupun materi demi kelancaran kuliah penulis.
6. Kakak saya Ahmad Salahudin, Muhammad Ishlahul Minan dan adikku
Izzatu Sulhiya yang menambah arti sebuah keluarga.
7. Asih Dewanti yang selalu memberi dukungan selama ini, sehingga
memberikan semangat tersendiri bagi penulis.
8. Ilyas Affuandi dan Ghurfan Yusuf Alfian sebagai patner dalam kerja
praktek ini.
9. Teman-teman program studi Teknik Informatika,khusunya angkatan
2008 kelas khusus yang telah memberikan semangat,dorongan,dan
motivasinya dalam penyusunan laporan kerja praktek ini.
Penulis menyadari bahwa masih banyak kekurangan dan kelemahan dalam
pelaksanaan dan penyusunan laporan kerja praktek. Semoga pelaksanaan
kerja praktek ini dapat menjadi pengalaman yang berharga bagi penulis
dan bermanfaat untuk masyarakat yang lebih luas.
Yogyakarta, April 2012
iv
DAFTAR ISI
HALAMAN JUDUL ............................................................................................. .... i
LEMBAR PENGESAHAN ....................................................................................... ii
KATA PENGANTAR ............................................................................................... iii
DAFTAR ISI .............................................................................................................. v
DAFTAR GAMBAR ................................................................................................. viii
DAFTAR TABEL ...................................................................................................... ix
DAFTAR LAMPIRAN .............................................................................................. x
BAB I PENDAHULUAN
1.1 Latar Belakang Masalah .......................................................................... 1
1.2 Batasan Masalah...................................................................................... 2
1.3 Tujuan Kerja Praktek ............................................................................. 3
1.4 Manfaat Kerja Praktek ........................................................................... 3
BAB II TEMPAT KERJA PRAKTEK
2.1 Profil CV.Graha Kontruksi .................................................................... 5
2.2 Fungsi ..................................................................................................... 5
2.3 Tugas Pokok ............................................................................................ 5
2.4 Visi dan Misi ........................................................................................... 6
2.4.1 Visi CV.Graha Kontruksi ............................................................. 6
2.4.2 Misi CV.Graha Kontruksi ............................................................ 6
2.5 Struktur Organisasi ................................................................................. 7
v
2.6 Susunan Organisasi ................................................................................. 8
BAB III LANDASAN TEORI
3.1 Konsep Sistem Informasi..................................................................... 9
3.2 Konsep Basis Data dan DBMS ( Database Management System).... 10
3.3 Database Server dengan MySQL...................................................... 14
3.4 Konsep Aplikasi Berbasis Web.......................................................... 15
3.5 Pemograman Berbasis Web Dengan PHP........................................ 17
3.6 Metodologi Pengembangan Sistem................................................... 18
3.6.1 System Development Life Cycle ( SDLC )...................... 18
3.7 Diagram Alir Data ( DAD ) atau Data Flow Diagram ( DFD )....... 19
3.8 Entity Relationship Diagram (ERD)………………………………... 20
BAB IV HASIL DAN PEMBAHASAN
4.1 Metodologi Pengembangan............................................................... 22
4.1.1 Pengumpulan Data............................................................. 22
4.1.2 Analisa Kebutuhan Sistem................................................. 23
4.1.3 Analisa dan Perancangan Sistem...................................... 24
4.1.3.1 Permodelan Sistem.............................................. 24
4.1.3.1.1 Data Flow Diagram (DFD)....................... 24
4.1.3.1.2 DFD Level 0 ( Diagram Konteks )............. 24
4.1.3.1.3 DFD Level 1............................................... 25
4.1.3.1.4 DFD Level 2 Pengolahan Data Barang
Administrator………………………………………… 26
vi
4.1.3.1.5 DFD Level 2 Pengelolahan Data barang
Pegawai………………………………………………… 27
4.1.3.1.6 DFD Level 2 Proses laporan…………………...28
4.1.3.1.7 Desain Entity Relationship Diagram…………. 29
4.1.3.2 Desain Tabel Basis Data……………………….. 30
4.1.4 Implementasi Sistem.......................................................... 34
4.1.4.1 Halaman Utama……………............................... 34
4.1.4.2 Halaman Login………………............................. 35
4.1.4.3 Halaman administrator........................................ 36
4.1.4.3.1 Halaman Menu Halaman Administrator............37
4.1.4.3.2 Halaman Menu Input Barang…………........... 38
4.1.4.3.3 Halaman Menu Output Barang........................ 38
4.1.4.3.4 Halaman Menu Laporan Barang Masuk ..…… 40
4.1.4.3.5 Halaman Menu Laporan Barang Keluar ……. 41
4.1.4.3.6 Halaman Cetak Barang……………………….. 42
BAB V PENUTUP
5.1 Kesimpulan..................................................................................... 44
5.2 Saran................................................................................................ 44
DAFTAR PUSTAKA......................................................................................... 45
LAMPIRAN........................................................................................................ 46
vii
DAFTAR GAMBAR
Gambar 2.1 Struktur organisasi CV.Graha Kontruksi ........................................ 7
Gambar 3.1 Simbol Data Flow Diagram............................................................. 20
Gambar 4.1 CD ( Context Diagram ) .................................................................. 24
Gambar 4.2 DFD Level 1 .................................................................................... 26
Gambar 4.3 DFD Level 2 Proses Pengolahan Data Barang Administrator ........ 27
Gambar 4.4 DFD Level 2 Proses Pengelolahan Data Barang Pegawai .............. 28
Gambar 4.5 DFD Level 2 Proses Laporan ........................................................... 29
Gambar 4.6 Entity Relationship Diagram ............................................................ 30
Gambar 4.7 Halaman Utama ................................................................................ 34
Gambar 4.8 Halaman Menu Produk barang ......................................................... 35
Gambar 4.9 Halaman Login ................................................................................. 35
Gambar 4.10 Halaman Administrator .................................................................. 36
Gambar 4.11Halaman Petugas/pegawai............................................................... 37
Gambar 4.12 Menu Halaman Administrator ........................................................ 37
Gambar 4.13 Form Tambah User......................................................................... 38
Gambar 4.14 Form Input Barang ......................................................................... 39
Gambar 4.15 Form Output Barang ...................................................................... 40
Gambar 4.16 Form Barang Masuk ....................................................................... 41
Gambar 4.17 Form Barang Keluar ....................................................................... 42
Gambar 4.18 Menu Cetak barang ........................................................................ 42
Gambar 4.19 Laporan Cetak Barang .................................................................... 43
viii
DAFTAR TABEL
Tabel 4.1 Tabel User ........................................................................................... 30
Tabel 4.2 Tabel Satuan ........................................................................................ 31
Tabel 4.3 Tabel input .......................................................................................... 31
Tabel 4.4 Tabel Output ....................................................................................... 32
Tabel 4.5 Tabel Kategori……………………………………………………...... 32
Tabel 4.6 Tabel Supplier…………………………………………………… ...... 33
ix
DAFTAR LAMPIRAN
Lampiran A Source Code untuk Halaman Utama............................................... 46
Lampiran B Source Code untuk menu produk barang ........................................ 47
Lampiran C Source Code untuk halaman Login ................................................. 51
Lampiran D Source Code Halaman administrator .............................................. 55
Lampiran E Source Code form penambahan data users ..................................... 60
Lampiran F Source Code form tambah barang .................................................. 66
Lampiran G Source Code form tambah barang keluar ....................................... 75
Lampiran H Source Code form barang masuk .................................................... 81
Lampiran I Source Code form barang keluar ...................................................... 85
1
BAB I
PENDAHULUAN
1.1 Latar Belakang Masalah
Sistem informasi merupakan salah satu bagian yang penting untuk
menunjang kinerja suatu organisasi. Penggunaan sistem informasi secara
baik dan benar dapat meningkatkan produktifitas dan pencarian data yang
lebih cepat sehingga dapat mempercepat waktu dan meningkatkan hasil
kerja. Sistem informasi menyajikan informasi yang akurat, tetap pada
waktunya, dan relevan untuk menunjang kebutuhan informasi yang
dibutuhkan dalam suatu organisasi.
Pada jaman dahulu, sistem informasi dibuat secara manual baik itu
sistem informasi keuangan, sistem informasi kepegawaian, maupun sistem
informasi mahasiswa sekalipun. Sistem informasi yang dibuat secara
manual ini memiliki berbagai kekurangan dibandingkan sistem informasi
yang telah di buat secara otomatis di masa kini. Di era globalisasi ini,
dimana internet berkembang secara pesat dan teknologi berlomba-lomba
menunjukkan kecanggihannya, sistem informasi dituntut untuk berubah
dari manual menjadi terotomatisasi dan berbasis komputerisasi. Sistem
informasi berbasis komputerisasi ini bertujuan untuk meningkatkan
efisiensi maupun efektifitas kerja dan mempermudah dalam proses
pencarian informasi.
Di toko “Graha Kontruksi ” memiliki sistem informasi inventory
1
2
barang yang masih menggunakan metode manual. Serah terima barang dan
pengisian kedalam pembukuan sistem keluar masuk barang masih
dilakukan secara manual. Dikarenakan alasan ini, dibangun suatu sistem
inventory barang berbasis web yang bertujuan untuk mempersingkat waktu
yang dibutuhkan dalam melakukan serah terima barang dan pembukuan
barang.
Sistem informasi inventory barang ini dibuat berbasis web untuk
mengoptimalkan kinerja sistem yang bekerja melalui jaringan, sehingga
sistem ini bisa digunakan secara luas di dalam jaringan Dinas
Perhubungan, Komunikasi dan Informatika Kabupaten Sleman sehingga
dapat membantu kinerja pegawai yang bertugas dalam mengatur keluar
masuk barang untuk mempermudah pekerjaan dan meningkatkan
efektifitas kerja.
1.2 Batasan Kerja Praktek
Kami membatasi kerja yang akan kami lakukan khusus pada
pembuatan sistem informasi inventory barang berbasis web, termasuk
analisis, desain, database dan pengkodean sistem informasi inventory
barang berbasis web.
3
1.3 Tujuan Kerja Praktek
Pembuatan sistem informasi inventory barang berbasis web ini
bertujuan untuk :
1. Merancang sistem informasi inventory berbasis web menggunakan
metode SDLC ( Software Development Life Cycle ) dengan database
MySQL.
2. Mengimplementasikan Sistem Manual ke Sistem Informasi Inventory
Barang berbasis web di “C.V. Graha Konstruksi”.
1.4 Manfaat Kerja Praktek
Diharapkan dari pelaksanakan kerja praktek ini dapat membawa
manfaat bagi beberapa pihak yang telah ikut ambil bagian dari pelaksanaan
kerja praktek ini. Manfaat yang diharapkan oleh Mahasiswa selama
melaksanakan kerja praktek ini adalah :
1. Bagi Pihak Mahasiswa
a. Mahasiswa dapat memperoleh pembelajaran dari kerja nyata yang
dilaksanakan selama melaksanakan kerja praktek.
b. Memperoleh pengalaman nyata yang akan berguna untuk
meningkatkan kemampuan keteknikan yang relevan dengan
program studi yang ditekuni.
c. Mengetahui perkembangan teknologi sistem informasi secara
nyata di lapangan.
4
2. Bagi pihak Universitas Islam Negeri Sunan Kalijaga
a. Mendapat umpan balik yang bisa berguna bagi Universitas Islam
Negeri Sunan Kalijaga dengan pihak Dinas Perhubungan,
Komunikasi dan Informatika dengan diadakannya kerja praktek
oleh mahasiswa Teknik Informatika Fakultas Sains dan Teknologi
di Dinas Perhubungan, Komunikasi dan Informatika.
b. Mempererat kerjasama antara pihak
3. Bagi Pihak Toko C.V. Graha Konstruksi
Menjadikan mitra kerja yang baik antara pihak Universitas Islam
Negeri Sunan Kalijaga dengan pihak CV. Graha Konstruksi
5
BAB II
CV. GRAHA KONTRUKSI
1.1 Profil Kantor CV. Graha Konstruksi
Cv. Graha Kontruksi mempunyai letak yang strategis dan mudah
ditemukan jika anda berminat bekerjasama dengan kami. Untuk lebih detil,
maka kami berikan alamat lengkap seperti tertulis dibawah ini.
Nama Perseroan : CV. Graha Konstruksi Yogyakarta Kabupaten
Bantul
Alamat : Jalan Babadan No.442 A, Tegalrejo, Banguntapan,
Yogyakarta
Telp : (0274) 7436151.
Kedudukan
1. CV. Graha Konstruksi mempunyai kedudukan sebagai perseroan
komanditer
2. CV. Graha Konstruksi dipimpin oleh suatu Direktur mewakili
perseroan ini.
1.2 Fungsi
a. Menjalankan usaha dalam bidang pembangunan;
b. Melakukan usaha perdagangan umum;
c. Menjalankan usaha dalam bidang usaha.
1.3 Tugas Pokok
CV. Graha Konstruksi mempunyai tugas menjalankan usaha dalam
bidang pembangunan, pemborongan, melakukan usaha perdaganagan
umum termasuk impor, ekspor, menjalankan usaha dalam bidang jasa
kecuali dalam bidang hukum dan pajak.
5
6
1.4 Visi dan Misi
2.4.1 Visi CV. Graha Konstruksi Yogyakarta Kabupaten Bantul
Perseroan ini bernama “ CV. GRAHA KONSTRUKSI ”
berkedudukan di Bantul dan untuk pertama kalinya beralamat di
Tegalrejo, Desa Banguntapan, Desa Kecamatan Banguntapan,
Kabupaten Bantul, Propinsi DIY, dan jika dianggap perlu, maka
dengan persetujuan para sekutu, ditempat-tempat lain dapat
didirikan dan atau dibuka cabang-cabang, kantor-kantor dan atau
perwakilan-perwakilan.
2.4.2 Misi CV. Graha Konstruksi Yogyakarta Kabupaten Bantul
1. Menjalankan usaha dalam bidang pembangunan,
pemborongan, pelaksanaan dari pembangunan/kontraktor
dalam arti yang seluas-luasnya.
2. Melakukan usaha dalam perdagangan umum dalam arti kata
yang seluas-luasnya, termasuk: impor, ekspor, interinsuler dan
lokal dari semua dan segala bahan dan barang yang dapat
diperdagangkan.
3. Menjalankan usaha dalam bidang jasa seluas-luasnya kecuali
jasa dalam bidang hukum dan pajak.
4. Kesemuanya itu dalam arti kata yang seluas-luasnya, asal
dengan mengindahkan peraturan perundang-undangan yang
berlaku.
5
7
1.5 Struktur Organisasi
Dalam kerja berorganisasi, kita biasa mengenal adanya struktur
organisasi. Struktur organisasi ini menggambarkan hirarki tanggung jawab
dan pembagian tugas dalam organisasi tersebut. Gambar 2.1 dibawah ini
adalah struktur organisasi CV.Graha Kontruksi Yogyakarta Kabupaten
Bantul.
Gambar 2.1 Bagan Struktur Organisasi CV. Graha Konstruksi Yogyakarta
Kabupaten Bantul
8
1.6 Susunan Organisasi
Organisasi Data karyawan CV. Graha Konstruksi Yogyakarta terdiri dari :
1. Bagian Direksi
Direktur Utama : A. Imam S.R., S.T., M.Eng.
2. Bagian Bidang Umum
a. Ka. Bagian Umum : Muh. Syaifudin,S.T
b. Ka. Seksi Perbekalan : Sugiono,SE
c. Ka. Seksi Umum : Prayogo Adi
d. Ka. Bagian Keuangan : Edy Nugroho,SE
e. Ka. Seksi Anggaran : Supriyanto
f. Ka. Seksi Kas Penagihan : Siti Basiroh,SE
g. Ka. Seksi Akuntansi : Suci Ratnaningsih,SE
h. Ka. Seksi Humas : Hery Susilo
i. Ka. Seksi Hub.Langganan : Medi Parmasta
j. Ka. Bagian Humas : Sumarwan,ST
k. Staf Hubungan Langganan : Sunarni
l. Staf Humas : Niken Suryandari
m. Staf Perbekalan : Ikhsan Mujtahid
n. Staf Umum : Supiyo Purnomo
o. Staf Produksi : Sururi Imron.
9
BAB III
LANDASAN TEORI
3.1 Konsep Sistem Informasi
Sesungguhnya yang dimaksud sistem informasi tidak harus melibatkan
komputer. Sistem informasi yang menggunakan komputer biasa disebut sistem
informasi berbasis komputer (Computer-Based Information System atau
CBIS). Akan tetapi dalam prakteknya, sistem informasi lebih sering dipakai
tanpa diikuti kata berbasis komputer walaupun dalam kenyataanya komputer
merupakan bagian yang penting. Untuk itu dalam bahasan kali ini yang
dimaksudkan adalah sistem informasi berbasis komputer
Ada beragam definisi mengenai sistem informasi, sebagaimana yang telah
diungkapkan oleh beberapa ahli. Sistem informasi adalah koleksi komponen –
komponen yang memilih, memproses, menyimpan, menganalisis dan
menyebarkan informasi untuk tujuan yang spesifik ( Turban, 1996).
Suatu sistem informasi dapat juga didefinisikan sebagai sebuah kombinasi dari
perangkat keras ( hardware ), perangkat lunak ( software ), dan jaringan
telekomunikasi yang dibangun untuk mengumpulkan, mengolah data dan
mendistribusikannya dalam bentuk informasi yang berguna dalam suatu
organisasi ( Jessup & Valacich, 2003 ).
Sistem informasi menerima input berupa data, memproses input sesuai
instruksi kemudian mengeluarkan hasil pemrosesan berupa output. Selain itu
dalam sistem informasi juga diperlukan adanya media penyimpanan file ( data
9
10
file storage ) untuk menyimpan hasil pengolahan sebelumnya sehingga dapat
digunakan kembali ketika diperlukan.
Dari beberapa definisi tentang sistem informasi diatas, dapat disimpulkan
bahwa suatu sistem informasi mencakup sejumlah komponen yaitu :
1. Blok Masukan, berupa metode – metode dan media untuk menangkap data
yang akan dimasukkan yang biasanya berupa dokumen – dokumen dasar.
2. Blok Model, berupa kombinasi prosedur, logika dan model matematik
yang berfungsi memanipulasi data untuk keluaran tertentu.
3. Blok Output, berupa data – data keluaran misalnya informasi atau laporan
– laporan tertentu.
4. Blok Teknologi, berupa teknologi yang digunakan untuk menerima input,
menjalankan model, menyimpan dan mengakses data, menghasilkan
output serta membantu pengendalian sistem secara keseluruhan. Blok
teknologi ini merupakan komponen yang membantu memperlancar proses
pengolahan data di dalam sistem
5. Blok Basis Data, berupa kumpulan data yang saling berhubungan yang
tersimpan di perangkat keras dan perangkat lunak komputer.
6. Blok Kendali, berupa mekanisme yang berfungsi untuk mencegah dan
menangani kesalahan / kegagalan dalam sistem.
3.2 Konsep Basis Data dan DBMS ( Database Management System )
Basis data adalah sekumpulan informasi terutama informasi yang saling
berhubungan dan terorganisir ( Powell, 2005 ).
11
Basis data merupakan salah satu komponen yang penting dalam sistem
informasi, kerna berisi basis penyedia informasi bagi para pemakainya. Basis
data tersimpan di simpanan luar komputer dan digunakan oleh suatu perangkat
lunak untuk memanipulasinya. Basis data merupakan penyedia informasi bagi
para pengguna. Dalam sistem informasi, basis data diterapkan sebagai
Database System ( Sistem Basis Data ).
Sistem basis data adalah suatu sistem informasi yang mengintegrasikan
kumpulan dari data yang saling berhubungan satu dengan yang lainnya dan
membuatnya tersedia untuk bermacam – macam aplikasi di dalam suatu
organisasi ( Jogiyanto, 2001 ).
Secara teknis basis data adalah kumpulan dari beberapa unsur dibawah ini:
1. Tabel
Tabel merupakan inti dari sebuah basis data, untuk menyimpan data
yang dikelompokkan dalam bentuk baris dan kolom, setiap baris
mewakili record dan setiap kolom mewakili field ( atribut ).
2. View
Merupakan tabel maya yang isinya ditentukan oleh query ke dalam
basis data.
3. Indeks
Indeks adalah file jenis khusus yang bekerja sama dengan tabel,
bertujuan mempercepat proses pengaksesan record atau sekelompok
record tertentu.
12
4. Trigger
Trigger adalah prosedur tersimpan yang secara otomatis dijalankan
apabila data di dalam tabel berubah karena eksekusi perintah SQL (
Structured Query Languange ) yang meliputi insert, update atau
delete.
5. Prosedur
Prosedur adalah pengaksesan data di dalam basis data melalui
eksekusi perintah SQL.
Bahasa standar untuk melakukan operasi atau query terhadap basis data
adalah SQL. Di dalam SQL dikenal tuga sub bahasa yang digunakan dalam
pengolahan basis data, yaitu DDL, DML, DCL dan Indeks.
1. DDL ( Data Definition Languange )
DDL digunakan dalam membuat struktur basis data mulai dari
pendefinisian basis data, table, view, index serta perintah yang
berhubungan dengan maintenance dan struktur basis data tersebut.
Contoh SQL yang termasuk ke dalam golongan DDL adalah : create, alter,
drop
2. DML ( Data Manipulation Languange )
DML digunakan untuk memanipulasi data dalam basis data seperti
menambah, mencari, mengubah ataupun menghapus data dari tabel.
Contoh query SQL yang termasuk ke dalam DML antara lain : insert,
select, delete, update.
13
3. DCL ( Data Control Languange )
Merupakan perintah atau query yang fungsinya adalah membantu
dalam melakukan pengawasan keamanan basis data dengan query ini
dimungkinkan untuk memberikan otoritas kepada user tertentu untuk
mengakses basis data, mengalokasikan ruang dalam basis data, serta
pengauditan penggunaan basis data. Adapun perintah yang termasuk
kedalam DCL antara lain adalah grant dan revoke.
DBMS ( Database Management System ) merupakan suatu perangkat
lunak komputer yang dirancang secara khusus untuk memudahkan dalam
pengelolaan basis data ( Kadir, 2003 ).
Terdapat beberapa model DBMS yang digunakan, diantaranya : model
jaringan, hierarki, object-oriented, dan relasional. Akan tetapi, saat ini
model DBMS yang banyakan digunakan adalah model relasional yang
populer dengan sebutan RDBMS ( Relational Database Management
System ).
Dalam RDBMS, data direpresentasikan dengan menggunakan model
relasional dama bentuk tabel – tabel yang salaing berhubungan satu sama
lain. Data yang ada direpresentasikan dengan tabel – tabel saling berelasi,
dimana setiap tabel terdiri dari field dan record. Field digunakan untuk
merepresentasikan kolom, sedangkan record digunakan untuk
merepresentasikan baris.
Foreign Key merupakan suatu pembatas dalam tabel yang berfungsi
untuk membuang inkonsistensi pada dua buah tabel yang saling berelasi,
14
dimana data pada tabel satu bergantung pada data yang terdapat pada
tabel yang lain.
4. Indeks
Indeks merupakan suatu mekanisme dalam database yang
memungkinkan pencarian data dapat dilakukan dengan cepat ( Kadir,
2003 ).
Indeks dapat mempercepat pengaksesan data disebabkan teknik yang
melandasi indeks itu sendiri. Sistem pada indeks akan mengatur dengan
sendirinya nilai – nilai kolom pada tabel secara urut.
3.3 Database Server dengan MySQL
MySQL adalah RDBMS yang menggunakan standard SQL, sebagai
bahasa query yang digunakannya. Pada mulanya MySQL hanya dapat
dijalankan pada sistem operasi berbasis Unix atau Linux. Namun pada
perkembangannya MySQL dapat berjalan pada sistem operasi Linux,
Windows, Solaris, FreeBSD, MacOS dan Novell ( Reita & Ruka, 2008 ).
MySQL merupakan software DBMS yang sangat populer di kalangan
pemograman web, khususnya yang berbasis open source. Hal ini disebabkan
karena kemudahannya untuk digunakan. Disamping dukungannya ke dalam
berbagai platform, kecepatan aksesnya dapat diandalkan. MySQL mudah
digunakan ( easy-to-use ) sebagai sistem manajemen database relasional (
RDBMS ) yang digunakan untuk database pada website. Selain itu,
kemudahannya dalam integrasi ke berbagai aplikasi web dapat membantu
15
dalam pengembangan sistem informasi online. MySQL mempunyai dua
lisensi, yaitu open source dibawah GNU General Public License ( GPL ) dan
commercial di bawah MySQLAB ( Sanjaya, 2005 ).
MySQL menawarkan banyak fitur menarik diantaranya adalah :
1. Kecepatan. MySQL diklaim oleh pengembangnya sebagai sistem basis
data yang tercepat.
2. Mudah dalam penggunaan. MySQL secara relatif merupakan sistem basis
data yang sederhana dan tidak terlalu kompleks dalam pengaturannya.
3. Kapabilitas. MySQL Server adalah multi-threaded, sehingga
memungkinkan banyak koneksi dari client dalam satu waktu. Setiap client
dapat menggunakan beberapa basisdata secara simultan.
4. Konektifitas dan keamanan. MySQL adalah sistem yang dirancang untuk
jaringan, sehingga basis data dapat diakses dari manapun melalui jaringan
internet. MySQL memiliki access control sehingga kemampuan akses user
dapat diatur. Selain itu, MySQL juga mendukung koneksi terenkripsi
menggunakan protokol Secure Sockets Layer ( SSL ).
5. Portabilitas. MySQL dapat berjalan pada berbagai macam sistem operasi
dan arsitektur komputer.
3.4 Konsep Aplikasi Berbasis Web
Sistem informasi berbasis web dibangun berdasarkan model arsitektur tiga
layer. Aplikasi ini didasari dari layer paling bawah yaitu layer basis data atau
data layer. Layer ini terdiri dari DBMS. DBMS mengatur basis data berupa
16
melakukan pembuatan terhadap data pemakai aplikasi, melakukan modifikasi,
dan query terhadap data – data tersebut. Layer berikutnya adalah layer tengah
( middle layer ). Layer ini berisikan logika – logika bisnis ( bussiness logic )
yang mencakup aturan – aturan dan prosedur pengolahan. Layer tengah ini
bertugas mengkomunikasikan dan menghubungkan antara layer basis data
dengan layer paling atas yang langsung berhubungan dengan end user
( pengguna akhir ). Layer paling atas ini disebut dengan layer presentasi
( presentation layer ). Dalam layer ini, web browser yang memiliki peranan
dalam aplikasi ini.
Web meliputi tiga hal standar yaitu Hypertext Markup Languange ( HTML ),
Hypertext Transfer Protocol ( HTTP ) dan protokol jaringan. Secara singkat
HTML merupakan sekumpulan tag yang berfungsi untuk menerjemahkan
informasi agar dapat dibaca atau dipahami oleh manusia melalui browser.
Sedangkan HTTP adalah aturan – aturan atau prosedur untuk pengiriman atau
pertukaran data antara server ( web server ) dengan client ( browser ).
Protokol HTTP bersifat request-response, yaitu dalam protokol ini client
menyampaikan pesan request kepada server kemudian server memberikan
respon sesuai dengan request tersebut. Jika HTML merupakan manifestasi dari
penerjemahan informasi dari sisi client, maka pengolahan data dan informasi
di sisi server bisa direpresentasikan oleh beberapa bahasa pemograman web
seperti PHP, ASP, JSP, CGI-PERL, dsb. Sedangkan protokol jaringan
merupakan kumpulan prosedur untuk mengatur komunikasi antara perangkat
keras di sisi server dan perangkat keras di sisi client.
17
3.5 Pemograman Berbasis Web Dengan PHP
PHP ( Personal Home Page ) merupakan suatu bahasa perogaman yang
digunakan sebagai bahasa script server-side dalam pengembangan web yang
disisipkan pada dokumen HTML. PHP pertama kali diciptakan oleh Rasmus
Lerdorf pada tahun 1995. Pada awalnya PHP digunakan untuk mencatat
jumlah serta untuk mengetahui siapa saja homepagenya. Kemudian ditulis
ulang mneggunakan bahasa C dan lahir PHP / F1 pada tahun 1996. Rasmus
Lerdorf adalah salah satu pendukung open source, dan oleh karena itu, ia
mengeluarkan PHP Tool versi 1.0 secara gratis.
PHP digunakan untuk pembuatan web dinamis. Web dinamis adalah web
yang informasinya dapat berubah. Informasi bisa diambil dari database,
cookies maupun input user langsung melalui formulir atau URL di web
browser. PHP mendukung banyak paket basis data baik berlisensi maupun
open source seperti postgreSQL. mSQL, mySQL, Oracle, Informix, Microsoft
SQL Server dan lain – lain. PHP mendukung aplikasi web database skala
besar.
Ada beberapa alasan yang membuat PHP menjadi pilihan, yaitu :
1. PHP merupakan salah satu bahasa pemrogaman yang open source
2. PHP dapat digunakan di berbagai sistem operasi ( multi platform )
seperti Linux, Windows, Unix, Mac OS X, RISC OS.
3. PHP mendukung penggunaan banyak web server seperti Apache,
Personal Web Server ( PWS ), dll
18
4. PHP mendukung penggunaan banyak database, antara lain : dBase,
Direct MS-SQL, Empress, MSQL, MySQL, ODBC, Oracle, Velocis
dan masih banyak lagi yang lain.
3.6. Metodologi Pengembangan Sistem
Metodologi adalah kesatuan metoda-metoda, prosedur–prosedur, konsep-
konsep pekerjaan, aturan–aturan dan postulat-postulat yang digunakan oleh
suatu ilmu pengetahuan, seni, atau disiplin yang lainnya. Metoda adalah suatu
cara teknik yang sistematik untuk mengerjakan sesuatu. Metodologi
Pengembangan Sistem berarti metoda-metoda, prosedur–prosedur, konsep-
konsep pekerjaan, aturan–aturan dan postulat-postulat yang digunakan untuk
mengembangan suatu sistem informasi.
3.6.1. System Development Life Cycle ( SDLC )
SDLC didefinisikan sebagai proses yang mana system analyst, software
engineer dan programmer membangun suatu sistem dan merupakan alat
manajemen proyek untuk merencanakan, mengeksekusi dan mengontrol
proyek pengembangan sistem.
Sistem inventory ini dibangun menggunakan metode pengembangan
sistem SDLC, dengan tahapan – tahapan
1. Identifikasi, seleksi dan perencanaan sistem
Tahap ini dilakukan proses untuk pengumpulan data – data yang
dibutuhkan untuk pengembangan sistem.
19
2. Analisis Sistem
Tahap ini merupakan proses analisis untuk mengetahui kebutuhan –
kebutuhan yang dibutuhkan untuk pengembangan sistem.
3. Analisa dan Perancangan Sistem
Tahap ini dilakukan pemodelan sistem menggunakan metode DFD
( Data Flow Diagram ) dan pemodelan database menggunakan
metode ERD ( Entity Relationship Diagram )
4. Implementasi sistem
Tahap ini dilakukan Code Generation dari proses – proses analisa
yang telah dilakukan pada tahap sebelumnya, dan hasil akhir dari
tahap ini adalah sistem informasi inventory yang siap pakai.
3.7. Diagram Alir Data ( DAD ) atau Data Flow Diagram ( DFD )
Data Flow Diagram adalah suatu model logika data atau proses yang
dibuat untuk menggambarkan darimana asal data dan kemana tujuan data yang
keluar dari sistem, dimana data disimpan, proses apa yang menghasilkan data
tersebut dan interaksi antara data yang tersimpan dan proses yang dikenakan
pada data tersebut (Kristanto, 2003).
DFD merupakan salah satu komponen dalam serangkaian pembuatan
sistem komputerisasi. DFD menggambarkan aliran data dari sumber pemberi
data (input) ke penerima data (output) (Kendall & Kendall, 2003).
Simbol – simbol yang digunakan dalam pembuatan Data Flow Diagram
( Kendall & Kendall, 2003 ) :
20
3.8. Entity Relationship Diagram ( ERD )
Entity Relationship Diagram berfungsi untuk menggambarkan relasi dari
dua file atau dua tabel yang dapat digolongkan dalam tiga macam bentuk
relasi yaitu satu-satu, satu-banyak, banyak-banyak (Sutedjo, 2002).
Berikut ini merupakan unsur – unsur dan notasi – notasi dalam ERD :
a. Entity
Segala sesuatu yang dapat dijelaskan dengan data, kelompok benda atau
objek diberi nama dengan kata benda. Gambar 3.2 berikut ini merupakan
simbol entitas.
Gambar 3.1 Simbol Data Flow Diagram
Nama
Entitas
Gambar 3.2 Simbol Entitas
21
b. Relasi
Merupakan suatu hubungan yang terjadi antar himpunan entitas dimana
relasi biasa diberi nama dengan kata kerja. Gambar 3.3 berikut ini
merupakan simbol dari relasi.
c. Atribut
Sesuatu yang dijelaskan apa sebenarnya yang dimaksud entitas maupun
relasi, sehingga sering disebut elemen data dari entitas dan relasi. Gambar
3.4 berikut ini merupakan simbol dari atribut.
Gambar 3.4 Simbol Atribut
Nama
Relasi
Gambar 3.3 Simbol Relasi
Nama Atribut
22
BAB IV
HASIL DAN PEMBAHASAN
4.1. Metodologi Pengembangan Sistem
Suatu sistem yang akan dibangun tentu memerlukan metodologi dalam
pengembangannya. Hal tersebut sangat diperlukan untuk menggambarkan
bagaimana kebutuhan dan model dari suatu sistem. Dalam pengembangan sistem
informasi inventory barang ini, digunakan metode SDLC ( System Development
Life Cycle ). Metode SDLC ini memungkinkan adanya pendokumentasian langkah
– langkah atau tahapan – tahapan yang ditempuh dalam membangun sistem
informasi inventory ini. Tahapan – tahapan yang digunakan dalam metode SDLC
ini meliputi pengumpulan data, analisa kebutuhan sistem, analisa dan perancangan
sistem dan diakhiri dengan implementasi sistem informasi inventory.
4.1.1. Pengumpulan Data
Tahap pengumpulan data merupakan hal pertama yang dilakukan sebelum
merancang sistem informasi inventory ini. Tahap ini bertujuan untuk
mengumpulkan data yang berhubungan dengan pengembangan sistem informasi
inventory yang dikerjakan, termasuk di dalamnya gambaran umum sistem
informasi. Teknik yang dipakai dalam tahap ini adalah teknik wawancara.
Teknik wawancara yang digunakan dalam pengumpulan data sistem
informasi inventory ini, data diperoleh melalui serangkaian tanya jawab dengan
pihak yang bersangkutan, dalam hal ini adalah pemilik CV. Graha Konstruksi.
Wawancara ini dimaksudkan untuk memperoleh keterangan tentang permasalahan
yang dibahas dan mengetahui harapan dengan sistem informasi yang dibuat.
Tahap pengumpulan data yang dilakukan dengan teknik wawancara pada
pihak yang bersangkutan, data yang diperoleh meliputi :
1. Identifikasi masalah yang dihadapi yaitu pembuatan sistem informasi
inventory pada CV. Graha Konstruksi
2. Analisis pengguna yang berhubungan sistem inventory ini, yaitu
administrator dan user.
22
23
3. Tujuan yang diharapkan dengan pembuatan sistem informasi
inventory ini adalah dapat menggantikan pencatatan barang masuk
dan barang keluar yang masih menggunakan metode manual.
4.1.2. Analisa Kebutuhan Sistem
Ada beberapa kebutuhan atau syarat minimal yang harus dipenuhi agar
sistem mampu menjalankan fungsinya, baik kebutuhan software maupun
hardware. Syarat minimal dari konfigurasi hardware dan software yang harus
dipenuhi adalah sebagai berikut :
4.1.2.1. Kebutuhan Perangkat Keras
Komputer yang menjalankan sistem ini harus memenuhi sistem
kebutuhan minimal agar sistem dapat berjalan dengan baik. Spesifikasi dari
system requirements tersebut adalah :
1. Processor Pentium III atau setara dengan kecepatan 667 MHz
2. Memory ( RAM ) dengan kapasitas 256 MB
3. Ruang Kosong Hardisk sebesar 30 MB
4. Monitor VGA atau SVGA dengan resolusi minimal 1024 x 768
4.1.2.2. Kebutuhan Perangkat Lunak
Ada beberapa perangkat lunak yang harus terinstal dalam sistem operasi
komputer untuk dapat menjalankan sistem informasi ini, antara lain:
1. Web Server Apache 1.3, atau versi yang lebih baru
2. PHP 4.2.x atau versi yang lebih baru
3. DBMS MySQL 4.2.x atau versi yang lebih baru
4.1.3. Analisa dan Perancangan Sistem
Analisa dan perancangan sistem informasi inventory ini meliputi
pemodelan sistem menggunakan DFD ( Data Flow Diagram ) atau DAD
( Diagram Alir Data ) dan ERD ( Entity Relationship Diagram ).
24
4.1.3.1. Pemodelan Sistem
Pemodelan sistem informasi inventory barang ini merupakan suatu
gambaran model dan cara kerja sistem. Dalam hal ini, sistem informasi yang
dibangun dimodelkan dengan menggunakan dua metode yaitu dengan
menggunakan DFD ( Data Flow Diagram ). DFD menggambarkan model desain
proses bisnis yang terjadi pada sistem informasi yang dibangun. Sedangkan ERD
menggambarkan model rancangan basis data dari sistem informasi.
4.1.3.1.1. Data Flow Diagram ( DFD )
Gambaran proses bisnis dari sistem informasi inventory yang dirangcang
sesuai dengan requirement analysis ( Analisis Kebutuhan ) di Dinas Perhubungan,
Komunikasi dan Informatika.
4.1.3.1.2 DFD Level 0 ( Diagram Konteks )
DFD Level 0 merupakan gambaran umum proses bisnis dari sistem informasi,
dalam hal ini sistem informasi kepegawaian disajikan dalam diagram konteks
( Gambar 4.1 )
Gambar 4.1 CD ( Context Diagram )
4.1.3.1.3 DFD Level 1
DFD Level 1 merupakan penjelasan lebih lanjut dari DFD Level 0
sebelumnya. Diagram ini menggambarkan proses yang terjadi pada sistem
informasi inventory barang secara keseluruhan. Proses yang terjadi dalam DFD
25
Level 1 adalah sebagai berikut :
1. Login
Dalam proses login ini hanya terdapat proses pengecekan
username dan password dengan database pengguna.
2. Pengolahan Data Admininstrator
Dalam proses ini, administrator melakukan pencatatan data
barang masuk dan barang keluar, termasuk data penerima dan data
penyerah untuk barang keluar dan barang masuk. Administrator
juga dapat menambah, mengedit dan menghapus data pengguna
serta hak aksesnya di dalam sistem. Hak akses yang terdapat di
dalam sistem antara lain add, edit, delete pengguna, input data
barang masuk maupun keluar, edit dan delete laporan barang masuk
dan barang keluar, dan cetak laporan barang masuk, barang keluar
da supplier ke dalam format excel.
3. Pengolahan Data Pegawai
Dalam proses ini, pegawai melakukan pencatatan data barang
masuk dan barang keluar.
4. Laporan
Dalam proses ini, sistem akan menampilkan data yang telah
diolah, antara lain laporan data barang masuk dan laporan barang
keluar, dan supplier. Sistem inventory ini juga bisa mencetak
laporan stok barang yang ada.
Proses – proses yang terjadi di atas digambarkan dalam Gambar 4.2
DFD Level 1 Sistem Inventory Barang berikut ini
:
26
Gambar 4.2 DFD Level 1
4.1.3.1.4 DFD Level 2 Proses Pengolahan Data Barang Administrator
Proses yang terjadi pada DFD level 2 proses pengolahan data barang
administrator ini meliputi pengolahan data pengguna, pengolahan data hak akses
pengguna, pengolahan data barang masuk, pengolahan data barang keluar,
pengolahan data satuan barang, pengolahan data kategori barang, pengolahan data
supplier untuk penyesuaian dengan data barang. Proses ini meliputi input, edit,
dan delete data barang.
Gambar 4.3 DFD Level 2 Proses Pengolahan Data Barang Administrator di bawah
ini menerangkan bagaimana proses di atas berjalan.
27
Gambar 4.3 DFD Level 2 Proses Pengolahan Data Barang Adminstrator
4.1.3.1.5 DFD Level 2 Proses Pengolahan Data Barang User
Proses yang terjadi pada DFD Level 2 Proses Pengolahan Data Barang
Pegawai ini meliputi pengolahan data barang masuk, pengolahan data barang
keluar, pengolahan data satuan barang, pengolahan data kategori barang,
pengolahan data supplier untuk penyesuaian dengan data barang.
Gambar 4.4 DFD Level 2 Proses Pengolahan Data Barang Pegawai di bawah ini
menerangkan bagaimana proses di atas berjalan.
28
Gambar 4.4 DFD Level 2 Proses Pengolahan Data Barang Pegawai
4.1.3.1.6 DFD Level 2 Proses Laporan
Proses yang terjadi pada DFD level 2 proses laporan ini meliputi laporan
data barang masuk, laporan data barang keluar, laporan supplier.
Gambar 4.5 DFD Level 2 Proses Laporan di bawah ini menerangkan bagaimana
proses di atas berjalan.
29
Gambar 4.5 DFD Level 2 Proses Laporan
4.1.3.1.7 Desain Entity Relationship Diagram ( ERD ) dan Struktur Basis
Data Sistem
Desain dari ERD dan struktur basis data sistem ini merupakan gambaran
umum hubungan antara setiap data dan juga merupakan gambaran umum dari
struktur database sistem informasi inventory barang.
Secara lebih detail, desain ERD antara tabel – tabel yang saling memiliki
hubungan untuk pengguna administrator dan pegawai digambarkan dalam ERD
pada gambar 4.6
30
Gambar 4.6 ERD Sistem Inventory Barang
4.1.3.2 Desain Tabel Basis Data
Komposisi dan struktur tabel yang menyusun basis data dari aplikasi
sistem informasi inventory barang yang dikembangkan adalah sebagai berikut:
a) Tabel_user:
Tabel_user ini digunakan sebagai data penyimpanan data
pengguna, hak akses yang berinteraksi di dalam sistem inventory barang.
Detail tabel user dapat dilihat dalam tabel 4.1 dibawah ini :
Tabel 4.1 tabel_user
Nama Kolom Tipe Data Constraint
ID_user Varchar (30) Primary Key
Password Varchar (50)
Alamat Varchar (100)
No_telepon Varchar (13)
Level Int(2)
31
b) Tabel_satuan:
Tabel satuan digunakan sebagai menyimpan data berbagai jenis
satuan dalam sistem inventory barang. Detail tabel satuan dapat dilihat
dalam tabel 4.2 dibawah ini :
Tabel 4.2 tabel_satuan
Nama Kolom Tipe Data Constraint
KD_satuan Int(8) Primary Key
Satuan_barang Varchar (50)
c) Tabel_input:
Tabel_input berfungsi untuk menyimpan data penerima dan
penyerah dalam serah terima barang. Detail untuk tabel_input dijelaskan
dalam tabel 4.4 di bawah ini.
Tabel 4.3 tabel_input
Nama Kolom Tipe Data Constraint
KD_barang Varchar (100) Primary Key
Nama_barang Varchar (50)
KD_satuan Int (8) Foreign key to satuan
Jumlah Int(8)
Harga Varchar(100)
KD_ktgr Int(8) Foreign key to kategori
KD_supplier Varchar(100) Foreign key to supplier
Tgl_masuk Date
32
d) Tabel_ouput:
Tabel_output berfungsi untuk menyimpan data barang yang dipakai
dalam serah terima barang. Detail tabel_ouput dijelaskan dalam tabel 4.4
di bawah ini.
Tabel 4.4 tabel_ouput
Nama Kolom Tipe Data Constraint
KD_barang Varchar (50) Primary Key
Tgl_keluar Date
Jmlh_keluar Int(8)
e) Tabel_kategori:
Tabel_kategori berfungsi untuk menyimpan data kategori barang
yang dipakai dalam serah terima barang. Detail tabel_kategori dijelaskan
dalam tabel 4.5 di bawah ini.
Tabel 4.5 table_kategori
Nama Kolom Tipe Data Constraint
KD_ktgr Int(8) Primary Key
nama Varchar (100)
33
f) Supplier:
Tabel supplier berfungsi untuk menyimpan data supplier yang
dipakai dalam serah terima barang. Detail tabel barang_in_out dijelaskan
dalam tabel 4.7 di bawah ini.
Tabel 4.6 supplier
Nama Kolom Tipe Data Constraint
KD_supplier Varchar (50) Primary Key
Nama_supplier Varchar (100)
Alamat Varchar (1000)
Telepon Varchar (13)
email Varchar (30)
4.1.4. Implementasi Sistem
Implementasi sistem informasi inventory barang ini terdiri dari beberapa
form dengan masing – masing fungsinya.
4.1.4.1. Halaman Utama
Halaman ini merupakan antar muka utama pada sistem inventory
barang.dengan menu pilihan untuk melihat produk-produk yang terdapat di C.V
Graha Konstruksi Ditunjukkan Pada Gambar 4.7 Dibawah Ini
34
Gambar 4.7 Halaman Utama
Adapun sourcecode yang digunakan untuk halaman utama pilihan produk-
produk barang Dapat dilihat pada lampiran (Lampiran A).Setelah itu users bisa
memilih serta melihat produk – produk barang.Halaman ini menampilkan seluruh
produk – produk barang yang ada di C.V Graha Konstruksi sebagaimana
dijelaskan dalam gambar 4.8 dapat dilihat pada lampiran (Lampiran B)
Gambar 4.8 Menu Produk Barang
35
4.1.4.2. Halaman Login Pengguna
Sistem informasi inventory ini dapat memiliki pengguna dengan hak akses
yang berbeda – beda, tergantung dari administrator memberi suatu hak akses
terhadap pengguna.
Halaman login merupakan halaman awal sebelum setiap pengguna masuk ke
dalam sistem dan menjalankan fungsi – fungsi yang ada di dalamnya. Seperti
terlihat pada gambar 4.9.
Gambar 4.9 Form Login
Gambar 4.9 diatas merupakan halaman utama yang muncul ketika
pengguna mengakses sistem, pengguna akan diminta melaukukan proses
login sebelum masuk ke dalam sistem. Adapun sourcecode yang
digunakan pada halaman ini dapat dilihat pada lampiran ( Lampiran C ).
4.1.4.3. Halaman Administrator
Halaman administrator / pengguna Login akan muncul halaman utama
yang memuat menu-menu seperti input barang, ouput barang masuk,dan melihat
berbagai laporan barang masuk dan keluar sesuai gambar 4.10 dan 4.11 dibawah
ini .
36
Gambar 4.10 Halaman Administrator
Gambar 4.11 Halaman Petugas / pegawai
Adapun sourcecode yang digunakan untuk halaman admin dan petugas ini dapat
dilihat pada lampiran (Lampiran D).
4.1.4.3.1. Menu Halaman Administrator
Menu halaman administrator dan petugas berfungsi untuk melakukan
penambahan, pengeditan dan penghapusan data – data pengguna termasuk di
dalamnya hak akses user di dalam sistem. Sebagaimana terlihat pada gambar 4.12
untuk halaman utama menu users. Adapun sourcecode yang digunakan untuk
halaman ini dapat dilihat pada lampiran ( Lampiran E ).
37
Gambar 4.12 Form penambahan data user
Gambar 4.12 diatas merupakan halaman awal yang mucul ketika
adiminstrator atau petugas masuk kedalam menu users. Administrator atau
petugas data melakukan pengeditan atau penghapusan dengan menenkan tombol
gambar edit dan gambar tong sampah untuk melakukan pengeditan dan
penghapusan.Selain itu, administrator dapat menambah data pengguna dengan
menekan tombol tambah users yang terletak diatas tabel users. sebagaimana
terlihat pada gambar 4.12 dengan tampilan input users seperti pada gambar 4.13
Gambar 4.13 Form Tambah User
38
4.1.4.3.2. Menu Input Barang Masuk
Menu input barang berfungsi untuk melakukan penambahan terhadap data
barang masuk yang meliputi data kode barang,nama barang, satuan barang,jumlah
barang,harga barang, kategori barang,supplier barang maupun tanggal masuk
barang. Gambar 4.14 merupakan tampilan dari halaman input barang masuk.
Sedangkan sourcecode yang digunakan untuk membuat halaman ini, dapat dilihat
dalam lampiran ( Lampiran F ).
Gambar 4.14 Form Tambah Barang Masuk
4.1.4.3.3. Menu Barang Keluar
Dalam halaman barang keluar, pengguna dapat melihat serta memasukan data
– data barang yang masih tersedia, untuk kemudian dimasukkan kode barang ,
jumlah barang keluar dan tanggal barang keluar sebagai barang yang akan
39
dikeluarkan, sebagaimana terlihat pada gambar 4.15. Sedangkan sourcecode yang
digunakan untuk membuat halaman ini, dapat dilihat dalam lampiran ( Lampiran
G).
Gambar 4.15 Form Barang Keluar
4.1.4.3.4. Menu Laporan Barang Masuk
Menu laporan barang masuk digunakan untuk melihat laporan – laporan
yang terkait dengan data barang – barang masuk. Dalam menu laporan ini,
pengguna dapat melihat laporan – laporan data barang, berdasarkan kriteria
tertentu, dan mencetak hasilnya ke dalam format excel. Hasil terima barang juga
bisa dapat langsung dicetak dengan format excel. Halaman laporan barang masuk
ini juga menyediakan form aksi untuk edit data barang masuk, termasuk data
penerima dan penyerah dan form aksi untuk menghapus data serah terima barang.
Gambar 4.16 merupakan tampilan dari halaman laporan barang masuk.
Sedangkan sourcecode yang digunakan untuk membuat halaman ini dapat dilihat
dalam lampiran ( Lampiran H )
40
Gambar 4.16 Form Barang Masuk
4.1.4.3.5. Menu Laporan Barang Keluar
Menu laporan barang keluar digunakan untuk melihat laporan – laporan yang
terkait dengan data barang – barang keluar. Dalam menu laporan ini, pengguna
dapat melihat laporan – laporan data barang, berdasarkan kriteria tertentu, dan
mencetak hasilnya ke dalam format excel.Halaman laporan barang keluar ini juga
menyediakan form aksi untuk edit data barang keluar, termasuk data penerima dan
penyerah dan form aksi untuk menghapus data barang. Sedangkan sourcecode
yang digunakan untuk membuat halaman ini, dapat dilihat dalam lampiran
41
( Lampiran I). Gambar 4.17 merupakan tampilan dari halaman laporan barang
keluar.
Gambar 4.17 Form Barang Keluar
4.1.4.3.6. Halaman Cetak Stok
Pada halaman cetak stok ini, pengguna yang telah memiliki hak akses
dapat langsung mencetak stok barang yang ada dalam bentuk excel. Menu cetak
stok ini terdapat pada halaman barang masuk maupun halaman barang keluar
seperti yang dapat ditampilkan pada gambar 4.18 dibawah ini
Gambar 4.18 Menu Cetak Stok
42
Menu cetak stok ketika di tekan dapat menghasilkan laporan stok
barang berupa excel seperti yang terlihat pada gambar 4.19 dibawah
ini.
Gambar 4.19 Laporan Cetak barang
43
BAB V
PENUTUP
5.1 Kesimpulan
Melalui pembahasan yang telah diuraikan pada bab sebelumnya, maka dapat
ditarik beberapa kesimpulan, yaitu :
1. Perancangan sistem informasi inventory ini menggunakan metode SDLC
( Software Development Life Cycle ) sampai dengan tahap implementasi
sistem informasi dengan database MySQL serta berbasis web untuk
mengoptimalkan fungsi dalam jaringan.
2. Dengan diimplementasikannya Sistem Informasi Inventory ini di C.V
Konstruksi akan mempermudah dalam pencatatan barang masuk dan
barang keluar dan mengetahui stok barang yang tersedia.
5.2 Saran
Saran yang dapat penulis sampaikan untuk pengembangan sistem ini
selanjutnya adalah bahwa sistem informasi ini masih menggunakan pembagian
hak akses secara sederhana, untuk lebih baiknya dikembangkan untuk pembagian
hak akses secara kompleks. Sistem informasi ini juga masih kurang interaktif,
untuk kedepannya baiknya dikembangkan untuk lebih interaktif dengan pengguna.
44
44
DAFTAR PUSTAKA
Jessup, L. & Valacich, J.2003. Information System Today. Prentice Hall
Jogiyanto, HM. 2001. Analisa dan Desain Sistem Informasi. Yogyakarta : Andi
Offset
Kadir, A. 2003. Dasar Aplikasi Database MySQL Delphi. Yogyakarta : Penerbit
Andi
Kendall, K.E dan Kendall, J.E. 2003. Analisis dan Perancangan Sistem. Jakarta :
PT Prenhalindo dan Pearson Education Asia Pte. Ltd
Kristanto, A. 2003. Perancangan Sistem Informasi dan Aplikasinya. Yogyakarta :
Gava Media
Powell, G. 2005. Beginning Database Design. New York : John Willey & Sons
Publishing
Reita & Ruka. 2008. Sistem Basis Data. http://one.indoskripsi.com/judul-
skripsitugas-makalah/tugas-kuliah-lainnya/mysql.Diakses 30 Desember
2008
Sanjaya, R. 2005. Pengolahan Database MySQL 5 dengan Java 2. Yogyakarta :
Penerbit Andi
Sutedjo Oetomo, B. 2002. Perencanaan & Pembangunan Sistem Informasi.
Yogyakarta : Penerbit Andi
Turban, E. 1996. Information Technology for Management : Improving
Qualityland Productivity. New York : John Wiley & Sons Publishing
45
45
LAMPIRAN
Lampiran A Sourcecode halaman utama:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Strict//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="style.css" />
<title>C.V. Graha Konstruksi</title>
</head>
<body>
<div id="wrap">
<div id="header">
</div>
<div id="menu">
<ul>
<li><a href="index.php">Home</a></li>
<li><a href='produk/pro.php'>Produk</a></li>
<li><a href='login.php'>Login</a></li>
</ul>
</div>
<div id="menubottom"> </div>
<div id="contentwrap">
<div id="content">
<h1>Selamat Datang</h1>
<p> Di sistem informasi barang C.V. Graha Konstruksi</p>
46
46
<p> Jalan Babadan No. 442 A , Tegalrejo, Banguntapan, Yogyakarta</p>
<h2></h2>
<p></p>
</div>
<div id="sidebar">
<div style="float: right; "><img src="panah.png" alt="image" /></div>
</div>
<div style="clear: both;"> </div>
</div>
<div id="footer">
<p>Copyright (c) 2011 <a href='index.php'>C.V. Graha Konstruksi</a></p>
</div>
</div>
</body>
</html>
Lampiran B SourceCode Menu produk barang:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Strict//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>C.V. Graha Konstruksi</title>
<link rel="stylesheet" type="text/css" href="style.css" />
<style type="text/css" title="currentStyle">
@import "../css/demo_page.css";
@import "../css/demo_table_jui.css";
47
@import "../css/jquery-ui-1.8.4.custom.css";
</style>
<script type="text/javascript" language="javascript" src="../js/jquery.js"></script>
<script type="text/javascript" language="javascript"
src="../js/jquery.dataTables.js"></script>
<script type="text/javascript">
$(document).ready(function() {
oTable = $('#example').dataTable({
"bJQueryUI": true,
"sPaginationType": "full_numbers"
});
} );
</script>
</head>
<body>
<div id="wrap">
<div id="header">
</div>
<div id="menux">
<ul>
<li><a href='../index.php'>Home</a></li>
<li><a href='pro.php'>Produk</a></li>
<li><a href='../login.php'>Login</a></li>
</ul>
</div>
48
<div id="menubottom">
</div>
<div id="contentwrap">
<div id="sidebar">
<?php
include "../menu_admin.php";
?>
</div>
<div id="content">
<?php
include_once "../db_config.php";
$que = mysql_query("SELECT `KD_barang` , `Nama_barang` ,
`table_satuan`.`satuan_barang` , jumlah, Harga, `table_kategori`.nama,
`supplier`.`nama_supplier` , `tgl_masuk`
FROM `table_input`
LEFT JOIN `table_satuan` ON table_input.KD_satuan =
`table_satuan`.`KD_satuan`
LEFT JOIN `table_kategori` ON table_input.KD_ktgr = table_kategori.KD_ktgr
LEFT JOIN `supplier` ON table_input.KD_supplier = supplier.KD_supplier
where table_input.KD_ktgr='1'");
?>
<h2>Data Barang Asbes</h2>
<table class="tab-page" border="6" border color="#CCCCCC" cellpadding="3"
49
cellspacing="1" width="100%">
<thead>
<tr bgcolor="#92a5cd">
<td><strong>Kode Barang</strong></td>
<td><strong>Nama Barang</strong></td>
<td><strong>Satuan Barang</strong></td>
<td><strong>Jumlah Barang</strong></td>
<td><strong>Harga Barang(Rp)</strong></td>
<td><strong>Kategori Barang</strong></td>
<td><strong>Nama Supplier</strong></td>
</thead>
</tr>
<tbody>
<?php
while ($konten = mysql_fetch_array($que)){
?>
<tr class="gradeC">
<td><?php echo $konten['KD_barang']; ?></td>
<td><?php echo $konten['Nama_barang']; ?></td>
<td><?php echo $konten['satuan_barang']; ?></td>
<td><?php echo $konten['jumlah']; ?></td>
<td><?php echo $konten['Harga']; ?></td>
<td><?php echo $konten['nama']; ?></td>
<td><?php echo $konten['nama_supplier']; ?></td>
</tr>
50
<?php
}
?>
</tbody>
</table>
<br>
</br>
</div>
<div style="clear: both;"> </div>
</div>
<div id="footer">
<p>Copyright (c) 2011 C.V. Graha Konstruksi</p>
</div>
</div>
</body>
</html>
Lampiran C SourceCode halaman login :
<?php
session_start();
if(!isset($_SESSION['username'])){
?>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<link rel="stylesheet" href="css/Envision.css" type="text/css" />
<title>C.V. Graha Konstruksi</title>
51
</head>
<body>
<!-- wrap starts here -->
<div id="wrap">
<!--header -->
<div id="header">
<h1 id="logo-text"><a href="#">Login Area</a></h1>
<p id="slogan">Sistem Barang <a href ="index.php">Graha
Konstruksi</a></p>
<div id="header-links">
</div>
</div>
<?php
if ($errorMessage != '') {
?>
<p align="center"><strong><font color="#990000"><?php echo $errorMessage;
?></font></strong></p>
<?php
}
?>
<!-- content-wrap starts here -->
<div id="content-wrap">
52
<table width="100%" height="100%" bgcolor="white">
<tr>
<td>
<form name="form1" method="post"
action="ceklogin.php">
<table width="100%" height="100%">
<tr>
<td>
<label>Username</label>
</td>
</tr>
<tr>
<td>
<input
name="myusername" type="text" size="30" />
</td>
</tr>
<tr>
<td>
<label>Password</label>
</td>
</tr>
<tr>
<td>
53
<input
name="mypassword" type="password" size="30" />
</td>
</tr>
<tr>
<td>
<input
class="button" type="submit" value="login">
<input
class="button" type="button" value="Batal" onclick="self.history.back()">
</td>
</tr>
</table>
</form>
</td>
<td valign="middle" style="text-align:center;">
<img src="images/FinalPadlock.jpg"
width="185">
</td>
</tr>
</table>
<!-- content-wrap ends here -->
</div>
<!-- wrap ends here -->
</div>
54
</body>
</html
<?php
} else {
header('Location:admin3.php');
}
?>
Lampiran D SourceCode halaman administrator:
<?php
session_start();
if(!isset($_SESSION['username'])){
echo "<script language=Javascript>
alert('Silahkan login terlebih dahulu');
document.location='index.php';
</script>";
}
else {
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>C.V. Graha Konstruksi</title>
<link rel="stylesheet" type="text/css" href="style2.css" />
<script type="text/javascript" src="clockp.js"></script>
55
<script type="text/javascript" src="clockh.js"></script>
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript" src="ddaccordion.js"></script>
<script type="text/javascript">
ddaccordion.init({
headerclass: "submenuheader", //Shared CSS class name of headers group
contentclass: "submenu", //Shared CSS class name of contents group
revealtype: "click", //Reveal content when user clicks or onmouseover the header? Valid
value: "click", "clickgo", or "mouseover"
mouseoverdelay: 200, //if revealtype="mouseover", set delay in milliseconds before
header expands onMouseover
collapseprev: true, //Collapse previous content (so only one open at any time)?
true/false
defaultexpanded: [], //index of content(s) open by default [index1, index2, etc] []
denotes no content
onemustopen: false, //Specify whether at least one header should be open always (so
never all headers closed)
animatedefault: false, //Should contents open by default be animated into view?
persiststate: true, //persist state of opened contents within browser session?
toggleclass: ["", ""], //Two CSS classes to be applied to the header when it's collapsed
and expanded, respectively ["class1", "class2"]
togglehtml: ["suffix", "<img src='images/plus.gif' class='statusicon' />", "<img
src='images/minus.gif' class='statusicon' />"], //Additional HTML added to the header
when it's collapsed and expanded, respectively ["position", "html1", "html2"] (see docs)
animatespeed: "fast", //speed of animation: integer in milliseconds (ie: 200), or
keywords "fast", "normal", or "slow"
56
oninit:function(headers, expandedindices){ //custom code to run when headers have
initalized
//do nothing
},
onopenclose:function(header, index, state, isuseractivated){ //custom code to run
whenever a header is opened or closed
//do nothing
}
})
</script>
<script src="jquery.jclock-1.2.0.js.txt" type="text/javascript"></script>
<script type="text/javascript" src="jconfirmaction.jquery.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('.ask').jConfirmAction();
});
</script>
<script type="text/javascript">
$(function($) {
$('.jclock').jclock();
});
</script>
<script language="javascript" type="text/javascript" src="niceforms.js"></script>
<link rel="stylesheet" type="text/css" media="all" href="niceforms-default.css" />
</head>
57
<body>
<div id="main_container">
<div class="header">
<div class="right_header">Welcome Admin | <a href="logout.php"
class="logout">Logout</a></div>
<div class="jclock"></div>
</div>
<div class="main_content">
<div class="menu">
<ul>
<li><a class="current" href="">Halaman Admin</a></li>
<li><a class="current" href="">Menu Laporan <!--[if IE 7]><!--></a><!--<![endif]-->
<!--[if lte IE 6]><table><tr><td><![endif]-->
<ul>
<li><a href="cetak/cetak_input.php" title="">Cetak Data Barang Masuk</a></li>
<li><a href="cetak/cetak_output.php" title="">Cetak Data barang Keluar</a></li>
<li><a href="cetak/cetak_supplier.php" title="">Cetak Data Supplier</a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
</ul>
</div>
<div class="center_content">
58
<div class="left_content">
<div class="sidebarmenu">
<a class="menuitem" href="admin/tampilinput2.php">Data Barang Masuk</a>
<a class="menuitem" href="admin/tampiloutput2.php" >Data Barang Keluar</a>
<a class="menuitem" href="admin/tampilkategori.php" >Data
Kategori</a>
<a class="menuitem" href="admin/tampilsatuan.php">Data Satuan
Barang</a>
<a class="menuitem" href="admin/tampilsupplier.php">Data
Supplier</a>
<?php
if ($_SESSION['level']==1){
echo '<div><a class="menuitem"
href="admin/tampiluser.php">Data User</div></a>';
}else{
echo "";
}
?>
</div>
</div>
<div class="right_content">
</div><!-- end of right content-->
</div> <!--end of center content -->
<div class="clear"></div>
</div> <!--end of main content-->
59
<div class="footer">
</div>
</div>
</body>
</html>
<?php
};
?>
Lampiran E sourceCode Penambahan Data Users:
<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>C.V. Graha Konstruksi</title>
<link rel="stylesheet" type="text/css" href="../style2.css" />
<link type="text/css" href="../js/ui/themes/base/jquery.ui.all.css" rel="stylesheet"/>
<link type="text/css" href="../js/ui/themes/base/jquery.ui.datepicker.css" rel="stylesheet"/>
<script type="text/javascript" src="../clockp.js"></script>
<script type="text/javascript" src="../clockh.js"></script>
<script type="text/javascript" src="../jquery.min.js"></script>
<script type="text/javascript" src="../ddaccordion.js"></script>
60
<script type="text/javascript">
ddaccordion.init({
headerclass: "submenuheader", //Shared CSS class name of headers group
contentclass: "submenu", //Shared CSS class name of contents group
revealtype: "click", //Reveal content when user clicks or onmouseover the header? Valid
value: "click", "clickgo", or "mouseover"
mouseoverdelay: 200, //if revealtype="mouseover", set delay in milliseconds before
header expands onMouseover
collapseprev: true, //Collapse previous content (so only one open at any time)?
true/false
defaultexpanded: [], //index of content(s) open by default [index1, index2, etc] []
denotes no content
onemustopen: false, //Specify whether at least one header should be open always (so
never all headers closed)
animatedefault: false, //Should contents open by default be animated into view?
persiststate: true, //persist state of opened contents within browser session?
toggleclass: ["", ""], //Two CSS classes to be applied to the header when it's collapsed
and expanded, respectively ["class1", "class2"]
togglehtml: ["suffix", "<img src='images/plus.gif' class='statusicon' />", "<img
src='images/minus.gif' class='statusicon' />"], //Additional HTML added to the header
when it's collapsed and expanded, respectively ["position", "html1", "html2"] (see docs)
animatespeed: "fast", //speed of animation: integer in milliseconds (ie: 200), or
keywords "fast", "normal", or "slow"
oninit:function(headers, expandedindices){ //custom code to run when headers have
initalized
//do nothing
61
},
onopenclose:function(header, index, state, isuseractivated){ //custom code to run
whenever a header is opened or closed
//do nothing
}
})
</script>
<script src="../jquery.jclock-1.2.0.js.txt" type="text/javascript"></script>
<script type="text/javascript" src="../jconfirmaction.jquery.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('.ask').jConfirmAction();
});
</script>
<script type="text/javascript">
$(function($) {
$('.jclock').jclock();
});
</script>
<script language="javascript" type="text/javascript" src="../niceforms.js"></script>
<link rel="stylesheet" type="text/css" media="all" href="niceforms-default.css" />
</head>
<body>
62
<div id="main_container">
<div class="header">
<div class="right_header">Welcome Admin | <a href="../logout.php"
class="logout">Logout</a></div>
<div class="jclock"></div>
</div>
<div class="main_content">
<div class="menu">
<ul>
<li><a class="current" href="">Halaman Admin</a></li>
<li><a class="current" href="">Menu Laporan <!--[if IE 7]><!--></a><!--<![endif]-->
<!--[if lte IE 6]><table><tr><td><![endif]-->
<ul>
<li><a href="" title="">Cetak Data Barang Masuk</a></li>
<li><a href="" title="">Cetak Data barang Keluar</a></li>
<li><a href="" title="">Cetak Data Supplier</a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
</ul>
</div>
63
<div class="center_content">
<div class="left_content">
<div class="sidebarmenu">
<a class="menuitem" href="tampilinput2.php">Data Barang Masuk</a>
<a class="menuitem" href="" >Data Barang Keluar</a>
<a class="menuitem" href="" >Data Kategori</a>
<a class="menuitem" href="" >Data Satuan Barang</a>
<a class="menuitem" href="" >Data Supplier</a>
<?php
if ($_SESSION ['level']==1){
echo '<a class="menuitem" href="">Data User</a>';
}else{
echo "";
}
?>
</div>
</div>
<div class="right_content">
<h2>Data Users</h2>
<div class="form">
<form action="prosestambahuser.php" method="post">
<br>
64
<fieldset>
<dl>
<dt>ID User :</dt>
<dd><input type="text" name="ID_user" id="" size="50" /></dd>
</dl>
<dl>
<dt>Password:</label></dt>
<dd><input type="text" name="Password" size="50" /></dd>
</dl>
<dl>
<dt>Alamat :</label></dt>
<dd><input type="text" name="Alamat" size="50" /></dd>
</dl>
<dl>
<dt>Telepon :</label></dt>
<dd><input type="text" name="No_telepon" size="50" /></dd>
</dl>
<dl>
<dt>level:</label></dt>
<dd><input type="text" name="level" size="50" /></dd>
</dl>
</br>
<tr>
<td align="left" valign="middle">
<td width="5%" nowrap><div align="center">
65
<input type="Submit" value="Tambah">
<input type="button" value="Batal"
onclick="self.history.back()">
</div></td>
</tr>
</fieldset>
</form>
</div>
</div><!-- end of right content-->
</div> <!--end of center content -->
<div class="clear"></div>
</div> <!--end of main content-->
<div class="footer">
</div>
</div>
</body>
</html>
Lampiran F SourceCode form tambah Barang:
<?php
session_start();
if(!isset($_SESSION['username'])){
echo "<script language=Javascript>
alert('Silahkan login terlebih dahulu');
document.location='../index.php';
</script>";
66
}
else {
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>C.V. Graha Konstruksi</title>
<link rel="stylesheet" type="text/css" href="../style2.css" />
<link type="text/css" href="../js/ui/themes/base/jquery.ui.all.css" rel="stylesheet"/>
<link type="text/css" href="../js/ui/themes/base/jquery.ui.datepicker.css" rel="stylesheet"/>
<script type="text/javascript" src="../clockp.js"></script>
<script type="text/javascript" src="../clockh.js"></script>
<script type="text/javascript" src="../jquery.min.js"></script>
<script type="text/javascript" src="../ddaccordion.js"></script>
<script type="text/javascript">
ddaccordion.init({
headerclass: "submenuheader", //Shared CSS class name of headers group
contentclass: "submenu", //Shared CSS class name of contents group
revealtype: "click", //Reveal content when user clicks or onmouseover the header? Valid
value: "click", "clickgo", or "mouseover"
mouseoverdelay: 200, //if revealtype="mouseover", set delay in milliseconds before
header expands onMouseover
collapseprev: true, //Collapse previous content (so only one open at any time)?
true/false
67
defaultexpanded: [], //index of content(s) open by default [index1, index2, etc] []
denotes no content
onemustopen: false, //Specify whether at least one header should be open always (so
never all headers closed)
animatedefault: false, //Should contents open by default be animated into view?
persiststate: true, //persist state of opened contents within browser session?
toggleclass: ["", ""], //Two CSS classes to be applied to the header when it's collapsed
and expanded, respectively ["class1", "class2"]
togglehtml: ["suffix", "<img src='images/plus.gif' class='statusicon' />", "<img
src='images/minus.gif' class='statusicon' />"], //Additional HTML added to the header
when it's collapsed and expanded, respectively ["position", "html1", "html2"] (see docs)
animatespeed: "fast", //speed of animation: integer in milliseconds (ie: 200), or
keywords "fast", "normal", or "slow"
oninit:function(headers, expandedindices){ //custom code to run when headers have
initalized
//do nothing
},
onopenclose:function(header, index, state, isuseractivated){ //custom code to run
whenever a header is opened or closed
//do nothing
}
})
</script>
<script type="text/javascript" src="../js/ui/jquery-1.6.2.js"></script>
<script type="text/javascript" src="../js/ui/ui/jquery.ui.core.js"></script>
<script type="text/javascript" src="../js/ui/ui/jquery.ui.datepicker.js"></script>
68
<script src="../jquery.jclock-1.2.0.js.txt" type="text/javascript"></script>
<script type="text/javascript" src="../jconfirmaction.jquery.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('.ask').jConfirmAction();
});
</script>
<script type="text/javascript">
$(function($) {
$('.jclock').jclock();
});
</script>
<script type="text/javascript">
$(function() {
$('#tgl_masuk').datepicker({dateFormat:'yy-mm-dd'});
});
</script>
<script language="javascript" type="text/javascript" src="../niceforms.js"></script>
<link rel="stylesheet" type="text/css" media="all" href="niceforms-default.css" />
</head>
<body>
<div id="main_container">
<div class="header">
69
<div class="right_header">Welcome Admin | <a href="../logout.php"
class="logout">Logout</a></div>
<div class="jclock"></div>
</div>
<div class="main_content">
<div class="menu">
<ul>
<li><a class="current" href="">Halaman Admin</a></li>
<li><a class="current" href="">Menu Laporan <!--[if IE 7]><!--></a><!--<![endif]-->
<!--[if lte IE 6]><table><tr><td><![endif]-->
<ul>
<li><a href="" title="">Cetak Data Barang Masuk</a></li>
<li><a href="" title="">Cetak Data barang Keluar</a></li>
<li><a href="" title="">Cetak Data Supplier</a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
</ul>
</div>
<div class="center_content">
<div class="left_content">
<div class="sidebarmenu">
70
<a class="menuitem" href="tampilinput2.php">Data Barang Masuk</a>
<a class="menuitem" href="" >Data Barang Keluar</a>
<a class="menuitem" href="" >Data Kategori</a>
<a class="menuitem" href="" >Data Satuan Barang</a>
<a class="menuitem" href="" >Data Supplier</a>
<?php
if ($_SESSION ['level']==1){
echo '<a class="menuitem" href="">Data User</a>';
}else{
echo "";
}
?>
</div>
</div>
<div class="right_content">
<h2>Data Barang Masuk</h2>
<div class="form">
<form action="prosestambahinput.php" method="post">
<br>
<fieldset>
<dl>
<dt>kode Barang :</dt>
<dd><input type="text" name="KD_barang" id="" size="50" /></dd>
71
</dl>
<dl>
<dt>Nama Barang :</dt>
<dd><input type="text" name="Nama_barang" id="" size="50" /></dd>
</dl>
<dl>
<dt>Satuan Barang :</dt>
<dd><select name = 'KD_satuan' style="width:340px">
<?php
include "../db_config.php";
$sql=mysql_query("SELECt * FROM table_satuan
ORDER BY satuan_barang");
while ($data = mysql_fetch_array($sql)) {
echo "<option
value=".$data['KD_satuan'].">".$data['satuan_barang']."</option>";
}
?>
</select></dd>
</dl>
<dl>
<dt>Jumlah Barang :</dt>
<dd><input type="text" name="jumlah" id="" size="50" /></dd>
</dl>
<dl>
<dt>Harga Barang :</dt>
<dd><input type="text" name="Harga" id="" size="50" /></dd>
72
</dl>
<dl>
<dt>Kategori Barang :</dt>
<dd><select name = 'KD_ktgr' style="width:340px">
<?php
include "../db_config.php";
$sql = mysql_query("SELECt * FROM
table_kategori");
while ($data = mysql_fetch_array($sql)) {
echo "<option
value=".$data['KD_ktgr'].">".$data['nama']."</option>";
}
?>
</select></dd>
</dl>
</dd>
</dl>
<dl>
<dt>Supplier :</dt>
<dd><select name = 'KD_supplier'
style="width:340px">
<?php
include "../db_config.php";
$sql=mysql_query("SELECt * FROM supplier");
while ($data = mysql_fetch_array($sql)) {
echo "<option
73
value=".$data['KD_supplier'].">".$data['nama_supplier']."</option>";
}
?>
</select></dd>
</dl>
</dd>
</dl>
<dl>
<dt>Tanggal Masuk :</label></dt>
<dd><input type="text" name="tgl_masuk" id="tgl_masuk" size="50" /></dd>
</dl>
</br>
<tr>
<td align="left" valign="middle">
<td width="5%" nowrap><div align="center">
<input type="Submit" value="Tambah">
<input type="button" value="Batal"
onclick="self.history.back()">
</div></td>
</tr>
</fieldset>
</form>
</div>
</div><!-- end of right content-->
</div> <!--end of center content -->
<div class="clear"></div>
74
</div> <!--end of main content-->
<div class="footer">
</div>
</div>
</body>
</html>
<?php
};
?>
Lampiran G SourceCode form tambah barang keluar:
<?php
session_start();
if(!isset($_SESSION['username'])){
echo "<script language=Javascript>
alert('Silahkan login terlebih dahulu');
document.location='../index.php';
</script>";
}
else {
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>C.V. Graha Konstruksi</title>
75
<link rel="stylesheet" type="text/css" href="../style2.css" />
<link type="text/css" href="../js/ui/themes/base/jquery.ui.all.css" rel="stylesheet"/>
<link type="text/css" href="../js/ui/themes/base/jquery.ui.datepicker.css" rel="stylesheet"/>
<script type="text/javascript" src="../clockp.js"></script>
<script type="text/javascript" src="../clockh.js"></script>
<script type="text/javascript" src="../jquery.min.js"></script>
<script type="text/javascript" src="../ddaccordion.js"></script>
<script type="text/javascript">
ddaccordion.init({
headerclass: "submenuheader", //Shared CSS class name of headers group
contentclass: "submenu", //Shared CSS class name of contents group
revealtype: "click", //Reveal content when user clicks or onmouseover the header? Valid
value: "click", "clickgo", or "mouseover"
mouseoverdelay: 200, //if revealtype="mouseover", set delay in milliseconds before
header expands onMouseover
collapseprev: true, //Collapse previous content (so only one open at any time)?
true/false
defaultexpanded: [], //index of content(s) open by default [index1, index2, etc] []
denotes no content
onemustopen: false, //Specify whether at least one header should be open always (so
never all headers closed)
animatedefault: false, //Should contents open by default be animated into view?
persiststate: true, //persist state of opened contents within browser session?
toggleclass: ["", ""], //Two CSS classes to be applied to the header when it's collapsed
and expanded, respectively ["class1", "class2"]
togglehtml: ["suffix", "<img src='images/plus.gif' class='statusicon' />", "<img
76
src='images/minus.gif' class='statusicon' />"], //Additional HTML added to the header
when it's collapsed and expanded, respectively ["position", "html1", "html2"] (see docs)
animatespeed: "fast", //speed of animation: integer in milliseconds (ie: 200), or
keywords "fast", "normal", or "slow"
oninit:function(headers, expandedindices){ //custom code to run when headers have
initalized
//do nothing
},
onopenclose:function(header, index, state, isuseractivated){ //custom code to run
whenever a header is opened or closed
//do nothing
}
})
</script>
<script type="text/javascript" src="../js/ui/jquery-1.6.2.js"></script>
<script type="text/javascript" src="../js/ui/ui/jquery.ui.core.js"></script>
<script type="text/javascript" src="../js/ui/ui/jquery.ui.datepicker.js"></script>
<script src="../jquery.jclock-1.2.0.js.txt" type="text/javascript"></script>
<script type="text/javascript" src="../jconfirmaction.jquery.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('.ask').jConfirmAction();
});
</script>
<script type="text/javascript">
$(function($) {
77
$('.jclock').jclock();
});
</script>
<script type="text/javascript">
$(function() {
$('#tgl_keluar').datepicker({dateFormat:'yy-mm-dd'});
});
</script>
<script language="javascript" type="text/javascript" src="../niceforms.js"></script>
<link rel="stylesheet" type="text/css" media="all" href="niceforms-default.css" />
</head>
<body>
<div id="main_container">
<div class="header">
<div class="right_header">Welcome Admin | <a href="../logout.php"
class="logout">Logout</a></div>
<div class="jclock"></div>
</div>
<div class="main_content">
<div class="menu">
<ul>
<li><a class="current" href="">Halaman Admin</a></li>
<li><a class="current" href="">Menu Laporan <!--[if IE 7]><!--></a><!--<![endif]-->
<!--[if lte IE 6]><table><tr><td><![endif]-->
<ul>
<li><a href="" title="">Cetak Data Barang Masuk</a></li>
78
<li><a href="" title="">Cetak Data barang Keluar</a></li>
<li><a href="" title="">Cetak Data Supplier</a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
</ul>
</div>
<div class="center_content">
<div class="left_content">
<div class="sidebarmenu">
<a class="menuitem" href="tampilinput2.php">Data Barang Masuk</a>
<a class="menuitem" href="" >Data Barang Keluar</a>
<a class="menuitem" href="" >Data Kategori</a>
<a class="menuitem" href="" >Data Satuan Barang</a>
<a class="menuitem" href="" >Data Supplier</a>
<?php
if ($_SESSION ['level']==1){
echo '<a class="menuitem" href="">Data User</a>';
}else{
echo "";
}
?>
</div>
</div>
79
<div class="right_content">
<h2>Data Barang Keluar</h2>
<div class="form">
<form action="prosestambahoutput.php" method="post">
<br>
<fieldset>
<dl>
<dt>kode Barang:</dt>
<dd><input type="text" name="KD_barang" id="" size="50" /></dd>
</dl>
<dl>
<dt>Tanggal Keluar:</label></dt>
<dd><input type="text" name="tgl_keluar" id="tgl_keluar" size="50" /></dd>
</dl>
<dl>
<dt>Jumlah Barang Keluar:</dt>
<dd><input type="text" name="jmlh_keluar" id="" size="50" /></dd>
</dl>
</br>
<tr>
<td align="left" valign="middle">
<td width="5%" nowrap><div align="center">
<input type="Submit" value="Tambah">
<input type="button" value="Batal"
onclick="self.history.back()">
</div></td>
80
</tr>
</fieldset>
</form>
</div>
</div><!-- end of right content->
</div> <!--end of center content -->
<div class="clear"></div>
</div> <!--end of main content-->
<div class="footer">
</div>
</div>
</body>
</html>
<?php
};
?>
Lampiran H SourceCode form barang masuk:
<?php
// nama file
$namaFile = "barang_masuk.xls";
// Function penanda awal file (Begin Of File) Excel
function xlsBOF() {
echo pack("ssssss", 0x809, 0x8, 0x0, 0x10, 0x0, 0x0);
return;
}
81
// Function penanda akhir file (End Of File) Excel
function xlsEOF() {
echo pack("ss", 0x0A, 0x00);
return;
}
// Function untuk menulis data (angka) ke cell excel
function xlsWriteNumber($Row, $Col, $Value) {
echo pack("sssss", 0x203, 14, $Row, $Col, 0x0);
echo pack("d", $Value);
return;
}
// Function untuk menulis data (text) ke cell excel
function xlsWriteLabel($Row, $Col, $Value ) {
$L = strlen($Value);
echo pack("ssssss", 0x204, 8 + $L, $Row, $Col, 0x0, $L);
echo $Value;
return;
}
// header file excel
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0,
pre-check=0");
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
82
// header untuk nama file
header("Content-Disposition: attachment;
filename=".$namaFile."");
header("Content-Transfer-Encoding: binary ");
// memanggil function penanda awal file excel
xlsBOF();
// ------ membuat kolom pada excel --- //
xlsWriteLabel (0,3,"STOCK BARANG MASUK BAHAN BANGUNAN DAN MATERIAL");
xlsWriteLabel (1,3," C.V. GRAHA KONSTRUKSI");
// mengisi pada cell A1 (baris ke-0, kolom ke-0)
xlsWriteLabel(3,0,"No");
// mengisi pada cell A2 (baris ke-0, kolom ke-1)
xlsWriteLabel(3,1,"Kode Barang");
// mengisi pada cell A3 (baris ke-0, kolom ke-2)
xlsWriteLabel(3,2,"Nama Barang");
// mengisi pada cell A4 (baris ke-0, kolom ke-3)
xlsWriteLabel(3,3,"Satuan Barang");
// mengisi pada cell A5 (baris ke-0, kolom ke-4)
xlsWriteLabel(3,4,"jumlah Barang");
// mengisi pada cell A6 (baris ke-0, kolom ke-5)
xlsWriteLabel(3,5,"Harga Barang(Rp)");
// mengisi pada cell A7 (baris ke-0, kolom ke-6)
xlsWriteLabel(3,6,"Kategori Barang");
// mengisi pada cell A8 (baris ke-0, kolom ke-7)
xlsWriteLabel(3,7,"Supplier Barang");
// mengisi pada cell A9 (baris ke-0, kolom ke-8)
83
xlsWriteLabel(3,8,"Tanggal Masuk");
// -------- menampilkan data --------- //
// koneksi ke mysql
mysql_connect("localhost", "root", "");
mysql_select_db("sistem_barang");
// query menampilkan semua data
$query = "SELECT `KD_barang` , `Nama_barang` , `table_satuan`.`satuan_barang` , jumlah,
Harga, `table_kategori`.nama, `supplier`.`nama_supplier` , `tgl_masuk`
FROM `table_input`
LEFT JOIN `table_satuan` ON table_input.KD_satuan = `table_satuan`.`KD_satuan`
LEFT JOIN `table_kategori` ON table_input.KD_ktgr = table_kategori.KD_ktgr
LEFT JOIN `supplier` ON table_input.KD_supplier = supplier.KD_supplier";
$hasil = mysql_query($query);
// nilai awal untuk baris cell
$noBarisCell = 4;
// nilai awal untuk nomor urut data
$noData = 1;
while ($data = mysql_fetch_array($hasil))
{
// menampilkan no. urut data
xlsWriteNumber($noBarisCell,0,$noData);
// menampilkan data kode barang
xlsWriteLabel($noBarisCell,1,$data['KD_barang']);
// menampilkan data nama barang
xlsWriteLabel($noBarisCell,2,$data['Nama_barang']);
84
// menampilkan data satuan barang
xlsWriteLabel($noBarisCell,3,$data['satuan_barang']);
// menampilkan data jumlah barang masuk
xlsWriteNumber($noBarisCell,4,$data['jumlah']);
// menampilkan data harga barang
xlsWriteNumber($noBarisCell,5,$data['Harga']);
// menampilkan data kategori barang
xlsWriteLabel($noBarisCell,6,$data['nama']);
// menampilkan data nama supplier
xlsWriteLabel($noBarisCell,7,$data['nama_supplier']);
// menampilkan data tanggal masuk barang
xlsWritelabel($noBarisCell,8,$data['tgl_masuk']);
// increment untuk no. baris cell dan no. urut data
$noBarisCell++;
$noData++;
}
// memanggil function penanda akhir file excel
xlsEOF();
exit();
?>
Lampiran I Sourcecode form barang keluar:
<?php
// nama file
$namaFile = "barang_Keluar.xls";
// Function penanda awal file (Begin Of File) Excel
function xlsBOF() {
85
echo pack("ssssss", 0x809, 0x8, 0x0, 0x10, 0x0, 0x0);
return;
}
// Function penanda akhir file (End Of File) Excel
function xlsEOF() {
echo pack("ss", 0x0A, 0x00);
return;
}
// Function untuk menulis data (angka) ke cell excel
function xlsWriteNumber($Row, $Col, $Value) {
echo pack("sssss", 0x203, 14, $Row, $Col, 0x0);
echo pack("d", $Value);
return;
}
// Function untuk menulis data (text) ke cell excel
function xlsWriteLabel($Row, $Col, $Value ) {
$L = strlen($Value);
echo pack("ssssss", 0x204, 8 + $L, $Row, $Col, 0x0, $L);
echo $Value;
return;
}
// header file excel
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0,
pre-check=0");
86
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
// header untuk nama file
header("Content-Disposition: attachment;
filename=".$namaFile."");
header("Content-Transfer-Encoding: binary ");
// memanggil function penanda awal file excel
xlsBOF();
// ------ membuat kolom pada excel --- //
xlsWriteLabel (0,3,"STOCK BARANG KELUAR BAHAN BANGUNAN DAN MATERIAL");
xlsWriteLabel (1,3," C.V. GRAHA KONSTRUKSI");
// mengisi pada cell A1 (baris ke-0, kolom ke-0)
xlsWriteLabel(0,0,"No");
// mengisi pada cell A2 (baris ke-0, kolom ke-1)
xlsWriteLabel(3,1,"Kode Barang");
// mengisi pada cell A3 (baris ke-0, kolom ke-2)
xlsWriteLabel(3,2,"Tanggal Barang Keluar");
// mengisi pada cell A4 (baris ke-0, kolom ke-3)
xlsWriteLabel(3,3,"Jumlah Barang Keluar")
// -------- menampilkan data --------- //
// koneksi ke mysql
mysql_connect("localhost", "root", "");
mysql_select_db("sistem_barang");
// query menampilkan semua data
$query = "SELECT * FROM table_output";
87
$hasil = mysql_query($query);
// nilai awal untuk baris cell
$noBarisCell = 4;
// nilai awal untuk nomor urut data
$noData = 1;
while ($data = mysql_fetch_array($hasil))
{
// menampilkan no. urut data
xlsWriteNumber($noBarisCell,0,$noData);
// menampilkan data kode barang
xlsWriteLabel($noBarisCell,1,$data['KD_barang']);
// menampilkan data nama barang
xlsWriteLabel($noBarisCell,2,$data['tgl_keluar']);
// menampilkan data jumlah barang masuk
xlsWriteNumber($noBarisCell,3,$data['jmlh_keluar']);
// increment untuk no. baris cell dan no. urut data
$noBarisCell++;
$noData++;
}
// memanggil function penanda akhir file excel
xlsEOF();
exit();
?>