Anda di halaman 1dari 96

PERANCANGAN APLIKASI PERSEDIAAN BARANG BERBASIS

WEB PADA APOTEK BENING SEHAT KELURAHAN DAYEUH


KAB. BOGOR

SKRIPSI

DI AJUKAN OLEH

NAMA : PANCA SOELTAN AKBAR

NPM : 17570006

PROGRAM STUDI : SISTEM INFORMASI S1

GUNA MEMENUHI SALAH SATU SYARAT

UNTUK MENEMPUH UJIAN AKHIR SARJANA STRATA SATU (S1)

FAKULTAS TEKNIK

UNIVERSITAS TAMA JAGAKARSA

JAKARTA

2020

FAKULTAS TEKNIK
FAKULTAS TEKNIK UNIVERSITAS

TAMA JAGAKARSA JAKARTA

LEMBAR PERSETUJUAN SKRIPSI

NAMA : PANCA SOELTAN AKBAR


NOMOR POKOK MAHASISWA : 17570006

PROGRAM STUDI : TEKNIK SISTEM INFORMASI

PERANCANGAN APLIKASI
JUDUL SKRIPSI : PERSEDIAAN BARANG
BERBASIS WEB PADA
APOTEK BENING SEHAT
KELURAHAN DAYEUH KAB.
BOGOR

Telah disetujui untuk dihadapkan pada ujian komprehensif Sarjana Teknik Universitas
Tama Jagakarsa Program Studi Sistem Informasi.

Jakarta,

Pembimbing Materi Pembimbing Teknis

( Novianti M. Faizah, S.Kom.,MMSI.,) ( Veranita S.Kom, MMSI. )

Menyetujui,

Dekan

(Dr. Mardiaman, S.T, M.T)


FAKULTAS TEKNIK UNIVERSITAS

TAMA JAGAKARSA JAKARTA

LEMBAR PENGESAHAN SKRIPSI

NAMA : PANCA SOELTAN AKBAR


NOMOR POKOK MAHASISWA : 17570006

PROGRAM STUDI : TEKNIK SISTEM INFORMASI

JUDUL SKRIPSI : PERANCANGAN APLIKASI


PERSEDIAAN BARANG
BERBASIS WEB PADA
APOTEK BENING SEHAT
KELURAHAN DAYEUH KAB.
BOGOR

Telah disetujui dan disahkan untuk diterima guna memenuhi sebagian persyaratan
dalam memperoleh gelar Sarjana Tekhnik Universitas Tama Jagakarsa Program
Studi Sistem Informasi.

Jakarta,

Penguji I Penguji II

Menyetujui,

Dekan

(Dr. Mardiaman, S.T, M.T)


ABSTRAK

Apotek Bening Sehat merupakan badan usaha yang bekerja dibidang penjualan
obat-obatan, serta barang-barang kesehatan. Pada pendataan persediaan barang
yang digunakan pada Apotek Bening Sehat masih memakai penulisan dalam
buku dan belum terkomputerisasi, oleh sabab itu memungkinkannya terjadi
banyak kesalahan diantaranya, selisih antara persediaan barang yang ada dengan
pemakaian barang, lalu sering terjadi hilangnya dokumen dan kerusakann serta
kurang efektif karena memerlukan waktu yang lama dalam penghitungannya.
Karena itu mengakibatkan staf gudang kesulitan dalam pendataan persediaan
barang. Sistem aplikasi persediaan barang pada Apotek Bening Sehat dirancang
agar mempermudah staf gudang atau admin dalam melakukan pencatatan barang
serta melihat stok barang menjadi mudah dan lebih baik lagi. Sistem aplikasi ini
dirancang berbasis web. Web menjadi pilihan karena, mudah dipakai sebagai
sistem yang mampu mengganti pekerjaan manual. Perancangan serta penelitian
deskriptif yang bertatap langsung dengan pemilik dan memakai Unified
Modeling Language (UML) dan Flowchart sistem yang sedang berjalan pada
Apotek Bening Sehat. Dalam sistem aplikasi Persediaan Barang ini memudahkan
staf gudang serta admin dalam menjalankan pendataan persediaan barang
sehingga menjadi efektif dan efesien. Didalam sistem aplikasi ini terdapat menu
data, transaksi, laporan, akun, dan ubah password.

Kata Kunci : Apotek Bening Sehat, persediaan barang, web,uml, flowchart


sistem
KATA PENGANTAR

Puji dan syukur kami panjatkan atas kehadiran , karena atas berkah rahmat
dan karunia-Nya, sehingga pada akhirnya penulis dapat menyelesaikan skripsi
dengan judul “Perancangan Aplikasi Persediaan Barang Berbasis Web Pada
Apotek Bening Sehat Kelurahan Dayeuh Kab. Bogor. Pada Program Studi
Sistem Informasi di Universitas Tama Jagakarsa ini sebagai syarat untuk
mencapai gelar Sarjana Strata Satu (S1) jurusan Sistem Informasi. Fakultas
Teknik Di Universitas Tama Jagakarsa.

Dalam penelitian skripsi ini, penulis menyadari betapa pentingnya orang-


orang yang telah memberikan pemikiran dan dukungan seraca moral ataupun
spiritual sehingga skripsi ini dapat terselesaikan sesuai dengan yang diharapkan.
Untuk itu penulis menyampaikan ucapan terima kasih kepada yang terhormat :

1. Bapak Prof. Drs. H. Tama Sembiring, SH, MM, selaku Ketua Pembina
Yayasan Pendidikan Tama Jagakarsa.
2. Bapak Dr. H. Raja Ulung, SE, MM, selaku Ketua Yayasan Universitas Tama
Jagakarsa.
3. Bapak Dr. H. M. Noor Sembiring, SE, MM, selaku Rektor Universitas Tama
Jagakarsa.
4. Bapak Dr. Mardiaman, S.T., M.T, selaku Dekan Fakultas Teknik Universitas
Tama Jagakarsa.
5. Ibu Herlina Trisnawati , S.kom, MMSI, selaku Ketua Program Studi Sistem
Informasi.
6. Ibu Novianti Madhona Fauziah, S.kom, MMSI selaku Sekprodi Program Studi
Sistem Informasi dan sebagai dosen pembimbing Materi yang telah membantu
dalam penulisan skripsi ini hingga selesai tepat waktu.
7. Ibu Veranita, S.kom,MMSI sebagai dosen pembimbing Tenisi yang telah
membantu menyelesaikan skripsi.
8. Seluruh Dosen/Asisten yang ada di di Program Studi Sistem Informasi
Fakultas Teknik Universitas Tama Jagakarsa yang telah memberi ilmu kepada
penulis selama mengukuti perkuliahan.
9. Terima kasih kepada Apotek Bening Sehat yang telah mengizinkan melakukan
penelitian kepada penulis.
10. Terima kasih kepada Moonton yang telah membantu menghibur saya dalam
sulitnya pembuatan skripsi saya.
11. Terima kasih kepada Alfin selaku kakak alumni yang telah membantu dan
mengarahkan dalam pembuatan skripsi saya.
12. Teman-teman seperjuangan Program Studi Sistem Informasi Angkatan 2017
yaitu: Prian, Billy, Firdi, Rendi, Alvi, Nando, Revi, Raka, Arman, Sofiyah,
Winda. Terima kasih sebesar besarnya karena telah menemani penulis
menuntut ilmu dan berdiskusi selama masa perkuliahan.

Akhir kata penulis berharap semoga skripsi ini dapat bermanfaat dan
mohon kritik dan saran yang membangun demi kebaikan penulisan dimasa
mendatang.

Jakarta,

(Panca Soeltan Akbar)


DAFTAR ISI
BAB I

PENDAHULUAN

1.1 Latar Belakang

Perkembangan teknologi dunia bisnis saat ini sangat pesat, dan segala
pekerjaan yang masih manual dan tidak efisien juga dapat dilakukan dengan
menggunakan teknologi canggih. Dengan teknologi, pekerjaan manusia lebih
memberikan dampak besar pada semua aspek yang ada, termasuk pengembangan
industri, perdagangan, dan jasa. Pada perusahaan keagenan besar dan kecil akan
selalu ada persediaan barang, karena persediaan dapat mengatur barang-barang
yang ada di gudang yang nantinya dijual pada konsumen. Dengan pengelolaan
persediaan barang yang efektif dan efisien, maka perlu diterapkan sistem
persediaan barang agar barang yang ada di gudang tidak rusak atau hilang, serta
muncul kelebihan barang akibat penanganan persediaan yang kurang optimal.
Melalui penerapan sistem persediaan barang lebih mudah untuk mengontrol
persediaan barang yang akan dilakukan oleh petugas gudang, meningkatkan
kecepatan kerja agar hasil yang diperoleh efektif dari segi tenaga dan waktu.

Apotek Bening Sehat adalah perusahaan yang bergerak di bidang penjualan


obat serta barang kesehatan. Pada Pendataan persediaan barang Apotek Bening
Sehat belum menggunakan sistem komputer, dan menggunakan metode
penulisan dalam buku sehingga masih banyak terjadinya kesalahan seperti
persediaan yang ada tidak sesuai dengan penggunaan barang, sering terjadi
kehilangan dokumen, waktu yang lama dalam perhitungan, dan efisiensinya
rendah. sehingga apotek ini memang membutuhkan aplikasi sistem persediaan
barang yang terkomputerisasi sehingga tidak lagi menggunakan buku untuk
mencatat data-data barang yang ada.

Dengan adanya aplikasi sistem yang terkomputerisasi, informasi persediaan


barang dapat diberikan secara lengkap, data dan informasi dapat diakses dengan
cepat, hemat energi, dan akurat dalam hal informasi yang lengkap, serta lebih
Mudah mengetahui jumlah persediaan yang tersedia di gudang. Berdasarkan
uraian tersebut, penulis melakukan tinjauan untuk menyusun laporan tugas akhir
yang berjudul “Perancangan Aplikasi Persedian Barang Berbasis Web Pada
Apotek Bening Sehat Kelurahan Dayeuh Kab. Bogor”.

1.2 Rumusan dan Batasan Masalah

Penelitian ini memiliki Rumusan masalah yaitu, bagaimana menanggulangi


hambatan pada pendataan persediaan barang pada Apotek Bening Sehat yang
belum terkomputerisasi serta masih melakukan pencatatan dalam melakukan
pendataan, sehingga sering terjadinya kesalahan seperti selisih persediaan masuk
dengan persediaan barang yang keluar, serta sering terjadinya kehilangan data
barang dan data barang yang tidak sesuai. Oleh karna itu perlu adanya sistem
aplikasi persediaan barang agar memudahkan staf gudang dan admin dalam
melakukan pendataan barang.
Batasan masalah pada skripsi ini adalah bagaimana cara staf bagian gudang
serta admin di apotek bening sehat bisa memakai aplikasi sitem persediaan
barang dengan melakukan pendataan barang, update barang terbaru dan
membuat laporan barang keluar serta laporan barang masuk dengan efektif dan
efisien. Sedangkan pemilik Apotek dapat melihat dan mencetak laporan barang
keluar, laporan barang masuk, serta laporan stok barang. Sistem aplikasi ini tidak
menerangkan bagaimana cara memesan barang dari supplier.

1.3 Tujuan Penulisan

Tujuan penulis membuat penelitian ini adalah membangun sebuah aplikasi


yang dapat memudahkan petugas serta admin dalam mengakses data persediaan
barang, update data barang serta memudahkan dalam mendapat informasi secara
cepat pada pengolahan data, memberikan laporan persediaan barang yang lebih
akurat dan tepat waktu, agar petugas dan admin tidak lagi perlu memakai buku
sebagai alat pendataan, yang dimana sering terjadinya kehilangan data barang
dan data barang yang tidak sesuai.

Aplikasi ini juga memudahkan petugas gudang dalam melakukan persediaan


barang, melakukan pendataan baarang, dan membuat laporan barang keluar serta
laporan barang masuk sehingga dapat memudahkan petugas Gudang serta admin
dalam mengakses data barang dengan mudah dan benar sehinga dapat
meminimalisir kerugian pada data barang. Sistem aplikasi ini juga memudahkan
pemilik Apotek untuk melihat serta mencetak laporan barang keluar, laporan
barang masuk dan laporan stok barang.

1.4 Manfaat Penulisan

Manfaat penulisan terhadap Apotek Bening Sehat ini adalah, membantu


dalam proses pendataan barang keluar dan masuk, mengakses data barang,
update barang secara sistem dan database sehingga pekerjaan menjadi lebih
cepat, tepat serta akurat. Dibanding menggunakan penulisan dalam buku yang
dapat menimbulkan kerugian, kekeliruan atau kecurangan saat pendataan data
barang. Dengan tersedianya aplikasi ini, dapat memudahkan pihak staff gudang,
admin serta pemilik Apotek untuk memakainya.

Serta manfaat untuk penulis sendiri adalah sebagai tambahan wawasan dan
menyalurkan pengalaman pada pembuatan perancangan sistem aplikasi
persediaan barang berbasis web, serta memberikan pembelajaran yang bisa
dipelajari dalam bisnis kedalam persediaan barang sehinggaa bisa mempermudah
Apotek Bening Sehat dalam pembuatan sistem aplikasi, serta mengetahui cara
bagaimana merancang sebuah sistem aplikasi untuk membantu Apotek Bening
Sehat dalam menggunakannya.

1.5 Sistematika Penulisan


Sistematika penulisan adalah tinjauan umum dari isi seluruh pembahasan
agar membantu pembaca dalam mengikuti alur pembahasaan yang ada didalam
penulisan penelitian ini. Berikut adalah sistematika penulisanya :

BAB I Pendahuluan

Dalam bab 1 ini menjelaskan latar belakang, rumusan dan batasan massalah,
tujuan penelitian, manfaat penulisan sistem perancangan yang akan dibuat
oleh mahasiswa agar berjalan dengan baik dan mudah dipahami.

BAB II Landasan Teori

Memaparkan konsep dasar serta teori-teori yang berhubungan dengan


penelitian dan hal-hal yang berguna didalam proses pembuatan sistem
aplikasi ini, sehingga tidak sulit untuk dimengerti dan dipergunakan oleh
para pemakainya. Sehingga berguna serta memiliki kinerja yang efektif dan
efisien.

BAB III Metodelogi Penelitian

Pada bab 3 ini menerangkan tempat dan waktu yang dilakukan pada saat
penelitian. Metode yang dipakai untuk mengumpulkan data-data yang
dibutuhkan sebagai sumber informasi pembuatan sistem aplikasi yang
dibuat, dan teknik pengumpulan data agar mendapat data secara benar serta
akurat.

BAB IV Analisa dan Hasil Pembahasan

Didalam bab 4 menjabarkan gambaran umum dan khusus Apotek Bening


