Hari ini :
Program ini dasarnya mirip dengan Program Puskesmas yang saya bahas sebelumnya, hanya saja kata kata item diganti dengan Barang dan sebagai supplier adalah toko.
Program ini dasarnya mirip dengan Program Puskesmas yang saya bahas sebelumnya, hanya saja kata kata item diganti dengan Barang dan sebagai supplier adalah toko.
-------------------------------------------------------
Public Sub
Main()
Set conn =
New ADODB.Connection
On Error
GoTo Kesalahan
conn.Open
"Provider=SQLOLEDB.1;Persist Security Info=False; Integrated
Security=SSPI;" & _
"Initial
Catalog=db_Inventaris;"
Utama.Show
FrmLogin.Show
vbModal
Kesalahan:
If
Err.Number = -2147467259 Then
MsgBox "Komputer Server tidak
aktif." & Chr(13) & _
"Aktifkan komputer Server terlebih
dahulu." & vbCrLf & _
"Atau hubungi Administrator."
& vbCrLf & vbInformation, "Koneksi Error"
End If
End Sub
--------------------------------------
Dapat dilihat bahwa nama database
yang digunakan adalah db_Inventaris, sesuai dengan tujuan program yaitu
mengetahui stok barang-barang yang ada disekolah dan kemana saja barang ketika
dipinjam.
Ketika dijalankan (F5) maka akan
tampil Halaman Utama dengan background Bengkel karena data diambil dari SMK
otomotif dan tidak lupa juga Pembatasan Hak Akses dengan tampilnya form Login.
Dimana yang berhak mengakses semua halama hanya yang data loginya sama dengan
data login yang ada di dalam database program dan bila data salah maka user
akan diberikan kesempatan maksimal 3 kali mencoba bila tetap salah maka
program otomatis tertutup.
1.
Master Barang
Dapat diakses dari Data Master -> Barang, terdiri atas 2
form dimana form yang ke-2 akan tampil bila tombol “Tambah” atau “Ubah”
ditambah. Digunakanya 2 form ini agar kesan professional dan simple tertampil
dari program, tetapi bisa juga tetap dengan 1 form hanya saja dengan
pengendalian Properties Visible. Hasilnya akan tetap sama hanya saja pada 2
form maka koding terletak di 2 form dan perlu kejelian untuk mengetahui jalur
kodenya. Terkadang data yang di form-1 akan berpindah ke form-2 begitu pula
sebaliknya. Sedang pada 1 form dengan Properties Visible komponen yang
diubah-ubah maka koding akan menjadi lebih banyak di form tersebut.
Form Barang dengan 1 form
Form Barang dengan form ke-2 tampil
2.
Master Toko Supplier
Dapat diakses dari Data Master -> Toko Supplier , hanya
terdiri dari 1 form saja karena data yang masuk tidak terlalu banyak. Kode Toko
akan secara otomatis trisi bila tombol “Tambah” ditekan. Data tidak akan
disimpan bila data lain seperti nama toko, alamat atau telpon belum diisi.
Untuk mengubah data cukup memilih data dari grid, maka tombol “Simpan” yang
juga berfungsi sebagai tombol “Update” akan aktif. Untuk proses penghapusan
juga begitu, harus ada dahulu data yang dipilih.
3.
Data Transaksi Barang Masuk
Dapat diakses dari Data Transaksi -> Barang Masuk ,
terdiri dari 2 form, form yang pertama berfungsi untuk menampilkan data, sedang
form ke-2 berfungsi sebagai Form Input atau Delete data. Dengan 2 form ini maka
ada lebih banyak ruang untuk melihat data Barang Masuk dan Lebih banyak ruang
juga untuk menginput barang.
4.
Data Transaksi Barang Rusak
Dapat diakses dari Data Transaksi -> Barang Rusak , terdiri
dari 1 form, yaitu untuk menampilkan Daftar Data Barang Rusak yang Masuk.
Sedangkan untuk input barang rusaknya kita gunakan Frame yang disembunyikan
atau kita atur melalui koding, Properties Visiblenya.
5.
Data Transaksi Peminjaman Barang
Dapat diakses dari Data Transaksi -> Peminjaman Barang
6.
Data Transaksi Stok Barang
Dapat diakses dari Data Transaksi -> Stok Barang
7.
Pencarian
Di menu Pencarian, ada 3 macam
pencarian: Pencarian Barang Masuk, Pencarian Barang Rusak dan Pencarian
Peminjaman Barang, yang apabila ditampilkan maka semua pencarian akan seperti
ini:
8.
Laporan
Hasil akhir dari Program ini :
Sederhana
ya laporannya, tapi sebenarnya ada kerumitan juga dalam kodinya, berikut
penggalan koding untuk menampilkan Laporan diatas :
--------------------------------------------------------------------------------------------------------------
Private Sub
CmdTampil_Click()
Dim
VarBulanstok As Integer
If
CboBulan.Text = "" Then
Exit Sub
ElseIf
CboTahun.Text = "" Then
Exit Sub
End If
VarBulanstok
= Val(VarBulan) - 1
sql =
"select NmBarang, Satuan, Harga, " & _
"(Select
Stok from TblBarangStok where KdBarang= TblBarang.KdBarang and Month(Tgl) =
'" & Trim(VarBulanstok) & "' and " & _
"Year(Tgl)
= '" & Trim(CboTahun.Text) & "' " & _
"and
Urut = (Select Max (Urut) from TblBarangStok where KdBarang= TblBarang.KdBarang
and Month(Tgl) = '" & Trim(VarBulanstok) & "' and " & _
"Year(Tgl)
= '" & Trim(CboTahun.Text) & "' )) as JumlahAwal, "
& _
"(Select
Sum (JlhMasuk) from TblBarangMasukDetail inner join TblBarangMasuk on
TblBarangMasuk.NoFaktur = TblBarangMasukdetail.NoFaktur " & _
"where
TblBarangMasukDetail.KdBarang= TblBarang.KdBarang and Month(TblBarangMasuk.Tgl)
= '" & Trim(VarBulan) & "' and " & _
"Year(TblBarangMasuk.Tgl)
= '" & Trim(CboTahun.Text) & "') as JumlahMasuk, " &
_
"(Select
Sum (JlhRusak) from TblBarangRusak where TblBarangrusak.KdBarang=
TblBarang.KdBarang and Month(Tgl) = '" & Trim(VarBulan) & "'
and " & _
"Year(Tgl)
= '" & Trim(CboTahun.Text) & "') as JumlahRusak, " &
_
"(Select
Sum (JlhPinjam) from TblBarangPinjam where TblBarangPinjam.KdBarang=
TblBarang.KdBarang and Month(TglPinjam) = '" & Trim(VarBulan) &
"' and " & _
"Year(TglPinjam)
= '" & Trim(CboTahun.Text) & "' and Status = 'Dipinjam' ) as
JumlahPinjam, " & _
"(Select
Sum (JlhPinjam) from TblBarangPinjam where TblBarangPinjam.KdBarang=
TblBarang.KdBarang and Month(TglKembali) = '" & Trim(VarBulan) &
"' and " & _
"Year(TglKembali)
= '" & Trim(CboTahun.Text) & "' and Status = 'Dikembalikan' )
as JumlahKembali " & _
"from
TblBarang "
Set rsCetak
= New ADODB.Recordset
rsCetak.CursorLocation
= adUseClient
rsCetak.Open
sql, conn, 3, 4
If
rsCetak.RecordCount = 0 Then
MsgBox "Data Kosong!",
vbExclamation, "Kosong"
Exit Sub
Else
Report.DiscardSavedData
Report.Database.SetDataSource rsCetak
PreviewStokBarang.CRViewer1.ReportSource =
Report
Report.FormulaFields.Item(1).Text = Chr(34) & CboBulan.Text &
Chr(34)
Report.FormulaFields.Item(2).Text = Chr(34)
& CboTahun.Text & Chr(34)
PreviewStokBarang.CRViewer1.ViewReport
PreviewStokBarang.CRViewer1.Zoom (100)
PreviewStokBarang.CRViewer1.EnableGroupTree
= False
PreviewStokBarang.CRViewer1.EnableExportButton = True
Set rsCetak = Nothing
PreviewStokBarang.Show
End If
End Sub