ISSN : 2088-589X
JURNAL DIGIT Vol. 4, No. 1 Mei 2014:86-102
APLIKASI PENDATAAN SPARE PART KELUAR DAN
MASUK GUDANG PT. BARUNA TEJA BERLIAN
BERBASIS WEB
Freddy Wicaksono1 ,Chandra2 ,Petrus Sokibi3Sekolah Tinggi Manajemen Informatika dan Komputer CIC Cirebon Jl.Kesambi 202, Kota Cirebon, JawaBarat.Tlp: (0231)220250. Email : freddy.wicaksono@cic.ac.id, kabumon@ymail.com, petrus.sokibi@cic.ac.id
Abstrak
PT. Baruna Teja Berlian adalah perusahaan yang bergerak dibidang jasa angkutan barang yang berada didarat. Perusahaan tersebut memiliki sejumlah mobil untuk mengantar barang yang hampir pada setiap harinya mengadakan kegiatan yang berhubungan dengan angkutan jasa barang. Untuk kelancaran operasional tersebut memelukan sejumlah spare part yang dibutuhkan mobil jika setiap kali mengalami kendala kerusakan pada mobil bisa langsung diperbaiki. Spare part yang digunakan/dikeluakan akan dicatat kemudian data yang sudah dicatat akan dikumpulkan dan disimpan sebagai arsip. Akan tetapi pada kenyataannya data-data itu kurang dapat dimaksimalkan pengolahannya untuk menjadi sebuah informasi yang berguna. Berdasarkan hal tersebut diatas maka dibuatlah sebuah aplikasi berbasis Web yang akan digunakan untuk melakukan pengolahan data spare part masuk dan keluar tersebut. Aplikasi ini mencakup informasi tentang pembuatan form isian spare part keluar masuk, pencarian data spare part keluar masuk dan laporan spare part keluar masuk. Metode penelitian dalam Skripsi ini menggunakan Metode Penelitian Deskriptif. Pada tahap Analisa dan Perancangan sistem, digambarkan dengan Flowmap, Diagram Konteks, DFD dan ERD. Setelah tahap ini selesai dilanjutkan dengan tahap perancangan. Perancangan tersebut mencakup perancangan form Pengolahan Data Spare Part masuk keluar dan perancangan database. Aplikasi ini diimplementasikan dengan menggunakan bahasa pemrograman PHP dan databasenya menggunakan Mysql.
Kata kunci : Sistem Informasi, Aplikasi, Berbasis Web. Abstract
PT . Baruna Teja Diamonds are a company engaged in the transport of goods that are on land . The company has a number of cars to deliver goods that almost on a daily basis carrying out activities related to the transport of goods services . For the smooth operation need the number of spare parts needed if every time the car suffered damage to car problems can be directly repaired . Spare parts used / dikeluakan will be noted later that the data has been recorded to be collected and stored as archives . But in reality it is less data processing can be maximized to be a useful information . Based on the above it was made a Web -based application that will be used to perform the data processing parts in and out of the . This application includes information about making a form out of the spare parts , spare parts data search out and report incoming and out of spare parts . Methods of research in this thesis using Descriptive Research Methods . At the stage of analysis and design of the system , described by Flowmap , Context Diagram , DFD and ERD . Once this stage is completed followed by the design phase . The design includes the design of Parts Data Processing form entry and exit database design . This application is implemented using the programming language PHP and uses MySQL database . Keywords : Information Systems , Applications , Web Based .
I. PENDAHULUAN
Perkembangan teknologi saat ini telah mengalami kemajuan yang sangat pesat, dimana manusia sangat dimudahkan dalam banyak hal terutama untuk mendapatkan berbagai macam informasi yang dibutuhkan. Sekarang ini teknologi telah digunakan oleh banyak orang sebagai salah satu alat pencari
informasi yang bisa dilakukan dimana saja dan kapan saja pada saat diperlukan dan salah satunya adalah teknologi jaringan internet. Internet merupakan suatu teknologi yang umum dikenal dengan istilah world wide web yang memiliki kemampuan untuk menjaring informasi sangat luas. Hal ini ditandai dengan semakin banyaknya instansi/perusahaan yang menggunakan jasa internet sebagai salah satu mediator antara sumber informasi dan orang-orang yang membutuhkan informasi tersebut.
PT. Baruna Teja Berlian adalah perusahaan angkutan jasa yang terlah berdiri selama dan mempunyai beberapa cabang. Sejauh ini, pengelolaan data yang ada pada PT. Baruna Teja Belian data pengelolaan data semuanya ada yang dicatat dan ada yang terkomputerisasi tetapi komputerisasinya masih belum adanya komunikasi antara cabang dengan pusat. Hal ini menyebabkan organisasi atau manajemen data belum komunikasi secara maksimal. Sehingga belum menghasil sebuah informasi baru dan berguna untuk proses pengambilan keputusan bagi pihak manajemen dalam menangani masalah stock spare part yang melampaui batas atau kurang/habis stock spare part di gudang.
Akan tetapi pada pelaksanaannya pihak pengelola dalam hal ini adalah bagian gudang seringkali mendapatkan kendala dalam pengolahan datanya dikarenakan jumlahnya data spare part yang cukup banyak dan tenaga pengolahnya yang sangat terbatas, hal ini yang mendorong penyusun untuk merancang sebuah perangkat lunak berbasis web aga r dapat membantu bagian gudang dalam mengolah data-data masuk keluar spare part tersebut sehingga menjadi sebuah informasi yang bisa digunakan sebagai referensi oleh pihak manajemen dalam pengambilan sebuah keputusan.
Perangkat lunak yang akan dibuat ini nantinya terdiri dari tiga bagian yaitu bagian admin cabang dan pusat yang dapat mengakses semua fasilitas program, bagian manajemen cabang dan pusat yang hanya bisa mengakses laporan saja..
II. METODOLOGI
Metode yang digunakan untuk mendapatkan hal-hal yang dibutuhkan dalam pembuatan simulasi ini yaitu :
A. System Engineering
Pada tahap ini pengerjaan dimulai dengan menentukan kebutuhan untuk seluruh elemen-elemen sistem dan mengalokasikan beberapa bagian dari kebutuhan tersebut untuk perangkat lunak.
B. Analysis
Pada tahap ini analisis suatu sistem digambarkan dengan menguraikan alur sistem sampai alur dokumen yang akan dikembangkan. Analisis sistem yang digunakan pada skripsi ini menggunakan tools antara lain : Flowchart, ERD (Entitiy Relationship Diagram), diagram konteks, DFD (Data Flow Diagram).
a. Flowchart
JURNAL DIGIT Vol. 4, No. 1 Mei 2014:86-102
Gambar 1. Proses Penerimaan Spare part Secara Manual
2. Proses Pengeluran Spare part Secara Manual
Gambar 2. Proses Pengeluaran Spare part Secara Manual 3. Proses Penerimaan Spare part Secara Komputerisasi
JURNAL DIGIT Vol. 4, No. 1 Mei 2014:86-102
4. Proses Pengeluaran Spare part Secara Komputerisasi
Gambar 4. Proses Pengeluaran Spare part Secara Komputerisasi
5. Proses Pengambilan Spare part
b. ERD
Gambar 6. ERD
c. DFD
Gambar 7. DFD
C. Design
Tahapan dalam pengembangan penelitian dengan melakukan perancangan desain untuk kebutuhan perangkat lunak. Desain ini didokumentasikan dengan baik dan menjadi bagian konfigurasi perangkat lunak.
a. Data Masuk Barang
JURNAL DIGIT Vol. 4, No. 1 Mei 2014:86-102
Gambar 8. Halaman Pengelolaan Masuk Barang
Dari analisa yang dilakukan terhadap halaman data Masuk Barang pada Aplikasi di PT Baruna Teja Berlian, maka diperoleh hasil bahwa untuk halaman data masuk barang, diperlukan setidaknya 7 field, yaitu : Tanggal, No. Bukti Barang Masuk, Nomor Faktur, Nama Toko, Katagori, Nama Spare Part, dan Quantity.
b. Data Keluar Barang
Halaman data Keluar Barang terlihat pada gambar 9.
Gambar 9. Halaman Pengelolaan Data Keluar Barang
Dari analisa yang dilakukan terhadap halaman data Keluar Barang pada Aplikasi di PT Baruna Teja Berlian, maka diperoleh hasil bahwa untuk halaman data keluar barang, diperlukan setidaknya 6 field, yaitu : Tanggal, No. Bukti Barang Keluar, Nomor Mobil, Katagori, Nama Spare part dan Quantity.
c. Data Spare Part
Halaman data Spare Part terlihat pada gambar 10.
Gambar 10. Halaman Pengelolaan Data Spare Part
Dari analisa yang dilakukan terhadap halaman data Spare Part pada Aplikasi di PT Baruna Teja Berlian, maka diperoleh hasil bahwa untuk halaman data Dosen, diperlukan setidaknya 5 field, yaitu : ID, Kode Spare Part, Nama Spare part, id katagori dan Satuan Dari kelima field tersebut, yang menjadi kunci utamanya adalah field ID.
III. PEMBAHASAN
Pada bab pembahasan, penulis membuat struktur navigasi, rancangan data, rancangan tampilan dan pengkodean program dengan PHP
A. Struktur Navigasi
JURNAL DIGIT Vol. 4, No. 1 Mei 2014:86-102
Gambar 11. Struktur Navigasi Halaman Admin
B. Rancangan Tampilan
Rancangan tampilan untuk halaman Menu Admin seperti terlihat pada gambar 13.
Gambar 13. Halaman Admin Gudang
Pada Gambar 13 dapat dilihat tampilan dari menu admin yang dapat digunakan untuk menjalankan semua aplikasi baik entri, edit, delete kecuali data user.
JURNAL DIGIT Vol. 4, No. 1 Mei 2014:86-102
Rancangan tampilan untuk halaman home Pimpinan seperti terlihat pada gambar 14.
Gambar 14. Halaman Home Pimpinan
D. Pengkodean Program
Pada bagian pengkodean program, penulis menjelaskan beberapa potongan program utama. 1. Koneksi PHP dengan config.php
<?php
// connect to db
$link = mysql_connect('localhost', 'root', '123'); if (!$link) {
die('Not connected : ' . mysql_error()); }
if (! mysql_select_db('baruna') ) {
} ?>
2. Simpan data ke database dari form <?php
if (isset($_POST['submitted'])) {
foreach($_POST AS $key => $value) { $_POST[$key] = mysql_real_escape_string($value); } if($_POST){ $kosp = $_POST['kosp']; $nasp = $_POST['nasp']; $jns = $_POST['jns']; $stn = $_POST['stn']; $stc = 0; $error = array(); if(empty($kosp)){
$error['kosp'] = 'Tolong isi kan Kode spare partnya jangan kosong !!';
}
if(empty($nasp)){
$error['nasp'] = 'Tolong isi kan nama spare part jangan kosong !!';
}
if(empty($jns)){
$error['jns'] = 'Tolong isi kan jenis spare part jangan kosong !!';
}
if(empty($stn)){
$error['stn'] = 'Tolong isi kan Satuan spare part jangan kosong !!';
}
if(!preg_match('/^[a-zA-Z]+$/',$stn)) {
//match, berarti ada karakter selain alpha & spasi $pesan='Anda Masukan Bukan Huruf';
} else {
if(empty($error)){
$sql = "select * from barang where ko_spare='$kosp'"; $hasil=mysql_query($sql);
$rec=mysql_num_rows($hasil); if($rec>0){ ?>
<div style="color:red"><h4> <?php
echo 'Kode Barang Sudah Ada'; ?></h4></div> <?php
} else {
$sql = "INSERT INTO barang ( ko_spare, naspare, jenis_barang, satuan) VALUES (
'{$_POST['kosp']}', '{$_POST['nasp']}', '{$_POST['jns']}', '{$_POST['stn']}') ";
JURNAL DIGIT Vol. 4, No. 1 Mei 2014:86-102
mysql_query($sql) or die(mysql_error()); echo "Sukses Added row.<br />";
echo "<a href=?mod=barang&error>Back To Listing</a>"; echo '<meta http-equiv="refresh"
content="0;url=index.php?mod=barang&sukses">'; } } } } } ?> 3. Edit data <?php if (isset($_GET['no']) ) { $id = (int) $_GET['no'];
if (isset($_POST['submitted'])) {
foreach($_POST AS $key => $value) { $_POST[$key] = mysql_real_escape_string($value); } if($_POST){ $ko_spare = $_POST['ko_spare']; $naspare = $_POST['naspare']; $jenis_barang = $_POST['jenis_barang']; $stn = $_POST['stn']; $error = array(); if(empty($ko_spare)){
$error['ko_spare'] = 'Info kode spare tadi kosong !!'; }
if(empty($naspare)){
$error['naspare'] = 'Info nama spare tadi kosong !!'; }
if(empty($jenis_barang)){
$error['jenis_barang'] = 'Info jenis barang tadi kosong !!'; }
if(empty($stn)){
$error['stn'] = 'Info satuan tadi kosong !!'; }
if(empty($error)){
$sql = "UPDATE barang set ko_spare='{$_POST['ko_spare']}',
naspare='{$_POST['naspare']}', id_jenis='{$_POST['jenis_barang']}', satuan='{$_POST['stn']}' WHERE id='$id'";
mysql_query($sql) or die(mysql_error()); //echo "Updated row.<br />";
echo "<a href=?mod=barang&error>Back To Listing</a>"; echo '<meta http-equiv="refresh"
content="0;url=index.php?mod=barang&sukses">'; }
} }
$row = mysql_fetch_array ( mysql_query("SELECT * FROM barang WHERE `id` = '$no' ")); ?> 4. Hapus data <?php if (isset($_GET['no']) ) { $id = (int) $_GET['no'];
if (isset($_POST['submitted'])) {
mysql_query("DELETE FROM `barang` WHERE `id` = '$id' ") ;
echo (mysql_affected_rows()) ? "Data berhasil dihapus.<br /> " : "Data gagal dihapus.<br /> ";
echo "<a href=?mod=barang&error>Back To Listing</a>"; echo '<meta http-equiv="refresh"
content="0;url=index.php?mod=barang&sukses">'; }
$row = mysql_fetch_array ( mysql_query("SELECT * FROM barang WHERE `id` = '$id' "));
?> 5. Menampilkan data
<?php
//Set the page size $PageSize = 5; $StartRow = 0; //Set the page no
if(empty($_GET['PageNo'])){ if($StartRow == 0){ $PageNo = $StartRow + 1; } }else{ $PageNo = $_GET['PageNo'];
$StartRow = ($PageNo - 1) * $PageSize; }
//Set the counter start
if($PageNo % $PageSize == 0){
$CounterStart = $PageNo - ($PageSize - 1); }else{
$CounterStart = $PageNo - ($PageNo % $PageSize) + 1; }
//Counter End
$CounterEnd = $CounterStart + ($PageSize - 1); ?>
<?php
include "inc/config.php"; $sql = "select * from barang";
JURNAL DIGIT Vol. 4, No. 1 Mei 2014:86-102
$result1 = mysql_query("SELECT * FROM barang ORDER BY id LIMIT $StartRow,$PageSize");
$result = mysql_query($sql); $hasil=mysql_query($sql); $Rec=mysql_num_rows($hasil);
//Set Maximum Page
$MaxPage = $Rec % $PageSize;
//Set Maximum Page
$MaxPage = $Rec % $PageSize; if($Rec % $PageSize == 0){
$MaxPage = $Rec / $PageSize; }else{
$MaxPage = ceil($Rec / $PageSize); }
?>
<div class="portlet"> <br /><br />
<table width="100%" id="box-table-a" summary="Employee Pay Sheet">
<thead align="center"> <tr align="center">
<div align="right"><?php print "$RecordCount record(s) founds - You are at page $PageNo of $MaxPage" ?></div>
</tr></thead></table>
<div align="center" class="portlet-header fixed"> <div class="">
<table width="100%" id="box-table-a" summary="Employee Pay Sheet">
<thead align="center"> <tr align="center">
<th scope="col" width="20">No</th>
<th scope="col" width="70">Kode Barang</th> <th scope="col" width="200">Nama barang</th> <th scope="col" width="80">Jenis Barang</th> <th scope="col" width="70">Satuan Barang</th> <th scope="col" width="50">Action</th> </tr> </thead> <tbody> <?php $i = 1;
while ($data = mysql_fetch_array($result1, MYSQL_NUM)) {
$bil = $i + ($PageNo-1)*$PageSize; ?> <tr> <td> <? echo $bil ?></td> <td> <? echo $data['1'] ?></td> <td ><? echo $data['2'] ?></td> <td ><? echo getjenis($data['3']) ?></td> <td ><? echo $data['4'] ?></td> <td width="90"> <a
href="?mod=barang_edit&no=<?php echo $data['0']; ?>" class="edit_icon" title="Edit"></a> <a
href="?mod=barang_delete&no=<?php echo $data['0']; ?>" class="delete_icon" title="Delete"></a></td> </tr> <? $i++; } ?> <tr class="footer"> <td colspan="4"></td> <td colspan="4" align="right"> <!-- PAGINATION START --> <?php
//Print First & Previous Link is necessary if($CounterStart != 1){
$PrevStart = $CounterStart - 1;
print "<a href=?mod=barang&PageNo=1>First </a>: "; print "<a href=?mod=barang&PageNo=$PrevStart>Previous </a>"; } print " [ "; $c = 0; //Print Page No for($c=$CounterStart;$c<=$CounterEnd;$c++){ if($c < $MaxPage){ if($c == $PageNo){ if($c % $PageSize == 0){ print "$c "; }else{ print "$c ,"; } }elseif($c % $PageSize == 0){
echo "<a href=?mod=barang&PageNo=$c>$c</a> "; }else{
echo "<a href=?mod=barang&PageNo=$c>$c</a> ,"; }//END IF }else{ if($PageNo == $MaxPage){ print "$c "; break; }else{
echo "<a href=?mod=barang&PageNo=$c>$c</a> "; break; }//END IF }//END IF }//NEXT echo "] "; if($CounterEnd < $MaxPage){ $NextPage = $CounterEnd + 1;
echo "<a href=?mod=barang&PageNo=$NextPage>Next</a>"; }
//Print Last link if necessary if($CounterEnd < $MaxPage){ $LastRec = $Rec % $PageSize; if($LastRec == 0){
JURNAL DIGIT Vol. 4, No. 1 Mei 2014:86-102
$LastStartRecord = $Rec - $PageSize; }
else{
$LastStartRecord = $Rec - $LastRec; }
print " : ";
echo "<a href=?mod=barang&PageNo=$MaxPage>Last</a>"; } ?> <!-- PAGINATION END --> </td> </tr> </tbody> </table> </div>
Kode-kode diatas merupakan merupakan potongan kode program yang berfungsi untuk melakukan proses CRUD (Create, Read, Update, Delete) dari aplikasi.
IV. KESIMPULAN DAN SARAN A. KESIMPULAN
1. Aplikasi ini telah dapat mencatat barang yang keluar untuk perbaikan mobil.
2. Aplikasi ini telah dapat membuat rekapitulasi data spare part yang keluar dan masuk berdasarkan nama spare part atau tanggal tertentu.
3. Aplikasi ini telah dapat membuat laporan berdasarkan pemakaian mobil, laporan spare part masuk dan keluar.
4. Aplikasi ini telah dapat membuat rekapitulasi kendaraan yang menerima atau menggunakan spare part berdasarkan nama spare part atau tanggal tertentu.
B. SARAN
1. Untuk pengembangan lebih lanjut Sistem ini masih memiliki keterbatasan terutama pada proses menghasilkan laporan stock spare part yang belum adanya penjelasan secara detail jadi penyusun mengharapkan untuk dapat mengembangkan kekurangannya.
2. Sistem ini belum menerapkan transaksi pembelian spare part sehingga belum adanya fitur laporan pembelian.
DAFTAR PUSTAKA
[1]. Bertha. Ir Husni I. Pohan, Ir M. Eng. 2001. HTML dan XML. Bandung: Penerbit Informatika [2]. Bertha. Ir Husni I. Pohan, Ir M. Eng. 2001. Pemrograman Web HTML. Bandung: Penerbit
Informatika
[3]. Jogiyanto. 2001. Sistem Teknologi Informasi, Yogyakarta: Penerbit Andi
[4]. Kadir, Abdul dan Triwahyuni, Terra Ch. 2003. Pengenalan Teknologi Informasi. Yogyakarta. Penerbit Andi
[5]. Rahardjo, Budi. 2002. Memahami Teknologi Informasi. Jakarta: Penerbit Elex Media Komputindo [6]. Sutedjo, Budi. 2002. Perencanaan & Pembangunan Sistem Informasi. Yogyakarta: Penerbit Andi [7]. Lukmanul, Hakim, Musalini, Uus. 2004. Cara Cerdas Menguasai Layout, Desain dan Aplikasi Web.
Jakarta: Penerbit PT Elex Media Komputindo Kelompok Gramedia
[8]. Arief, M. Rudyanto. 2011. Pemrograman Web Dinamis Menggunakan PHP & MySQL. Yogyakarta: Penerbit Andi
[9]. Febrian, Jack. 2007. Kamus Komputer & Teknologi Informasi.Informatika. Bandung: Penerbit Informatika