Sehat, serta Pembuatan perancangan sistem yang diusulkan yaitu diagram
alur data, dan tampilan pada aplikasi yang berada dimenu-menu yang
mempunyai kegunaan yang berbeda. Yakni menu profil, data barang,
transaksi barang keluar, transaksi barang masuk, laporan barang keluar serta
laporan barang masuk.

BAB V Kesimpulan dan Saran

Lalu dalam bab 5 ini terdapat kesimpulan dan saran, kesimpulan berisi
jawaban dari tujuan penulisan yang menerangkan proses pertama pembuatan
sistem aplikasi yang dirancang sehingga menjadi sistem aplikasi yang layak
untuk dipakai. sedangkan saran berisi tentang masukan, ide untuk
menyempurnakan sistem aplikasi yang telah dibuat supaya lebih berkembang,
lebih baik, dan lebih berguna diperiode yang berikutnya.
BAB II

LANDASAN TEORI

2.1 Sistem Peredian Barang

Persediaan menurut Sofjan Assauri merupakan aktiva yang meliputi barang-


barang milik perusahaan yang dimaksud untuk dijual dalam satu periode usaha
yang normal atau persediaan barang baku yang menunggu penggunaannya dalam
suatu proses produksi. Sedangkan menurut Freddy Rangkuti, persediaan suatu
aktivitas yang meliputi barang-barang milik perusahaan dengan maksud untuk
dijual dalam suatu periode usaha tertentu , atau persediaan barang-barang yang
masih dalam pengerjaan atau proses produksi, ataupun persediaan bahan baku
yang menunggu penggunaannya dalam suatu proses produksi. Pada dasarnya
persediaan mempermudah atau memperlancar jalannya operasi perusahaan
pabrik yang harus dilakukan secara berturut-turut untuk memproduksi barang-
barang, serta selanjutnya menyampaikan pada pelanggan atau konsumen.

Persediaan memungkinkan produk-produk yang dihasilkan pada tempat


yang jauh dari pelanggan atau sumber bahan mentah. Dengan adanya persediaan
produksi tidak perlu dilakukan khusus buat konsumsi atau sebaliknya tidak perlu
dikonsumsi didesak supaya sesuai dengan kepentingan produksi. Alasan
diperlukannya persediaan oleh suatu perusahaan yaitu, untuk menyelesaikan
operasi produksi untuk memindahkan produk darisatu tingkat proses yang lain,
serta memungkinkan suatu unit atau bagian membuat jadwal operasinya secara
bebas tidak tergantung dari yang lainnya.

Menurut Herjanto dalam bukunya yang berjudul “Manajemen Produksi dan


Operasi’’ Persedian Memiliki beberapa fungsi dalam memenuhi kebutuhan
perusahaan, yaitu Menghilangkan risiko keterlambatan pengiriman bahan baku
atau barang yang dibutuhkan perusahaan, Menghilangkan risiko jika material
yang dipesan tidak baik sehingga harus dikembalikan, Menghilangkan risiko
terhadap kenaikan harga barang atau inflasi, Untuk menyimpan bahan baku yang
dihasilkan secara musiman sehingga perusahaan tidak akan kesulitan jika bahan
itu tidak tersedia di pasaran, Mendapatkan keuntungan dari pembelian
berdasarkan potongan kuantitas (quantitydiscounts), Memberikan pelayanan
kepada pelanggan dengan tersedianya barang yang diperlukan.

Persedian jika dilihat dari jenis atau posisi menurut Sofjan Assauri yakni,
Persediaan bahan baku ( Raw Material stock) yaitu persediaan dari barang-
barang berwujud yang digunakan dalam proses produksi diperoleh dari sumber-
sumber alam ataupun dibeli dari suplier atau perusahaan yang menghasilkan
bahan baku bagi perusahaan pabrik yang menggunakannya, Persediaan bagian
produk (Purchased part ) yaitu persediaan barang-barang yang terdiri dari part
atau bagian yang diterima dari perusahaan lain yang dapat secara langsung di
assembling dengan part lain tanpa melalui proses produksi sebelumnya,
Persediaan bahan-bahan pembantu atau barang-barang perlengkapan (Supplies
stock ) yaitu persediaan barang-barang atau bahan-bahan yang diperlukan dalam
proses produksi untuk membantu berhasilnya produksi atau yang dipergunakan
dalam bekerjanya suatu perusaahan tapi tidak merupakan bagian atau komponen
dari barang jadi, Persediaan barang setengah jadi atau barang dalam proses
(work in process/progressstock) yaitu persediaan barang-barang yang keluar dari
tiap-tiap bagian dalam satu pabrik atau bahan-bahan yang telah diolah menjadi
suatu bentuk tetapi lebih perlu diproses kembali untuk kemudian menjadi barang
jadi, Persediaan barang jadi (Finished goods stock) yaitu barang-barang yang
telah selesai diproses atau diolah dalam pabrik dan siap untuk dijual kepada
pelanggan atau perusahaan lain.

Manfaat sistem persediaan barang yaitu, menjaga stok barang produksi Pada
perusahaan, adanya keterlambatan produksi akan mengakibatkan banyak
kerugian karena perusahaan tetap harus menanggung biaya operasional pabrik
meskipun tidak ada proses produksi. Oleh karena itu cukup penting untuk
memastikan stok barang yang akan dipakai untuk produksi mencukupi.

Menjaga stok barang dipasaran Jika pemilik usaha tidak tepat dalam
menghitung stok barang di pasaran, ia akan kehilangan peluang keuntungan dari
permintaan pasar. Jangan sampai saat ada permintaan dari konsumen Anda tidak
bisa menyediakan karena salah dalam perhitungan stok. Hal tersebut tentu juga
akan berpengaruh pada tingkat kepercayaan konsumen terhadap produk Anda di
kemudian hari.

Memiliki kontrol penuh atas persediaan barang Jika memiliki sistem


pencatatan persediaan barang yang baik, Anda sebagai pengambil keputusan bisa
memperkirakan kebutuhan perusahaan saat itu. Banyaknya stok yang ada atau
jumlah barang yang telah habis tentunya akan memengaruhi biaya yang
diperlukan untuk menjaga stok barang tetap ada. Jika terdapat kesalahan
perhitungan, perusahaan bisa rugi karena harus mengeluarkan biaya lebih yang
tidak diperlukan.

Menjaga hubungan baik dengan distributor dan konsumen Saat bisa


memastikan bahwa persediaan barang aman, maka distributor dan konsumen dari
produk Anda akan bisa mendapatkan informasi yang tepercaya serta tidak
mengecewakan. Dengan demikian mereka akan menilai bahwa bisnis dijalankan
secara profesional sehingga mereka tidak akan ragu untuk terus bermitra dengan
anda.

2.2 Pengelolaan Persedian Obat di Apotek

Persediaan (inventory) obat di apotek merupakan suatu investasi yang


membutuhkan modal cukup besar. Pengelolaan persediaan obat di apotek sangat
diperlukan karena berkaitan dengan pelayanan terhadap pasien dan berpengaruh
pada fungsi pemasaran dan keuangan apotek. Pengelolaan persediaan yang tepat
dapat mengantisipasi kebutuhan konsumen yang sering kali tidak dapat
diprediksi.

Menurut Schroeder, persediaan adalah stok bahan yang digunakan untuk


memudahkan produksi atau untuk memuaskan permintaan pelanggan. Konsep
persediaan merupakan suatu aktiva yang meliputi barang-barang milik
perusahaan dengan maksud untuk dijual dalam suatu periode usaha tertentu, atau
persediaan barang-barang yang masih dalam pengerjaan/proses produksi,
ataupun persediaan bahan baku yang menunggu penggunaannya dalam suatu
proses produksi. Stok persediaan obat di apotek penting untuk dikelola agar
kebutuhan pasien di waktu tertentu dapat terpenuhi, menghindari jika suatu
waktu terjadi fluktuasi harga obat-obatan yang meningkat, menyediakan
persediaan cadangan untuk kondisi permintaan obat yang tidak menentu, serta
dapat mengambil keuntungan dari pemasok (supplier) jika ada diskon.

Persediaan untuk antisipasi Apotek perlu menyimpan persediaan sebagai


langkah antisipasi yang dibuat berdasarkan kebutuhan jangka waktu ke depan
atau future demand yang sudah dapat diperkirakan seberapa jauh kebutuhan akan
diperlukan. Antisipasi persediaan di apotek dilakukan untuk membantu
keperluan pada tingkat level stok, serta untuk mengatasi permintaan tak terduga
dari pelanggan jika pada waktu tertentu terjadi peningkatan permintaan
kebutuhan obat.

Persediaan Saat Fluktuasi Safety stock berfungsi untuk mengatasi fluktuasi


yang tidak dapat diprediksi antara supply dan demand serta lead time. Lead
time adalah jangka waktu kapan persediaan itu mulai dipesan sampai persediaan
itu ditempatkan/dipesan kembali. Potensi kekurangan persediaan (stockout) akan
terjadi jika demand atau lead time lebih besar dari hasil peramalan (forecast).
Oleh karena itu, adanya persediaan safety stock di apotek dapat tetap membantu
memenuhi pesanan pasien meskipun terjadi fluktuasi harga.
Lot-Size Inventory Lot-size adalah sejumlah item/barang tertentu yang di-
order dari suatu plant/third party/supplier yang kemudian dijadikan standar
kuantitas untuk proses proses pengiriman kepada pelanggan. Lot-size
inventory terbentuk jika barang dibeli dari supplier lebih besar atau hasil
produksi dari pabrik juga lebih besar dari kebutuhan yang diperlukan secara
mendadak/mendesak.

Hedge Inventory Hedge inventory berfungsi untuk melindungi harga dari


harga fluktuasi barang. Hedge inventory berguna jika pada saat harga pasar naik,
perusahaan sudah melakukan hedge inventory pada harga rendah dengan
melakukan pembayaran terlebih dahulu.

Perencanaan persediaan obat-obatan di apotek berfungsi untuk memprediksi


kebutuhan persediaan obat untuk jangka waktu tertentu. Berdasarkan Keputusan
Menteri Kesehatan No. 1121/Menkes/SK/XII/2008 tentang Pedoman Teknis
Pengadaan Obat Publik dan Perbekalan Kesehatan untuk Pelayanan Kesehatan
Dasar, proses perencanaan persediaan obat meliputi, Tahap pemilihan obat,
Tahap kompilasi pemakaian obat, Tahap perhitungan kebutuhan obat, Tahap
proyeksi kebutuhan.

Pengadaan merupakan kegiatan untuk merealisasikan kebutuhan yang telah


direncanakan dan disetujui. Pengadaan obat-obatan di apotek biasanya dilakukan
melalui pembelian/pemesanan yang dilakukan melalui jalur resmi sesuai dengan
peraturan perundang-undangan medis.

Penerimaan merupakan kegiatan untuk memastikan kesesuaian kedatangan


barang dengan surat pesanan di antaranya kesesuaian jenis obat maupun jumlah
yang dipesan. Penerimaan merupakan kegiatan untuk menjamin kesesuaian jenis
spesifikasi, jumlah, mutu, waktu penyerahan dan harga yang tertera dalam surat
pesanan dengan kondisi fisik yang diterima.

Penyimpanan merupakan Tata cara dan pengelolaan obat secara tepat,


penting untuk dilakukan karena obat merupakan salah satu faktor terpenting
dalam pelayanan kesehatan. Penyimpanan obat-obatan harus memperhatikan
beberapa hal yaitu, Obat disimpan dalam wadah asli dari pabrik (jika obat
dipindahkan ke wadah lain, harus dicegah agar tidak terkontaminasi dan ditulis
informasi yang jelas) wadah obat juga harus memuat nomor batch dan tanggal
kedaluwarsa. Semua obat-obatan harus disimpan pada kondisi yang sesuai
sehingga terjamin keamanan dan stabilitasnya. Sistem penyimpanan dapat
dilakukan dengan memperhatikan kelas terapi obat, bentuk sediaan
(liquid,  semisolid, dan solid), stabilitas obat (dipengaruhi oleh suhu, cahaya, dan
kelembaban), serta disusun berdasarkan abjad. Pengeluaran obat memakai sistem
FEFO (First Expire First Out) dan FIFO (First in First Out). FEFO yaitu obat
yang sudah mendekati tanggal kedaluwarsa akan dikeluarkan terlebih dahulu,
sedangkan FIFO artinya obat yang datang lebih dulu, akan dikeluarkan pertama.
Pemusnahan obat yang kedaluwarsa atau rusak harus dimusnahkan sesuai
dengan jenis dan bentuk sediaan. Pemusnahan juga dapat dilakukan terhadap
resep obat yang telah disimpan melebihi jangka waktu lima tahun. Pengendalian
stok obat-obatan dilakukan menggunakan kartu stok yang memuat nama obat,
tanggal kedaluwarsa, jumlah pemasukan, jumlah pengeluaran, dan sisa
persediaan. Pengendalian ini bertujuan untuk mempertahankan jenis dan jumlah
persediaan sesuai pelayanan agar tidak terjadi kelebihan dan kekosongan stok.
Pencatatan dilakukan untuk mengetahui data obat yang masuk dan keluar dalam
periode waktu tertentu, sedangkan pelaporan adalah kumpulan catatan
dan pendataan kegiatan administrasi yang disajikan kepada pihak yang
berkepentingan.

2.3 Unified Modeling Language(UML)

Bahasa pemodelan berorientasi objek muncul antara sekitar pertengahan


tahun 1970-an dan akhir tahun 1980-an yang dikenal dengan bahasa
pemograman berorientasi objek dan aplikasi komplek yang berkembang, yang
dimulai untuk eksperimen dengan pendekatan alternatif untuk analisis dan
desain. Sejumlah metode berorientasi objek bertambah dari kurang lebih 10
sampai lebih dari 50 selama periode 1989 dan 1994.

UML dimulai secara resmi pada oktober 1994, ketika Rumbaugh bergabung
dengan Booch pada Relational Software Coorporation. Dalam waktu yang sama
Jacobson bergabung dengan Ralational dan cakupan dari UML semakin luas.
Dokumentasi UML versi 0.9 akhirnya direlease pada bulan Juni 1996. Meskipun
pada tahun 1996 melihat dan menerima feedback dari komunitas Software
Engineering. Dalam waktu tersebut menjadi lebih jelas bahwa beberapa
organisasi software melihat kalau UML merupakan strategi dari bisnisnya.
Kemudian dibangunlah UML Consortium dengan beberapa organisasi yang akan
menyumbangkan sumber dayanya untuk bekerja mengembangkan dan
melengkapi UML.

UML merupakan Bahasa pemodelan yang memiliki pembendaharaan kata


