BABV
IMPLEMENTASI PERANGKAT LUNAK
Implementasi Aplikasi Basis Data Obat dibangun menggunakan Visual
Basic 6.0 dengan database menggunakan Microsoft Access. Susunan lengkap
komponen aplikasi yang digunakan adalah :
a. TRMPASSWORD.FRM, berfungsi sebagai menu password aplikasi.
b. MENU.FRM, berfungsi sebagai menu yang mengontrol keseluruhan program
aplikasi.
c. FRMSTOK.FRM, merupakan antar muka yang berfungsi untuk merekam data
Obat.
d. FRMDISTRIBUTOR.FRM, merupakan antar muka yang berfungsi untuk
merekam data Distributor.
e. FRMMASUK.FRM, merupakan antar muka yang berfungsi untuk merekam
data Pemasukan Stok Obat.
f.
FRMJUAL.FRM, merupakan antar muka yang berfungsi untuk merekam data
Penjualan Stok Obat.
g. MODKONEKADO.BAS, berisi prosedur untuk melakukan pengaktifan
koneksi database dengan metode koneksi ADO.
h. Data Report adalah komponen visual untuk perancangan hasil keluaran
(output), juga berfungsi sebagai media koneksi database metode ADO (activex
data object) yang bertugas sebagai pengolah database.
5.1 Sandi Aplikasi (PASS.FRM)
Antar muka aplikasi ini memiliki tampilan interface sebagai berikut:
PASSWORD
Password Qk
fiatal
Gambar 5.1 Tampilan Sandi (Password) aplikasi.
Interface aplikasi ini mempunyai data masukan PASSWORD, tombol OK
dan tombol BATAL.
Tombol BATAL berfungsi untuk membatalkan operasi pemasukan data
sandi aplikasi. Sedangkan tombol OK untuk melaksanakan validasi atau pengujian
terhadap data sandi aplikasi.
Jika benar maka program akan menampilkan menu utama aplikasi, jika
salah maka program akan menampilkan pesan kesalahan data sandi yang
di masukan.
Procedure yang digunakan adalah sebagai berikut:
Private Sub TomCari_Click {)
If TxtPassword.Text = "" Then
MsgHox "Masukkan password anda ! ", vblniormation, "Informasi"
Else
If TxtPassword.Text = "a" Then
Unload Me
menu.Show E i S G
kali = kali + 1
MsgBox "Password yang dimasukkan salah !"
End If
End If
If kali - 3 Then End
5.2 Menu Utama Aplikasi (MENU.FRM)
Antar muka aplikasi ini memiliki tampilan interface sebagai berikut
39
Gambar 5.2 Tampilan Menu Utama Aplikasi.
Pilihan yang disediakan oleh menu utama antara lain Master Data Stok,
Distributor, dan Kriteria Nilai Penjualan. Pilihan Transaksi terdiri dari dua sub
pilihan yakni Data Stok Masuk dan Penjualan.
Pilihan lainnya adalah Laporan untuk menyajikan laporan, pilihan Selesai
untuk keluar dari aplikasi dan kembali ke sistem operasi Windows.
Semua pilihan dilaksanakan dengan mengklik satu kali pada pilihan yang
tersedia tersebut diatas.
Procedure yang digunakan adalah sebagai berikut:
Private Sub Form Activate()
BukaKoneksiDatabase End Sub
Private Sub Form_Load()
Flash.Movie = App.Path &"\menu.swf"
m e n u
ke - 1
t • '<• •- • ,3.,.. \ .
5.3 Menu Input data
i
'
r
f
Menu Input data digunakan untuk memasukan data yang dibutuhkan oleh
sistem Aplikasi Basis Data Obat. Menu ini dipisahkan berdasarkan bagian dan
sesuai dengan gambaran tugas pada bagian yang bersangkutan.
5.3.1 Menu Input Data Stok (FRMSTOK.KRM)
Antar muka aplikasi ini memiliki tampilan interface sebagai berikut:
Data S t o k Obat
Jenis Obat: KodeObat: Nama Obat Haga Satuan. Jmrtgn Stok. Satuan: + Tambah £31
Browse OtS.
1
<* Liquid <~ Padat«\4
_d^J
* Kdus P" Bungkus <~ Kotak C Kilogiam C La«>Lai(i Ed*Gambar 5.3 Tampilan Aplikasi Data Stok.
Antar muka ini memiliki masukan antara lain Jenis Obat, Kode Obat,
Nama Obat, Harga Satuan, Jumlah Stok, dan Satuan.
Aplikasi ini memiliki tombol TAMBAH untuk menambah data, EDIT
untuk koreksi data, SIMPAN untuk merekam data, dan tombol KELUAR untuk
keluar dari aplikasi.
41
Panel data diatas berfungsi untuk melihat data paling awal, data
sebelum, data sesudah dan data terakhir.
Procedure yang digunakan adalah sebagai berikut:
Private Sub CmdAwal_c:i±ck {)'Pindah ke record pertama
On Error Resume Next
rsobat-MoveFirst
Call Tampj. 1 kanIJata
End Sub
Private Sub CmdAkhir_Click()
'Prndah Ke record terakhir
On Error Resume Next
rsobat.MoveLast
Call Tampi1kanData
End Sub
Private Sub CmdSe5udah_C]ick()
On Error Resume Next
With r.sObat •MoveNext If .EOF Then .MoveFjrat End If Call Tampi1kanData End With End Sub
Private Sub CmdSebelum_Clickr)
On Error Resume Next
With rsobat
.MoveP nevi ous
If .BOF Then .MoveT.ast End If Call TampiIkanData End With End Sub
lombol ini berftingsi untuk menambali data.
Procedure yang digunakan adalah sebagai berikut:
Private Sub CradTambah Clickf)
On Error Resume Next
If CmdTambah.Caption = "iTambah" Then
stsedit = False Call HrdupkanKontrol Call Kosongkan Call NonAktifkanTombolRecord cmdSimpan.Enabled - True CmdTambah.Caption = "SBatal" CmdTambah.TextColor - &HFF& CmdEdit.Enabled = False
TxtKode.SetFocus
Klse
r^Obat.CancelUpdate Call AktifkanTombolRecord cindSimpan. Enabled - FaJse
CmdEdit.Enabled = True
CmdTambah. Caption = "iTambah"
CmdTambah.TextCol or - &HH000G0O8 rsobat.MoveLast Call TampilkanData Call MatikanKontroi End it" End Sub
P
Edit
Tombol ini berfungsi untuk mengkoreksi data.
Procedure yang digunakan adalah sebagai berikut:
Private Sub CmdEdit_Cli ck()
if TxtKode.Text - "" Then Exit Sab If CmdEdit.Caption = "&Edit" Then
stsedit = True Call HidupkanKontrol Call NonAktifkanTombolRecord cmdSimpan.Enabled = True CmdTambah.Enabled = False CmdEdit.caption - "sBatal" CmdEdit.TextColor - sHi'Fi TxtStok.Enabled = True Else stsedit = false rsobat.CancelUpdate Call AktLIkanTombolRecord Call MatikanKontroi cmdSimpan.Enabled -= False CmdTambah.Enabled = True CmdEdit.Caption - "SEdit"
CmdEdit. TextColor - S.H8QO000OG
rsObat.MoveLast
Call TampiIkanData
End JI
End Sub
Tombol ini berfungsi utk merekam data.
Procedure yang digunakan adalah sebagai berikut:
Private Sub cmdSimpan Click;')
Tf OpJenis(O).Value - True Then tempjenis = "L'
If OpJems(l).Value - True Then tempienis
--
"P-For i - 0 To 3
If OpSat(i).Value = True Then
tempsatuan = OpSat(i).Caption
Exit For
End If Next i
us a &> g
S*
u -E-i : ^ c 9 g WJ JS J_] ™ H X X ,_ : -. 1) H ^ -t-l Eh >: TS ^ -0 g tc : H y £ O .j, <r> VI -V TJ 5-1 ^H Z, os 0 oa
rj 4-1 -H Q H " r-4J W < -E X .-H a; G (C «h tr •—i -P o -r~i — f> c TS H E &= W a; r" M H W g -ij -C 5 -W : l. H u H D J Eh Or 0 0)g£:
^ ^ 4-1 'Ji fn ^ e > 3 4-" i. ,-t •e n 0 C *-• H 50 O -^ rtS ~ " E -0 T X -it: £ m ^ jj <£ Oi O « X X M -i Eh •P Eh W IB W £ X •~_ -— X 4-1 11 g o £ £ -j K 3 •H Ei -H 0) X! H •4-1 S-l n i-n E-— •c Eh g E-Q. -g « u ct g "H P. Jl •a •-J) o •H H E <n -1 H H a)-Call
cmdsi
CmdTaCmdEd
CmdEd
tj Cas
E L0 TJ -H (J E a <d i! H i-H rH 1-4 tti m O V. 01 m m 1 <u n 0 jc ,v o Q J n Ci, 4 lH --3 H H c ^ H c & -P h a M 01 l3 4J (13 O XI IC H M o to £ <D S-) c tn r0 p w o rS -H Cn . u o; £ CO ji X ^ H Q >-Jl K ^5 s-i O r-S X4 -H -i— O H > 4J w =C 4 •P o W ^ s <n « u Q> -< < u II tj' w •j O <U H M 0! m Di o Q tJi rr. O fj k->H irj di Eh n h 4 « E 0 95 Ed IP ID H U> oj ax HI •P E a .C E O SJ u g g r r=: rr rfl •' E <j 5Jl is-i
iyi 3 -^ ro ^ r^ CJ ^ j2 & ca '3 .__ W) 5_j T3 (— C/l 2 _c Z3 ra •a ^^ cd o •4—l c§
u •H Di 3 --£ r-4 (S u •H JZ +J o a . a£
*5
r-H ai ai II ac o J -O§
g i-H T3 i— >> .0o^
• »-• ^ ^ T O TJ u> V. Xi 5_> fll "5 3 O 0s
01 4-1 C o 4-> rH. 04 C XJ 3 B o E-> M CU '-} f: D TJ iEAdapun tampilan koreksi data Stok dapat dilihat pada tampilan berikut
dibawah ini :
i <i4etT4 ^SESHHWHNB ' [ ."(HOif* | p_ U-tmi IrV-E ^L4iid•jwi ._-SUJU ''•1 Kir i. \ P.-r.lrr.-y. $;*-> 1JT 75C — h— i|)L001 UWIIA .qud 'Jda i^JO) "tori
0pivgce >,W.WEX Pad3t 22JW
7 Antan^n
•atll
: x o 1O0
- I
POKHU Mr alt j
ft^rfo-un ^ i x KKU rrrs [torn
Gambar 5.4 Tampilan Aplikasi Koreksi Data Stok.
5.3.2 Menu Fnput Data Distributor (FRMDISTRIBUTOR.FRM)
Antar muka aplikasi ini memiliki tampilan interface sebagai berikut:
Date Dntibuln ) Browse Diaiibutoi "]
Kode Llislirbutoi I *t I 1 j f I ^ NamaDiWiUutcr f"" ' ~ ' ' "™~~ AldmsL Tftlnpon. t"-Mail | ~ "" ~ ~ ~~~ lambah ;| P £d-l ', Kek,at
Gambar 5.5 Tampilan Aplikasi Data Distributor.
Antar muka ini memiliki masukan antara lain Kode Distributor, Nama
Distributor, Alamat, Telephone, dan e-Mail. Aplikasi
ini
memiliki
tombol
TAMBAH untuk menambali data, EDIT untuk koreksi data, SIMPAN untuk
merekam data, dan tombol KELUAR untuk keluar dari aplikasi.
45
Panel data diatas berfungsi untuk melihat data paling awal, data
sebelum, data sesudah dan data terakhir.
Procedure yang digunakan adalah sebagai berikut:
Private Sub CmdAwal_Click()
'Pindah ke record pertama
On Error Resume Next
rsobat.MoveFi rst
Call TampilkanData
End Sub
Private Sub CmdAkhrr_Clack()
'Pindah Ke record terakhir On Error Resume Next
rsobat...MoveLast
Call TampilkanData
End S u b
Private Sub CmdSesudah_Click(}
On Error Resume Next.
With rsobat. .MoveNext TI .EOF Then .MoveFirst End If Call TampilkanData End With End Sub
Private Sub CmdSebe] um Click {)
On Error Resume Next
With rsObat .MovePrevious If .BOF Then .MoveLast End If Call TampilkanData End With End Sub
Tombol ini berfungsi untuk menambah data.
Procedure yang digunakan adalah sebagai berikut:
Private Sub CmdTambah_Click ()On Error Resume Next
If CmdTambah.Caption = "STambah" Then
stsedit = False Call HidupkanKonttol Call Kosonqkan Call NoriAktifkanTombolRecord cmdSimpan.Enabled = True CmdTambah.Caption - "SBatal" CmdTambah.TexLColor = SHEFi CmdEdit.Enabled = False TxtKode.SetFocus Else tsdis.CannelUpdate
Call AktitkanTomboLRecord cmdSimpan.Enabled - False CmdEdit.Enabled - True CmdTambah.Caption -= "sTambah" CmdTambah.TextColoi = SHSOOOODf rsdi s.MoveLast CalI TampilkanData Call MatikanKontroi End If Buat.Kode End Sub
Tombol ini berfungsi utk merekam data.
Procedure yang digunakan adalah sebagai berikut:
Private Sub cmdSimpan Click()If stsedit = False Then
'On Err.or GoTo HandleErrors
strsql = "Insert Into DISTRIBUTOR "
4. "(KODIS, NADIS, AI,DIS,TLPniS,EDIS)
"
&
"VALUES
('"
s
TrimfTxtKode.Text)
Trim (Txt.Nama. Text.) & " ',"
6
'""
&
TrimfTxtAlamat. Text)
&
TrimfTxtTolepon.Text) & "' ,"
S "'" 4. TnmiTxtEniail .Text ) £ "'
)
"
ConObat.Execute strsql, , adCmdText rsdis.Requcry Else str.sql = "Update DISTRIBUTOR " s"Set NADIS = "' 4 Tnm(TxtNama.Text)
&
"
"ALDT3 = '"
t,
TrimfTxtAlamat.Text) i '",
"TLPDIS - '" & Trim(TxtTelepon.Text)
*, "
"EDIS = '*' *, Tnm(Txt.Email.Text) & "' " i
"Where KODIS = "• & Trim (TxtKode.Text)
*,
ConObat.Execute strsql, , adCmdText End If Call AktifkanTomboiRecord cmdSimpan.Enabled = False CmdTambah.Capt.ion - "f-Tambah" CmdEdit.Caption = "sEdit" CmdEdit.Enabled ^ True CmdTambah.Enabled = True CmdTambah.TextCo]or = &H80000008 CmdEdit.TextColor = SH8000000B CmdTambah.SetFocus Call MatikanKontroi CmdSimpan_Click_Exi.t : Exit Sub HandleErrors:
Dim strMessage As String
Dim errDBErroi As ADODB.Error
For Each errDBError In ConObat.Errors
strMessaqe = strMessage &, Err. Description &
vbCrJ.t
Next
MsgBox strHessage, vbExclamat!on, "Kesalahan Provider"
On Error GoTo 0 'matikon peranqkap kesalahan
P
Edit
Tombol ini berftingsi untuk mengkoreksi data.
Procedure yang digunakan adalah sebagai berikut:
Private Sub CmdEdit_Clic:k ()
If TxtKode.Text - "" Then Exit Sub If CmdEdit.Caption - "iEdrt" Then
stsedit - True
Ca]I HidupkanKontroi
Call NonAktifkanTomboiRecord cmdSimpan. Enabled = True CmdTambah. Enabled =• False CmdEdit. Caption - "(.natal" CmdEdit.TextColor - &HFF& TxtKode.SetFocus Else stsedit - False rsdis.CancelUpdate Call AktifkanTomboiRecord Cal1 MatikanKontroi ciudSimpan.Enabled - False CmdTambah.Enabled = True
CmdEdi t.. Caption -- "SEdit"
CmdEdit.TexLColor = &H80000008 radi3.MoveLast Call TarnpilkanData End I f End Sub Keluar
Tombol ini berftingsi untuk keluar dari aplikasi.
Procedure yang digunakan adalali sebagai berikut:
Private Sub CmdKeluar_Click()
ConObat.Close ~ Set ConObat - Nothing
Unload Me
End Sub
Adapun tampilan koreksi data Distnbutor dapat dilihat pada tampilan
berikut dibawah ini :
Data Distributor
DalaPJsljbutor
J
Bhhwc Diihi>utor
Gambar 5.6 Tampilan Aplikasi Koreksi Data Distributor.
53.3 Menu input Data Standar Pembobotan Jumlah Penjualan
(FSTANDAR.FRM)
Antar muka aplikasi ini memiliki tampilan interface sebagai berikut:
DATA STANDAR NILAT PENJUALAN
Ki-rlmiFtemfeh- E7-Kritena Sedang RT" Kr#miaBaik \cn~
Srmpj^n
Balal
Gambar 5.7 Tampilan Aplikasi Data Standar Pembobotan Kriteria
Penjualan.
Aphkasi ini memiliki masukan data antara lain nilai Kriteria Rendah,
Sedang, dan Baik untuk kriteria jumlah (kuantitas) produk persediaan obat yang
49
lombol Simpan untuk merekam data sedangkan tombol pilihan BATAL
untuk membatalkan atau keluar dari aplikasi ini.
Procedure yang digunakan pada tombol simpan adalah sebagai berikut:
Private Sub cmdSimpan Click!)
Ti stsedit - False Then '- Jika belum pernah ada data
strsql - "Insert into STANDAR "
& "(k_(endah, k__sedang, k baik) "
£ "Values ('" s Trim(max1.Text) £ "',"
£ "'" S- Trim{max2 .Text) £ "'," ~~
£ "'" t> Tr im(max3 .Text) £ "ij"
ConObat.Execute strsql, , adCmdText
Else
Strsql - "Update STANDAR " 5 _
"Set k__rendah = '" s Trim(maxl.Text} £ '", " £
"k_sedang - '" £ Trim(max2.Text) & '", " £ ~
"k_bark = '" £ Trun(max3.Text) £
ConObat.Execute strsql, , adCmdText
End TI
' akhir rekam dan atau koreksi
If rsdata.KecordCounl. > 0 Then (sdata.MoveFirst stsedit = True TampiIkan Else stsedit = False End if Unload Me Exit Sub End Sub Batal
Procedure yang digunakan pada tombol batal adalah sebagai berikut:
Private Sub CindBatal_C tick .
Unload Me End Sub
5.3.4 Menu Input Data Pemasukan Stok(FRMMASUK.FRM)
Antar muka aplikasi ini memiliki tampilan interface sebagai berikut
Data Pcmainkan S t o k
?4 Hriy ?ftlll Krrt^ r.i,„r ; j""
Gambar 5.8 Tampilan Aplikasi Data Pemasukan Stok.
Antar muka ini memiliki masukan antara lain Kode Obat, Nama Obat
dan Jumlah Masuk. Aplikasi ini memiliki tombol TAMBAH untuk menambah
data, EDIT untuk koreksi data, SIMPAN untuk merekam data, dan tombol
KELUAR untuk keluar dari aplikasi.
•h ; * i • i m
Panel data diatas berfungsi untuk melihat data paling awal, data sebelum,
data sesudah dan data terakhir.
Procedure yang digunakan adalah sebagai berikut:
Private Sub CmdAwal_C.l ick () 'Pindah ke record pertama
On Error Resume Next
rsobat.MoveFirst
Cal1 TampilkanData
End Sub
Private Sub CmdAkhir_Click()
'Pindah Ke record terakhir
On Error Resume Next
rsobat.MoveLast
Cal] TampilkanData
End Sub
Private Sub CmdSesudah_Click()
On Error Resume Next
With rsObat
a * Q 4-J £ G 1 C in m £ T, 4J <B c '-I x i—i P C M Cj _-J i-H a) US 0 HO •3 —1 -»-, fej H XI g •H £, •J E--0! > C-0) 3 > H (U p E y> <•"> 01 > O ^ kj o 11 "2 Sj 4-! M [=. rfi O tH M e cc "3 Cu O £ ^,_ H [J "* M XI '-^ XI O ID > « r— r-f .£ Tj r—1 4-> XI 0 n TJ iH 4-: 4H •— nj -— p •H M X =M C •3 -n 1-1 bl V 3 M 1-4 c _ M j] U 3 -a
3
4-> 2 G _ w VI <a D g P > CO T) •H C •-. •o W 0. c « T313
1
c u p &£} X O x s= o ai a) E f\ in ij i-H r-t Eh it rl n a XI Xj nj nj a c H3 tf P C J a; m O a; rr* i-H tH J5 m dJ C-H U n -~ 'Jl 0 H ^ i rH p 0 -1 ^ C-fj!
,1 1 M m M E-II C tj i-H In u II o O "C 0 •H H •o C rH it 1 (1) i-H £ a a 0 0 ^ i-H s '-> o a> ^ —1 •H CJ 3 ^; •d X) 0 -a _ -H r/> s ^ XJ X= 4J 01 a OJ m tH <U r^. I-1 —1 TJ •H H a x (ti i-H •-\ m S rH TJ a is r« -iH c nj 0) E XI X! H fj Xi rQ (0 fc. tJl +J w U H 0 iC rt Ji TJ £ u s d Ji +-1 G It J " o rf o d d xi .d 4J M K 3 H H rr-1 —-nj nj ro rS 01 4-11
TJ 4_l o 0 &fl Xj 3 _J J-i It JrJ 4J •3 H w a e e £ C •H ID E <, re LI a TS •rH V 11 T3 Xi r-H XI id ttJ —1 i-H Ul E-Eh i-H H O 01 H O X) ?h !/i r-J -H -d •3 v. ^H •P d X) •H g 31^
u Tl rfl s g g nj g 0 0! r? 0 t/1 u u c L> U u U 0 H CJ CJ -3 nj g & P -H ^ Id U P X & w •HE.. TJ « nj PJ H EH -H 111 •g -g p r-p E3 S S3 rfl -j m U CJ CJ U Eh M O T) II CH (1) 00 ^ T> -^ LJ Xi o j-> +j c m 1-1 a x: u n xj ji oa; w Tl UE-Di C — x; o p "3 nl B) [i] O 113 w s •d xi 5 « •a 5 fa^3
'S
X X o cd toB
-0 60 0 c X cd >."5
<u * ^» i-^—1 3 0 "O X OS
0 H cuPrivate Sub cmd5impan__C Iick()
It TabelMasuk. Rows = I. Then Exit Sub
If sLsedit - False Then On Error GoTo HandleErrors
strsql = "Insert Into IDMASUK " & "(NOMASUK,TGLMASUK) " ~
&
"VALUES
.;'"
&
Tr im(LBNomor. Capt ion)
&
"*
<••
A
CDat.e iLBTanggal. Caption) & "')"
ConObat .Execute strsql, , adCmdText
rsmasuk.Requery
'Tambah record baru pada
recordset
For i - i To TabelMasuk.Rows - 1 strsql = "Insert Into DTMASUK "
& "(NOMASUK, KDBAT,JUMAS) "
& "VALUES
( '"
s
Trim(LBNomor. Caption)
s
'
<,
T^m(TabelMasuk.TextMatrix <i, 0)) fi "', - fc Tnm(TabelMasuk.TextMatrix (i
y) ) & ) '
ConObat.Execute strsql, , adCmdText
ConObat. Execute
"Update OBAT
Set JUMSTOK -
vaI. {JUMSTOKj
+
valC"
S Tnm(TabelMasuk.TextMat.iix(i,
<1) ) & "<}
Where KDMT = •"
t
Trim{TabeLMasuk.TexLMatrix(i, 0)) &
, , adCmdText
Next i
E l s e
On Error GoTo HandleErrors
Dim JlhBaru As Integer
For i - 1 To TabelMasuk.Rows - 1
Cek (TabelMasuk.TextMatrix(i , 0))
JlhBaru - 0
MsgBox JlhAwal
JlhBaru - Va.l (TabelMasuk .TextMatrix (i,
4}) - JlhAwal
MsgBox JlhBaru
ConObat.Execute "Delete * From DTMASUK Where NOMASUK = '" &
Trim(LBNomor.Caption)
&
•" AND KDBAT = "• fc Trim(TabelMasuk.TextMatrix(i
'J I ) & , , adCmdText. '
strsql = "Insert Into DTMASUK "
S "(NOMASUK,KDBAT,JUMAS) " _
i.
"VALUES
( '"
& Trim (LBBomor.Caption)
s
"'
"•
*
TrimJTabelMasuk.TextMatrrxU, 0), S "•,
- s Trim(TabelMasuk.TextMatrix(i
4 ) J S )ConObat.Execute strsql, , adCmdText
ConObat.Execute
"Update
OBAT
Set
JUMSTOK
= val(JUMSTuK)
+
val
& JlhBaru
(.
"') Where KDRAT - <" & Trim (TabelMasuk. TextMatrix (i
01)
& ' ', , adCmdText ' ''
Next i
rsmasuk.Requery
'Tambah record baru pada
recordset
End If Call AktifkanTomboiRecord cmdSimpan.Enabled = False CmdTambah.Caption = "sTambah" CmdEdit.Caption = "&Edit" CmdEdit.Enabled = True CmdTambah.Enabled - True CmdTambab.TextColor = &H8GOOO0( CmdEdit.TcxtColor = iH600OOO08 CmdTambah.SetFocus Call Kosongkan TxtJumlah.Enabled = False ComObat.Enabled = False TabelMasuk.Enabled = False CmdHapus.Enabled = False
CmdSimpan_Cliok Exit:
Exit Sub
HandleErrors:
Dim strMessaqe As String
Dim errDBError As ADODB.ErrorFor Each errDBError In ConObat.Errors
strMe.ssage - strMessage & Err .Descr iptron s vbCrLf
Next
MsgBox strMessage, vbExoiamation,
"Kesalahan Provider"
On Error GoTo 0 'mat.ikan pexungkap kesalahan
End Sub
Tombol ini berftingsi untuk keluar dan aplikasi.
Procedure yang digunakan adalah scbagai berikut:
Private Sub CmdKeluar_C Iick()
ConObat.CloseSet ConObat - Nothing
Unload Me
End Sub
5.3.5 Menu Input Data Penjualan (FRMJLJAL.FRM)
Antar muka aplikasi ini memiliki tampilan interface sebagai berikut
-J ^
ert"
I * &*'""
I
Gambar 5.9 Tampilan Aplikasi Data Penjualan.
Antar muka ini memiliki masukan antara lain Kode Distributor, Nama
Distributor, Alamat, Telephone, e-Mail, Nama Obat, Kode Obat, Nama Obat dan
Jumlah Jual.
Aplikasi ini memiliki tombol TAMBAH untuk menambali data, EDIT
untuk koreksi data, SIMPAN untuk merekam data, dan tombol KELUAR untuk
keluar dari aplikasi.
**\ 4 * I *»Panel data diatas berftingsi untuk melihat data paling awal, data
sebelum, data sesudah dan data terakhir.
Procedure yang digunakan adalali sebagai berikut:
Private Sub CmdAwal_Click()
1Pindah ke record pertamaOn Error Resume Next rsObut.MoveFirst
Call TampilkanData
End Sub
Private Sub CmdAkhir_Click()
'Pindah Ke record terakhir
On Error Resume Next
rsObat.MoveLast
Call TampilkanData
End Sub
Private Sub CmdSesudah_Click()
On Error Resume Next
With rsObat .MoveNext If .EOF Then .MoveFirst End if Call TamprlkanData End With End Sub
Private Sub CmdSebelum Click()
On Error Resume Next
With rsObat -MovePrevious If ,BOF Then .MoveLast End If Call TampilkanData End With End Sub
Tombol ini berftingsi untuk menambah data.
Procedure yang digunakan adalah sebagai berikut:
Private Sub CmdTambah_Click()
If CmdTambah.Caption - "STambah" Then
stsedit - False Call Kosongkan Call NonAktifkanTomboiRecord cmdSimpan.Enabled = True CmdTambah.Caption = "SBatal" CmdTambah.Textcolor = SHFFs Call BuatNoFaktur CmdEdit.Enabled - False ComObat.Enabled ^ True TabelJual.Enabled = True ComDis.Enabled - True ComDis.SetFocus Else Call AktifkanTombolRecord ComObat.Enabled =- False TxtJumlah.Enabled = False cmdSimpan.Enabled - False CmdEdit.Enabled - True ComDis.Enabled - False CmdTambab.Caption = "STambah" CmdTambah.TextColor = &H80000008 Call Kosongkan TabelJual.Enabled = False End If End Sub
P
£<*
Tombol ini berftingsi untuk mengkoreksi data.
Procedure yang digunakan adalah sebagai berikut:
PrivaLe Sub CmdEdiL_Click{)
if LBNomor.Caption = "" Then Exit Sub
If CmdEdit.Caption =- "sEdit" Then
stsedit = True cmdSimpan.Enabled = True CmdTambah.Enabled = False CmdEdit.Caption - "SBatal" CmdEdit.TextColor = SHFF& ComObat.Enabled ^ True TxtJumlah.Enabled - True TabelJual.Enabled = True Else stsedit - False Call AktifkanTombolRecord 55
ComObat.Enabled - False TxtJumlah.Enabled - False cmdSimpan.Enabled - False CmdTambah.Enabled - True CmdEdit.Caption - "iEdit" CmdEdit.TextColor = SHS0000008 TabelJual.Enabled - False
TxtNajna. Enabled = False
End If End Sub
Tombol ini berftingsi untuk merekam data.
Procedure yang digunakan adalali sebagai berikut:
PrivaLe Sub cmdSirapan_C.Lick ()
If 'label Jual. Rows = 1 Then Exit Sub
If stsedit = False Then
'On Error GoTo HandleErrors
strsql - "Insert Into IDJUAL "
& "(NOFAKTUR,TGLJUAL,KODIS,TOTAL,STATUS)
"
*.
"VALUES
('"
(,
TrimfT.BNomor.Caption)"
s
"'
'"
>.
CDate(LBTanggal .Caption) s '"," '
s "'" s Trim(ComDis.Text) s "' "• ,
CCur (Tnm(LbTotal. Caption) )
&
"', False) "
ConObat.Execute strsql, , adCmdText
rsJual.Requery
'Tambah record baru pada
recordset
For i = 1 To TabeUual .Rows • I
strsql = "Insert Into DTJUAL " _
Sr "(NOFAKTUR, KDBAT, JUMJUAL, HRGJUAL)
"
&
"VALUES
{'••
s
Trim(LBNomor. Caption)
&
s
TrimTabelJuaL.TextMatrixU,
D),
fi "',
<"
&
Tnm(Tabei Jual. TextMatrix (r,
•J>>
&
-
& Trim (TabelJual. TextMatrix (i, 4))
& '")"
ConObat.Execute strsql, , adCmdText
„,,,„
ConObat.Execute
"Update
OBAT
Set
JUMSTOK
= Val (JUMSTOK)
-Val(
4 Trim(TabeUual.TextMatr.ix(i,
5))
& -> where
KDBAT
= <"
s
Tnm(TabelJual.TextMatrix(i, 0))
s
, , adCmdText
Next i Else
On Error GoTo HandleErrors
Dim JlhBaru As Inteyer
strsql = "Update IDJUAL "
,.,
,„TflTt„
,, t "G,fT T0TAL = "'
"
Format(Tnm(LbTotal. Caption), •'###")
t.
STATUS = False
ConObat.Execute strsql, , adCmdText
For i = ] To TabeUual. Rows - 1
Cek (TabeUual. TextMatrix (i , 01 )
JlhBaru = 0
JlhBaru - Val (TabeUual. TextMatrix (i,
b) )
- Jl hAwal
t •
,TD„
ConObat.Execute "Delete
*
From DTJUAL Where NOFAKTUR - ••• &
Trim LBNomor. Caption)
* - and KDBAT - -" fi Tnm(Tabel Jual. TextMatrix
<i
u) ) & , , adCmdText '
strsql - "Tnsert Into DTJUAL "
57
s "VALUES ('" fi Trim(LBNomor.Capti on) & "' '" &
Trim(TabeUual.TextMaUrx(i,
Ojj
i,
"',
'»
4,
Trim(Tabel Jual. TextMatr lx (i,
M)
& "',
'" s Trim(TabelJual.TextMat.rix(i,
<]) ) f, "' )"
ConObat.Execute strsql, , adCmdTexL
ConObat. Execute
"Update
OBAT
Set.
JUMSTOK
-
val (JUMSTOK)
+
ValC" s JlhBaru & "*) Where KDBAT = '" & Trim (TabeUual. TextMatrix (i
01)
& " '", , adCmdText Next i rsJual.Requery End If Call AkLifkanTombolRecord cmdSimpan.Enabled - False CmdTambah.Caption = "&Tambah" CmdEdit.Caption - "S.Edit" CmdEdit.Enabled = True CmdTambah.Enabled = True CmdTambah.TextColor = £H8Q000008 CmdEdit.TextColor - &H8O0OOO08 CmdTambah.SetFocus Call Kosonqkan TxtJumlah.Enabled = False ComObat.Enabled = False
TabeUual. Enabl ed = False Cmdllapus .Enabled = False
LbTotal.Caption - "0" CmdSimpan_Click_Exit:
Exit. Sub
Hand]eErrois:
Dim strMessaqe As String
Dim errDBError As ADODB.Error
For Each errDBError In ConObat.Errors
strMessage = strMessage & Err.Description & vbCrLH
Next
MsqBox strMessaqe, vbExclamation, "Kesalahan Provider"
On Error GoTo 0 'matikan peranqkap kesalahan
End Sub
{
Keluar
lombol mi berfungsi untuk keluar dari aplikasi.
Procedure yang digunakan adalah sebagai berikut.
Private Sub CmdKeluar Clicki
ConObat.Close
Set ConObat = Nothing
Unload Me
5.4 Cetak Output Data
Aplikasi ini menghasilkan keluaran baik laporan maupun grafik. Adapun
nncian lengkap hasil keluaran dari aplikasi yang dikembangkan dapat dilihat dan"
tampilan berikut ini :
5.4.1 Daftar Obat Keseluruhan
Laporan ini berftingsi untuk menyajikan seluruh deskripsi obal.
Laporan Daftar Obat Keseluruhan
Hdlaman l Dari Sdhuan Harod l"]14rd Rungkui Rp, L'j.mo Bungkis Rmgkus flp. Mi. 000 Bungkrs Rp. 22.500
Gambar 5.10 Daftar Obat Keseluruhan.
5.4.2 Daftar Obat Tiap Jenis
Laporan ini berftingsi untuk menyajikan deskripsi obat tiap.jenis.
Tanqqal Ceto*
HaJaman 1 Dati 1
Laporan Daftar Obat Jenis : Liquid
No. KodeObat NamdOhat Satuan Harva Jumlah Stok
1 L0QQO1 Hettala* Bjigkui
Rp. 25.000 40
2 LO01X2 IMutriSi Infus BungkLB
Rp. vs,.oon 46
59
5.4.3 Daftar Stok Masuk Keseluruhan
Laporan ini berfungsi untuk menyajikan transaksi pemasukan obat
keseluruhan.
Tanqifai Cetak
Hdlaman I nan 1
Laporan Stok Masuk Keseluruhan
TmgoalMiMuk
11 - Feb - 2C0* **•**«: Satuan JlhMa«.k
| 2 | 000002 j 1j-Pab -2Q|>1
Q£_|_^0O0O3_j 11 -F8h -200*
[ + [ QOO004
I n -Me, 200*
_S [ 000005
[ 03 -Jun -30P4.
6 j nooooel 03-jun-gorM LDODOi Herbala*LODOO^ [Nuttiu Irrfrjs
POOOOl IMRITA POOOPi UNTKITA L00002 Nutrinlrifii Bungkii< tfinokus Blligkgs Bur&ais rSimrjkuj Burighj
Gambar 5.12 Daftar Stok Masuk Keseluruhan.
5.4.4 Daftar StokMasuk Tiap Bulan
Laporan ini berfungsi untuk menyajikan transaksi pemasukan obat tiap
periode bulan dan tahun tertentu.
Tanggal Cetak :
No. Masuk
nnnoo4
Laporan Daftar Stok Masuk Periode Bulan
5 2004
Tanggal Masuk Kode Obat Nama Obat Jenis Obat
U-Mei-2QtM Lfinoai Herbalax Liqiid 11-Mei 20CM Nutrrij Infus
Liquid
Gambar 5.13 Daftar Stok Masuk Tiap Bulan.
Halainan 1 ,
Satuan JlhMasi
BungkLK Bungkuj
5.4.5
Daftar Distributor
Laporan ini berfungsi untuk menyajikan seluruh deskripsi distributor.
l-Wat Crtat:
LaporaR Daftar Dfrtrfbater
KofeCtet. NamaOKtr*Uw
MOOO: • CIPTAFAPMA I AY^tiTBva^arg miwt &>, -asva IVogys
Gambar 5.14 Daftar Distributor.
5.4.6 Daftar Penjualan Keseluruhan
Laporan ini berftingsi untuk menyajikan transaksi penjualan obat
keseluruhan.
Tongu*j| Leldfc ;
JlotalUII 1 r>4TI 1
Lapunui Fenjuuian Kesehinihiui
<«• jlHn-faktw
[ 5 j rooms
TangrmlFildiM' C*-Mini>.8»l Nam* DMrihio, CFTA FlflMAKbdVOIm*. J fteaasatim 1
rnnooi TotalLCTOJ]
|
ftp. zs.ooo |
2 BWAaiii-zam CIT» FflBMft LOOM)! ] Rr. 25,1503 T 1 Rn-TSano 06*fatih-aK11 EKftFARMft[ b j oooeee
rc-.tw-Kw CJTAFAWM"(WO'
j
Br SK.nmj
i
«p. "s mn raomi | Rp 55.u-jy| 4 tt-ltf-XM (TRIAfABHl P0D0O1 Rp. 55.0TO 6 Rp. J30 mo LKWOI Rp. 25. w» a Rp. 75 fltlO61
5.4.7
Daftar Penjualan Tiap No Faktur Penjualan
Laporan ini berfungsi untuk menyajikan informasi penjualan tiap nomor
faktur.
rmg&Hrtd
p. fUjMnjM 1 LLv
L*ponm PenjintanTrap >oFaktur
Sflfroi Tjfcfp-;OW'
T*«IMl FAtir £G U*-*i# .*IM i m m i M i T a T * ' w - n
NimM ' A'mVitja*!^ Tdefum k1; *T"i
! 1M
Ffc. Kode DM ""«l»* ; JobOut | Ug,, HhqsMiwi [ qiy
TatalHarg* m-*v |MB Hi •.n;...
B[. •••Ill J -
I'll^.UfTolal KHdviiiiri: 0.t . s :
Gambar 5.16 Daftar Penjualan Tiap No Faktur.
5.4.8
Laporan Analisis Penjualan
Laporan ini berftingsi untuk menyajikan informasi
analisis tingkat
penjualan barang.
Hafeman 1Dai1
No.
ffchfa
Tanggal Faktar
Mman&tulor
CodeDbat
jftlual
bfcnadaftet
2m CPttFAfoiA fm\ 3 rend*
Gambar 5.17 Laporan Analisa Penjualan
Pcrintah yang digunakan untuk mencetak Laporan-laporan diatas adalah
sebagai berikut:
Private Sub PMLaporan_PopUpClick(ByVal TtemName As String)
Dim rektemp As ADODB.Recordset
Dim reklap As ADODB.Recordset
Dim i As Integer
Dim teks As string
Select Case ItemName
Case i s - " J "
Jika Obat Keseluruhan Sot rektemp = New ADODB.Recordset
rektemp.Open "SELECT * FROM OBAT
ORDER BY OBAT.KDBAT
*',
ConObat
adOpenStat.ic, adLockOpt imistic, adCmdText ' ' Wi I. h rektemp
If .RecordCount > 0 Then
.MoveFirst 1 = 1
While Not .EOF
If Trim( !JNSOiiAT) = "L" Then
teks = "Liquid"
F. I se
teks = "Padat"
End If
ConObat.Execute "Insert Into LapDaitarObat values
("* 6 i & "'
, '" & IKDtiAT f, "', '»
&
INMOBAT & "',
'" & teks i, "', « & Trim(!HRGSAT) & " "6
CDbl(!JUMSTOK)
& ",
'" & 'SATUAN £ "')",
, adCmdText
l - i + l .MoveNext Wend
End If -Close
Set reklap - Hew ADODB.Recordset
reklap.Open
"Select
* From LapDaftarObat
",
ConObat,
adOpenStatir,
adLockReadOnly, adCmdText If reklap.RecordCount > 0 Then LapDOSeluruh.Show vbModal, Me End If reklap.Close End With
ConObat. Execute "Delete From T.apDaf tarObat ",
, adCmdText
Jika Obat / Jenis
Case Is = "2"
'— Jika Obat / Jenis
Load FrmLaporan
FrmLaporan.SSTabl.TabVisible(1) = False FrmLaporan. SSTabl .Tab-Visible{?.) = False
FrmLaporan.SSTabl.Tab = 0 FrmLaporan.Show vbModal, Me
' • Jika Stok Masuk Keseluruhan
Case Is -= "3"
' — Jika Stok Masuk Keseluruhan
Dim tempmasuk As String
Set rektemp = New ADODB.Recordset
rektemp.Open
"SELECT
IDMASUK.NOMASUK,
IDMASUK.TGLMASUK
DTMASUK KDBAT
O.BAT. NMOBAT, OBAT. JNS OBAT, OBAT.SATUAN, DTMASUK. JUMAS " & _
'
"FROM
OBAT
INNER
JOIN
(IDMASUK
INNER
JOIN
DTMASUK
ON
IDMASUK. NOMASUK
= DTMASUK.NOMASUK)
ON
OBAT. KDBAT
= DTMASUK.KDBAT
"
ConObat
adOpen.Static, adLockOpt imistic, adCmdText
With rektemp
If .RecordCount > 0 Then
.MoveFirst
i - 1
tempmasuk = Trim{'NOMASUK)
While Not .EOF
If Trim(!JNSOBAT) - "L" Then teks - "Liquid"
Else
teks = "Padat"
63
If Trim(tempmasuk) <> Trim(!NOMASUK) Then
i - 1 + 1
tempmasuk = Trim(!NOMASUK)
End If
ConObat. Execute "insert Into LapMasukSeluruh
values ('" & i s,
,
" * INOMASJK i "',
"'s ITCLMASUK i, "',
'"a !KDBAT A "',
'"
k
'NMOBAT A
& teks & "',
'" s 'SATUAN fc "',
•»
k
!JUMAS 4 "')",
, adCmdText
.MoveNext Wend
End If .CIose
Set reklap = New ADODB.Recordset
reklap.open "Select ' From LapMasukSeluruh
", ConObat, adOpenStatic
adi.GckPeadCn.Iy, adCmdText " ' If reklap.RecordCount > 0 Then LapMasukSeluruh.Show vbModal, Me End If reklap.Close End With
ConObat.Execute "Delete From
LapMasukSeluruh",
, adCmdText
'-. Jika Stok Masuk / Bulan
Case Is =- "4"
'--• • Jika Stok Masuk / Bulan
Load FrmLaporan FrmLaporan.SSTabl.TabVisible(0) - False FrmLdporan.SSTabl.TabVisible(2) = False FrmLaporan.SSTabl.Tab = 1 FrmLaporan.Show vbModal, Me ' Jika Distributor Case Ts = "5" Jika Distributor I.apDistributor.Show vbModal, Me
' Jika Penjualan Keseluruhan
Case Is = "6"
' — Jika Penjualan Keseluruhan
Dim tot, tempfak As String
Set rektemp ^ New ADODB.Recordset
rektemp.Open
"SELECT
IDJUAL.NOFAKTUR,
IDJUAL.TGLJUAL
DISTRIBUTOR.NADIS,
DTJUAL.KDBAT, DTJUAL.HRGJUAL,
DTJUAL.JUMJUAL,
IDJUAL.TOTAL "
I
"FROM
OBAT
INNER
JOIN
((IDJUAL
INNER
JOIN
DTJUAL
ON
IDJUAL.NOFAKTUR
=
DTJUAL.NOFAKTUR)
INNER
JOIN
DISTRIBUTOR
ON
IDJUAL KODIS
-DISTRIBUTOR.KODTS)
ON
OBAT.KDBAT
^ DTJUAL.KDBAT
",
ConObat,
adOpenStatic
adLockOptimistic, adCmdText With rektemp If .RecordCount > 0 Then .MoveFirst i - 1 tempfak = Trimi!nofaktur)
While Not .EOF
tot = CDbl(!HRGJUAL)
* CDbl(<jumjuai)
If Trim(tempfak) <> Trim(Inofaktur) Then
i = i f- I
tempfak ^ Trim(!nofaktui)
End If
ConObat.Execute "Insert Into LapJualSeluruh values('" s i j "'
s Inofaktur
s,
"' , "• s, ITglJual £ "',
'" t INAD1S
t,
"',
'" s, 'KDBAT
i,
S !HRGJUAL S "',
'" S !jumDual
&
"',
-" & tot 5 "',
<" s -TOTAL S "<) "'
adCmdText ' ' '
.MoveNext Wend
End If .Close
Set reklap = New ADODB.Recordset
reklap.Open "Select. * From LapJualSeluruh order by nofaktur kdbat
ConObat,
adOpenStatic,
adLockReadOnly,
adCmdText
If reklap.RecordCount > 0 Then
LapPenjualanSeluruh.Show vbModal Me
End If
reklap.close
End With
ConObat.Execute "Delete From LapJua1Seluruh ",
, adCmdText
' Jika Penjualan / No Faktur
Case Is - "7"
Jika Penjualan / No Faktui
Load FrmLapot an
FrmLaporan. SSTabl.TabVi sible(O) -^ False
FrmLaporan.SSTabl.TabVisible(I) = False
FrmLaporan.SSTabl.Tab - 2
FrmLaporan.Show vbModal, Me
' Jika Analrsa Penjualan Keseluruhan
Case Is - "8"
' Jika Analisa Penjualan Keseluruhan
Dim rseniu As ADODB.Recordset
__ buka tabej_ standai
Set rseniu = New ADODB. Recordset
rsemu.Open
"SELECT
*
FROM
STANDAI?
",
ConObat,
adOpenStatic
adLockOptimistic,
adCmdText
auopen.,ratn
Dim aa, bb, cc, dd
With rsemu
Tf .RecordCount > 0 Then
.MoveFirst
While Not .EOF
aa - !k_rendah bb = !k_sedang cc = !k baik .MoveNext Wend End If -Close End With
Set rektemp - New ADODB.Recordset
rektemp. Open
"SELECT
,,^wrtJj. ^am uk,
IDJUAL TRLJUAr
DISTRIBUTOR.NADIS,
.r?^emp-_°pen
DTJUAL.KDBAT, DTJUAL.HRGJUAL,
"SELECT
IDJUAL. NOFAKTUR,
DTJUAL.JUMJUAL,
IDJUAL.TOTAL"
IDJUAL. TGLJUAL,
I
"FROM
OBAT
INNER
JOIN
((TDJUAL
INNER
JOIN
DTJUAT
OH
IDJUAL. NOFAKTUR
-=
DTJUAL.NOFAKTUR)
INNER JOIN DISTRIBUTOR ON iwiffllS
DISTRIBUTOR.KODIS)
ON OBAT.KDBAT - DTJUAL. KDBAT
",
ConObat,
adOpen^atic"
adLockOptimistic, adCmdText With rektemp If .RecordCount > 0 Then .MoveFirst i - 1 tempfak - Tr t.m (Inofaktur)
65
While Not .EOF
tot = CDbl {! HRGJUAL) * CDbl('jurrrjual)
dd = ""
If !jumjual <- aa Then
dd •- "r. endah"
Else
If .'jumjual > aa And 'jumjual. <= bb Then
dd - "sedang" Else If !jumjual > bb Then dd = "baik" End r [" End If End If
If Tnm(tempfak) <> Trim(Inofaktur) Then
i = i + 1
temptak = Trim(Inofaktur)
End Tf
ConObat.Execute "Insert Into Lapanalisa values('"
& i s "'
& !noiaktur i "',
- & ITglJual s "-,
-» s !NADIS & "', •- & |KDBAT £
1
.HRGJUAL & '",
'" & Ijumjual £ "',
'" S tot & "',
'" & [TOTAL &
' s dd S
)", , adCmdText
'Dim stri As String
'stri - "Insert into LapAnalisa "
(.
"(
NOMOR,
NOFAKTUR,
TGLJUAL,
NADIS,
KDBAT
HRGJUAL
JUMJUAL, TOTitARGA, TOTAL, KRITERIA ) " _
' ""^Al,,
&"VALUES ('" & Trim(i) & "',"
& "'" 6, !NOFAKTUR &'"," ~ i. " '" & !TGLJUAL & "',"
6 "'" & !NADIS & "',"
t. S \KDBAT 5 "',"
t-
"'" 5 !HRGJUAL S "',
~"
>< "'" & !JUMJUAL 4, " '," & " '" 6. tot t, "',"& "'" S !TOTAL £ '" ," __
& " '*' s Trim(dd) s " ') "ConObat.Execute stri, , adCmdText
.MoveNext, Wend
End If -Close
Set reklap = New ADODB.Recordset
reklap.Open "Select * From Lapanalisa order by nofaktur kdbat
"
ConObat,
adOpenStatic,
adLockReadOnly,
adCmdText
II reklap.RecordCount > 0 Then
DafAnalisa.Show vbModal, Me
End If
reklap.Close
End With
ConObat.Execute "Delete From Lapanalisa ",
, adCmdText
'
Jika Analisa Penjualan / Obat
Case Is = "9"
'
Jika Analisa Penjualan / Obat
Form2.Show
'
Jika Analisa Penjualan / Obat / Dis
,Tikd Analisa Penjualan / obat / Dis
Form22.Show
End Select
End Sub
5.4.9
Grafik Laporan Analisis Penjualan Per Obat
Grafik ini berfungsi untuk menyajikan informasi
analisis tingkat
penjualan barang per obat.
7 "6 • 5 - 1 - ~i 2 1 0 6 5 -4 -3 -2 1 -a
-M*i '
1
1 jW Kb S£u Apr 1 Ira Jul Am s.„ OM Hov Dt>
Gambar 5.17 Grafik Analisis Penjualan Per Obat
5.4.10 Grafik Laporan Analisis Penjualan Per Obat Per Distributor
Grafik mi berfungsi untuk menyajikan informasi
analisis tingkat
penjualan barang per obat per distributor.
2.5 2.0 -1.5 1.0 • 0.5 > 00 • K2.5 • 2.0 - 1.5 - 1.0 -0.5 .,
H
fen Fab M* Apr