TUGAS AKHIR
Diajukan Sebagai Salah Satu Syarat Untuk Kelulusan Program Diploma III
Jurusan Manajemen Informatika
Tahun Akademik 2009
Disusun Oleh:
Mengetahui,
Ketua Jurusan Manajemen Informatika
ii
PENGESAHAN SIDANG YUDISIUM
Tugas Akhir ini telah diujikan dihadapan Dewan Penguji pada tanggal
……………….................................Bulan…………………………………………
………..………………….. Tahun……..……………….…………………………
Penguji 1 Penguji 2
Mengetahui
iii
KATA PENGANTAR
Puji dan syukur penulis panjatkan kehadirat Allah SWT, yang telah
menyelesaikan penulisan tugas akhir ini dengan baik. Adapun judul dari tugas
Tujuan dari penulisan tugas akhir ini dibuat adalah sebagai salah satu syarat
kelulusan program diploma III pada Sekolah Tinggi Manajemen Informatika dan
Komputer (STMIK) Pranata Indonesia. Selama penulisan tugas akhir ini, banyak
bantuan moril maupun materil dari berbagai pihak, maka dengan ini penulis ingin
1. Bapak Drs. Yusrodi CHP, M.Si selaku Ketua Yayasan YMII dan Ketua
v
6. Bapak dan Ibu Staff Dosen Pengajar STMIK Pranata Indonesia yang telah
Akhirnya penulis berharap semoga tugas akhir ini bermanfaat bagi penulis
dan PT. Indonesia Epson Indonesia khususnya, serta para pembaca pada
umumnya.
Penulis
vi
DAFTAR ISI
vii
2.4 Alat Bantu Perancangan Sistem ……........................................ ..10
viii
3.6.1 Entity Relational Diagram………………………………..66
LAMPIRAN
ix
BAB I
PENDAHULUAN
Perkembangan ilmu dan teknologi yang cukup pesat dewasa ini sangat
satu cara peningkatan kerja di PT. Indonesia Epson Industry adalah dengan
1
2
sistem ini pengolahan data dan informasi dapat dengan mudah dan cepat
secara otomatis.
belum maksimal, hal ini disebabkan oleh beberapa masalah yang ditemui
yaitu:
data.
Basic 6.0 pada PT. Indonesia Epson Industry” dalam pembuatan tugas
akhir ini.
3
Masalah yang diangkat dalam tugas akhir ini adalah pembuatan program
Hal ini dimaksudkan untuk memudahkan operator melakukan input data dan
persediaan cartridge.
perumusan masalah dalam tugas akhir ini meliputi beberapa hal, yaitu:
Epson Industry.
3. Pembuatan laporan pada program aplikasi terdiri dari laporan stok secara
aktual, laporan cartridge masuk per bulan, laporan request cartridge per
Tujuan yang hendak dicapai oleh penulis dari penulisan tugas akhir
a. Studi kepustakaan
sedang dibahas.
a. Studi lapangan
1. Interview (wawancara)
2. Observasi
tersebut.
6
Untuk lebih memahami penulisan pada tugas akhir ini, penulis membagi
penulisan tugas akhir ini menjadi 5 (lima) bab, dimana tiap-tiap bab terdiri
atas beberapa sub-sub bab untuk menerangkan secara jelas isi dari tugas akhir
ini, sehingga dapat dimengerti. Yang secara garis besar diterangkan sebagai
berikut:
BAB I PENDAHULUAN
database.
listing program.
BAB V PENUTUP
Pada bab ini berisi kesimpulan yang diperoleh dari penelitian serta
LANDASAN TEORI
report, close dan bitmap yang disusun sedemikian rupa sehingga dapat
2005:5).
8
9
bahan baku, persediaan barang dalam proses dan persediaan barang jadi (siap
untuk dijual).
yaitu:
dibeli oleh perusahaan dengan tujuan untuk dijual kembali dengan tanpa
mengubah bentuk dan kualitas barang, atau dapat dikatakan tidak ada proses
barang-barang atau bahan yang dibeli oleh perusahaan dengan tujuan untuk
diproses lebih lanjut menjadi barang jadi atau setengah jadi atau mungkin
menjadi bahan baku bagi perusahaan lain, hal ini tergantung dari jenis dan
ke tujuan yang lain, yang ada pada objek lain” (Adi Nugroho,
Entitas
Entitas adalah objek aktif yang mengendalikan
aliran data dengan memproduksi serta
mengkonsumsi data. Entitas dilampirkan ke
masukan atau keluaran pada Data Flow Diagram.
Entitas digambarkan dengan empat persegi panjang
yang memperlihatkan bahwa sebenarnya ia adalah
objek.
Proses
Proses adalah sesuatu yang melakukan transformasi
terhadap data. Proses digambarkan dengan elips
yang memuat deskripsi singkat tentang transformasi
yang terjadi.
Data Store
Data Store adalah objek pasif dalam DFD yang
menyimpan data untuk penggunaan lebih lanjut.
Data Store digambarkan dengan dua garis paralel
yang memuat nama dari penyimpanan.
Aliran Data
Aliran data menghubungkan keluaran dari objek
atau proses yang terjadi pada suatu masukan. Aliran
data digambarkan sebagai tanda panah antara
penyedia serta pengguna data.
11
2.4.2 Flowchart
2005:29).
Simbol-simbol Flowchart:
TERMINAL
PREPARATION / PERSIAPAN
DECISION / KEPUTUSAN
PROSES
program.
INPUT / OUTPUT
FLOW LINE
CONNECTOR
PAGE CONNECTOR
berbeda.
PRINTER
mencetak.
CONSOLE
MANUAL INPUT
keyboard.
14
DISK
TAPE / PITA
TAPE DRIVE
PUNCHED CARD
Nugroho, 2005:192).
15
2005:85).
Entitas
Entitas adalah suatu objek yang dapat di
identifikasikan dalam lingkungan pemakai, dan
sesuatu yang penting bagi pemakai dalam konteks
sistem yang akan dibuat.
Atribut
Atribut (field) adalah bagian dari suatu entitas
yang berfungsi mendeskripsikan karakter entitas ,
sehingga atribut bisa digunakan sebagai identifier
(key) untuk menentukan entitas secara unik. Dan
descriptor (non key) untuk menentukan entitas
secara tidak unik.
Link
Garis penghubung antara himpunan relasi dengan
himpunan entitas dan himpunan dengan
atributnya.
Relasi
Relasi adalah suatu objek yang menghubungkan
antara suatu entitas dengan entitas yang lain.
"Hubungan antara satu tabel dengan tabel lain dalam istilah relasional
Data user
1 1 Username
User Memiliki Password
Posisi
pada hubungan ini ditunjukan pada setiap baris data pada tabel
pertama dapat dikoneksikan ke satu atau lebih baris data pada tabel
kedua. Tetapi sebuah baris data pada tabel kedua hanya bisa
Data inspector
NIK 1 M
Request Cartridge
Nama Inspector
17
pada tabel pertama dapat dikoneksikan ke satu atau lebih baris data
M M
Inspector Request Cartridge
2.5.2 Normalisasi
2002: 9). Sebuah tabel dapat dikategorikan efisien atau normal, jika
(Dependency Preservation).
18
Sebuah tabel di sebut 1NF jika tidak ada baris yang duplikat dalam
Bentuk Normal Kedua (2NF) terpenuhi jika pada sebuah tabel semua
lebih nyaman dan lebih mudah digunakan oleh pengguna. Visual basic
aplikasi web yang kompleks. Kelebihan yang dimiliki Visual Basic 6.0
1991.
banyak.
f. Sarana akses data yang lebih cepat dan handal untuk membuat
bawah ini:
21
a. Control Menu
sudut kiri atas jendela Visual Basic 6.0. Dalam sistem operasi
Windows, elemen ini tampil dalam bentuk ikon program, yang jika
anda klik akan tampil daftar menu perintah yang digunakan untuk
b. Menu Bar
c. Toolbar
d. Form Window
Form window merupakan jendela desain atau area kerja utama dari
e. Toolbox
objek atau kontrol untuk mengatur desain dari aplikasi yang akan
dibuat.
f. Project Explorer
objek.
g. Jendela Properties
i. Jendela Code
kotak objek.
a. Input Device
b. Process Device
jika ada masukan dari input device baik berupa data atau instruksi.
c. Output Device
Harddisk : Maxtor 80 GB
Keyboard : Komic PS 2
Jepang. SEC ini sendiri didirikan pada bulan Mei tepatnya tahun 1942 dan
SEC digabung pada bulan November 1985 dengan jumlah modal US$ 12.530
Nama EPSON diambil dari nama mini printer EP (Electric Printer) - 101
yaitu mini printer pertama yang di buat oleh EPSON dan sukses. Kata
PT. Indonesia Epson Industry (IEI) didirikan pada 27 Juli 1994, dan
mulai beroperasi pada April1995. Dengan Luas Tanah 138.000 m2, dan luas
30
31
Dot Metric) dan InkJet, serta komponen pendukungnya yang utama seperti
Beroperasi
beroperasi.
printer 400.000/bulan
32
IJP Production
TP Production
SIDM
Production
Maintenance
Factory Manufacture
Engineering Facility Control
Machine &
Tools
IJP CSQA
CSQA
SIDM CSQA
IJP Design
PCB Design
HRM & GA
Corporate
Management Accounting
Control
Facility Control
& Safety
jawab tersendiri, yang harus mereka jalankan dengan penuh tanggung jawab
1. President Director
2. Vice President
3. TP Production
4. Factory Engineering
5. Part Production
7. TP Design
diproduksi.
8. HRM dan GA
karyawan.
9. Accounting
keuangan perusahaan.
sewaktu-waktu dibutuhkan.
berikut:
akan akan dipakai besok. Setelah diisi form request part harus
37
A. Proses Input
inspector, data barang, data login, data cartridge masuk dan data
Username
Password
Posisi
meliputi:
NIK
Nama Inspector
Status
Kode barang
Nama barang
Jenis
Stok
Limit stok
meliputi:
Tanggal masuk
Shift
Kode transfer
Kode barang
Nama barang
Jumlah
Tanggal keluar
40
Shift
Kode request
NIK
Nama Inspector
Model
Kode barang
Nama barang
Jumlah
Kode request
Kode barang
Nama barang
Jumlah
Return
Total
2. Proses Simpan
simpan.
41
3. Proses Batal
4. Proses Edit
data, maka user tinggal memilih data tersebut dalam form edit
tombol simpan.
5. Proses Hapus
di dalam database.
7. Proses Keluar
keluar untuk keluar dari aplikasi atau form yang sedang aktif.
C. Struktur Pengkodean
1. Kode Request
1 2 3 4 5 6 7 8 9
Panjang : 9 Karakter
Type : Text
2 1 0 7 0 9 1 0 7
1 : shift 1
2. Kode Transfer
1 2 3 4 5 6 7 8 9 10 11
Panjang : 11 Karakter
Type : Text
43
1 2 5 0 8 0 9 1 0 0 5
1 = Shift 1
melakukan request.
1 = Departement OQC
005 = urutan ke 5
3. NIK
1 2 3 4 5 6 7 8
Panjang : 8 Karakter
Type : Text
1 0 8 0 4 7 7 8
1 = departement OQC
4. Username
1 2 3 4 5 6 7 8 9 10
Type : Text
5. Password
1 2 3 4 5 6
Type : Text
Mulai
Input
username
Input
password
cek T
cek
posisi
operator administrator
2 1
1
4
Input
Y
Setting data A
pengguna
Tambah data Y B
barang
T
Edit data Y
C
barang
T
Y
hapus data D
barang
Tambah data Y
E
inspector
T
Y
Edit data
F
inspector
Input cartridge Y
G
masuk
T
3
Gambar Flow Chart Menu Utama Administrator
47
Input request Y H
cartridge
T
Input return Y
I
cartridge
T
Laporan stok Y
J
cartridge
T
Laporan Y
K
request
T
Laporan Y L
pemakaian
T
T Laporan
M
cartridge masuk
4 Keluar
selesai
Input
Y
Input G
cartridge
T
Y
Input request
H
cartridge
T
Input return Y
I
cartridge
T
T keluar
selesai
Setting data
pengguna
Y
Pilih
A.1
Baru
Pilih Y
A.2
Ubah
Pilih Y
A.3
Hapus
T Pilih
Keluar
Y
Selesai
A.1
Input
Username,
Password, Posisi
simpan
Cek Y
Username
Selesai
A.2
Cari data
pengguna
Tampilkan
Username,
Password, Posisi
Ubah
Input
perubahan
simpan
Selesai
A.3
Cari data
pengguna
Tampilkan
Username,
Password, Posisi
T
Hapus
Data
Y
Hapus
Username,
Password, Posisi
Selesai
Input kode_barang,
nama_barang, jenis,
stok, limit_stok
Simpan
Cek Y
kode_barang
Selesai
Pilihan
Cari
kode_barang nama_barang
Input Input
kode_barang nama_barang
T T
Ada Ada
Y Y
Tampilkan kode_barang,
nama_barang, jenis, limit_stok
Input perubahan
Simpan
Cek Y
kode_barang
Selesai
Pilihan
Cari
kode_barang nama_barang
Input Input
kode_barang nama_barang
T T
Ada Ada
Y Y
Tampilkan kode_barang,
nama_barang, jenis, limit_stok
T
Hapus
data
Y
Hapus kode_barang,
nama_barang, jenis, limit_stok
Selesai
Input NIK,
nama_inspector,
status
Simpan
Cek Y
NIK
Selesai
Input NIK
T
Ada
Tampilkan NIK,
nama_inspector, status
Y
Hapus F.1
Input
perbaikan
Simpan
Cek Y
NIK
T
Selesai
F.1
Hapus T F
Data
Hapus NIK,
nama_inspector, status
Selesai
Input tanggal_masuk,
shift, kode_transfer
Pilih Barang
Tampilkan kode_barang,
nama_barang, jenis
Input jumlah
Y
Batal
Simpan
Selesai
Input tanggal_request,
shift, kode_request
Input NIK
Tampilkan
nama_inspector
Input model_printer
Pilih Barang
Tampilkan kode_barang,
nama_barang, jenis_cartridge
Input jumlah
Y
Batal
T
Simpan
Selesai
Input kode_request
Ada T
Pilih barang
Tampilkan kode_request,
kode_barang, nama_barang,
jenis_cartridge, jumlah, return,
Input return
Total=jumlah-return
Simpan
Selesai
Cetak T
Cetak
Selesai
Input tanggal_keluar
T
Ada
Cetak T
Y
Cetak
Selesai
Input tanggal_keluar
T
Ada
Y
T
Cetak
Cetak
Selesai
T
Ada
Cetak T
Y
Cetak
Selesai
Tanggal_Keluar
Request Shift
1 Login 1 M M
Kode_Request
NIK
Nama_Inspector
Username Model_Printer
Password Kode_Barang
Nama_barang
Jenis_Cartridge
Jumlah
Return
Total
User Cartridge Inspector
1 Input M M Return M
barang
masuk
Tanggal_Keluar
Shift
Tanggal_Masuk Kode_Request
Shift NIK
Kode_Transfer Nama_Inspector
Kode_Barang Model_Printer
Nama_barang Kode_Barang
Jenis_Cartridge Nama_barang
Jumlah Jenis_Cartridge
Jumlah
Return
Total
1 NIK Text 8
2 Nama_Inspector Text 25
3 Status Text 8
1 Kode_Barang Text 8
2 Nama_Barang Text 25
3 Jenis_Cartridge Text 6
4 Stok Number -
5 Limit_Stok Number -
68
2 Shift Text 1
3 Kode_Transfer Text 11
4 Kode_Barang Text 9
5 Nama_Barang Text 25
6 Jenis_Cartridge Text 6
7 Jumlah Number -
2 Shift Text 1
3 Kode_Request Text 9
69
4 NIK Text 8
5 Nama_Inspector Text 25
6 Model_Printer Text 15
7 Kode_Barang Text 9
8 Nama_Barang Text 25
9 Jenis_Cartridge Text 6
10 Jumlah Number -
11 Return Number -
12 Total Number -
Table Login
1 Username Text 10
2 Password Text 6
3 Posisi Text 13
BAB IV
PEMBAHASAN MASALAH
Visual Basic 6.0 sebagai bahasa pemrograman dan Microsoft Access sebagai
2. Menu Utama, yaitu menu yang menjadi inti dari program aplikasi yang
terdiri dari sub menu Setting Data Pengguna, Data Barang, Data Inspector,
Menu Utama terdiri dari 5 sub menu, yaitu: File, Data Barang, Data
1. Sub Menu File terdiri dari 1 form yaitu Setting Data Pengguna, yang
didalamnya terdapat 6 pilihan proses yaitu cari data, input data baru, ubah
data, hapus data, simpan data, dan keluar. Dalam form ini user dapat
70
71
User dapat memasukkan data cartridge baru yang belum terdapat dalam
database. Dalam form ini terdapat 2 pilihan proses yaitu simpan dan
keluar.
User dapat merubah data cartridge yang ada dalam database. Dalam
form ini terdapat 3 pilihan proses yaitu cari data, simpan dan keluar.
Dalam form ini terdapat 3 pilihan proses yaitu cari data, hapus dan
keluar.
cartridge pada consumable. Dalam form ini ada 2 pilihan proses yaitu
User dapat mengubah dan menghapus data inspector yang ada dalam
database. Dalam form ini terdapat 4 pilihan proses yaitu cari data,
OQC untuk inspeksi produk. Dalam form ini terdapat 5 pilihan proses
oleh inspector. Dalam form ini terdapat 5 pilihan proses yaitu tambah,
User dapat melihat dan mencetak laporan stok cartridge yang terdapat
dan batal.
User dapat melihat dan mencetak detail laporan cartridge masuk dalam
periode perbulan. Dalam form ini terdapat 2 pilihan proses yaitu cetak
dan batal.
73
User dapat melihat dan mencetak detail laporan request cartridge yang
dilakukan oleh inspector OQC setiap tanggal. Dalam form ini terdapat 2
perharinya. Dalam form ini terdapat 2 pilihan proses yaitu cetak dan
batal.
74
a. Form Login
b. Menu Utama
Form Login
End
End Sub
rsLogin.LockType = adLockOptimistic
rsLogin.CursorType = adOpenDynamic
& txtuser.Text & "' AND password = '" & txtpass.Text & "'", conn, , ,
adCmdText
MDIForm1.fileLogin.Enabled = True
MDIForm1.mnuBarang.Enabled = True
MDIForm1.mnuInspector.Enabled = True
MDIForm1.mnuTransaksi.Enabled = True
MDIForm1.mnuLaporan.Enabled = True
MDIForm1.Show
84
Unload Me
Else
MDIForm1.fileLogin.Enabled = False
MDIForm1.mnuBarang.Enabled = False
MDIForm1.mnuInspector.Enabled = False
MDIForm1.mnuTransaksi.Enabled = True
MDIForm1.mnuLaporan.Enabled = False
MDIForm1.Show
Unload Me
End If
Else
Exit Sub
End If
End If
End Sub
koneksi
End Sub
85
Memu Utama
frmbarangmasuk.Show
End Sub
frmeditbrg.Show
End Sub
frmeditinspector.Show
End Sub
End
End Sub
frmhapusbrg.Show
End Sub
frmdatalogin.Show
86
End Sub
frmrequestbarang.Show
End Sub
frmreturn.Show
End Sub
frmtambahbrg.Show
End Sub
frmtambahinspector.Show
End Sub
frmlaporanbarangmasuk.Show
End Sub
frmlapbarangkeluarperhari.Show
End Sub
frmlapstok.Show
End Sub
frmlappemakaian.Show
End Sub
Dim tanya
tmpUser = txtusername.Text
tmpPass = txtpassword.Text
Do Until rsLogin.EOF
88
tmpPass Then
With rsLogin
.Delete
.UpdateBatch
End With
Kondisi Normal
Exit Do
End If
rsLogin.MoveNext
Loop
Else
Kondisi Normal
End If
cmdbaru.Enabled = True
End Sub
Unload Me
End Sub
cmdbaru.Enabled = False
cmdhapus.Enabled = False
Case "Ubah":
cmdubah.Caption = "Simpan"
cmbposisi.Locked = False
txtusername.Locked = False
txtpassword.Locked = False
txtpassword2.Locked = False
txtusername.SetFocus
tmpUser = txtusername.Text
tmpPass = txtpassword.Text
Case "Simpan":
cmdubah.Caption = "Ubah"
rsLogin.MoveFirst
Do Until rsLogin.EOF
tmpPass Then
With rsLogin
!UserName = txtusername.Text
!Password = txtpassword.Text
!posisi = cmbposisi.Text
.Update
90
End With
kondisiNormal
Exit Do
End If
rsLogin.MoveNext
Loop
End Select
End Sub
rsLogin.MoveFirst
txtusername.Text = rsLogin!UserName
txtpassword.Text = rsLogin!Password
cmbposisi.Text = rsLogin!posisi
dataIndex = 0
End If
End Sub
rsLogin.MoveLast
txtusername.Text = rsLogin!UserName
91
txtpassword.Text = rsLogin!Password
cmbposisi.Text = rsLogin!posisi
dataIndex = rsLogin.RecordCount - 1
End If
End Sub
cmdubah.Enabled = False
cmdhapus.Enabled = False
statuspass = False
Case "Baru":
cmbposisi.ListIndex = 0
txtusername.Text = ""
txtpassword.Text = ""
txtpassword2.Text = ""
cmbposisi.Locked = False
txtusername.Locked = False
txtpassword.Locked = False
txtpassword2.Locked = False
txtusername.SetFocus
cmdbaru.Caption = "Simpan"
92
Case "Simpan":
txtpassword.SetFocus
Else
rsLogin.MoveFirst
Do Until rsLogin.EOF
statuspass = True
Else
statuspass = False
End If
rsLogin.MoveNext
Loop
With rsLogin
.AddNew
!UserName = txtusername.Text
!Password = txtpassword.Text
!posisi = cmbposisi.Text
.Update
End With
93
kondisiNormal
Else
vbInformation
kondisiNormal
End If
End If
End Select
End Sub
rsLogin.MoveNext
txtusername.Text = rsLogin!UserName
txtpassword.Text = rsLogin!Password
cmbposisi.Text = rsLogin!posisi
dataIndex = dataIndex + 1
End If
Exit Sub
pesan: cmdlast_Click
End Sub
94
rsLogin.MovePrevious
txtusername.Text = rsLogin!UserName
txtpassword.Text = rsLogin!Password
cmbposisi.Text = rsLogin!posisi
dataIndex = dataIndex - 1
End If
Exit Sub
pesan: cmdfirst_Click
End Sub
koneksi
kondisiNormal
End Sub
Sub refreshData()
rsLogin.LockType = adLockOptimistic
rsLogin.CursorType = adOpenDynamic
95
End Sub
Sub kondisiNormal()
cmbposisi.ListIndex = 0
txtusername.Text = ""
txtpassword.Text = ""
txtpassword2.Text = ""
cmbposisi.Locked = True
txtusername.Locked = True
txtpassword.Locked = True
txtpassword2.Locked = True
cmdbaru.Enabled = True
cmdubah.Enabled = True
cmdhapus.Enabled = True
refreshData
End Sub
End If
End Sub
96
Sub refreshDG()
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
adCmdText
End Sub
Sub clearTxt()
txtkodebarang.SetFocus
txtkodebarang.Text = ""
txtnamabarang.Text = ""
cmbjenis.Locked = False
txtstok.Text = ""
txtlimitstok.Text = ""
End Sub
Unload Me
97
End Sub
Dim tanya
vbYesNo)
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
If rsBarang.EOF Then
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
adCmdText
With rsBarang
.AddNew
!kode_barang = txtkodebarang.Text
!nama_barang = txtnamabarang.Text
98
!jenis_cartridge = cmbjenis.Text
!stok = txtstok.Text
!limit_stok = Val(txtlimitstok.Text)
.Update
End With
refreshDG
clearTxt
Else
MsgBox "Barang dengan kode " & txtkodebarang.Text & " telah
txtkodebarang.SetFocus
Exit Sub
End If
Else
clearTxt
Exit Sub
End If
Exit Sub
clearTxt
Exit Sub
End Sub
99
koneksi
refreshDG
End Sub
= vbKeyBack) Then
KeyAscii = 0
End If
End Sub
Sub clearTxt()
txtkodebarang.Text = ""
txtnamabarang.Text = ""
txtlimitstok.Text = ""
txtcari.Text = ""
End Sub
Sub kondisiNormal()
100
cmbcari.ListIndex = 0
tmpKodeBarang = ""
clearTxt
refreshDG
End Sub
Sub refreshDG()
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
adCmdText
End Sub
KeyAscii = 0
End Sub
Unload Me
End Sub
101
Dim tanya
vbYesNo)
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
If rsBarang.EOF Then
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
With rsBarang
!kode_barang = txtkodebarang.Text
!nama_barang = txtnamabarang.Text
!jenis_cartridge = cmbjenis.Text
102
!limit_stok = Val(txtlimitstok.Text)
.Update
End With
kondisiNormal
txtcari.SetFocus
Else
MsgBox "Barang dengan kode " & txtkodebarang.Text & " telah
txtkodebarang.SetFocus
Exit Sub
End If
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
With rsBarang
!kode_barang = txtkodebarang.Text
!nama_barang = txtnamabarang.Text
!jenis_cartridge = cmbjenis.Text
!limit_stok = Val(txtlimitstok.Text)
103
.Update
End With
kondisiNormal
txtcari.SetFocus
End If
Else
kondisiNormal
Exit Sub
End If
Exit Sub
kondisiNormal
txtcari.SetFocus
Exit Sub
End Sub
tmpKodeBarang = dgbarang.Columns(0).Text
txtkodebarang.Text = dgbarang.Columns(0).Text
txtnamabarang.Text = dgbarang.Columns(1).Text
cmbjenis.Text = dgbarang.Columns(2).Text
104
txtlimitstok.Text = dgbarang.Columns(4).Text
Exit Sub
pesan:
kondisiNormal
Exit Sub
End Sub
koneksi
kondisiNormal
txtkodebarang.MaxLength = 9
End Sub
kriteria = ""
End Select
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
105
kriteria & " like '" & txtcari.Text & "%'", conn, , , adCmdText
End Sub
= vbKeyBack) Then
KeyAscii = 0
End If
End Sub
Sub clearTxt()
txtkodebarang.Text = ""
txtnamabarang.Text = ""
txtlimitstok.Text = ""
txtcari.Text = ""
End Sub
Sub kondisiNormal()
cmbcari.ListIndex = 0
106
tmpKodeBarang = ""
clearTxt
refreshDG
End Sub
Sub refreshDG()
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
adCmdText
End Sub
KeyAscii = 0
End Sub
Dim tanya
tanya = MsgBox("Hapus Barang dengan Kode " & tmpKodeBarang & " ?",
vbQuestion + vbYesNo)
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
rsBarang.Delete
rsBarang.UpdateBatch
kondisiNormal
txtcari.SetFocus
Else
kondisiNormal
txtcari.SetFocus
Exit Sub
End If
End Sub
Unload Me
End Sub
tmpKodeBarang = dgbarang.Columns(0).Text
108
txtkodebarang.Text = dgbarang.Columns(0).Text
txtnamabarang.Text = dgbarang.Columns(1).Text
txtjenis.Text = dgbarang.Columns(2).Text
txtlimitstok.Text = dgbarang.Columns(4).Text
Exit Sub
pesan:
kondisiNormal
Exit Sub
End Sub
koneksi
kondisiNormal
End Sub
kriteria = ""
End Select
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
kriteria & " like '" & txtcari.Text & "%'", conn, , , adCmdText
End Sub
= vbKeyBack) Then
KeyAscii = 0
End If
End Sub
Sub refreshDG()
rsInspector.LockType = adLockOptimistic
rsInspector.CursorType = adOpenDynamic
adCmdText
End Sub
110
Sub clearTxt()
txtnik.Text = ""
txtnamainspector.Text = ""
cmbstatus.Locked = False
txtnik.SetFocus
End Sub
Unload Me
End Sub
Dim tanya
+ vbYesNo)
rsInspector.LockType = adLockOptimistic
rsInspector.CursorType = adOpenDynamic
111
If rsInspector.EOF Then
rsInspector.LockType = adLockOptimistic
rsInspector.CursorType = adOpenDynamic
adCmdText
With rsInspector
.AddNew
!nik = txtnik.Text
!nama_inspector = txtnamainspector.Text
!Status = cmbstatus.Text
.Update
End With
refreshDG
clearTxt
Else
MsgBox "inspector dengan NIK " & txtnik.Text & " telah terdaftar."
txtnik.SetFocus
112
Exit Sub
End If
Else
clearTxt
Exit Sub
End If
Exit Sub
clearTxt
Exit Sub
End Sub
koneksi
refreshDG
End Sub
Sub clearTxt()
txtnik.Text = ""
txtnamainspector.Text = ""
txtcari.Text = ""
113
End Sub
Sub kondisiNormal()
tmpNik = ""
clearTxt
refreshDG
End Sub
Sub refreshDG()
rsInspector.LockType = adLockOptimistic
rsInspector.CursorType = adOpenDynamic
adCmdText
End Sub
Dim tanya
tanya = MsgBox("Hapus Inspector dengan NIK " & tmpNik & " ?",
vbQuestion + vbYesNo)
rsInspector.LockType = adLockOptimistic
114
rsInspector.CursorType = adOpenDynamic
rsInspector.Delete
rsInspector.UpdateBatch
kondisiNormal
txtcari.SetFocus
Else
kondisiNormal
txtcari.SetFocus
Exit Sub
End If
End Sub
Unload Me
End Sub
Dim tanya
+ vbYesNo)
115
rsInspector.LockType = adLockOptimistic
rsInspector.CursorType = adOpenDynamic
If rsInspector.EOF Then
rsInspector.LockType = adLockOptimistic
rsInspector.CursorType = adOpenDynamic
With rsInspector
!nik = txtnik.Text
!nama_inspector = txtnamainspector.Text
!Status = cmbkaryawan.Text
.Update
End With
kondisiNormal
txtcari.SetFocus
116
Else
MsgBox "Inspector dengan NIK " & txtnik.Text & " telah terdaftar."
txtnik.SetFocus
Exit Sub
End If
rsInspector.LockType = adLockOptimistic
rsInspector.CursorType = adOpenDynamic
With rsInspector
!nik = txtnik.Text
!nama_inspector = txtnamainspector.Text
!Status = cmbkaryawan.Text
.Update
End With
kondisiNormal
txtcari.SetFocus
End If
117
Else
kondisiNormal
Exit Sub
End If
Exit Sub
kondisiNormal
txtcari.SetFocus
Exit Sub
End Sub
tmpNik = dginspector.Columns(0).Text
txtnik.Text = dginspector.Columns(0).Text
txtnamainspector.Text = dginspector.Columns(1).Text
cmbkaryawan.Text = dginspector.Columns(2).Text
Exit Sub
pesan:
kondisiNormal
Exit Sub
End Sub
118
koneksi
kondisiNormal
End Sub
rsInspector.LockType = adLockOptimistic
rsInspector.CursorType = adOpenDynamic
End Sub
Sub loadBarang()
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
End Sub
Sub kondisiNormal()
loadBarang
tglmasuk.Value = Date
tmpkode = ""
txtkodetransfer.Text = ""
txtkodebarang.Text = ""
txtnamabarang.Text = ""
txtcari.Text = ""
txtjenis.Text = ""
txtjumlah.Text = ""
End Sub
Sub refreshDGSementara()
rsBarang_masuk.LockType = adLockOptimistic
rsBarang_masuk.CursorType = adOpenDynamic
rsBarang_masuk.MoveFirst
Do Until rsBarang_masuk.EOF
120
rsBarang_masuk.MoveNext
Loop
Else
End If
End Sub
Unload Me
End Sub
rsBarang_masuk.LockType = adLockOptimistic
rsBarang_masuk.CursorType = adOpenDynamic
If rsBarang_masuk.EOF Then
rsBarang_masuk.LockType = adLockOptimistic
121
rsBarang_masuk.CursorType = adOpenDynamic
With rsBarang_masuk
.AddNew
!kode_barang = txtkodebarang.Text
!nama_barang = txtnamabarang.Text
!jenis_cartridge = txtjenis.Text
!jumlah = txtjumlah.Text
.Update
End With
Else
With rsBarang_masuk
.Update
End With
End If
txtkodebarang.Text = ""
txtnamabarang.Text = ""
txtjenis.Text = ""
txtjumlah.Text = ""
refreshDGSementara
End Sub
122
Sub hapusDGSementara()
rsBarang_masuk.LockType = adLockOptimistic
rsBarang_masuk.CursorType = adOpenDynamic
rsBarang_masuk.MoveFirst
Do Until rsBarang_masuk.EOF
rsBarang_masuk.Delete
rsBarang_masuk.UpdateBatch
rsBarang_masuk.MoveNext
Loop
refreshDGSementara
End If
End Sub
Dim tanya
hapusDGSementara
kondisiNormal
123
Else
Exit Sub
End If
End Sub
rsBarang_masuk.LockType = adLockOptimistic
rsBarang_masuk.CursorType = adOpenDynamic
rsBarang_masuk.MoveFirst
Do Until rsBarang_masuk.EOF
rsBarang_masuk2.LockType = adLockOptimistic
rsBarang_masuk2.CursorType = adOpenDynamic
conn, , , adCmdText
With rsBarang_masuk2
.AddNew
!tanggal_masuk = tglmasuk.Value
!Shift = cmbshift.Text
124
!kode_transfer = txtkodetransfer.Text
!kode_barang = rsBarang_masuk!kode_barang
!nama_barang = rsBarang_masuk!nama_barang
!jenis_cartridge = rsBarang_masuk!jenis_cartridge
!jumlah = rsBarang_masuk!jumlah
.Update
End With
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
With rsBarang
.Update
End With
rsBarang_masuk.MoveNext
Loop
kondisiNormal
hapusDGSementara
End If
End Sub
125
rsBarang_masuk.LockType = adLockOptimistic
rsBarang_masuk.CursorType = adOpenDynamic
adCmdText
If rsBarang_masuk.EOF Then
Exit Sub
Else
rsBarang_masuk.Delete
rsBarang_masuk.UpdateBatch
refreshDGSementara
End If
End Sub
txtkodebarang.Text = dgbarang.Columns(0).Text
txtnamabarang.Text = dgbarang.Columns(1).Text
txtjenis.Text = dgbarang.Columns(2).Text
txtjumlah.SetFocus
126
End Sub
tmpkode = dgmasuksementara.Columns(0).Text
End Sub
koneksi
loadBarang
tglmasuk.Value = Date
End Sub
kriteria = ""
End Select
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
127
kriteria & " like '" & txtcari.Text & "%'", conn, , , adCmdText
End Sub
= vbKeyBack) Then
KeyAscii = 0
End If
End Sub
Sub loadBarang()
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
End Sub
Sub kondisiNormal()
128
loadBarang
tglkeluar.Value = Date
tmpkode = ""
txtkoderequest.Text = ""
txtkodebarang.Text = ""
txtnamabarang.Text = ""
txtjenis.Text = ""
txtjumlah.Text = ""
txtnik.Text = ""
txtnamainspector.Text = ""
cmbmodel.Text = ""
txtcari.Text = ""
End Sub
Sub refreshDGSementara()
rsRequest.LockType = adLockOptimistic
rsRequest.CursorType = adOpenDynamic
conn, , , adCmdText
rsRequest.MoveFirst
Do Until rsRequest.EOF
129
rsRequest.MoveNext
Loop
Else
End If
End Sub
Unload Me
End Sub
rsRequest.LockType = adLockOptimistic
rsRequest.CursorType = adOpenDynamic
If rsRequest.EOF Then
rsRequest.LockType = adLockOptimistic
rsRequest.CursorType = adOpenDynamic
130
conn, , , adCmdText
With rsRequest
.AddNew
!kode_barang = txtkodebarang.Text
!nama_barang = txtnamabarang.Text
!jenis_cartridge = txtjenis.Text
!jumlah = txtjumlah.Text
!return = 0
!total = txtjumlah.Text
.Update
End With
Else
With rsRequest
.Update
End With
End If
txtkodebarang.Text = ""
txtnamabarang.Text = ""
txtjenis.Text = ""
txtjumlah.Text = ""
refreshDGSementara
End Sub
131
Sub hapusDGSementara()
rsRequest.LockType = adLockOptimistic
rsRequest.CursorType = adOpenDynamic
conn, , , adCmdText
rsRequest.MoveFirst
Do Until rsRequest.EOF
rsRequest.Delete
rsRequest.UpdateBatch
rsRequest.MoveNext
Loop
refreshDGSementara
End If
End Sub
Dim tanya
vbYesNo)
hapusDGSementara
kondisiNormal
Else
Exit Sub
End If
End Sub
rsRequest.LockType = adLockOptimistic
rsRequest.CursorType = adOpenDynamic
conn, , , adCmdText
rsRequest.MoveFirst
Do Until rsRequest.EOF
rsRequest2.LockType = adLockOptimistic
rsRequest2.CursorType = adOpenDynamic
adCmdText
With rsRequest2
.AddNew
133
!tanggal_keluar = tglkeluar.Value
!Shift = cmbshift.Text
!kode_request = txtkoderequest.Text
!nama_inspector = txtnamainspector.Text
!model_printer = cmbmodel.Text
!kode_barang = rsRequest!kode_barang
!nama_barang = rsRequest!nama_barang
!jenis_cartridge = rsRequest!jenis_cartridge
!jumlah = rsRequest!jumlah
!return = 0
!total = rsRequest!jumlah
.Update
End With
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
With rsBarang
.Update
End With
rsRequest.MoveNext
134
Loop
kondisiNormal
hapusDGSementara
End If
End Sub
rsRequest.LockType = adLockOptimistic
rsRequest.CursorType = adOpenDynamic
If rsRequest.EOF Then
Exit Sub
Else
rsRequest.Delete
rsRequest.UpdateBatch
refreshDGSementara
End If
End Sub
135
txtkodebarang.Text = dgbarang.Columns(0).Text
txtnamabarang.Text = dgbarang.Columns(1).Text
txtjenis.Text = dgbarang.Columns(2).Text
txtjumlah.SetFocus
End Sub
tmpkode = dgrequestsementara.Columns(0).Text
End Sub
koneksi
loadBarang
tglkeluar.Value = Date
End Sub
= vbKeyBack) Then
KeyAscii = 0
End If
End Sub
136
rsInspector.LockType = adLockOptimistic
rsInspector.CursorType = adOpenDynamic
If rsInspector.EOF Then
rsInspector.LockType = adLockOptimistic
rsInspector.CursorType = adOpenDynamic
adCmdText
txtnik.SetFocus
Else
txtnamainspector.Text = rsInspector!nama_inspector
End If
End Sub
kriteria = ""
137
End Select
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
kriteria & " like '" & txtcari.Text & "%'", conn, , , adCmdText
End Sub
Sub clearTxt()
txtkodebarang.Text = ""
txtnamabarang.Text = ""
txtjenis.Text = ""
txtjumlah.Text = ""
txtreturn.Text = ""
txttotal.Text = ""
txtcari.Text = ""
End Sub
138
Sub kondisiNormal()
tmpkode = ""
clearTxt
refreshDG
txtkodebarang.Locked = True
txtnamabarang.Locked = True
txtjenis.Locked = True
txtjumlah.Locked = True
txttotal.Locked = True
End Sub
Sub refreshDG()
rsRequest.LockType = adLockOptimistic
rsRequest.CursorType = adOpenDynamic
adCmdText
End Sub
Dim tanya
139
vbYesNo)
hapusDGSementara
kondisiNormal
Else
Exit Sub
End If
End Sub
Unload Me
End Sub
rsRequest.LockType = adLockOptimistic
rsRequest.CursorType = adOpenDynamic
End Sub
140
tmpkode = dgrequest.Columns(2).Text
txtkodebarang.Text = dgrequest.Columns(5).Text
txtnamabarang.Text = dgrequest.Columns(6).Text
txtjenis.Text = dgrequest.Columns(7).Text
txtjumlah.Text = dgrequest.Columns(8).Text
txtreturn.Text = dgrequest.Columns(9).Text
txtreturn.SetFocus
Exit Sub
pesan:
kondisiNormal
Exit Sub
End Sub
koneksi
kondisiNormal
End Sub
End Sub
141
Sub refreshDGSementara()
rsRequest.LockType = adLockOptimistic
rsRequest.CursorType = adOpenDynamic
conn, , , adCmdText
rsRequest.MoveFirst
Do Until rsRequest.EOF
rsRequest.MoveNext
Loop
Else
End If
End Sub
rsRequest.LockType = adLockOptimistic
rsRequest.CursorType = adOpenDynamic
142
If rsRequest.EOF Then
rsRequest.LockType = adLockOptimistic
rsRequest.CursorType = adOpenDynamic
conn, , , adCmdText
With rsRequest
.AddNew
!kode_barang = txtkodebarang.Text
!nama_barang = txtnamabarang.Text
!jenis_cartridge = txtjenis.Text
!jumlah = txtjumlah.Text
!return = txtreturn.Text
!total = txttotal.Text
.Update
End With
Else
With rsRequest
.Update
End With
End If
143
txtkodebarang.Text = ""
txtnamabarang.Text = ""
txtjenis.Text = ""
txtjumlah.Text = ""
txtreturn.Text = ""
txttotal.Text = ""
refreshDGSementara
End Sub
Sub hapusDGSementara()
rsRequest.LockType = adLockOptimistic
rsRequest.CursorType = adOpenDynamic
conn, , , adCmdText
rsRequest.MoveFirst
Do Until rsRequest.EOF
rsRequest.Delete
rsRequest.UpdateBatch
rsRequest.MoveNext
Loop
refreshDGSementara
144
End If
End Sub
rsRequest.LockType = adLockOptimistic
rsRequest.CursorType = adOpenDynamic
conn, , , adCmdText
rsRequest.MoveFirst
Do Until rsRequest.EOF
rsRequest2.LockType = adLockOptimistic
rsRequest2.CursorType = adOpenDynamic
With rsRequest2
!return = Val(rsRequest!return)
!total = Val(rsRequest!total)
.Update
End With
rsBarang.LockType = adLockOptimistic
rsBarang.CursorType = adOpenDynamic
With rsBarang
.Update
End With
rsRequest.MoveNext
Loop
kondisiNormal
hapusDGSementara
End If
End Sub
cr.Formulas(0) = "Bulan = '" & cmbbln.Text & " " & cmbthn.Text & "'"
cr.Action = 1
146
End Sub
Unload Me
End Sub
For i = 1 To 12
Me.cmbbln.AddItem Bulan(i)
Next i
Me.cmbbln.ListIndex = Month(Date)
Me.cmbthn.AddItem Year(Date) - 1
Me.cmbthn.AddItem Year(Date)
Me.cmbthn.ListIndex = 1
End Sub
Unload Me
End Sub
If IsDate(txttanggal) Then
cr.Action = 1
Else
txttanggal.SetFocus
End If
End Sub
Me.Width = 3750
Me.Height = 2325
Me.Top = 250
Me.Left = 3500
End Sub
txttanggal.SelStart = 0
txttanggal.SelLength = 10
148
End Sub
End Sub
Unload Me
End Sub
cr.Action = 1
End Sub
Unload Me
End Sub
If IsDate(txttanggal) Then
cr.Action = 1
Else
txttanggal.SetFocus
End If
End Sub
Me.Width = 3750
Me.Height = 2325
Me.Top = 250
Me.Left = 3500
End Sub
txttanggal.SelStart = 0
txttanggal.SelLength = 10
End Sub
BAB V
PENUTUP
5.1 Kesimpulan
pemrosesan data yang cepat dan akurat, dengan komputer segalanya menjadi
4. Dengan adanya program ini proses masuk dan keluarnya cartridge menjadi
150
151
5.2 Saran
operator consumable.
Jamaludin Malik, Jaja. 2007. Kumpulan Tip Trik Pemrograman Visual Basic.
Andi, Yogyakarta.
Madcoms. 2005. Mahir Dalam 7 Hari Pemrograman Visual Basic 6.0. Andi,
Yogyakarta.
Ramadhan, Arief. 2004. Seri Penuntun Praktis Microsoft Visual Basic 6.0. Elex
Media Komputindo, Jakarta.
Razaq, Abdul. 2004. Kupas Tuntas Microsoft Office Access 2003. Indah,
Surabaya.
Yuswanto, 2001. Panduan Belajar SQL Microsoft Access 2002. Prestasi Pustaka,
Surabaya.
152