dan cara untuk mempresentasikan secara fokus pada konseptual dan fisik dari
suatu sistem. Contoh untuk sistem software yang intensive membutuhkan bahasa
yang menunjukkan pandangan yang berbeda dari arsitektur sistem, ini sama
seperti menyusun/mengembangkan software development life cycle. Dengan
UML akan memberitahukan kita bagaimana untuk membuat dan membaca
bentuk model yang baik, tetapi UML tidak dapat memberitahukan model apa
yang akan dibangun dan kapan akan membangun model tersebut. Ini merupakan
aturan dalam software development process.

Use Case Diagram merupakan diagram menggambarkan sejumlah eksternal


aktor dan hubungannya ke Use Case yang diberikan oleh sistem. Use Case
digambarkan hanya yang dilihat dari luar oleh aktor (keadaan lingkungan sistem
yang dilihat user) dan bagaimana fungsi yang ada didalam sistem.

Class Diagram merupakan diagram yang menggambarkan struktur statis


class dalam sistem. Class merepresentsikan sesuatu yang ditangani oleh sistem.
Class dapat dihubungkan dengan lainnya melalui sejumlah cara : assasiated
(terhubung satu denganj yang lain), dependent (satu class tergantung /
menggunakan class yang lainnya), specialiized (satu class merupakan spesialisasi
dari class lainnya), atau packaged (grup bersama sebagai suatu unit).

Sequence Diagram adalah diagram yang menggambarkan kolaborasi


dinamis antar sejumlah objek. Kegunaanya untuk menunjukkan rangkaian pesan
yang dikirim antara objek juga  interaksi antara objek.
Collaboration Diagram adalah diagram yang menggambarkan kolaborasi
dinamis seperti sequence diagram. Dalam menunjukan pertukaran pesan,
collaboration diagram menggambarkan objek dan hubungannya (mengacu ke
konteks). Jika penekanannya pada waktu atau urutan gunakkan sequence
diagram, tetapi jika penekanannya pada konteks gunakan collaboration diagram.

State Chart Diagram merupakan diagram yang menggambarkan semua


state (kondisi) yang dimiliki oleh suatu objek dari suatu class dan kejadian yang
menyebabkan state berubah secara dinamis.

Activity Diagram adalah diagram yang menggambarkan rangkaian aliran


dari aktivitas, digunakkan untuk mendeskripsikan aktivitas yang dibentuk dalam
suatu operasi sehingga dapat juga digunakan untuk aktivitas lainnya seperti use
case atau interaksi.

Component Diagram adalah diagram yang menggambarkan struktur fisik


kode dari komponen. Komponen dapat berupa source code, komponen biner,
atau executable component. Sebuah komponen berisi tenatang logic class atau
class yang diimplementasikan sehingga membuat pemetaan dari logical view ke
component view.

Deployment Diagram adalah diagram yang menggambarkan arsitektur fisik


dari perangkat keras dan perangkat lunak sistem, menunjukkan hubungan
komputer dengan perangkat (nodes) satu sama lain dan jenis hubungannya.

Keuntungan menggunakan UML yaitu, representasi visual diagram UML


sangat berguna untuk merepresentasikan hubungan antar class dan entity di
sebuah program komputer secara visual. Untuk mengerti tentang sebuah program
dengan baik, penting untuk memahami fungsi setiap class yang ada. Hal ini
termasuk juga informasi yang disimpannya dan bagaimana keterkaitannya
dengan class-class lainnya. Tentunya, pemahaman ini akan lebih mudah datang
jika melihat sistemnya secara visual menggunakan Unified Modeling Language.

Memudahkan pembacaan dan penggunaan, Diagram UML sangat mudah


dibaca dan dipahami Semua programmer, pada umumnya bisa mengerti
hubungan dalam sebuah program jika disajikan menggunakan bahasa pemodelan
ini. sangat jauh berbeda dengan cara lama yang mengharuskan
para programmer membaca kode secara langsung. Tidak hanya sulit, kesalahan
pun mungkin terjadi.

UML membantu programmer merencanakan sebuah program sebelum


proses pengerjaannya dimulai. Dengan model diagram berbasis Unified
Modeling Language, perubahan akan lebih mudah dibuat jika ada kesalahan.
Biaya yang dikeluarkan pun akan lebih sedikit karena eror yang terjadi bisa
diminimalkan.

2.4 Database Management System (DBMS)

Merupakan perangkat lunak yang menangani semua pengaksesan database.


Secara fungsi, data base management system atau dbms mempunyai fasilitas
mengintegrasikan, terhubung, merekayasa dan memelihara basis data. Basis data
merupakan kumpulan data yang saling berhubungan satu dengan yang lainnya
yang diaorganisasikan sesuai struktur tertentu dan disimpan dengan baik.  Untuk
mendapatkan informasi yang berguna dari kumpulan data maka diperlukan suatu
perangkat lunak (software) untuk memanipulasi data sehingga mendapatkan
informasi yang berguna. DBMS merupakan software yang digunakan untuk
membangun sebuah sistem basis data yang berbasis komputerisasi. DBMS
membantu dalam pemeliharaan dan pengolahan kumpulan data dalam jumlah
besar. Sehingga dengan menggunakan DBMS tidak menimbulkan kekacauan dan
dapat digunakan oleh pengguna sesuai dengan kebutuhan.

Jadi Data Base Management System (DBMS) : Seluruh peralatan computer


(Hardware+Software+Firmware). DBMS dilengkapi dengan bahasa yang
bertujuan pada data (High level data language) yang kerap dimaksud juga untuk
bahasa generasi ke 4. Ada banyak DBMS yang sangat populer seperti Oracle,
Microsoft SQL Server, MySQL, PostgreSQL, Microsoft Access, IBM DB2, dan
masih banyak lagi. Perangkat lunak komputer ini memberikan kemudahan bagi
seseorang dalam melakukan manipulasi terhadap database.

Tujuan dan fungsi DBMS yaitu, untuk mengelola kamus data. Kamus data
adalah tempat untuk menyimpan elemen data seperti isian data, jumlah karakter,
tipe data, dan relasinya terhadap data lain. Selain itu, setiap perubahan struktur
data yang terjadi akan direkam secara otomatis di kamus data. Sehingga, Anda
jadi lebih mudah dalam mencari data yang dibutuhkan, karena semuanya telah
tersimpan di kamus data.

Fungsi DBMS selanjutnya adalah untuk mengelola penyimpanan data.


Maksudnya dengan DBMS, anda bisa dengan mudah membuat dan mengelola
struktur yang nantinya digunakan sebagai tempat menyimpan data. Selain
sebagai tempat penyimpanan, DBMS juga menyediakan berbagai opsi entri data.
Dengan kata lain, anda bisa mendefinisikan secara spesifik bagaimana sebuah
data diinputkan ke database. Hal ini sangat berguna ketika Anda banyak
berurusan dengan data multimedia. Misalnya gambar, video, suara, bahkan data
biometrik seperti sidik jari dan pengenalan wajah.

Perubahan dan presentasi data, Masih berhubungan dengan fungsi DBMS


sebelumnya, DBMS dapat anda gunakan untuk mengubah tampilan data. Hal ini
dapat dilakukan, tentunya setelah Anda mengatur bagaimana cara entri data
tersebut. Dengan kata lain, data yang Anda inputkan akan otomatis
menyesuaikan diri dengan struktur datanya. Sebagai contoh, bayangkan Anda
mengelola sebuah database untuk perusahaan multinasional. Pengguna akhir dari
Indonesia pasti akan memasukkan data waktu dalam format 24 jam. Sebaliknya,
pengguna asal Amerika Serikat akan menginputkan waktu dalam format 12 jam.
Nah, adanya perbedaan cara entri data waktu ini tidak akan menjadi masalah.
Sebab, Anda telah mendefinisikan bagaimana data waktu tersebut akan diolah
sesuai dengan strukturnya.

Pengelolaan keamanan adalah fungsi DBMS yang berikutnya. Dengan


DBMS, Anda bisa mengatur otorisasi pengguna secara spesifik. Misalnya siapa
yang hanya bisa mengakses database dan siapa yang bisa memodifikasi database
tersebut. Tak hanya itu, DBMS juga menyediakan opsi enkripsi data, yaitu
proses mengubah data menjadi karakter acak yang sulit dibaca. Nah, enkripsi ini
bisa Anda manfaatkan untuk melindungi data sensitif. Contohnya password,
nomor rekening bank, atau detail kartu kredit.

Fungsi DBMS yang terakhir adalah untuk mengelola backup dan restore
database. Hampir semua DBMS modern sudah menyediakan fitur backup, yang
bisa Anda atur baik secara manual maupun otomatis. Jika sewaktu-waktu terjadi
kerusakan terhadap sistem maupun media penyimpanan, Anda masih punya
salinan database. Dengan begitu, waktu yang dibutuhkan sistem tersebut untuk
pulih jadi lebih cepat.

Konsep DBMS yaitu, database sebagai wadah untuk menyimpan struktur


tabel, yang nantinya akan diisi oleh berbagai data. Nah, data ini dapat berupa
teks, angka, gambar, video, suara, bahkan informasi geografis. Selain itu,
database juga dapat Anda gunakan untuk menyimpan relasi data. Relasi terjadi
ketika dua atau lebih data dari tabel berbeda saling berhubungan. Relasi data
akan menghasilkan informasi baru yang disebut data transaksional.

Softwere, Di dalam konsep DBMS software inilah yang Anda kenal dengan
nama DBMS. Bisa dibilang, kehadiran DBMS adalah untuk menciptakan
database dan sekaligus mengelola data yang ada di dalamnya. Sebaliknya tanpa
adanya DBMS, Anda tidak bisa membuat database baru. Apalagi mengelola hal-
hal yang berhubungan dengan data, seperti menambahkan, menghapus, atau
memanipulasi data.

Hardware adalah perangkat keras yang ikut terlibat dalam pemrosesan data
di DBMS. Hardware ini dapat berupa komputer beserta bagian-bagiannya,
seperti hard disk, processor, RAM, dan keyboard. Misalnya Anda menjalankan
sebuah software DBMS. Maka, Anda butuh keyboard untuk menginput data.
Nantinya, data tersebut akan diproses dengan bantuan processor, sebelum
disimpan secara fisik di dalam hard disk.

Operating System, Seperti yang diketahui, Anda tidak bisa menjalankan


komputer tanpa adanya sistem operasi yang tertanam di dalamnya. Maka dari itu,
operating system juga masih termasuk salah satu konsep DBMS. Di samping itu,
software DBMS juga diinstall di atas sistem operasi. Maka dari itu, pastikan
memilih DBMS yang kompatibel dengan OS Anda. Namun untungnya,
kebanyakan software DBMS yang ada di pasaran itu multiplatform. Artinya,
software tersebut dapat diinstall di sistem operasi populer, seperti Windows,
Linux, dan MacOS.

User adalah bagian dari konsep DBMS yang keberadaannya sangat


dibutuhkan. Tanpa adanya user, segala bentuk data beserta relasinya di dalam
software DBMS tidak dapat dimanfaatkan dengan maksimal.

Kelebihan DBMS. Kelebihan DBMS yang pertama adalah memudahkan


pertukaran dan akses data. Sebab, Anda bisa mengelola hak akses pengguna
terhadap database sesuai dengan role-nya masing-masing. Contohnya
Administrator dapat mengelola database dan memberi hak akses kepada
pengguna lain. Sementara pengguna lain tersebut hanya bisa menginput,
mengedit, dan menghapus data di dalam database saja. Dengan begitu, setiap
perubahan data yang terjadi dapat diketahui secara langsung oleh pengguna.
Asalkan, pengguna tersebut telah mengantongi izin akses.

Meningkatkan keamanan data adalah kelebihan DBMS yang berikutnya.


Seperti yang Anda tahu, semakin banyak orang yang mengakses database,
artinya semakin besar risiko keamanan yang menghantuinya. Misalnya,
pencurian database memanfaatkan detail login milik salah satu pengguna.
Untungnya DBMS memungkinkan Anda mengatur hak akses pengguna hingga
detail terkecil. Dengan begitu, masalah keamanan data di DBMS dapat ditekan
seminimal mungkin.

Menjaga integritas data, DBMS sangat berguna dalam menjaga integritas


atau kesatuan data di database. Alasannya ketika membuat database baru di
DBMS, Anda wajib menyiapkan struktur data secara rinci terlebih dahulu.
Sehingga, masalah yang timbul akibat kesalahan pengguna dapat diminimalisasi.
Contohnya menginput data dengan format yang tak semestinya, atau
memasukkan data yang sama berkali-kali.

Mencegah kerusakan data, Salah satu fungsi DBMS adalah untuk


membackup data. Backup sendiri adalah proses menyalin database dari DBMS
ke media penyimpanan lain, seperti cloud storage. Dengan adanya fitur backup
dan restore otomatis di DBMS, pengguna tidak perlu repot melakukan backup
database secara berkala. Sehingga, risiko kerusakan data yang bisa terjadi kapan
saja bisa dicegah hingga level minimal.

Kelebihan DBMS yang terakhir adalah memudahkan Anda mengambil


keputusan. Sebab, DBMS dapat Anda manfaatkan untuk mengolah dan
memanipulasi data agar menghasilkan suatu informasi baru. Informasi yang
berasal dari DBMS ini memiliki tingkat akurasi yang tinggi. Sehingga, dapat
Anda jadikan salah satu pertimbangan ketika mengambil sebuah keputusan
penting.

Kelemahan DBMS yaitu, DBMS membutuhkan serangkaian hardware,


sistem operasi, dan software pendukung lain untuk dapat berjalan dengan lancar.
Dengan kata lain, Anda perlu mengeluarkan biaya yang tidak sedikit untuk
keperluan operasional DBMS. Belum lagi ketika Anda kewalahan mengelola
database sendirian. Artinya, Anda butuh mempekerjakan orang lain sebagai
database administrator. Hal ini tentu menambah beban biaya yang harus Anda
keluarkan.

Kelemahan DBMS selanjutnya adalah, dapat menyebabkan kerumitan data.


Dengan DBMS, Anda memang bebas membangun banyak database lengkap
dengan struktur datanya. Namun semakin banyak database, semakin rumit proses
pengelolaan data. Hal ini dapat menyebabkan kebingungan bagi penggunanya.
Atau yang lebih fatal, terjadi kesalahan yang mengakibatkan kerusakan data.

Masalah inkompatibilitas atau ketidaksesuaian adalah kelemahan DBMS


yang terakhir. Seperti yang Anda ketahui, perusahaan penyedia software DBMS
selalu mengupdate produknya secara berkala. Sayangnya, update software bisa
membawa perubahan yang kurang menguntungkan. Contohnya, hardware atau
OS yang Anda pakai saat ini tidak lagi didukung DBMS tersebut. Mau tak mau
Anda harus mengganti hardware atau OS tersebut, jika ingin terus memakai
software DBMS yang sama. Sampai di sini, Anda telah memahami kelebihan
DBMS dan kekurangan DBMS. Selanjutnya, kami ajak Anda mengenal macam-
macam DBMS.
2.5 Softwere yang Digunakan dalam Aplikasi

Website adalah kumpulan halaman dalam suatu domain yang memuat


tentang berbagai informasi agar dapat dibaca dan dilihat oleh pengguna internet
melalui sebuah mesin pencari. Informasi yang dapat dimuat dalam sebuah
website umumnya berisi mengenai konten gambar, ilustrasi, video, dan teks
untuk berbagai macam kepentingan.

Biasanya untuk tampilan awal sebuah website dapat diakses melalui


halaman utama (homepage) menggunakan browser dengan menuliskan URL
yang tepat. Di dalam sebuah homepage, juga memuat beberapa halaman web
turunan yang saling terhubung satu dengan yang lain.

Ada beberapa jenis website yang sering dikunjungi, yaitu Website statis
merupakan website yang memiliki tampilan yang tetap dan tidak banyak
mengalami perubahan. Biasanya untuk perubahannya sendiri hanya terletak pada
tampilan desain halaman web saja, terkait konten tidak mengalami perubahan
yang besar. Contoh dari web statis yaitu website yang menampilkan profil
perusahaan atau organisasi.

Website dinamis adalah website yang mengalami perubahan secara terus


menerus sesuai dengan kebutuhan dan relevansi dari bisnis dan perkembangan
zaman. Website dinamis memiliki tampilan yang lebih interaktif, dan
menyediakan fitur kolom komentar, dan chatting. Contoh dari situs web ini
adalah blog, situs berita online, e-commerce, sistem informasi, dan lain
sebagainya.

Website interaktif adalah website yang dirancang untuk dapat saling


berinteraksi antar penggunanya. Jenis situs ini biasanya tergolong ke dalam
platform media sosial seperti Facebook, Twitter, Instagram, dan platform social
media yang lain.

XAMPP adalah sebuah paket perangkat lunak (software) komputer yang


sistem penamaannya diambil dari akronim kata Apache, MySQL (dulu) /
MariaDB (sekarang), PHP, dan Perl. Sementara imbuhan huruf “X” yang
terdapat pada awal kata berasal dari istilah cross platform sebagai simbol bahwa
aplikasi ini bisa dijalankan di empat sistem operasi berbeda, seperti OS Linux,
OS Windows, Mac OS, dan juga Solaris.

Jika dijabarkan secara gamblang, masing-masing huruf yang ada di dalam


nama XAMPP menurut para ahli memiliki arti, yaitu X = Cross Platform,
merupakan kode penanda untuk software cross platform atau yang bisa berjalan
di banyak sistem operasi. Jadi, ada XAMPP untuk Windows, xampp for mac, dan
untuk Linux. Semua itu bersifat free download xampp. Apache adalah aplikasi
web server yang bersifat gratis dan bisa dikembangkan oleh banyak orang (open
source). MySQL atau MariaDB merupakan aplikasi database server yang
dikembangkan oleh orang yang sama. MySQL berperan dalam mengolah,
mengedit, dan menghapus daftar melalui database. Huruf “P” yang pertama dari
akronim kata XAMPP adalah inisial untuk menunjukkan eksistensi bahasa
pemrograman PHP. Bahasa pemrograman ini biasanya digunakan untuk
membuat website dinamis, contohnya dalam website berbasis CMS WordPress.
Sementara itu, untuk huruf P selanjutnya merupakan singkatan dari bahasa
pemrograman Perl yang kerap digunakan untuk memenuhi berbagai macam
kebutuhan. Perl ini bisa berjalan di dalam banyak sistem operasi sehingga sangat
fleksibel dan banyak digunakan.

Gambar 1. Folder htdocs

Htdocs merupakan nama sebuah folder bagian dari XAMPP yang berfungsi
untuk menyimpan berbagai file dan dokumen yang akan ditampilkan kedalam
website. Kapasitas penyimpanan di dalam menu htdocs sendiri bergantung
kepada harddisk yang terpasang di perangkat komputer.

Gambar 2. Control Panel

Seperti namanya, Control Panel memberikan kita akses lebih leluasa dalam
mengatur database, mengunggah file, atau melakukan setting lebih detail terkait
dalaman website.  Dari dalam Control Panel kita juga bisa mengatur stop dan
start aplikasi XAMPP agar tidak memberatkan kinerja komputer.
Gambar 3. PhpmyAdmin

Sama seperti fungsi PhpMyAdmin pada web hosting sesungguhnya, peran


PhpMyAdmin dalam aplikasi XAMPP juga diplot sebagai pengatur konfigurasi
MySQL. Untuk membuka phpMyAdmin di XAMPP caranya Anda bisa langsung
mengetikkan URL http://localhost/phpMyAdmin.

MySQL adalah sebuah DBMS (Database Management System)


menggunakan perintah SQL (Structured Query Language) yang banyak
digunakan saat ini dalam pembuatan aplikasi berbasis website. MySQL dibagi
menjadi dua lisensi, pertama adalah Free Software dimana perangkat lunak dapat
diakses oleh siapa saja. Dan kedua adalah Shareware dimana perangkat lunak
berpemilik memiliki batasan dalam penggunaannya. 

MySQL termasuk ke dalam RDBMS (Relational Database Management


System). Sehingga, menggunakan tabel, kolom, baris, di dalam struktur database
-nya. Jadi, dalam proses pengambilan data menggunakan metode relational
database. Dan juga menjadi penghubung antara perangkat lunak dan database
server.

Secara garis besar, fungsi dari MySQL adalah untuk membuat dan
mengelola database pada sisi server yang memuat berbagai informasi dengan
menggunakan bahasa SQL. Fungsi lain yang dimiliki adalah memudahkan
pengguna dalam mengakses data berisi informasi dalam bentuk String (teks),
yang dapat diakses secara personal maupun publik dalam web.

Hampir seluruh penyedia server web atau host menyediakan fasilitas untuk
MySQL dalam pengembangan aplikasi berbasis website untuk dikelola oleh web
developer. Kemudian, antarmuka dari MySQL adalah PHPMyAdmin. Yang
berfungsi untuk menghubungkan antara bahasa pemrograman PHP dengan
MySQL untuk proses pengelolaan basis data pada web.

Data Definition Language (DDL) adalah sub perintah bahasa SQL yang
mempunyai peran dalam hal membangun kerangka suatu database. Adapun yang
dimaksud ialah tabel dan database itu sendiri. Makanya dalam DDL terdapat 3
perintah yang sangat penting yaitu Create, Alter dan juga Drop seperti yang
sudah dijelaskan sebelumnya.

Sementara untuk DCL atau Data Control Language, ini merupakan sub
bahasa SQL yang mempunyai fungsi utama untuk mengontrol data serta server
databasenya. Misalnya hak akses dan manipulasi user. Dengan kata lain, apabila
Anda telah memiliki user kemudian ingin mengatur hak akses dari masing-
masing user tersebut, maka Anda perlu memahami DCL ini. Selain fungsi
tersebut, DCL juga bisa digunakan untuk mengaudit penggunaan database,
mengalokasikan database serta mendefinisikan space.

DML atau Data Manipulation Language ialah sub perintah bahasa SQL
yang dapat dimanfaatkan ketika memanipulasi data di dalam database yang
sebelumnya sudah dibuat. DML ini bisa digunakan setelah Anda menjalankan
perintah DDL. Dalam DML ini juga ada sejumlah perintah penting yaitu, Delete
untuk menghapus data yang terdapat di dalam tabel pada database, Update untuk
mengganti data yang terdapat dalam tabel pada database, Insert untuk
memasukkan data-data dalam tabel pada database.

BAB III

METODELOGI PENELITIAN

Metodelogi penelitian tugas akhir ini dilakukan penulis agar saat pembuatan
sistem terarah, sesuai rencana, dan mendapat hasil yang diharapkan. metodologi
yang diterapkan dalam penyusunan yaitu, pengumpulan data, analisis sistem,
perancangan sistem, serta pengujian sistem. Penelitian yang dilakukan oleh
penulis mengambil objek penelitian pada Apotek Bening Sehat yang beralamat
di Perumahan Venezia Residence Blok. C2A Desa Dayeuh Cileungsi. Waktu
penelitian dimulai dari bulan Febuari sampai dengan bulan Juni 2021.

3.1 Sistem Persediaan Barang yang Sedang Berjalan

Sebelum melaksanakan perancangan sistem, perlu diketahui secara jelas


bagaimana sistem manual yang sedang berlangsung saat ini di Apotek Bening
Sehat. Hal itu dilakukan agar dapat lebih mengetahui permasalahannya serta
kendala yang dihadapi. Dari penelitian yang telah penulis lakukan, dapat dilihat
proses perhitungan stok barang yang dilakukan masih memakai pencatatan di
buku untuk proses pengolahan data dan pemberian informasi sehingga
memerlukan waktu yang lama.

Oleh sebab itu sudah seharusnya memakai sistem komputer, sehingga dapat
mempercepat dan memudahkan dalam mengolah data. sistem yang sedang
berjalan di Apotek Bening Sehat ini bertujuan agar mengetahui bagaimana
sistem yang ada di apotek bening sehat saat melakukan pengolahan data
persediaan barang. Adapun aliran sistem persediaan barang yang sedang berjalan
dapat dilihat pada gambar berikut :

Gambar 4. Flowchart Sistem Persediaan Barang di Apotek Bening Sehat


Dari gambar 4 diatas, sistem persediaan barang di Apotek Bening Sehat
pertama pelanggan membeli barang, lalu staff kasir akan mengecek barang yang
ada di gudang. Jika barang yang diminta ada di gudang maka staff gudang segera
mengeluarkan barang sesuai permintaan pelanggan. Apabila barang yang diminta
pelanggan tidak ada, maka pelanggan akan memesan barang ke staff kasir agar
dicatat pemesanannya. Lalu staff kasir segera memberikan informasi pada staf
gudang, dari gudang akan memberikan informasi ke bagian purchasing untuk
memesan barang pada supplier.

Jika barang tidak ada yang sesuai, pihak suplier akan memberikan informasi
sehingga bagian pembelian akan memesan dari supplier yang lain. Apabila
barang yang dipesan tersedia, barang yang dipesan segera diantar ke gudang,
sehingga staff gudang akan menerima barang dan mengecek barang yang dipesan
serta barang yang datang dari suplier. staff gudang akan menerima barang lalu
memasukan ke stok barang. staff gudang akan memberikan data ke bagian
pembelian, sehingga bagian pembelian akan memberi laporan persediaan barang
ke pemilik Apotek dan selesai sistem laporan persediaan barang di Apotek
Bening Sehat.

3.2 Desain Awal Aplikasi


Gambar 5. Form Login

Gambar 5 diatas, merupakan form login agar masuk ke menu utama dengan
menginput nama user dan password. Form Login ini hanya dapat diakses oleh
staf gudang, admin dan pemilik Apotek.

Gambar 6. Perancangan Menu Utama Admin

Pada gambar 6 diatas, dapat dilihat perancangan menu utama admin pada
Apotek Bening Sehat. Dari data terdapat data barang, jenis barang dan satuan
serta dari data transaksi terdapat barang keluar, barang masuk. Sedangkan
laporan terdapat stok barang, barang masuk dan keluar. Akun yang dapat di
akses ada tiga yaitu admin, staf gudang dan pemilik apotek. setiap akses user
pada menu utama berbeda, menu utama diatas hanya dapat diakses oleh admin
saja sedangkan staf gudang tidak bisa melihat manajer, user lainya, serta pemilik
apotek hanya bisa melihat laporan.

3.3 Analisis Hasil Penelitian

Metode pengumpulan data merupakan langkah yang paling strategis dalam


penelitian, karena tujuan utama dari penelitian ini adalah mendaptkan data.
Tanpa mengetahui metode pengumpulan data, maka peneliti tidak akan
mendapatkan data dan informasi yang memenuhi standar data yang ditetapkan.
Metode pengumpulan data yang dilakukan penulis untuk mendapatkan data-data
dan informasi untuk mendukung penyempurnaan hasil dari penilitian ini antara
lain :

observasi merupakan kegiatan pemuatan penelitian terhadap suatu objek.


Apabila dilihat pada proses pelaksanaan pengumpulan data, observasi dibedakan
menjadi pertisipan dan non partisipan. Dalam melakukan observasi, peneliti
memilih hal-hal yang diamati dan mencatat hal-hal yang berkaitan dengan proses
persediaan barang.

wawancara digunakan sebagai teknik pengumpulan data apabila peneliti


ingin melakukan studi pendahuluan untuk menemukan permasalahan yang harus
diteliti. Wawancara dilakukan untuk memperoleh data dari narasumber yaitu
Bapak Wartoyo sebagai Pemilik Apotek Bening Sehat di Perumahan Venezia
Residence Blok. C2A Desa Dayeuh Cileungsi, Bogor. Dalam penelitian ini
peneliti menanyakan beberapa hal yang terkait dengan Persediaan barang pada
Apotek Bening Sehat. Metode ini digunakan untuk memperoleh informasi dan
data pada Apotek Bening Sehat.

Analisis Sistem ialah, menyediakan dan menganalisis kebutuhan perangkat


lunak yang akan dikerjakan. Kebutuhan tersebut dapat dihimbau dari hasil
laporan wawancara, dan observasi. Pada penulisan ini dilakukan dengan
membuat Unified Modeling Languange (UML) Diagram untuk mengetahui data
apa saja yang dibutuhkan. Pada tahap ini seluruh data di urai sesuai dengan
keperluan.

Perancangan Sistem, Pada tahap ini akan dibuat gambaran sistem secara
keseluruhan dan menentukan detail algoritma untuk alur software. Tahap
perancangan membantu untuk menentukan persyaratan perangkat keras, sistem
dan menentukan arsitektur sistem yang akan dibentuk secara keseluruhan.
Menyediakan spesifikasi untuk perancangan secara konseptual dan detail berupa
rancangan semua form layar Web.

Pengujian Sistem, ialah suatu proses pelaksnaan suatu program dengan


bertujuan memperbaiki suatu keslahan yang tidak sesuai dengan tujuan
pengembangan yang secara sistematik membongkar jenis kesalahan dengan
usaha dan waktu yang minimum.

Pada tahap ini penulis akan melakukan pengujian sistem menggunakan


metode Black Box terhadap kegunaan sebuah aplikasi yang dilakukan
sepenuhnya hanya menilai kebutuhan dan spesifikasi softwere, cukup meninjau
input dan output sistem softwere tersebut tanpa pengetahuan tentang internal
programnya, yang bertujuan untuk menemukan kesalahan pada perangkat lunak
yang diuji.

Rancangan Pengujian

Item Uji Jenis Pengujian

Login Black Box

Transaksi barang masuk/ keluar Black Box

Laporan barang masuk/ keluar Black Box

Tabel 1.
Pengujian Login

Hasil pengujian benar

Input Harapan Output Kesimpulan

Masukan user Dapat login dan Menampilkan


name dan masuk ke Menu menu utama,
password sesuai utama sesuai dengan
Valid
dengan yang diharapkan
ketentuan
penggunaan

Hasil pengujian salah

Input Harapan Output Kesimpulan

Masukan user Tidak dapat Tidak dapat


name dan login dan login dan
password acak/ menampilkan menampilkan
tidak sesuai pesan error pesan error, Valid
dengan sesuai dengan
ketentuan yang diharapkan
penggunaan

Tabel 2.

Pengujian transaksi barang masuk/ keluar

Hasil pengujian benar

Input Harapan Output Kesimpulan


Mengetik nama Menampilkan Menampilkan
barang masuk/ data barang data barang
keluar, lalu masuk/ keluar, masuk/ keluar,
memasukan serta sisa stok dan sisa stok
Valid
jumlah barang barang tersebut barang, sesuai
yang masuk/ dengan yang
keluar, lalu diharapkan
simpan

Hasil pengujian salah

Input Harapan Output Kesimpulan

Tidak Menampilan Menampilkan


Memasukan pesan error pesan error,
nama barang, sesuai dengan
dan Jumlah yang diharapkan Valid
barang yang
masuk/ keluar,
lalu simpan

Tabel 3.

Pengujian laporan barang masuk/ keluar

Hasil pengujian benar

Input Harapan Output Kesimpulan

Memasukan Menampilkan Menampilkan


tanggal/ bulan/ laporan barang laporan barang
tahun barang masuk/ keluar masuk/ keluar
yang masuk yang akan yang akan
Valid
atau keluar yang dicetak dicetak, sesuai
ingin dengan yang
ditampilkan dan diharapkan
dicetak

Hasil pengujian salah

Input Harapan Output Kesimpulan


Tidak Menampilan Menampilkan
Memasukan pesan error pesan error,
tanggal/ bulan/ sesuai dengan
tahun barang yang diharapkan
yang masuk
Valid
atau keluar yang
ingin
ditampilkan dan
dicetak

Tabel 4.

BAB IV

ANALISA DAN HASIL PEMBAHASAN

4.1 Tinjauan Umum Perusahaan

Apotek Bening Sehat ini didirikan pada tanggal 18 oktober 2017 yang
beralamat di Perumahan Venezia Residence Blok. C2A Desa Dayeuh Cileungsi,
Bogor. Apotek Bening Sehat adalah Apotek yang menyediakan beragam obat-
obatan, suplemen, vitamin serta barang-barang kesehatan lainya. Apotek Bening
Sehat berkomitmen memberikan pelayanan prima kepada masyarakat dengan
mengutamakan kehati – hatian, ketelitian dalam melayani pelanggan.

Gambar 7. Apotek Bening Sehat

Agar apotek berjalan dengan standarisasi mutu yang baik maka dibutuhkan
arah dan tujuan yang tepat. Maka dari itu Apotek Bening Sehat merumuskan visi
dan misi sebagai berikut yaitu ; Menjadi Apotek yang unggul dalam layanan dan
kinerja, Memberikan pelayanan kefarmasian prima, ramah terhadap masyarakat,
Menyediakan farmasi dan perbekalan kesehatan yang mempunyai izin edar,
bermutu, aman dan terjangkau.
Gambar. 8 Struktur Organisasi Apotek Bening Sehat

Dapat dilihat pada gambar 8 di atas merupakan struktur organisasi di Apotek


Bening Sehat. Meliputi berbagai aspek yang dimana bapak Wartoyo merupakan
pemilik Apotek Bening Sehat yang menerima laporan dari admin dalam
persediaan barang. Lalu untuk laporan keuangan ditangani oleh ibu Risma yang
bertugas mengumpulkan data barang masuk dan keluar yang bekerja sama di
Apotek Bening Sehat kepada pemilik. Selanjutnya staff gudang bernama Rusdi
yang bertugas memproses transaksi barang keluar dan masuk serta stok barang,
sedangkan untuk petugas kasir bernama Latifah yang bekerja sebagai penjaga
Apotek.

4.2 Sistem Persediaan Barang Pada Apotek Bening Sehat Menggunakan Unified
Modeling Language (UML)

Sistem Persediaan barang yang dirancang adalah aplikasi berbasis Web yang
dibuat agar mempermudah para petugas untuk mengakses data persediaan barang
serta memudahkan mengetahui informasi pemasukan barang dan pengeluaran
barang. Perancangan Sistem Persediaan barang ini memakai bahasa pemodelan
UML (Unified Modeling Languange). Mulai dari pembuatan Usecase hingga
State Diagramnya. Analisa kebutuhan menggambarkan apa saja sistem yang
diperlukan oleh petugas gudang, admin serta pemilik apotek dan apa saja yang
bisa dilakukannya dalam penggunaan sistem yang sedang berjalan. Untuk itu
penulis menggambarkan dalam bentuk UML pada Apotek Bening Sehat. Untuk
dapat mengerti maksud dari pembuatan sistem aplikasi yang ada.
Gambar 9. Use Case Diagram

Dapat dilihat gambar use case diagram diatas menerangkan bahwa admin
dapat mengakses menu yaitu login, data, transaksi, laporan, dan akun. Tetapi
akun hanya bisa diakses oleh admin, admin dapat memblokir akun user serta
menggantikannya. Sedangkan untuk pemilik apotek hanya bisa mengakses
laporan yang diberikan oleh admin.
Gambar 10. Activity Diagram Login

Dilihat Pada gambar 10 diatast Activity Diagram Login menerangkan


langkah-langkah sistem login admin. Berawal dari memasukkan username serta
password, Jika admin sudah login dengan benar maka akan langsung masuk ke
dalam halaman utama, tetapi jika username dan password salah akan
menampilkan pesan eror login dan admin harus melakukan login kembali.
Gambar 11. Activity Diagram Data Barang

Pada gambar 11 diatas dapat dilihat Activity Diagram Data Barang diatas,
Awal mulanya admin melakukan login jika login nya menampilkan pesan error
berarti admin salah memasukan username atau password, jika benar akan
menampilkan halaman menu utama dan admin mengklik menu data setelah itu
admin klik barang masuk lalu setelahnya admin menginput data dan simpan data
barangnya.
Gambar 12. Activity Diagram Jenis Barang

Pada gambar 12 Aktivity diagram jenis barang ini menjelaskan admin


memasukan data jenis barang dengan awalan melogin terlebih dahulu setelah
berhasil login sistem akan menampilkan halaman utama setelah itu admin akan
mengklik data dilanjutkan dengan pilih jenis barang yang akan menamnpilkan
data jenis barang tersebut, admin dapat menambahkan, mengubah atau
menghapus jenis barang dan setelah itu disimpan.
Gambar 13. Activity Diagram Satuan Barang

Pada gambar 13 Actvity diagram satuan barang tersebut menjelaskan dengan


cara menginput data satuan barang yaitu admin akan login terlebih dahulu lalu
setelah berhasil login sistem akan memunculkan halaman menu utama dan
selanjutnya admin mengklik data dilanjutkan dengan mengklik satuan barang
yang akan memunculkan data satuan barang, admin dapat menginput serta
menghapus data tersebut setelah itu disimpan.
Gambar 14. Activity Diagram Transaksi Barang Masuk

Pada gambar 14 diatas Activity Diagram Transaksi Barang Masuk pada


admin, pertama- tama admin akan melakukan login, saat login berhasil sistem
akan menampilkan halaman menu utama. Lalu admin memilih menu transaksi
dan dilanjutkan dengan mengklik barang masuk yang akan menampilkan
transaksi barang masuk, admin bisa menginput data barang masuk tersebut
setelah itu disimpan.
Gambar 15. Activity Diagram Transaksi Barang Keluar

Pada gambar 15 diatas, menerangkan bagaimana admin menginput transaksi


barang keluar pertama admin melakukan login, memasukan user serta password,
setelah melakukan sistem login admin berhasil masuk maka admin akan masuk
pada halaman menu utama, saat login mengalami error maka admin akan
melakukan login kembali. Setelah admin berhasil login sistem akan
menampilkan halaman menu utama dan mengklik langsung menu transaksi yang
akan menampilkan dua menu transaksi yakni, barang keluar serta barang masuk.
Admin memilih barang keluar setelah itu admin menginput data dengan cara
mengklik input lalu memilih barang, setelah sukses sistem akan menampilkan
sisa stok barang tersebut, selanjutnya admin menginput jumlah barang keluar
setelah itu disimpan.
Gambar 16. Activity Diagram Input Data User

Pada gambar 16 diatas, menerangkan bagaimana cara admin menginput data


user. Pertama admin melakukan login setelah berhasil sistem akan menampilkan
halaman menu utama jika login mengalami error maka admin akan melakukan
login kembali. Setelah berhasil login admin akan masuk ke halaman menu utama
setelah itu admin langsung memilih menu akun yang akan menampilkan semua
data user termasuk user admin sendiri setelah itu admin mengklik icon tambah
untuk menambahkan data user didalam menu akun. Selain menginputt data user,
admin dapat mengubah dan mengblokir data user yang ada pada menu akun
tersebut.
Gambar 17. Sequence Diagram Login

Pada gambar 17 diatas, menerangkan langkah-langkah sistem untuk login


dari admin pertama, admin menginput username serta password ketika berhasil
masuk, sistem akan menampilkan halaman menu utama tapi jika salah
memasukan username dan password login, sistem akan menampilkan pesan
error maka admin akan mengulang login kembali.
Gambar 18. Sequence Diagram Laporan Barang Masuk

Dilihat dari gambar 18 Sequence diagram diatas, menjelaskan Laporan


Barang Masuk bagaimana staf gudang mencetak laporan barang masuk, pertama
staff melakukan login ketika login berhasil sistem akan menampilkan halaman
menu utama. Lalu staf gudang akan langsung memilih menu laporan yang
didalamnya terdapat laporan stok barang, laporan barang keluar, laporan barang
masuk. Setelah itu staf memilih barang masuk dan menginput
tanggal/bulan/tahun berapa yang ingin ditampilkan, sesudah menginput staf
melakukan cetak barang masuk yang akan menampilkan laporan barang masuk
yang sesuai.
Gambar 19. Sequence Diagram Barang Keluar

Pada gambar 19 diatas, menerangkan bagaimana staff gudang mencetak


laporan barang keluar. Sedikit sama dengan sistem laporan barang masuk,
disistem laporan barang keluar, pertama dimulai dari staf gudang melakukan
login, setelah login berhasil sistem akan memunculkan halaman menu utama.
Lalu setelah masuk kedalam menu utama staf akan memilih menu laporan yang
didalamnya berisi laporan stok barang, laporan barang keluar, laporan barang
masuk. setelah itu staf akan memilih laporan barang keluar serta menginput
tanggal/bulan/tahun yang ingin dicetak nantinya, selanjutnya staf mengklik icon
cetak yang sistem akan menampilkan laporan barang keluar yang diinginkan staf.
Gambar 20. Sequence Diagram Laporan Stok Barang

Dilihat dari gambar 20 diatas, menerangkan bagaimana staf gudang dalam


mencetak laporan stok barang, pertama staff melakukan login, bila login berhasil
maka sistem akan menampilkan halaman utama. Setelah staf memasuki menu
utama staf akan mengklik menu laporan yang didalamnya terdapat beberapa
yaitu laporan stok barang, laporan barang keluar, laporan barang masuk. Staf
akan mengklik laporan stok barang serta sistem akan memunculkan laporan stok
barang, setelah itu staf akan memilih icon cetak untuk mencetak laporan stok
barang tersebut.
Gambar 21. Collaboration diagram Apotek Bening Sehat

Pada gambar 21 diatas, menerangkan bagaimana staf gudang memakai


website yang telah terjadi. Dimulai dari staf gudang klik website yang sudah
diberikan, setelah itu staf melakukan login dengan menginput username serta
password yang sudah dibuat oleh admin, lalu ketika sudah login staff akan
masuk kedalam menu utama yang didalamnya terdapat data transaksi, laporan
yang dapat dilihat, diinput dan dicetak, serta akun yang berisii akun user yang
bisa mengakses website tersebut. Akun ini hanya berada pada admin saja. ketika
sudah selesai staf bisa logout dari website Apotek Bening Sehat.
Gambar 22. Class Diagram

Dari gambar 22 diatas, Class Diagram persediaan barang yang diusulkan,


dimana antar classnya saling berhubungan satu dengan lain. Tiap-tiap class
mempunyai atribut yang berbeda. Setiap class mempunyai satu primary key yang
diterapkan sebagai acuan agar menentukan relasi dari class-class yang ada.
4.3 Tampilan Sistem Aplikasi Apotek Bening Sehat

Gambar 23. Tampilan Halaman Login Aplikasi Persedian Apotek

Pada gambar 23 diatas, menerangkan cara user melakukan proses login,


mulai dari user memasukan username dan password untuk proses memasuki
halaman selanjutnya. Jika user salah menginput password atau username maka
sistem akan menampilkan pesan erorr pada menu login tersebut. Namun bila
username dan password berhasil login, sistem akan menampilkan halaman menu
utama.
Gambar 24. Tampilan Halaman Menu Beranda Admin

Pada gambar 24 diatas, halaman menu utama beranda Admin ini, ditampilan
beberapa akses yang bisa dilihat diantaranya, ada data barang, barang masuk,
barang keluar dan user . Setelah itu ada beberapa main menu yang bisa diakses
oleh admin yaitu data master terdiri dari beranda, data master, transaksi, laporan,
manajemen user dan ubah password.
Gambar 25. Tampilan Halaman Menu Beranda Petugas Gudang

Pada gambar 25 diatas, menampilan menu beranda petugas gudang,


menjelaskan menu utama pada petugas gudang terdapat data barang, barang
masuk dan barang keluar, sedangkan yang ada disamping terdapat, main menu
beranda berisi data master, transaksi, laporan dan ubah password.
Gambar 26. Tampilan Halaman Menu Beranda Pemilik Apotek

Pada gambar 26 diatas, menerangkan tampilan menu beranda pemilik


Apotek, pada main menu berisi beranda, laporan ubah password lalu disamping
main menu terdapat beranda yang menampilkan data barang, barang masuk dan
barang keluar. Pemilik apotek hanya dapat mencetak laporan stok barang,
laporan barang masuk dan laporan barang keluar.
Gambar 27. Tampilan Halaman Profil User

Pada gambar 27 diatas, menjelaskan tampilan halaman profil user yang


terdapat username, email, telepon, hak ases serta status. Selain itu user juga
dapat mengubah atau menggati profil user sendiri, tetapi untuk hak akses dan
status tidak dapat diubah.
Gambar 28. Tampilan Halaman Data Barang

Pada gambar 28 diatas, tampilan halaman data Barang ini menerangkan


tampilan data barang admin yang berisi no id barang, nama barang, jenis barang,
stok dan satuan barang. Data persediaan barang yang ada pada gambar ini dapat
diubah, ditambah, ataupun dihapus.
Gambar 29. Tampilan Halaman Data Jenis Barang

Pada gambar 29 diatas, menerangkan tampilan halaman jenis barang yang


ada pada menu data. Pada data jenis barang ini bisa ditambah dengan ngeklik
tulisan tambah di kanan atas, selain bisa menambah jenis barang ini dapat di
ubah, diganti, serta dihapus.
Gambar 30. Tampilan Halaman Satuan Barang

Pada gambar 30 diatas, menerangkan tampilan halaman data satuan barang,


yang terdapat pada menu data master, data satuan barang ini akan masuk
kedalam data barang.

Gambar 31. Tampilan Halaman Transaksi Data Barang Masuk

Pada gambar 31, diatas menerangkan tampilan halaman transaksi data


barang masuk pada staf yang didalamnya terdapat no id transaksi, tanggal, id
barang, nama barang, jumlah masuk.
Gambar 32. Tampilan Halman Transaksi Barang Keluar

Pada gambar 32 diatas, menerangkan transaksi dihalaman data barang


keluar yang isinya terdapat no id transaksi, tanggal, id barang, nama barang,
jumlah keluar. data transaksi ini hanya bisa diakses oleh admin dan staf gudang.

Gambar 33. Tampilan Halaman Laporan Data Stok Barang

Pada gambar 33 diatas, menerangkan tampilan halaman laporan stok barang


pada admin yang berisikan no id barang, nama barang, jenis barang, stok dan
satuan barang.
Gambar 34. Tampilan Halaman Laporan Data Barang Masuk

Pada gambar 34 diatas, menerangkan tampilan halaman laporan data barang


masuk yang berisi tanggal. Petugas gudang, admin atau pemilik apotek dapat
mengakses laporan dengan cara mengklik tanggal berapa yang ingin dicetak.

Gambar 35. Tampilan Halaman Laporan Data Barang Keluar

Pada gambar 35 diatas, menerangkan tampilan halaman laporan barang


keluar yaitu dengan cara mengklik tanggal berapa sampai dengan, tanggal
berapa yang mesti dicetak. Setelah itu pilih cetak lalu sistem akan menampilkan
data yang dibutuhkan.
Gambar 36. Tampilan Halaman Manajemen Akun User

Pada gambar 36 diatas, menerangkan tampilan halaman manajemen akun


user, halaman ini hanya dapat dimasuki oleh admin, admin dapat mengubah,
menambah serta memblokir user menjadi tidak aktif, pada bagan samping kanan
terdapat ada 2 tombol yang warna kuning untuk memblokir akun user agar tidak
dapat membuka website tersebut, dan tombol biru untuk mengubah atau
mengganti akun tersebut.

4.4 Analisis Hasil Pengujian

Berdasarkan hasil pembahasan diatas dapat disimpulkan bahwa sistem


persediaan barang yang dikembangkan sesuai dengan kebutuhan fungsional yang
diharapkan, dan tidak terdapat kesalahan. Sistem dirancang agar mempermudah
dan membantu staf gudang serta admin pada saat proses pendataan barang keluar
maupun masuk, pengecekan stok barang, serta update data barang yang berbasis
sistem komputer sehingga dapat mencegah terjadinya keterlambatan dalam
pengecekan data barang atau ketidak sesuaian data barang. aplikasi ini juga
dirancang untuk membantu staf gudang dan admin dalam menyajikan laporan
kepada pemilik Apotek.
BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Sistem Aplikasi Persediaan Barang pada Apotek Bening Sehat adalah sistem
yang dirancang agar mempermudah dan membantu staf gudang dan admin pada
saat proses pendataan barang keluar maupun masuk, pengecekan stok barang seta
update data barang yang berbasis sistem komputer sehingga dapat mencegah
terjadinya keterlambatan dalam pengecekan data barang atau ketidak sesuaian
data barang. aplikasi ini juga dirancang untuk membantu staf gudang dan admin
dalam menyajikan laporan kepada pemilik Apotek. Setelah melakukan
penelitian, perancangan program, pengujian program hingga perbandingan hasil
dari program pengerjaan skripsi ini, penulis mendapatkan kesimpulan akhir
yaitu, Sistem aplikasi yang memudahkan staf gudang, admin dan pemilik apotek
dalam mengakses data persediaan barang serta menyajikan informasi data barang
yang membantu kinerja Apotek Bening Sehat menjadi lebih efektif, efisien dan
tepat waktu.

Setelah tersedianya sistem aplikasi Persediaan barang di Apotek Bening


Sehat bisa mengembangkan usaha Apotek menjadi lebih baik serta
mempermudah petugas menggunakannya. Didalam aplikasi persediaan barang
pada Apotek Bening Sehat sendiri dimulai dengan login, Setelah admin atau staff
gudang memasukan username dan password akan menampilkan menu halaman
utama. Setelah memasuki halaman utama terdapat menu-menu didalamnya yaitu,
menu yang berisi tentang data barang, jenis barang dan satuan barang. menu
kedua adalah menu transaksi, menu disini terdapat transaksi barang masuk dan
barang keluar. menu selanjutnya terdapat menu laporan yang berisi laporan stok
barang, laporan barang keluar serta barang masuk, cara menampilkannya dengan
mengisi tanggal yang ingin ditampilkan dan pilih cetak untuk melihatnya. Menu
ke empat adalah menu daftar akun yang hanya berada di akun admin, daftar akun
tersebut besisi akun-akun yang mengakses sistem aplikasi persediaan barang
Apotek Bening Sehat. Admin bisa mengubah akun tersebut serta memblokir
akun.

5.2 Saran

Upaya pengembangan sistem lebih lanjut maka terdapat saran-saran yang


penulis cantumkan yaitu, sistem aplikasi ini diharapkan kedepannya program
persediaan barang ini tidak hanya meliputi stok, tetapi juga pembelian, serta
penjualan barang dan juga kedepannya program sistem informasi persediaan
barang ini tidak berbasis website melainkan dengan menggunakan android agar
memudahkan untuk mengaksesnya dan lebih baik lagi.

Lalu dengan dikembangkannya melalui sistem aplikasi ini memudahkan


para petugas serta pemilik apotek dalam mengakses data persediaan sehingga
tidak lagi menggunakan buku, serta mampu memperbaiki sistem persediaan
barang pada Apotek Bening Sehat. Sistem aplikasi ini juga diharapkan mampu
membantu Apotek Bening Sehat untuk lebih menjadi efektif dan efesien.
DAFTAR PUSTAKA

http://rankingpertama.blogspot.com/2017/04/makalah-inventory_93.html

https://supplychainindonesia.com/pengelolaan-persediaan-obat-di-apotek/

http://nurimonica.blogspot.com/2015/06/v-behaviorurldefaultvmlo.html

https://www.sekawanmedia.co.id/pengertian-website/

https://qwords.com/blog/pengertian-xampp/

https://www.sekawanmedia.co.id/pengertian-mysql/

https://qwords.com/blog/ddl-adalah/
LISTING PROGRAM

<?php

/* panggil file database.php untuk koneksi ke database */

require_once "config/database.php";

/* panggil file fungsi tambahan */

require_once "config/fungsi_tanggal.php";

// fungsi untuk pengecekan status login user

// jika user belum login, alihkan ke halaman login dan tampilkan message = 1

if (empty($_SESSION['username']) && empty($_SESSION['password'])){

echo "<meta http-equiv='refresh' content='0; url=index.php?alert=1'>";

// jika user sudah login, maka jalankan perintah untuk pemanggilan file halaman
konten

else {

// jika halaman konten yang dipilih home, panggil file view home

if ($_GET['module'] == 'home') {

include "modules/beranda/view.php";

// jika halaman konten yang dipilih barang, panggil file view barang

elseif ($_GET['module'] == 'barang') {

include "modules/barang/view.php";

// jika halaman konten yang dipilih form barang, panggil file form barang
elseif ($_GET['module'] == 'form_barang') {

include "modules/barang/form.php";

// -----------------------------------------------------------------------------

// jika halaman konten yang dipilih jenis, panggil file view jenis

elseif ($_GET['module'] == 'jenis') {

include "modules/jenis/view.php";

// jika halaman konten yang dipilih form jenis, panggil file form jenis

elseif ($_GET['module'] == 'form_jenis') {

include "modules/jenis/form.php";

// -----------------------------------------------------------------------------

// jika halaman konten yang dipilih satuan, panggil file view satuan

elseif ($_GET['module'] == 'satuan') {

include "modules/satuan/view.php";

// jika halaman konten yang dipilih form satuan, panggil file form satuan

elseif ($_GET['module'] == 'form_satuan') {

include "modules/satuan/form.php";

// -----------------------------------------------------------------------------

// jika halaman konten yang dipilih barang masuk, panggil file view barang masuk
elseif ($_GET['module'] == 'barang_masuk') {

include "modules/barang-masuk/view.php";

// jika halaman konten yang dipilih form barang masuk, panggil file form barang
masuk

elseif ($_GET['module'] == 'form_barang_masuk') {

include "modules/barang-masuk/form.php";

// -----------------------------------------------------------------------------

// jika halaman konten yang dipilih barang keluar, panggil file view barang keluar

elseif ($_GET['module'] == 'barang_keluar') {

include "modules/barang-keluar/view.php";

// jika halaman konten yang dipilih form barang keluar, panggil file form barang
keluar

elseif ($_GET['module'] == 'form_barang_keluar') {

include "modules/barang-keluar/form.php";

// -----------------------------------------------------------------------------

// jika halaman konten yang dipilih laporan stok, panggil file view laporan stok

elseif ($_GET['module'] == 'lap_stok') {

include "modules/lap-stok/view.php";

// -----------------------------------------------------------------------------

// jika halaman konten yang dipilih laporan barang masuk, panggil file view
laporan barang masuk
elseif ($_GET['module'] == 'lap_barang_masuk') {

include "modules/lap-barang-masuk/view.php";

// -----------------------------------------------------------------------------

// jika halaman konten yang dipilih laporan barang keluar, panggil file view
laporan barang keluar

elseif ($_GET['module'] == 'lap_barang_keluar') {

include "modules/lap-barang-keluar/view.php";

// -----------------------------------------------------------------------------

// jika halaman konten yang dipilih grafik barang masuk, panggil file view grafik
barang masuk

elseif ($_GET['module'] == 'grafik_barang_masuk') {

include "modules/grafik-barang-masuk/view.php";

// -----------------------------------------------------------------------------

// jika halaman konten yang dipilih grafik barang keluar, panggil file view grafik
barang keluar

elseif ($_GET['module'] == 'grafik_barang_keluar') {

include "modules/grafik-barang-keluar/view.php";

// -----------------------------------------------------------------------------

// jika halaman konten yang dipilih user, panggil file view user

elseif ($_GET['module'] == 'user') {

include "modules/user/view.php";

}
// jika halaman konten yang dipilih form user, panggil file form user

elseif ($_GET['module'] == 'form_user') {

include "modules/user/form.php";

// -----------------------------------------------------------------------------

// jika halaman konten yang dipilih profil, panggil file view profil

elseif ($_GET['module'] == 'profil') {

include "modules/profil/view.php";

// jika halaman konten yang dipilih form profil, panggil file form profil

elseif ($_GET['module'] == 'form_profil') {

include "modules/profil/form.php";

// -----------------------------------------------------------------------------

// jika halaman konten yang dipilih password, panggil file view password

elseif ($_GET['module'] == 'password') {

include "modules/password/view.php";

?>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Login | Aplikasi Persediaan</title>
<meta content='width=device-width, initial-scale=1, maximum-scale=1, user-
scalable=no' name='viewport'>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="description" content="Aplikasi Persediaan Barang dengan PHP7
dan MySQLi">
<meta name="author" content="Indra Styawantoro" />

<!-- favicon -->


<link rel="shortcut icon" href="assets/img/favicon.png" />

<!-- Bootstrap 3.3.2 -->


<link href="assets/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
<!-- Font Awesome Icons -->
<link href="assets/plugins/font-awesome-4.6.3/css/font-awesome.min.css"
rel="stylesheet" type="text/css" />
<!-- Theme style -->
<link href="assets/css/AdminLTE.min.css" rel="stylesheet" type="text/css" />
<!-- iCheck -->
<link href="assets/plugins/iCheck/square/blue.css" rel="stylesheet"
type="text/css" />
<!-- Custom CSS -->
<link href="assets/css/style.css" rel="stylesheet" type="text/css" />

</head>
<body class="login-page bg-login">
<div class="login-box">
<div style="color:#3c8dbc" class="login-logo">
Aplikasi<b>Persediaan</b>
</div><!-- /.login-logo -->
<?php
// fungsi untuk menampilkan pesan
// jika alert = "" (kosong)
// tampilkan pesan "" (kosong)
if (empty($_GET['alert'])) {
echo "";
}
// jika alert = 1
// tampilkan pesan Gagal "Username atau Password salah, cek kembali
Username dan Password Anda"
elseif ($_GET['alert'] == 1) {
echo "<div class='alert alert-danger alert-dismissable'>
<button type='button' class='close' data-dismiss='alert' aria-
hidden='true'>&times;</button>
<h4> <i class='icon fa fa-times-circle'></i> Gagal Login!</h4>
Username atau Password salah, cek kembali Username dan Password
Anda.
</div>";
}
// jika alert = 2
// tampilkan pesan Sukses "Anda telah berhasil logout"
elseif ($_GET['alert'] == 2) {
echo "<div class='alert alert-success alert-dismissable'>
<button type='button' class='close' data-dismiss='alert' aria-
hidden='true'>&times;</button>
<h4> <i class='icon fa fa-check-circle'></i> Sukses!</h4>
Anda telah berhasil logout.
</div>";
}
?>

<div class="login-box-body">
<p class="login-box-msg"><i class="fa fa-user icon-title"></i> Silahkan
Login</p>
<br/>
<form action="login-check.php" method="POST">
<div class="form-group has-feedback">
<input type="text" class="form-control" name="username"
placeholder="Username" autocomplete="off" required />
<span class="glyphicon glyphicon-user form-control-feedback"></span>
</div>

<div class="form-group has-feedback">


<input type="password" class="form-control" name="password"
placeholder="Password" required />
<span class="glyphicon glyphicon-lock form-control-feedback"></span>
</div>
<br/>
<div class="row">
<div class="col-xs-12">
<input type="submit" class="btn btn-primary btn-lg btn-block btn-flat"
name="login" value="Login" />
</div><!-- /.col -->
</div>
</form>

</div><!-- /.login-box-body -->


</div><!-- /.login-box -->

<!-- jQuery 2.1.3 -->


<script src="assets/plugins/jQuery/jQuery-2.1.3.min.js"></script>
<!-- Bootstrap 3.3.2 JS -->
<script src="assets/js/bootstrap.min.js" type="text/javascript"></script>

</body>
</html>
<?php
// panggil file untuk koneksi ke database
require_once "config/database.php";

// ambil data hasil submit dari form


$username = mysqli_real_escape_string($mysqli,
stripslashes(strip_tags(htmlspecialchars(trim($_POST['username'])))));
$password = md5(mysqli_real_escape_string($mysqli,
stripslashes(strip_tags(htmlspecialchars(trim($_POST['password']))))));

// pastikan username dan password adalah berupa huruf atau angka.


if (!ctype_alnum($username) OR !ctype_alnum($password)) {
header("Location: index.php?alert=1");
}
else {
// ambil data dari tabel user untuk pengecekan berdasarkan inputan username dan
passrword
$query = mysqli_query($mysqli, "SELECT * FROM is_users WHERE
username='$username' AND password='$password' AND status='aktif'")
or die('Ada kesalahan
pada query user: '.mysqli_error($mysqli));
$rows = mysqli_num_rows($query);

// jika data ada, jalankan perintah untuk membuat session


if ($rows > 0) {
$data = mysqli_fetch_assoc($query);

session_start();
$_SESSION['id_user'] = $data['id_user'];
$_SESSION['username'] = $data['username'];
$_SESSION['password'] = $data['password'];
$_SESSION['nama_user'] = $data['nama_user'];
$_SESSION['hak_akses'] = $data['hak_akses'];

// lalu alihkan ke halaman user


header("Location: main.php?module=home");
}

// jika data tidak ada, alihkan ke halaman login dan tampilkan pesan = 1
else {
header("Location: index.php?alert=1");
}
}
?>
<?php
session_start();
// hapus session
session_destroy();

// alihkan ke halaman login (index.php) dan berikan alert = 2


header('Location: index.php?alert=2');
?>
<?php
session_start();
?>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Admin Panel | Aplikasi Persediaan Barang dengan PHP7 dan
MySQLi</title>
<meta content='width=device-width, initial-scale=1, maximum-scale=1, user-
scalable=no' name='viewport'>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="description" content="Aplikasi Aplikasi Persediaan Barang
dengan PHP7 dan MySQLi">
<meta name="author" content="Indra Styawantoro" />

<!-- favicon -->


<link rel="shortcut icon" href="assets/img/favicon.png" />

<!-- Bootstrap 3.3.2 -->


<link href="assets/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
<!-- FontAwesome 4.3.0 -->
<link href="assets/plugins/font-awesome-4.6.3/css/font-awesome.min.css"
rel="stylesheet" type="text/css" />
<!-- DATA TABLES -->
<link href="assets/plugins/datatables/dataTables.bootstrap.css" rel="stylesheet"
type="text/css" />
<!-- Datepicker -->
<link href="assets/plugins/datepicker/datepicker.min.css" rel="stylesheet"
type="text/css" />
<!-- Chosen Select -->
<link rel="stylesheet" type="text/css"
href="assets/plugins/chosen/css/chosen.min.css" />
<!-- Theme style -->
<link href="assets/css/AdminLTE.min.css" rel="stylesheet" type="text/css" />
<!-- AdminLTE Skins. Choose a skin from the css/skins folder instead of
downloading all of them to reduce the load. -->
<link href="assets/css/skins/skin-blue.min.css" rel="stylesheet"
type="text/css" />
<!-- Date Picker -->
<link href="assets/plugins/datepicker/datepicker3.css" rel="stylesheet"
type="text/css" />
<!-- Custom CSS -->
<link href="assets/css/style.css" rel="stylesheet" type="text/css" />

<!-- Fungsi untuk membatasi karakter yang diinputkan -->


<script language="javascript">
function getkey(e)
{
if (window.event)
return window.event.keyCode;
else if (e)
return e.which;
else
return null;
}

function goodchars(e, goods, field)


{
var key, keychar;
key = getkey(e);
if (key == null) return true;

keychar = String.fromCharCode(key);
keychar = keychar.toLowerCase();
goods = goods.toLowerCase();

// check goodkeys
if (goods.indexOf(keychar) != -1)
return true;
// control keys
if ( key==null || key==0 || key==8 || key==9 || key==27 )
return true;

if (key == 13) {
var i;
for (i = 0; i < field.form.elements.length; i++)
if (field == field.form.elements[i])
break;
i = (i + 1) % field.form.elements.length;
field.form.elements[i].focus();
return false;
};
// else return false
return false;
}
</script>

</head>
<body class="skin-blue fixed">
<div class="wrapper">

<header class="main-header">
<!-- Logo -->
<a href="?module=home" class="logo">Aplikasi Persediaan</a>
<!-- Header Navbar: style can be found in header.less -->
<nav class="navbar navbar-static-top" role="navigation">
<!-- Sidebar toggle button-->
<a href="#" class="sidebar-toggle" data-toggle="offcanvas" role="button">
<span class="sr-only">Toggle navigation</span>
</a>
<div class="navbar-custom-menu">
<ul class="nav navbar-nav">

<!-- panggil file "top-menu.php" untuk menampilkan menu -->


<?php include "top-menu.php" ?>

</ul>
</div>
</nav>
</header>
<!-- Left side column. contains the logo and sidebar -->
<aside class="main-sidebar">
<!-- sidebar: style can be found in sidebar.less -->
<section class="sidebar">
<!-- sidebar menu: : style can be found in sidebar.less -->

<!-- panggil file "sidebar-menu.php" untuk menampilkan menu -->


<?php include "sidebar-menu.php" ?>

</section>
<!-- /.sidebar -->
</aside>

<!-- Content Wrapper. Contains page content -->


<div class="content-wrapper">

<!-- panggil file "content-menu.php" untuk menampilkan content -->


<?php include "content.php" ?>
<!-- Modal Logout -->
<div class="modal fade" id="logout">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-
label="Close"><span aria-hidden="true">&times;</span></button>
<h4 class="modal-title"><i class="fa fa-sign-out"> Logout</i></h4>
</div>
<div class="modal-body">
<p>Apakah Anda yakin ingin logout? </p>
</div>
<div class="modal-footer">
<a type="button" class="btn btn-danger" href="logout.php">Ya,
Logout</a>
<button type="button" class="btn btn-default" data-
dismiss="modal">Kembali</button>
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div><!-- /.modal -->

</div><!-- /.content-wrapper -->

<footer class="main-footer">
<strong>Copyright &copy; 2020 - <a
href="">www.project.com</a>.</strong>
</footer>
</div><!-- ./wrapper -->

<!-- jQuery 2.1.3 -->


<script src="assets/plugins/jQuery/jQuery-2.1.3.min.js"></script>
<!-- Bootstrap 3.3.2 JS -->
<script src="assets/js/bootstrap.min.js" type="text/javascript"></script>
<!-- datepicker -->
<script src="assets/plugins/datepicker/bootstrap-datepicker.js"
type="text/javascript"></script>
<!-- chosen select -->
<script src="assets/plugins/chosen/js/chosen.jquery.min.js"></script>
<!-- DATA TABES SCRIPT -->
<script src="assets/plugins/datatables/jquery.dataTables.js"
type="text/javascript"></script>
<script src="assets/plugins/datatables/dataTables.bootstrap.js"
type="text/javascript"></script>
<!-- Datepicker -->
<script src="assets/plugins/datepicker/bootstrap-datepicker.min.js"
type="text/javascript"></script>
<!-- Slimscroll -->
<script src="assets/plugins/slimScroll/jquery.slimscroll.min.js"
type="text/javascript"></script>
<!-- FastClick -->
<script src='assets/plugins/fastclick/fastclick.min.js'></script>
<!-- AdminLTE App -->
<script src="assets/js/app.min.js" type="text/javascript"></script>

<!-- page script -->


<script type="text/javascript">
$(function () {
// datepicker plugin
$('.date-picker').datepicker({
autoclose: true,
todayHighlight: true
});

// chosen select
$('.chosen-select').chosen({allow_single_deselect:true});
//resize the chosen on window resize

$(window)
.off('resize.chosen')
.on('resize.chosen', function() {
$('.chosen-select').each(function() {
var $this = $(this);
$this.next().css({'width': $this.parent().width()});
})
}).trigger('resize.chosen');
//resize chosen on sidebar collapse/expand
$(document).on('settings.ace.chosen', function(e, event_name, event_val) {
if(event_name != 'sidebar_collapsed') return;
$('.chosen-select').each(function() {
var $this = $(this);
$this.next().css({'width': $this.parent().width()});
})
});

$('#chosen-multiple-style .btn').on('click', function(e){


var target = $(this).find('input[type=radio]');
var which = parseInt(target.val());
if(which == 2) $('#form-field-select-4').addClass('tag-input-style');
else $('#form-field-select-4').removeClass('tag-input-style');
});
// DataTables
$("#dataTables1").dataTable();
$('#dataTables2').dataTable({
"bPaginate": true,
"bLengthChange": false,
"bFilter": false,
"bSort": true,
"bInfo": true,
"bAutoWidth": false
});
});
</script>

</body>
</html>
<?php
// fungsi pengecekan level untuk menampilkan menu sesuai dengan hak akses
// jika hak akses = Super Admin, tampilkan menu
if ($_SESSION['hak_akses']=='Super Admin') { ?>
<!-- sidebar menu start -->
<ul class="sidebar-menu">
<li class="header">MAIN MENU</li>

<?php
// fungsi untuk pengecekan menu aktif
// jika menu home dipilih, menu home aktif
if ($_GET["module"]=="home") { ?>
<li class="active">
<a href="?module=home"><i class="fa fa-home"></i> Beranda
</a>
</li>
<?php
}
// jika tidak, menu home tidak aktif
else { ?>
<li>
<a href="?module=home"><i class="fa fa-home"></i> Beranda
</a>
</li>
<?php
}

// jika menu Data Barang dipilih, menu Data Barang aktif


if ($_GET["module"]=="barang" || $_GET["module"]=="form_barang") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-folder"></i> <span>Data Master</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li class="active"><a href="?module=barang"><i class="fa fa-
circle-o"></i> Data Barang</a></li>
<li><a href="?module=jenis"><i class="fa fa-circle-o"></i> Jenis
Barang</a></li>
<li><a href="?module=satuan"><i class="fa fa-circle-o"></i>
Satuan</a></li>
</ul>
</li>
<?php
}
// jika menu Jenis Barang dipilih, menu Jenis Barang aktif
elseif ($_GET["module"]=="jenis" || $_GET["module"]=="form_jenis") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-folder"></i> <span>Data Master</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=barang"><i class="fa fa-circle-o"></i>
Data Barang</a></li>
<li class="active"><a href="?module=jenis"><i class="fa fa-
circle-o"></i> Jenis Barang</a></li>
<li><a href="?module=satuan"><i class="fa fa-circle-o"></i>
Satuan</a></li>
</ul>
</li>
<?php
}
// jika menu Satuan dipilih, menu Satuan aktif
elseif ($_GET["module"]=="satuan" || $_GET["module"]=="form_satuan") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-folder"></i> <span>Data Master</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=barang"><i class="fa fa-circle-o"></i>
Data Barang</a></li>
<li><a href="?module=jenis"><i class="fa fa-circle-o"></i> Jenis
Barang</a></li>
<li class="active"><a href="?module=satuan"><i class="fa fa-
circle-o"></i> Satuan</a></li>
</ul>
</li>
<?php
}
// jika menu Data Master tidak dipilih, menu Data Master tidak aktif
else { ?>
<li class="treeview">
<a href="javascript:void(0);">
<i class="fa fa-folder"></i> <span>Data Master</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=barang"><i class="fa fa-circle-o"></i>
Data Barang</a></li>
<li><a href="?module=jenis"><i class="fa fa-circle-o"></i> Jenis
Barang</a></li>
<li><a href="?module=satuan"><i class="fa fa-circle-o"></i>
Satuan</a></li>
</ul>
</li>
<?php
}

// jika menu Barang Masuk dipilih, menu Barang Masuk aktif


if ($_GET["module"]=="barang_masuk" ||
$_GET["module"]=="form_barang_masuk") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-clone"></i> <span>Transaksi</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li class="active"><a href="?module=barang_masuk"><i
class="fa fa-circle-o"></i> Barang Masuk</a></li>
<li><a href="?module=barang_keluar"><i class="fa fa-circle-
o"></i> Barang Keluar</a></li>
</ul>
</li>
<?php
}
// jika menu Barang Keluar dipilih, menu Barang Keluar aktif
elseif ($_GET["module"]=="barang_keluar" ||
$_GET["module"]=="form_barang_keluar") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-clone"></i> <span>Transaksi</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=barang_masuk"><i class="fa fa-circle-
o"></i> Barang Masuk</a></li>
<li class="active"><a href="?module=barang_keluar"><i class="fa
fa-circle-o"></i> Barang Keluar</a></li>
</ul>
</li>
<?php
}
// jika menu Transaksi tidak dipilih, menu Transaksi tidak aktif
else { ?>
<li class="treeview">
<a href="javascript:void(0);">
<i class="fa fa-clone"></i> <span>Transaksi</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=barang_masuk"><i class="fa fa-circle-
o"></i> Barang Masuk</a></li>
<li><a href="?module=barang_keluar"><i class="fa fa-circle-
o"></i> Barang Keluar</a></li>
</ul>
</li>
<?php
}

// jika menu Laporan Stok Barang dipilih, menu Laporan Stok Barang aktif
if ($_GET["module"]=="lap_stok") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-file-text"></i> <span>Laporan</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li class="active"><a href="?module=lap_stok"><i class="fa fa-
circle-o"></i> Stok Barang</a></li>
<li><a href="?module=lap_barang_masuk"><i class="fa fa-circle-
o"></i> Barang Masuk</a></li>
<li><a href="?module=lap_barang_keluar"><i class="fa fa-circle-
o"></i> Barang Keluar</a></li>
</ul>
</li>
<?php
}
// jika menu Laporan Barang Masuk dipilih, menu Laporan Barang Masuk aktif
elseif ($_GET["module"]=="lap_barang_masuk") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-file-text"></i> <span>Laporan</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=lap_stok"><i class="fa fa-circle-o"></i>
Stok Barang</a></li>
<li class="active"><a href="?module=lap_barang_masuk"><i
class="fa fa-circle-o"></i> Barang Masuk</a></li>
<li><a href="?module=lap_barang_keluar"><i class="fa fa-circle-
o"></i> Barang Keluar</a></li>
</ul>
</li>
<?php
}
// jika menu Laporan Barang Keluar dipilih, menu Laporan Barang Keluar aktif
elseif ($_GET["module"]=="lap_barang_keluar") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-file-text"></i> <span>Laporan</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=lap_stok"><i class="fa fa-circle-o"></i>
Stok Barang</a></li>
<li><a href="?module=lap_barang_masuk"><i class="fa fa-circle-
o"></i> Barang Masuk</a></li>
<li class="active"><a href="?module=lap_barang_keluar"><i
class="fa fa-circle-o"></i> Barang Keluar</a></li>
</ul>
</li>
<?php
}
// jika menu Laporan tidak dipilih, menu Laporan tidak aktif
else { ?>
<li class="treeview">
<a href="javascript:void(0);">
<i class="fa fa-file-text"></i> <span>Laporan</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=lap_stok"><i class="fa fa-circle-o"></i>
Stok Barang</a></li>
<li><a href="?module=lap_barang_masuk"><i class="fa fa-circle-
o"></i> Barang Masuk</a></li>
<li><a href="?module=lap_barang_keluar"><i class="fa fa-circle-
o"></i> Barang Keluar</a></li>
</ul>
</li>
<?php
}

// jika menu user dipilih, menu user aktif


if ($_GET["module"]=="user" || $_GET["module"]=="form_user") { ?>
<li class="active">
<a href="?module=user"><i class="fa fa-user"></i> Manajemen
User</a>
</li>
<?php
}
// jika tidak, menu user tidak aktif
else { ?>
<li>
<a href="?module=user"><i class="fa fa-user"></i> Manajemen
User</a>
</li>
<?php
}

// jika menu ubah password dipilih, menu ubah password aktif


if ($_GET["module"]=="password") { ?>
<li class="active">
<a href="?module=password"><i class="fa fa-lock"></i> Ubah
Password</a>
</li>
<?php
}
// jika tidak, menu ubah password tidak aktif
else { ?>
<li>
<a href="?module=password"><i class="fa fa-lock"></i> Ubah
Password</a>
</li>
<?php
}
?>
</ul>
<!--sidebar menu end-->
<?php
}
// jika hak akses = Manajer, tampilkan menu
elseif ($_SESSION['hak_akses']=='Manajer') { ?>
<!-- sidebar menu start -->
<ul class="sidebar-menu">
<li class="header">MAIN MENU</li>

<?php
// fungsi untuk pengecekan menu aktif
// jika menu home dipilih, menu home aktif
if ($_GET["module"]=="home") { ?>
<li class="active">
<a href="?module=home"><i class="fa fa-home"></i> Beranda
</a>
</li>
<?php
}
// jika tidak, menu home tidak aktif
else { ?>
<li>
<a href="?module=home"><i class="fa fa-home"></i> Beranda
</a>
</li>
<?php
}

// jika menu Laporan Stok Barang dipilih, menu Laporan Stok Barang aktif
if ($_GET["module"]=="lap_stok") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-file-text"></i> <span>Laporan</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li class="active"><a href="?module=lap_stok"><i class="fa fa-circle-
o"></i> Stok Barang</a></li>
<li><a href="?module=lap_barang_masuk"><i class="fa fa-circle-o"></i>
Barang Masuk</a></li>
<li><a href="?module=lap_barang_keluar"><i class="fa fa-circle-o"></i>
Barang Keluar</a></li>
</ul>
</li>
<?php
}
// jika menu Laporan Barang Masuk dipilih, menu Laporan Barang Masuk aktif
elseif ($_GET["module"]=="lap_barang_masuk") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-file-text"></i> <span>Laporan</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=lap_stok"><i class="fa fa-circle-o"></i> Stok
Barang</a></li>
<li class="active"><a href="?module=lap_barang_masuk"><i class="fa fa-
circle-o"></i> Barang Masuk</a></li>
<li><a href="?module=lap_barang_keluar"><i class="fa fa-circle-o"></i>
Barang Keluar</a></li>
</ul>
</li>
<?php
}
// jika menu Laporan Barang Keluar dipilih, menu Laporan Barang Keluar aktif
elseif ($_GET["module"]=="lap_barang_keluar") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-file-text"></i> <span>Laporan</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=lap_stok"><i class="fa fa-circle-o"></i> Stok
Barang</a></li>
<li><a href="?module=lap_barang_masuk"><i class="fa fa-circle-o"></i>
Barang Masuk</a></li>
<li class="active"><a href="?module=lap_barang_keluar"><i class="fa fa-
circle-o"></i> Barang Keluar</a></li>
</ul>
</li>
<?php
}
// jika menu Laporan tidak dipilih, menu Laporan tidak aktif
else { ?>
<li class="treeview">
<a href="javascript:void(0);">
<i class="fa fa-file-text"></i> <span>Laporan</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=lap_stok"><i class="fa fa-circle-o"></i> Stok
Barang</a></li>
<li><a href="?module=lap_barang_masuk"><i class="fa fa-circle-o"></i>
Barang Masuk</a></li>
<li><a href="?module=lap_barang_keluar"><i class="fa fa-circle-o"></i>
Barang Keluar</a></li>
</ul>
</li>
<?php
}

// jika menu ubah password dipilih, menu ubah password aktif


if ($_GET["module"]=="password") { ?>
<li class="active">
<a href="?module=password"><i class="fa fa-lock"></i> Ubah
Password</a>
</li>
<?php
}
// jika tidak, menu ubah password tidak aktif
else { ?>
<li>
<a href="?module=password"><i class="fa fa-lock"></i> Ubah
Password</a>
</li>
<?php
}
?>
</ul>
<!--sidebar menu end-->
<?php
}
// jika hak akses = Gudang, tampilkan menu
if ($_SESSION['hak_akses']=='Gudang') { ?>
<!-- sidebar menu start -->
<ul class="sidebar-menu">
<li class="header">MAIN MENU</li>

<?php
// fungsi untuk pengecekan menu aktif
// jika menu home dipilih, menu home aktif
if ($_GET["module"]=="home") { ?>
<li class="active">
<a href="?module=home"><i class="fa fa-home"></i> Beranda
</a>
</li>
<?php
}
// jika tidak, menu home tidak aktif
else { ?>
<li>
<a href="?module=home"><i class="fa fa-home"></i> Beranda
</a>
</li>
<?php
}

// jika menu Data Barang dipilih, menu Data Barang aktif


if ($_GET["module"]=="barang" || $_GET["module"]=="form_barang") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-folder"></i> <span>Data Master</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li class="active"><a href="?module=barang"><i class="fa fa-
circle-o"></i> Data Barang</a></li>
<li><a href="?module=jenis"><i class="fa fa-circle-o"></i> Jenis
Barang</a></li>
<li><a href="?module=satuan"><i class="fa fa-circle-o"></i>
Satuan</a></li>
</ul>
</li>
<?php
}
// jika menu Jenis Barang dipilih, menu Jenis Barang aktif
elseif ($_GET["module"]=="jenis" || $_GET["module"]=="form_jenis") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-folder"></i> <span>Data Master</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=barang"><i class="fa fa-circle-o"></i>
Data Barang</a></li>
<li class="active"><a href="?module=jenis"><i class="fa fa-
circle-o"></i> Jenis Barang</a></li>
<li><a href="?module=satuan"><i class="fa fa-circle-o"></i>
Satuan</a></li>
</ul>
</li>
<?php
}
// jika menu Satuan dipilih, menu Satuan aktif
elseif ($_GET["module"]=="satuan" || $_GET["module"]=="form_satuan") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-folder"></i> <span>Data Master</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=barang"><i class="fa fa-circle-o"></i>
Data Barang</a></li>
<li><a href="?module=jenis"><i class="fa fa-circle-o"></i> Jenis
Barang</a></li>
<li class="active"><a href="?module=satuan"><i class="fa fa-
circle-o"></i> Satuan</a></li>
</ul>
</li>
<?php
}
// jika menu Data Master tidak dipilih, menu Data Master tidak aktif
else { ?>
<li class="treeview">
<a href="javascript:void(0);">
<i class="fa fa-folder"></i> <span>Data Master</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=barang"><i class="fa fa-circle-o"></i>
Data Barang</a></li>
<li><a href="?module=jenis"><i class="fa fa-circle-o"></i> Jenis
Barang</a></li>
<li><a href="?module=satuan"><i class="fa fa-circle-o"></i>
Satuan</a></li>
</ul>
</li>
<?php
}

// jika menu Barang Masuk dipilih, menu Barang Masuk aktif


if ($_GET["module"]=="barang_masuk" ||
$_GET["module"]=="form_barang_masuk") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-clone"></i> <span>Transaksi</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li class="active"><a href="?module=barang_masuk"><i
class="fa fa-circle-o"></i> Barang Masuk</a></li>
<li><a href="?module=barang_keluar"><i class="fa fa-circle-
o"></i> Barang Keluar</a></li>
</ul>
</li>
<?php
}
// jika menu Barang Keluar dipilih, menu Barang Keluar aktif
elseif ($_GET["module"]=="barang_keluar" ||
$_GET["module"]=="form_barang_keluar") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-clone"></i> <span>Transaksi</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=barang_masuk"><i class="fa fa-circle-
o"></i> Barang Masuk</a></li>
<li class="active"><a href="?module=barang_keluar"><i class="fa
fa-circle-o"></i> Barang Keluar</a></li>
</ul>
</li>
<?php
}
// jika menu Transaksi tidak dipilih, menu Transaksi tidak aktif
else { ?>
<li class="treeview">
<a href="javascript:void(0);">
<i class="fa fa-clone"></i> <span>Transaksi</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=barang_masuk"><i class="fa fa-circle-
o"></i> Barang Masuk</a></li>
<li><a href="?module=barang_keluar"><i class="fa fa-circle-
o"></i> Barang Keluar</a></li>
</ul>
</li>
<?php
}

// jika menu Laporan Stok Barang dipilih, menu Laporan Stok Barang aktif
if ($_GET["module"]=="lap_stok") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-file-text"></i> <span>Laporan</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li class="active"><a href="?module=lap_stok"><i class="fa fa-circle-
o"></i> Stok Barang</a></li>
<li><a href="?module=lap_barang_masuk"><i class="fa fa-circle-o"></i>
Barang Masuk</a></li>
<li><a href="?module=lap_barang_keluar"><i class="fa fa-circle-o"></i>
Barang Keluar</a></li>
</ul>
</li>
<?php
}
// jika menu Laporan Barang Masuk dipilih, menu Laporan Barang Masuk aktif
elseif ($_GET["module"]=="lap_barang_masuk") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-file-text"></i> <span>Laporan</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=lap_stok"><i class="fa fa-circle-o"></i> Stok
Barang</a></li>
<li class="active"><a href="?module=lap_barang_masuk"><i class="fa fa-
circle-o"></i> Barang Masuk</a></li>
<li><a href="?module=lap_barang_keluar"><i class="fa fa-circle-o"></i>
Barang Keluar</a></li>
</ul>
</li>
<?php
}
// jika menu Laporan Barang Keluar dipilih, menu Laporan Barang Keluar aktif
elseif ($_GET["module"]=="lap_barang_keluar") { ?>
<li class="active treeview">
<a href="javascript:void(0);">
<i class="fa fa-file-text"></i> <span>Laporan</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=lap_stok"><i class="fa fa-circle-o"></i> Stok
Barang</a></li>
<li><a href="?module=lap_barang_masuk"><i class="fa fa-circle-o"></i>
Barang Masuk</a></li>
<li class="active"><a href="?module=lap_barang_keluar"><i class="fa fa-
circle-o"></i> Barang Keluar</a></li>
</ul>
</li>
<?php
}
// jika menu Laporan tidak dipilih, menu Laporan tidak aktif
else { ?>
<li class="treeview">
<a href="javascript:void(0);">
<i class="fa fa-file-text"></i> <span>Laporan</span> <i class="fa fa-
angle-left pull-right"></i>
</a>
<ul class="treeview-menu">
<li><a href="?module=lap_stok"><i class="fa fa-circle-o"></i> Stok
Barang</a></li>
<li><a href="?module=lap_barang_masuk"><i class="fa fa-circle-o"></i>
Barang Masuk</a></li>
<li><a href="?module=lap_barang_keluar"><i class="fa fa-circle-o"></i>
Barang Keluar</a></li>
</ul>
</li>
<?php
}

// jika menu ubah password dipilih, menu ubah password aktif


if ($_GET["module"]=="password") { ?>
<li class="active">
<a href="?module=password"><i class="fa fa-lock"></i> Ubah
Password</a>
</li>
<?php
}
// jika tidak, menu ubah password tidak aktif
else { ?>
<li>
<a href="?module=password"><i class="fa fa-lock"></i> Ubah
Password</a>
</li>
<?php
}
?>
</ul>
<!--sidebar menu end-->
<?php
}
?>
<?php
/* panggil file database.php untuk koneksi ke database */
require_once "config/database.php";
// fungsi query untuk menampilkan data dari tabel user
$query = mysqli_query($mysqli, "SELECT id_user, nama_user, foto, hak_akses
FROM is_users WHERE id_user='$_SESSION[id_user]'")
or die('Ada kesalahan pada query tampil Manajemen User:
'.mysqli_error($mysqli));

// tampilkan data
$data = mysqli_fetch_assoc($query);
?>

<li class="dropdown user user-menu">


<a href="#" class="dropdown-toggle" data-toggle="dropdown">
<!-- User image -->

<?php
if ($data['foto']=="") { ?>
<img src="images/user/user-default.png" class="user-image" alt="User Image"/>
<?php
}
else { ?>
<img src="images/user/<?php echo $data['foto']; ?>" class="user-image"
alt="User Image"/>
<?php
}
?>

<span class="hidden-xs"><?php echo $data['nama_user']; ?> <i style="margin-


left:5px" class="fa fa-angle-down"></i></span>
</a>
<ul class="dropdown-menu">
<!-- User image -->
<li class="user-header">

<?php
if ($data['foto']=="") { ?>
<img src="images/user/user-default.png" class="img-circle" alt="User
Image"/>
<?php
}
else { ?>
<img src="images/user/<?php echo $data['foto']; ?>" class="img-circle"
alt="User Image"/>
<?php
}
?>
<p>
<?php echo $data['nama_user']; ?>
<small><?php echo $data['hak_akses']; ?></small>
</p>
</li>

<!-- Menu Footer-->


<li class="user-footer">
<div class="pull-left">
<a style="width:80px" href="?module=profil" class="btn btn-default btn-
flat">Profil</a>
</div>

<div class="pull-right">
<a style="width:80px" data-toggle="modal" href="#logout" class="btn btn-
default btn-flat">Logout</a>
</div>
</li>
</ul>
</li>

Anda mungkin juga menyukai