Anda di halaman 1dari 91

Daftar Isi

BAB 1 Instalasi VB.Net ........................................................................................ 1.1 Proses Instalasi VB.Net ........................................................................ 1.2 Sekilas tentang VB.Net ......................................................................... BAB 2 Merancang Database ............................................................................... 2.1 Konsep Database ................................................................................. 2.2 Key ....................................................................................................... 2.3 Teknologi Manipulasi Data ................................................................... 2.4 Database an Data Kontrol .................................................................. 2.! Konsep Database "elational ................................................................ 2.# In e$ ..................................................................................................... 2.% &ntity "elations'ip Diagra( )&"D* ....................................................... 2.+ Me(buat "elasi antar atabase ........................................................... 2., Koneksi Database -..ess pa a VB.Net ............................................... BAB 3 Membuat Form .......................................................................................... 3.1 Main Menu ............................................................................................ 3.2 Me(buat Main Menu ............................................................................ 3.3 Penggunaan Mo ule ........................................................................... 3.4 /or( &ntri Data Barang ........................................................................ 3.! /or( &ntri Data Pelanggan .................................................................. 3.# /or( &ntry Pesanan ............................................................................. 3.% /or( &ntry Nota ................................................................................... 3.+ /or( &ntry 0etak Nota ......................................................................... 3., /or( 0etak K1itansi ............................................................................ 3.12 /or( &ntry Surat 3alan ....................................................................... 3.11 /or( &ntry "etur ................................................................................ 3.12 /or( 0etak "etur ............................................................................... BAB 4 Membuat Laporan ..................................................................................... 4.1 /or( 0etak Surat 3alan ........................................................................ 4.2 /or( 0etak 4aporan Pen5ualan ............................................................ Daftar usta!a ........................................................................................................

BAB 1 IN"#ALA"I VB.N$#


1.1 roses Instalasi VB.N$#

6ntuk (enginstall Mi.roso7t VB.N&T sa(a seperti (enginstal aplikasi pro uk Mis.roso7t lain pa a u(u(nya. Dala( 'al ini tinggal 'i upkan ko(puter8 ke(u ian (asukkan 0D instalan VB.N&T ke ala( 0D9":M. Ke(u ian tunggu 'ingga proses selesai. 6ntuk (en5alankan Mi.roso7t VB.N&T iperlukan perangkat keras yang sesuai engan kebutu'an. Na(un apabila koputer su a' terpasang Mi.roso7t ;in o1s 2222 atau yang lebi' tinggi (isalnya ;in o1s <P8 (aka su a' ipastikan ba'1a -n a bisa (en5alankan Mi.roso7t VB.N&T. 6ntuk (enginstal VB.N&T -n a 'arus (e(persiapkan perangkat keras perangkat lunak sebagai berikut = Ko(puter engan spesi7ikasi (ini(al Pentiu( II 4!2 M>? Me(ori atau "-M yang isesuaikan engan siste( operasi yang igunakan. Monitor Super V@S )1224$%#+* atau yang lebi' tinggi. >ar isk (ini(al 12 @B. Mouse Siste( :perasi ;in o1s 2222 atau yang lebi' tinggi. 1.2 "e!ilas tentang VB.Net >a(pir sebagian besar pengguna ko(puter i unia su a' (engenal pro uk9 pro uk Mi.roso7t8 sala' satunya a ala' Mi.roso7t Visual Basi..Net. VB.Net (erupakan penge(bangan ari Mi.roso7t Visual Basi. Aersi sebelu(nya. Me(bangun suatu progra( aplikasi engan AB.Net lebi' (u a' an (enyenangkan8 karena selain ilengkapi 7itur97itur baru 5uga terse ia ber(a.a(9 ber(a.a( toolbars8 ko(ponen8 .lass8 ob5e.t an sebagainya. 3ika -n a su a' terbiasa engan Visual Basi. ke(ungkinan besar untuk (igrasi ke VB.Net ti ak akan (engala(i kesulitan8 karena 'a(pir se(ua ko(ponen i Visual Basi. Aersi sebelu(nya (asi' bisa igunakan. Sebagai .onto' untuk (e(buat suatu Pro5e.t engan VB.Net -n a tinggal klik Menu /ile8 ke(u ian pili' Pro5e.t an akan keluar kotak ialog. Setela' itu pili' ;in o1s -ppli.ation8 ke(u ian beri na(a Pro5e.t tersebut. an

BAB 2 M$%AN&AN' DA#ABA"$


2.1 (onsep Database

Dala( (e(bangun aplikasi (enggunakan Visual basi. selalu ilengkapi engan atabase. Database ini bisa ibuat engan Mi.roso7t -..ess8 :ra.le8 Mi.roso7t SB4 an sebagainya. Dala( 'al ini tentu isesuaikan engan kebutu'an an ke(a(puan pe(rogra(. Cang i(aksu engan (en esain atabase a ala' (eran.ang suatu atabase yang akan igunakan ala( suatu aplikasi yang akan ibangun. Se angkan atabase itu sen iri a ala' ku(pulan beberapa tabel yang ita(pung ala( suatu 7ile yang na(anya atabase. Basis)ata ) atabase* a ala' ku(pulan ata yang saling ber'ubungan satu engan lainnya yang tersi(pan i perangkat keras ko(puter an iperlukan suatu perangkat lunak untuk (e(anipulasi basis ata tersebut. Data8 (erupakan kenyataan yang (engga(barkan suatu ke5a ian9ke5a ian ari kesatuan yang nyata. Data tersi(pan se.ara terintegrasi an ipakai se.ara bersa(a9sa(a. DBM" a ala' siste( perangkat lunak yang igunakan untuk (engen alikan ata8 ter(asuk penyi(panan ata8 penga(bilan ata8 kea(anan ata an integritas ata. /ungsi uta(a DBMS a ala' untuk (enye iakan lingkungan yang nya(an an e7isien untuk igunakan ala( penga(bilan an penyi(panan in7or(asi i basis ata. :perasi9operasi asar yang apat ilakukan berkenaan engan basis ata (eliputi = 1. 2. 3. 4. !. Pe(buatan basis ata baru ).reate atabase* Peng'apusan basis ata ) rop atabase* Pe(buatan 7ile atau tabel baru ke suatu basis ata ).reate table* Peng'apusan 7ile atau tabel ari suatu basis ata ) rop table* Pena(ba'an atau pengisian ata baru ke sebua' 7ile atau tabel i sebua' basis ata )insert* #. Penga(bilan ata ari sebua' 7ile atau tabel )retieAe atau sear.'* %. Peruba'an ata ari sebua' 7ile atau tabel )up ate* +. Peng'apusan ata ari sebua' 7ile atau tabel ) elete* /ile a ala' te(pat penyi(panan in7or(asi. -gar 7ile (utak'irDupto ate (aka 7ile 'arus i (utak'irkanDup ate. 6p ate ter iri ari =

Insert

= (ena(ba'kan ata )re.or * baru

Delete = Meng'apus ata )re.or * Mo i7y = Menguba' ata )7iel * ata antara

Ter apat beberapa konsep yang perlu iketa'ui pa a penyi(panan lain = File a ala' Seku(pulan re.or

ari tipe tunggal yang berisi ele(en9ele(en

ata yang (engga(barkan 'i(punan entitas. %ecor) a ala' rangkaian 7iel yang berisi ele(en9ele(en ata yang

(engga(barkan beberapa entitas. Suatu re.or (engan ung in7or(asi ari suatu isian tunggal ala( suatu tabel. Sebagai .onto'8 sebua' re.or ala( suatu tabel Karya1an akan (engan ung in7or(asi ari karya1an9karya1an. Fiel) a ala' suatu ele(en yang (e(iliki atribut )pan5ang8 tipe ata8 ll* an

'arga an (erupakan unit in7or(asi terke.il yang bisa iakses. Suatu re.or ibentuk ole' banyak 7iel . Setiap 7iel ala( suatu re.or (engan ung suatu potongan tunggal ari in7or(asi tentang re.or . Sebagai .onto'8 suatu re.or Karya1an (e(iliki No In uk Karya1an8 Na(a8 Marga an yang lainnya.

2.2 (e* Key a ala' ele(en re.or yang ipakai untuk (ene(ukan re.or pa a 1aktu akses. 6ntuk se.ara unik (engenali suatu baris )re.or *8 setiap tabel 'arus (e(iliki suatu pri(ary key. Dala( konsep atabase8 ikenal beberapa key8 antara lain = a. rimar* (e* Pri(ary key a ala' suatu 7iel 8 atau ko(binasi ari 7iel 97iel 8 yang (ana nilainya bersi7at unik untuk tiap baris atau re.or ala( tabel. Key (erupakan 7iel yang (engi enti7ikasikan sebua' re.or ala( 7ile an bersi7at uni$.

b. "econ)ar* (e* Berbe a engan pri(ary key8 se.on ary key (erupakan 7iel (engi enti7ikasikan sebua' re.or ala( 7ile yangt i ak bersi7at uni$. yang

c. &an)i)ate (e* Merupakan 7iel 97iel yang bisa ipili' ) ipakai* (en5a i pri(ary key.

). Alternate (e* Merupakan 0an i ate key yang ti ak terpili' (en5a i Pri(ary key

e. &omposite (e* Cang i(aksu beberapa /iel engan 0o(posite Key a ala' pri(ary key yang ibentuk ari

).

Foreign (e* a ala' 7iel yang bukan key8 tapi key pa a 7ile yang lain

2.3 #e!nologi Manipulasi Data Sebelu( kita bergerak terlalu 5au' a a baiknya kita (engenal ulu apa itu AD+8 DA+ an %D+ pa a Visual Basi.. Bagi pen atang baru i pe(rogra(an basis ata engan (enggunakan Visual Basi.8 perlu iketa'ui ba'1a k'usus pa a VB #.2 ter apat tiga 'interface' untuk pengaksesan ata8 yaitu E -D: = -.tiAe< Data :b5e.ts "D: = "e(ote Data :b5e.t D-: = Data -..ess :b5e.ts

Seperti kita keta'ui8 teknologi ata a..ess selalu berke(bang engan .epat. Teknologi terak'ir a ala' -D:8 yang (ena1arkan ke(u a'an an 7leksibilitas iban ingkan engan "D: atau D-:. Selain itu -D: 5uga (u a' untuk ipela5ari. 3a i untuk (enge(bangkan suatu aplikasi basis ata baru8 gunakan sa5a teknologi terak'ir yang isebut -D: F)-.tiAe< Data :b5e.ts*F. -lasan (enggunakan teknologi ini karena8 -D: )-.tiAe< Data :b5e.ts* i isain untuk (e(u a'kan interaksi aplikasi engan ata a..ess sesuai engan para ig(a baru yang ike(bangkan ole' Mi.roso7t yaitu :4& DB. :4& DB (enye ikan G'ig'9 per7or(an.eG untuk (eng9akses se(ua 5enis ata sour.e8 ter(asuk i ala(nya non9relational atabase an relational ):"-04&9InterBase9BD2*8 e(ail an 7ile syste(s8 te$t an gra7ik8 an lainnya.

2.4 Database )an Data (ontrol Database (erupakan koleksi ari in7or(asi yang ber'ubungan engan sub5ek atau 7ungsi tertentu8 seperti (enangani nilai9nilai u5ian (a'asis1a atau (enangani suatu a7tar koleksi (usik. 3ika atabase an a ti ak tersi(pan ala( ko(puter8 (aka an a 'arus (enangani in7or(asi tersebut ari berbagai su(ber an (engkoor inir serta (engorganisasinya sen iri. Dengan (engunakan suatu Siste( Mana5e(en Database )DBMS* an a apat (ene(patkan atabase an a ala( suatu 7ile8 an (engorganisasikannya (en5a i

tabel9tabel8 an (engkoor inir ata tersebut (en5a i laporan 7asilitas seperti /or(8 Buery8 "eport.

engan berbagai

2., (onsep Database %elational Mo el relational (erupakan stan ar untuk ran.angan atabase8 i(ana atabase isi(pan an ita(pilkan sebagai suatu koleksi ari tabel9tabel.

Suatu struktur i e7inisikan engan (e(buat relasi antar tabel8 kaitan tabel ini i ala( atabase (erupakan (o el ari relations'ip.

ata antar

- apun (o el atabase relational (ena1arkan keuntungan sebagai berikut = Mengorganisasikan ata i ala( suatu koleksi tabel9tabel (e(buat ran.angan (en5a i (u a' ipa'a(i. Menye iakan suatu ba'asa yang relati7 lengkap untuk (en e7inisikan (enga(bil an (engup ate. Menye iakan aturan integritas yang (ana (en e7inisikan suatu kea aan yang konsisten untuk (eningkatkan reliabilitas ata. Mo el atabase relational (ena(pilkan ata sebagai suatu koleksi ari tabel9tabel. Suatu tabel a ala' pengelo(pokan se.ara logika ari in7or(asi yang ber'ubungan. Tabel9tabel ibentuk ole' baris9baris an kolo(9kolo(. Baris9baris sering isebut sebagai re.or 9re.or an kolo(9kolo( isebut sebagai 7iel 97iel . ata8

2.- In)e. 6ntuk (e(per.epat akses8 banyak atabase (enggunakan in e$. Data tabel yang terin e$ berurut akan lebi' .epat pen.ariaannya iban ingkan engan tabel. Setiap isi in e$ (enun5uk ke posisi itabelnya

2./ $ntit* %elations0ip Diagram 1$%D2 Dala( &"D8 'ubungan antar table ikenal sebagai .ar inality )tingkat 'ubungan antar entitasDtable*. 0ar inality ter iri ari = )one to one* 19M )one to (any* M9N )(any to (any*

2.3

Membuat %elasi antar )atabase

Sesuai engan konsep atabase relational8 tentu sa5a tabel9tabel i ala( suatu atabase (e(iliki link ber asarkan 7iel tertentu yang bertin ak sebagai 7oreign key an pri(ary key.

Dari bentuk relational atabase iatas (aka apat kita li'at ba'1a = Tabel -kti7itas berisi ata akti7itas peserta i(ana seorang Peserta apat

(engikuti lebi' ari satu 7oru( Diskusi8 an sebua' 7oru( iskusi apat iikuti ole' lebi' ari satu peserta8 an status Peserta pa a (asing9(asing 7oru( iskusi apat berbe a9be a. Nama Fiel) 1Foreign !e*2 &(ail /oru(ID Status Foreign #abel Peserta /oru( Status Foreign Fiel) &(ail /oru(ID Status

6ntuk (e(buat "elasi antar tabel

apat (enggunakan Ba'asa SB4 yang

iketikan pa a 5en ela SB4 4anguage an ke(u ian i &$e.ute. - apun DD4 )Data De7inition 4anguage* SB4 untuk (e(buat "elasi antar tabel a ala' sebagai berikut = ALTER TABLE table ADD CONSTRAINT name FOREIGN KEY (ref1 ! ref" ! ###$$% REFERENCES f&rei'ntable (f&rei'nfiel(1 ! f&rei'nfiel(" ! ###$$%$

i(ana = table name ref f&rei'ntable f&rei'nfiel( 0onto' = Na(a tabel Na(a 0onstraint yang akan ibuat Na(a 7iel yang akan ibuat relasi Na(a 7oreign table Na(a 7oreign 7iel

-4T&" T-B4& -kti7itas -DD 0:NST"-INT -kti7itas&(ail /:"&I@N K&C )&(ail* "&/&"&N0&S Peserta )&(ail*E -4T&" T-B4& -kti7itas -DD 0:NST"-INT -kti7itas/oru(ID /:"&I@N K&C )/oru(I * "&/&"&N0&S /oru( )/oru(I *E -4T&" T-B4& -kti7itas -DD 0:NST"-INT -kti7itasStatus /:"&I@N K&C )Status* "&/&"&N0&S Satus )Status*E

3ika ibuka engan "elations'ip pa a Mi.roso7t -..ess (aka 'asil perinta' SB4 iatas akan (e(buat relasi antar tabel sebagai berikut =

2.4

(one!si Database Access pa)a VB.Net

Materi atabase pa a perkulia'an VB Net (enggunakan Mi.roso7t -..ess 2223. Setela' (e(buat pro5e.t baru8 siapkan atabase pa a 7ol er te(pat pro5e.t baru. Misal = na(a pro5e.t VBNet H Isuper(arketJ na(a atabase H Isuper(arket.( bJ

Pa a atabase super(arket siapkan tabel9tabel yang iperlukan8 (isal untuk ta'ap a1al8 siapkan tabel barang8 engan struktur berikut =

Ta'ap selan5utnya8 isikan beberapa re.or barang. Ke(u ian pa a pro5e.t Super(arket aplikasi VB Net8 lakukan koneksi ke atabase super(arket engan ta'apan berikut = Pa a Toolbo$ Data8 lakukan obel klik pa a :leDbData- apter8 ke(u ian klik Ne$t an pili' To(bol INe1 0onne.tionJ

Pili' ProAi er = Mi.roso7t 3et 4.2 :4& DB ProAi er8 klik to(bol Ne$t Ke(u ian pili' atabase yang akan igunakan

Setela' proses koneksi selesai8 klik to(bol Ne$t. 4an5utkan 'ingga pa a perinta' @enerate SB4 state(ents8 ketikkan perinta' SB4 untuk (ena(pilkan ata barang. 6rutan /iel Pa a perinta' Sele.t akan berpengaru' pa a susunan kolo( pa a ko(ponen Data@ri . Ke(u ian pa a proses selan5utnya akan (un.ul 'ak akses yang iberikan ke kita se.ara penu'8 yaitu Sele.t8Insert8 6p ate an Delete.

Pa a ta'ap berikutnya pili' onKt in.lu e pass1or

Setela' proses koneksi selesai8 ta'ap berikutnya a ala' (e(buat ataset8 Dataset a ala' ko(ponen yang ber7ungsi sebagai su(ber ata ) ata sour.e* untuk ko(ponen9ko(ponen yang a a ala( /or(.

6ntuk (e(buat ataset8 klik kanan pa a ko(ponen :le bData- apter18 ke(u ian pili' Igenerate atasetJ Setela' proses (e(buat ataset )(isal= sbarang*. ataset baru selesai8 ganti properties na(e ko(ponen

6ntuk (ena(pilkan ata8 pili' ko(ponen atagri 8 letakkan ala( 7ro(8 ke(u ian atur properties atasour.enya8 pili' )sbarang.barang. Setela' ipili' atasour.e8 pa a ko(ponen Datagri akan ta(pil 7iel 97iel ari tabel barang

-gar pa a saat runningD i5alankan8 pa a ko(ponen atagri nya (un.ul ataDre.or tabel barang8 pa a ko(ponen 7or(1 eAent loa 8 ketikkan perinta' = OleDBDataA(a)ter1#fill((*baran'%8

Pa a to(bol keluar8 ketikkan perinta' untuk (enutup koneksi 7or(Dprogra(.

an (enutup

BAB 3 M$MB5A# F+%M


3.1 Main Menu -gar progra( aplikasi yang ibangun bisa igunakan engan baik8 'arus a a suatu (enu sebagai pengontrol proses yang se ang atau akan berlangsung. Tanpa ibangun suatu (enu8 (aka akan sulit bagi pe(akai atau user untuk (en5alankan suatu aplikasi yang ibangun. :le' karena itu (enu ala( suatu aplikasi sangat penting. Main (enu yang a a ala( progra( apat igunakan untuk (e(anggil se(ua 7or( yang tela' ibuat. 6ntuk (e(buat (enu8 ala( VB.Net sangat berbe a iban ingkan engan ba'asa pe(rogra(an lainnya8 karena VB.Net su a' (enye iakan 7asilitas berupa 0ontrol :b5e.t.

3.2 Membuat Main Menu Dala( iktat VB.Net 4an5utan ini -n a i anggap su a' bisa bagai(ana .ara (e(buat 7or(8 (en esain 7or( an (ena(ba' obyek9obyek yang akan i5a ikan (enu (aupun sub (enu. Ta(pilan (ain (enu yang akan i buat seperti ita(pilkan ga(bar berikut ini

4isting progra( ari (ain (enu iatas a ala' =

Public Class Menu Inherits System.Windows.Forms.Form

Private Sub Label3_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles Label3.Click Me.*ide ) cur + ,ew !aran( cur.Show ) 'nd Sub Private Sub Label-_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles Label-.Click Me.*ide ) cur + ,ew Pelan((an cur.Show ) 'nd Sub Private Sub Label./_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles Label./.Click Me.*ide ) cur + ,ew ,ota. cur.Show ) 'nd Sub Private Sub !utton._Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles !utton..Click I0 Ms(!o1 2#3akah anda yakin in(in keluar dari Pro(ram ini42& Ms(!o1Style.5es,o) + Ms(!o16esult.5es 7hen 'nd 'nd I0 'nd Sub Private Sub Label.8_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles Label.8.Click

Me.*ide ) cur + ,ew 'ntry_S9 cur.Show ) 'nd Sub

Private Sub Label.-_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles Label.-.Click Me.*ide ) cur + ,ew cetak_:witansi cur.Show ) 'nd Sub Private Sub Label.;_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles Label.;.Click Me.*ide ) cur + ,ew 6etur cur.Show ) 'nd Sub Private Sub Label<_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles Label<.Click Me.*ide ) cur + ,ew SP cur.Show ) 'nd Sub Private Sub Label.<_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles Label.<.Click Me.*ide ) cur + ,ew La3_!aran( cur.Show ) 'nd Sub

Private Sub Label.._Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles Label...Click Me.*ide ) cur + ,ew Form. cur.Show ) 'nd Sub Private Sub Menu_Load !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s)*andles My!ase.Load 'nd Sub 'nd Class

3.3

enggunaan Mo)ule

Setela' selesai (e(buat (ain (enu8 sekarang kita akan (en.oba (e(buat sebua' mo)ule. Mo ule ini nantinya akan igunakan pa a penge(bangan aplikasi progra( yang akan ibuat8 i(ana i ala( (o ule ini akan ter apat Aariabel yang bersi7at global atau apat iakses ari se(ua 7or( pa a progra( aplikasi an beberapa pro.e ure yang 5uga bisa iakses ari se(ua 7or(. /ungsi pe(buatan (o ule ini a ala' agar kita ti ak perlu selalu (e(buat koneksi ke atabase ala( 'al ini supermar!et.m)b pa a setiap 7or(. Mo ul yang akan i buat a ala' sebagai berikut =

Im3orts System.=ata.$le=b Im3orts System.=ata Module MyModule Public strConn #s Strin( + 2Provider+Microso0t.9et.$L'=!.;./>=ata Source+2 ? #33lication.Startu3Path ? 2@%eckess.mdb>2 Public cur #s ,ew Form

'nd Module

3.4

Form $ntri Data Barang

Sebelu( (e(buat progra( entri ata barang8 terlebi' a'ulu -n a 'arus (e(buat sebua' (o ule. /or( yang (enarik biasanya akan isukai8 karena yang ber'ubungan engan proses &ntri8 & it an sebagainya erat kaitannya engan pena(pilan suatu 7or(. - apun 7ungsi ari ata entri a ala' untuk proses input ata8 (isalnya ata barang yang nantinya akan igunakan pa a saat transaksi pe(belian an pen5ualan barang. Bentuk atau esain ari 7or( entry ata barang seperti pa a ga(bar berikut =

4isting progra( &ntry Data Barang sebagai berikut =


Im3orts System.=ata.$le=b Im3orts System.=ata Public Class !aran(

=im cnn #s $le=bConnection =im cmmd #s $le=bCommand =im d6eader #s $le=b=ata6eader Private Sub !aran(_Closin( !y"al sender #s $b%ect& !y"al e #s System.Com3onentModel.Cancel'vent#r(s) *andles My!ase.Closin( Me.*ide ) cur + ,ew Menu cur.Show ) 'nd Sub Private Sub btn:eluar_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btn:eluar.Click AMe.*ide ) Acur + ,ew Menu Acur.Show ) Me.Close ) 'nd Sub Private Sub !aran(_Load !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles My!ase.Load A!uka koneksi cnn + ,ew $le=bConnection strConn) I0 cnn.State BC ConnectionState.Closed 7hen cnn.Close ) cnn.$3en ) A!uat #uto,umber u kode =im str7em3 #s Strin( + 22 =im str"alue #s Strin( + 22 =im sDl #s Strin( sDl + 2S'L'C7 E F6$M baran( $6='6 !5 :=_!6F ='SC2 cmmd + ,ew $le=bCommand sDl& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2:=_!6F2)& 3& -) 'lse t1tkd!r(.7e1t + 2!6////.2 '1it Sub

'nd I0 str"alue + "al str7em3) G . t1tkd!r(.7e1t + 2!62 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue 'nd Sub Private Sub t1tkd!r(_:eyPress !y"al sender #s $b%ect& !y"al e #s System.Windows.Forms.:eyPress'vent#r(s) *andles t1tkd!r(.:eyPress I0 #sc e.:eyChar) + .3 7hen cmmd + ,ew $le=bCommand 2S'L'C7 E F6$M baran( W*'6' :=_!6F+A2 ? _t1tkd!r(.7e1t ? 2A2& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen AA%ika data ditemukan btnSim3.'nabled + 7rue btnIbah.'nabled + 7rue btn*3s.'nabled + 7rue t1tnm!r(.7e1t + d6eader.Item 2nm_br(2) t1t*arsat.7e1t + d6eader.Item 2*#6S#72) cmbSe1.7e1t + d6eader.Item 29k2) cmbColor.7e1t + d6eader.Item 2W#6,#2) cmbSiJe.7e1t + d6eader.Item 2I:I6#,2) t1tnm!r(.Focus ) 'lse t1tnm!r(.Focus ) t1tnm!r(.7e1t + 22 t1t*arsat.7e1t + 22 cmbSe1.7e1t + 22 cmbColor.7e1t + 22 cmbSiJe.7e1t + 22 'nd I0 'nd I0 'nd Sub Private Sub btnSim3_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnSim3.Click =im sDl #s Strin( =im str7em3 #s Strin( + 22 =im str"alue #s Strin( + 22

sDl + 2I,S'67 I,7$ baran( kd_br(& nm_br(& harsat& %k& warna& ukuran) 2 ? _2"#LI'S A2 ? t1tkd!r(.7e1t ? _2A&A2 ? t1tnm!r(.7e1t ? 2A&A2 ? t1t*arsat.7e1t ? 2A&A2 ? cmbSe1.7e1t ? _2A&A2 ? cmbColor.7e1t ? 2A&A2 ? cmbSiJe.7e1t ? 2A)2 cmmd + ,ew $le=bCommand sDl& cnn) =im 1 #s Inte(er + cmmd.'1ecute,onKuery I0 1 + . 7hen Messa(e!o1.Show 2=#7# !#6#,F !'6*#SIL =ISIMP#,2) sDl + 2S'L'C7 E F6$M baran( $6='6 !5 :=_!6F ='SC2 cmmd + ,ew $le=bCommand sDl& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2:=_!6F2)& 3&-) 'lse t1tkd!r(.7e1t + 2!6////.2 '1it Sub 'nd I0 str"alue + "al str7em3) G . t1tkd!r(.7e1t + 2!62 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue t1tnm!r(.7e1t + 22 t1t*arsat.7e1t + 22 cmbSe1.7e1t + 22 cmbColor.7e1t + 22 cmbSiJe.7e1t + 22 t1tnm!r(.Focus ) 'lse Messa(e!o1.Show 2F#F#L M',5IMP#, =#7# !#6#,F2) 'nd I0 'nd Sub Private Sub btnIbah_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnIbah.Click =im sDl #s Strin( =im str7em3 #s Strin( + 22 =im str"alue #s Strin( + 22 sDl + 2IP=#7' baran( S'7 nm_br(+A2 ? t1tnm!r(.7e1t ? 2A&2 ? _ 2harsat+A2 ? t1t*arsat.7e1t ? 2A& 2 ? _2%k+A2 ? cmbSe1.7e1t ? 2A&2 ? _2warna+A2 ? cmbColor.7e1t ?

2A&2 ? _2ukuran+A2 ? cmbSiJe.7e1t ? 2A2 ? _2W*'6' kd_br(+A2 ? t1tkd!r(.7e1t ? 2A2 cmmd + ,ew $le=bCommand sDl& cnn) =im 1 #s Inte(er + cmmd.'1ecute,onKuery I0 1 + . 7hen Messa(e!o1.Show 2=#7# !#6#,F !'6*#SIL =IIP=#7'2) sDl + 2S'L'C7 E F6$M baran( $6='6 !5 :=_!6F ='SC2 cmmd + ,ew $le=bCommand sDl& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2:=_!6F2)& 3& -) 'lse t1tkd!r(.7e1t + 2!6////.2 '1it Sub 'nd I0

str"alue + "al str7em3) G . t1tkd!r(.7e1t + 2!62 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue t1tnm!r(.7e1t + 22 t1t*arsat.7e1t + 22 cmbSe1.7e1t + 22 cmbColor.7e1t + 22 cmbSiJe.7e1t + 22 t1tkd!r(.'nabled + 7rue t1tkd!r(.Focus ) 'lse Messa(e!o1.Show 2F#F#L IP=#7' =#7# !#6#,F2) 'nd I0 'nd Sub

Private Sub btn*3s_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btn*3s.Click =im sDl #s Strin( =im str7em3 #s Strin( + 22 =im str"alue #s Strin( + 22 sDl + 2='L'7' F6$M baran( W*'6' :=_!6F+A2 ? t1tkd!r(.7e1t ? 2AL cmmd + ,ew $le=bCommand sDl& cnn)

=im 1 #s Inte(er + cmmd.'1ecute,onKuery I0 1 + . 7hen Messa(e!o1.Show 2=#7# !#6#,F !'6*#SIL =I*#PIS2) sDl + 2S'L'C7 E F6$M baran( $6='6 !5 :=_!6F ='SC2 cmmd + ,ew $le=bCommand sDl& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2:=_!6F2)& 3& -) 'lse t1tkd!r(.7e1t + 2!6////.2 '1it Sub 'nd I0

str"alue + "al str7em3) G . t1tkd!r(.7e1t + 2!62 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue t1tnm!r(.7e1t + 22 t1t*arsat.7e1t + 22 cmbSe1.7e1t + 22 cmbColor.7e1t + 22 cmbSiJe.7e1t + 22 t1tkd!r(.'nabled + 7rue t1tkd!r(.Focus ) 'lse Messa(e!o1.Show 2F#F#L *#PIS =#7# !#6#,F2) 'nd I0 'nd Sub

Private Sub btn!tl_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btn!tl.Click t1tnm!r(.7e1t + 22 t1t*arsat.7e1t + 22 cmbSe1.7e1t + 22 cmbColor.7e1t + 22 cmbSiJe.7e1t + 22 A!uat #uto,umber u kode =im str7em3 #s Strin( + 22 =im str"alue #s Strin( + 22 =im sDl #s Strin(

sDl + 2S'L'C7 E F6$M baran( $6='6 !5 :=_!6F ='SC2 cmmd + ,ew $le=bCommand sDl& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2:=_!6F2)& 3& -) 'lse t1tkd!r(.7e1t + 2!6////.2 '1it Sub 'nd I0 str"alue + "al str7em3) G . t1tkd!r(.7e1t + 2!62 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue 'nd Sub Private Sub btnCari!r(_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnCari!r(.Click =im 3o3u3br( #s ,ew Po3!r( 3o3u3br(.Show=ialo( ) I0 3o3u3br(.ret:d_!r( BC 22 7hen t1tkd!r(.7e1t + 3o3u3br(.ret:d_!r( t1tnm!r(.7e1t + 3o3u3br(.ret,m_!r( t1t*arsat.7e1t + Format C=bl 3o3u3br(.ret*arsat)& 2MM&MMMM&MMMM&MMM2) cmbSe1.7e1t + 3o3u3br(.ret9: cmbColor.7e1t + 3o3u3br(.retWarna cmbSiJe.7e1t + 3o3u3br(.retIkuran t1tkd!r(.'nabled + False t1tnm!r(.Focus ) 'nd I0 'nd Sub 'nd Class

3., Form $ntri Data elanggan /ungsi Data Pelanggan a ala' untuk (e(asukkan ata9 ata pelanggan yang igunakan pa a saat pen5ualan barang. - apun esain 7or( &ntri Data Pelanggan a ala' sebagai berikut =

4isting progra( &ntry Data Pelanggan sebagai berikut =

Im3orts System.=ata.$le=b Im3orts System.=ata Public Class Pelan((an =im cnn #s $le=bConnection =im cmmd #s $le=bCommand =im d6eader #s $le=b=ata6eader Private Sub Pelan(an_Closin( !y"al sender #s $b%ect& !y"al e #s System.Com3onentModel.Cancel'vent#r(s) *andles My!ase.Closin( Me.*ide ) cur + ,ew Menu cur.Show ) 'nd Sub Private Sub Pelan((an_Load !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles My!ase.Load A!uka koneksi cnn + ,ew $le=bConnection strConn) I0 cnn.State BC ConnectionState.Closed 7hen cnn.Close ) cnn.$3en ) A!uat #uto,umber u kode 3elan((an =im str7em3 #s Strin( + 22

=im str"alue #s Strin( + 22 =im sDl #s Strin( sDl + 2S'L'C7 E F6$M 3elan((an $6='6 !5 :=_PLF ='SC2 cmmd + ,ew $le=bCommand sDl& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2:=_PLF2)& 3& -) 'lse t1tkdPl(.7e1t + 2PL////.2 '1it Sub 'nd I0 str"alue + "al str7em3) G . t1tkdPl(.7e1t + 2PL2 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue 'nd I0 'nd Sub Private Sub t1tkdPl(_:eyPress !y"al sender #s $b%ect& !y"al e #s System.Windows.Forms.:eyPress'vent#r(s) *andles t1tkdPl(.:eyPress I0 #sc e.:eyChar) + .3 7hen cmmd + ,ew $le=bCommand 2S'L'C7 E F6$M 3elan((an W*'6' :=_PLF+A2 ? _t1tkdPl(.7e1t ? 2A2& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen AA%ika data ditemukan btnSim3.'nabled + 7rue btnIbah.'nabled + 7rue btn*3s.'nabled + 7rue t1tnmPl(.7e1t + d6eader.Item 2nm_3l(2) t1t#lmt.7e1t + d6eader.Item 2almt2) t1t:ontak.7e1t + d6eader.Item 2tel32) t1tnmPl(.Focus ) 'lse t1tnmPl(.Focus ) t1tnmPl(.7e1t + 22 t1t#lmt.7e1t + 22 'nd I0

'nd I0 'nd Sub Private Sub btnSim3_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnSim3.Click =im sDl #s Strin( =im str7em3 #s Strin( + 22 =im str"alue #s Strin( + 22 sDl + 2I,S'67 I,7$ 3elan((an :=_PLF& nm_3l(& almt& 7'LP) 2 ? _ 2"#LI'S A2 ? t1tkdPl(.7e1t ? _ 2A&A2 ? t1tnmPl(.7e1t ? 2A&A2 ? t1t#lmt.7e1t ? 2A&A2 ? t1t:ontak.7e1t ? 2A)2 cmmd + ,ew $le=bCommand sDl& cnn) =im 1 #s Inte(er + cmmd.'1ecute,onKuery I0 1 + . 7hen Messa(e!o1.Show 2=#7# P'L#,FF#, !'6*#SIL =ISIMP#,2) sDl + 2S'L'C7 E F6$M 3elan((an $6='6 !5 :=_PLF ='SC2 cmmd + ,ew $le=bCommand sDl& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2:=_PLF2)& 3& -) 'lse t1tkdPl(.7e1t + 2PL////.2 '1it Sub 'nd I0 str"alue + "al str7em3) G . t1tkdPl(.7e1t + 2PL2 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue t1tnmPl(.7e1t + 22 t1t#lmt.7e1t + 22 t1t:ontak.7e1t + 22 t1tnmPl(.Focus ) 'lse Messa(e!o1.Show 2F#F#L M',5IMP#, =#7# P'L#,FF#,2) 'nd I0 'nd Sub

Private Sub btnIbah_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnIbah.Click =im sDl #s Strin( =im str7em3 #s Strin( + 22 =im str"alue #s Strin( + 22 sDl + 2IP=#7' 3elan((an S'7 nm_3l(+A2 ? t1tnmPl(.7e1t ? 2A&2 ? _ 2almt+A2 ? t1t#lmt.7e1t ? 2A& 2 ? _ 27'LP+A2 ? t1t:ontak.7e1t ? 2A 2 ? _ 2W*'6' :=_PLF+A2 ? t1tkdPl(.7e1t ? 2AL cmmd + ,ew $le=bCommand sDl& cnn) =im 1 #s Inte(er + cmmd.'1ecute,onKuery I0 1 + . 7hen Messa(e!o1.Show 2=#7# !'6*#SIL =IIP=#7'2) sDl + 2S'L'C7 E F6$M 3elan((an $6='6 !5 :=_PLF ='SC2 cmmd + ,ew $le=bCommand sDl& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2:=_PLF2)& 3& -) 'lse t1tkdPl(.7e1t + 2PL////.2 '1it Sub 'nd I0 str"alue + "al str7em3) G . t1tkdPl(.7e1t + 2PL2 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue t1tnmPl(.7e1t + 22 t1t#lmt.7e1t + 22 t1t:ontak.7e1t + 22 t1tkdPl(.'nabled + 7rue t1tkdPl(.Focus ) 'lse Messa(e!o1.Show 2F#F#L IP=#7' =#7#2) 'nd I0 'nd Sub Private Sub btn*3s_Click !y"al sender #s System.$b%ect& !y"al e #s

System.'vent#r(s) *andles btn*3s.Click =im sDl #s Strin( =im str7em3 #s Strin( + 22 =im str"alue #s Strin( + 22 sDl + 2='L'7' F6$M 3elan((an W*'6' :=_PLF+A2 ? t1tkdPl(.7e1t ? 2A2 cmmd + ,ew $le=bCommand sDl& cnn) =im 1 #s Inte(er + cmmd.'1ecute,onKuery I0 1 + . 7hen Messa(e!o1.Show 2=#7# !'6*#SIL =I*#PIS2) sDl + 2S'L'C7 E F6$M 3elan((an $6='6 !5 :=_PLF ='SC2 cmmd + ,ew $le=bCommand sDl& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2:=_PLF2)& 3& -) 'lse t1tkdPl(.7e1t + 2PL////.2 '1it Sub 'nd I0 str"alue + "al str7em3) G . t1tkdPl(.7e1t + 2PL2 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue t1tnmPl(.7e1t + 22 t1t#lmt.7e1t + 22 t1t:ontak.7e1t + 22 t1tkdPl(.'nabled + 7rue t1tkdPl(.Focus ) 'lse Messa(e!o1.Show 2F#F#L *#PIS =#7#2) 'nd I0 'nd Sub Private Sub btn!tl_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btn!tl.Click =im sDl #s Strin( =im str7em3 #s Strin( + 22 =im str"alue #s Strin( + 22 t1tnmPl(.7e1t + 22 t1t#lmt.7e1t + 22

t1t:ontak.7e1t + 22 sDl + 2S'L'C7 E F6$M 3elan((an $6='6 !5 :=_PLF ='SC2 cmmd + ,ew $le=bCommand SDl& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2:=_PLF2)& 3& -) 'lse t1tkdPl(.7e1t + 2PL////.2 '1it Sub 'nd I0 str"alue + "al str7em3) G . t1tkdPl(.7e1t + 2PL2 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue 'nd Sub Private Sub btn:eluar_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btn:eluar.Click Me.Close ) 'nd Sub Private Sub btnCariPl(_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnCariPl(.Click =im 3o3u33l( #s ,ew Po3Pl( 3o3u33l(.Show=ialo( ) I0 3o3u33l(.ret:dPl( BC 22 7hen t1tkdPl(.7e1t + 3o3u33l(.ret:dPl( t1tnmPl(.7e1t + 3o3u33l(.ret,mPl( t1t#lmt.7e1t + 3o3u33l(.ret#lmtPl( t1t:ontak.7e1t + 3o3u33l(.ret7l3Pl( t1tkdPl(.'nabled + False t1tnmPl(.Focus ) 'nd I0 'nd Sub 'nd Class

3.- Form $ntr* esanan /or( in ber7ungsi untuk (en.atat ata pesanan8 setiap kali transaksi yang akan ilakukan yang (ana 7or( ini ber'ubungan engan ata barang an ata pelanggan. - apun .ara pe(buatannya 'a(pir sa(a engan pe(buatan 7or( sebelu(nya. 4ayout esain 7or( entry pesanan seperti ga(bar berikut =

Se ang listing progra( ari entry pesanan a ala' =

Im3orts System.=ata.$le=b Im3orts System.=ata

Public Class SP =im cnn #s $le=bConnection =im cmmd& cmmd.& cmmd< #s $le=bCommand =im d6eader #s $le=b=ata6eader Private inde1 #s Inte(er + / Private 7otal #s =ouble + /./ Private Sub SP_Closin( !y"al sender #s System.$b%ect& !y"al e #s System.Com3onentModel.Cancel'vent#r(s) *andles My!ase.Closin( Me.*ide ) cur + ,ew Menu cur.Show ) 'nd Sub Private Sub SP_#ctivated !y"al sender #s $b%ect& !y"al e #s System.'vent#r(s) *andles Me.#ctivated t1t,oSP.'nabled + False t1tkdPl(.Focus ) 'nd Sub Private Sub SP_Load !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s)*andles My!ase.Load AA!uka koneksi cnn + ,ew $le=bConnection strConn) I0 cnn.State BC ConnectionState.Closed 7hen cnn.Close ) cnn.$3en ) A!uat #uto,umber u kode =im str7em3 #s Strin( + 22 =im str"alue #s Strin( + 22 =im sDl #s Strin( sDl + 2S'L'C7 E F6$M s3 $6='6 !5 no_s3 ='SC2 cmmd + ,ew $le=bCommand sDl& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2no_s32)& 3& -) 'lse t1t,oSP.7e1t + 2SP////.2 '1it Sub 'nd I0 str"alue + "al str7em3) G .

t1t,oSP.7e1t + 2SP2 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue 'nd Sub Private Sub btnCariPl(_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnCariPl(.Click =im 3o3u33l( #s ,ew Po3Pl( 3o3u33l(.Show=ialo( ) I0 3o3u33l(.ret:dPl( BC 22 7hen t1tkdPl(.7e1t + 3o3u33l(.ret:dPl( t1tnmPl(.7e1t + 3o3u33l(.ret,mPl( t1t#lmt.7e1t + 3o3u33l(.ret#lmtPl( t1t:ontak.7e1t + 3o3u33l(.ret7l3Pl( t1tkdPl(.'nabled + False cari!r(.Focus ) 'nd I0 'nd Sub Private Sub !utton<_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles cari!r(.Click =im 3o3u3br( #s ,ew Po3!r( 3o3u3br(.Show=ialo( ) I0 3o3u3br(.ret:d_!r( BC 22 7hen t1tkd!r(.7e1t + 3o3u3br(.ret:d_!r( t1tnm!r(.7e1t + 3o3u3br(.ret,m_!r( t1t*arsat.7e1t + Format C=bl 3o3u3br(.ret*arsat)& 2MM&MMMM&MMMM&MMM2) t1tSe1.7e1t + 3o3u3br(.ret9: t1tColor.7e1t + 3o3u3br(.retWarna t1tSiJe.7e1t + 3o3u3br(.retIkuran t1tkd!r(.'nabled + False t1t9ml.Focus ) 'nd I0 'nd Sub Private Sub t1t9ml_:eyPress !y"al sender #s $b%ect& !y"al e #s System.Windows.Forms.:eyPress'vent#r(s) *andles t1t9ml.:eyPress I0 #sc e.:eyChar) + .3 7hen

Set7otal ) btnPesan.Focus ) 'nd Sub 'nd I0 Sub Set7otal ) =im a #s Inte(er a + CInt t1t9ml.7e1t) E CInt t1t*arsat.7e1t) t1t7otal.7e1t + Format C=bl CStr a))& 2MM&MMMM&MMMM&MMM2) Sub #ddList !y"al "alue ) #s Strin() =im subInde1 #s Inte(er lvwPl(.Items.#dd 22) For subInde1 + / 7o ; lvwPl(.Items inde1).SubItems.#dd 22) lvwPl(.Items inde1).SubItems subInde1).7e1t + "alue subInde1) ,e1t inde1 + inde1 G . Sub Sub btnPesan_Click !y"al sender #s System.$b%ect& !y"al e

'nd Sub

'nd Private #s

System.'vent#r(s) *andles btnPesan.Click =im "alue ) #s Strin( + Nt1tkd!r(.7e1t& t1tnm!r(.7e1t& t1t9ml.7e1t& t1t*arsat.7e1t& t1t7otal.7e1tO #ddList "alue) 7otal G+ C=bl t1t7otal.7e1t) P LblFrand7otal.7e1t + Format C=bl CStr 7otal))& 2MM&MMMM&MMMM&MMM2) t1tkd!r(.7e1t + 22 t1tnm!r(.7e1t + 22 t1t*arsat.7e1t + 22 t1tSe1.7e1t + 22 t1tColor.7e1t + 22 t1tSiJe.7e1t + 22 t1t9ml.7e1t + 22 t1t7otal.7e1t + 22 cari!r(.Focus ) 'nd Sub

Private Sub t1t!ayar_:eyPress !y"al sender #s $b%ect& !y"al e #s System.Windows.Forms.:eyPress'vent#r(s) *andles t1t!ayar.:eyPress I0 #sc e.:eyChar) + .3 7hen t1t:embali.7e1t + Format C=bl CStr CInt t1t!ayar.7e1t) H CInt LblFrand7otal.7e1t)))& 2MM&MMMM&MMMM&MMM2) 'nd I0 'nd Sub Private Sub cmdSim3an_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles cmdSim3an.Click =im counter #s Inte(er =im sDl.& sDl< #s Strin( 7ry sDl. + 2I,S'67 I,7$ SP ,$_SP& 7FL_SP& :=_3l() 2 ? _ 2"#LI'S A2 ? t1t,oSP.7e1t ? 2A&A2 ? _ =ate7imePicker..7e1t ? 2A&A2 ? _ t1tkdPl(.7e1t ? 2A)2 cmmd. + ,ew $le=bCommand sDl.& cnn) =im 1 #s Inte(er + cmmd..'1ecute,onKuery For counter + / 7o inde1 H . sDl< + 2I,S'67 I,7$ P'S#, no_s3&kd_br(& %ml_3sn) 2 ? _ 2"#LI'S A2 ? _ t1t,oSP.7e1t ? 2A&A2 ? _ lvwPl(.Items counter).SubItems /).7e1t ? 2A&A2 ? _ lvwPl(.Items counter).SubItems <).7e1t ? 2A)2 cmmd< + ,ew $le=bCommand sDl<& cnn) cmmd<.'1ecute,onKuery ) ,e1t I0 1 + . 7hen Messa(e!o1.Show 2=#7# SI6#7 P'S#,#, !'6*#SIL =ISIMP#,2) 'nd I0 Catch e1 #s '1ce3tion

Ms(!o1 e1.Messa(e) 'nd 7ry 'nd Sub Private Sub cmd!atal_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles cmd!atal.Click lvwPl(.Items.Clear ) inde1 + / P 7otal + / LblFrand7otal.7e1t + 22 'nd Sub Private Sub cmd:eluar_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles cmd:eluar.Click Me.Close ) 'nd Sub 'nd Class

3./ Form $ntr* Nota /or( entri nota igunakan untuk (elakukan transaksi pen5ualan8 seperti pen5ualan .ounter i (ana se.ara oto(atis akan (engunakan no(or .ounter sebagai no(or nota8 an untuk setiap kali transaksi ilakukan akan (en.etak strukDnota. Desain lengkap 7or( entri nota tersebut ita(pilkan pa a ga(bar berikut =

4isting progra( entri nota sebagai berikut =

Im3orts System.=ata.$le=b Im3orts System.=ata Public Class ,ota. =im cnn #s $le=bConnection =im cmmd& cmmd.& cmmd< #s $le=bCommand =im d6eader& d6eader< #s $le=b=ata6eader =im total.& total< #s Inte(er Private inde1 #s Inte(er + / Private 7otal #s =ouble + /./& F7otal #s =ouble + /./ Private Sub ,ota_Closin( !y"al sender #s $b%ect& !y"al e #s

System.Com3onentModel.Cancel'vent#r(s) *andles My!ase.Closin( Me.*ide ) cur + ,ew Menu cur.Show ) 'nd Sub Private Sub ,ota._#ctivated !y"al sender #s $b%ect& !y"al e #s System.'vent#r(s) *andles Me.#ctivated t1tno,ota.'nabled + False t1tnoSP.Focus ) 'nd Sub Private Sub ,ota_Load !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles My!ase.Load AA!uka koneksi cnn + ,ew $le=bConnection strConn) I0 cnn.State BC ConnectionState.Closed 7hen cnn.Close ) cnn.$3en ) A!uat #uto,umber u kode =im str7em3 #s Strin( + 22 =im str"alue #s Strin( + 22 =im sDl #s Strin( sDl + 2S'L'C7 E F6$M ,$7# $6='6 !5 no_nota ='SC2 cmmd + ,ew $le=bCommand sDl& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2no_nota2)& 3& -) 'lse t1tno,ota.7e1t + 2,#////.2 '1it Sub 'nd I0 str"alue + "al str7em3) G . t1tno,ota.7e1t + 2,#2 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue 'nd Sub Private Sub btncrPl(_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btncrPl(.Click =im 3o3u3SP #s ,ew Po3SP lvwPl(.Items.Clear )

inde1 + / F7otal + / 3o3u3SP.Show=ialo( ) I0 3o3u3SP.ret,oSP BC 22 7hen t1tnoSP.7e1t + 3o3u3SP.ret,oSP t1t7(lSP.7e1t + Format C=ate 3o3u3SP.ret7(lSP)& 2dd H MMMM H yyyy2) t1t:dPl(.7e1t + 3o3u3SP.ret:dPl( btnCetak.Focus ) 'nd I0 AAAA I,7I: M',#MPIL:#, ,#M# P'L#,FF#, =im sDl1 #s Strin( sDl1 + 2select nm_3l(&almt&tel3 0rom P'L#,FF#, where kd_3l( like AQ2 ? 7rim t1t:dPl(.7e1t) ? 2QA order by kd_3l( asc2 cnn + ,ew $le=bConnection strConn) cnn.$3en ) cmmd + ,ew $le=bCommand sDl1& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen t1tnmPl(.7e1t + d6eader /) t1t#lmt.7e1t + d6eader .) t1t:ontak.7e1t + d6eader <) 'nd I0 AAAA I,7I: M',#MPIL:#, data baran( yan( ada di P'S#, =im sDl< #s Strin( sDl< + 2select kd_br(& %ml_3sn 0rom P'S#, where no_s3 like AQ2 ? 7rim t1tnoSP.7e1t) ? 2QA order by no_s3 desc2 cnn + ,ew $le=bConnection strConn) cnn.$3en ) cmmd + ,ew $le=bCommand sDl<& cnn) d6eader + cmmd.'1ecute6eader While d6eader.6ead =im "alue ) #s Strin( + Nd6eader /)& d6eader .)O #ddList "alue) total. + d6eader .)

AAAA I,7I: M',#MPIL:#, nama baran( dan har(a satuan di !#6#,F =im sDl3 #s Strin( sDl3 + 2select nm_br(&kd_br(& harsat 0rom !#6#,F where kd_br( like AQ2 ? 7rim d6eader /)) ? 2QA order by kd_br( asc2 cnn + ,ew $le=bConnection strConn) cnn.$3en ) cmmd< + ,ew $le=bCommand sDl3& cnn) d6eader< + cmmd<.'1ecute6eader I0 d6eader<.6ead 7hen =im "alue< ) #s Strin( + Nd6eader< /)& d6eader< <)O total< + d6eader< <) 7otal + CInt total. E total<) #ddList< "alue<) 'nd I0 F7otal G+ C=bl 7otal) A Ms(!o1 F7otal) 'nd While t1t97.7e1t + Format C=bl CStr F7otal))& 2MM&MMMM&MMMM&MMM2) 'nd Sub Sub #ddList !y"al "alue ) #s Strin() =im subInde1 #s Inte(er =im a #s Inte(er + / lvwPl(.Items.#dd 22) For subInde1 + / 7o . lvwPl(.Items inde1).SubItems.#dd 22) lvwPl(.Items inde1).SubItems a).7e1t + "alue subInde1) a + a G < ,e1t 'nd Sub Sub #ddList< !y"al "alue< ) #s Strin() =im subInde1 #s Inte(er =im a #s Inte(er + . lvwPl(.Items.#dd 22) For subInde1 + / 7o .

lvwPl(.Items inde1).SubItems.#dd 22) lvwPl(.Items inde1).SubItems a).7e1t + "alue< subInde1) AlvwPl(.Items inde1).SubItems ;).7e1t + 7otal a + a G < ,e1t inde1 + inde1 G . 'nd Sub Private Sub btnSim3_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnSim3.Click =im sDl. #s Strin( 7ry sDl. + 2I,S'67 I,7$ ,$7# ,$_,$7#& 7FL_,$7#& ,o_SP) 2 ? _ 2"#LI'S A2 ? t1tno,ota.7e1t ? 2A&A2 ? _ =ate7imePicker..7e1t ? 2A&A2 ? _ t1tnoSP.7e1t ? 2A)2 cmmd. + ,ew $le=bCommand sDl.& cnn) =im 1 #s Inte(er + cmmd..'1ecute,onKuery I0 1 + . 7hen Messa(e!o1.Show 2=#7# ,$7# !'6*#SIL =ISIMP#,2) bersih ) A!uat #uto,umber u kode =im str7em3 #s Strin( + 22 =im str"alue #s Strin( + 22 =im sDl #s Strin( sDl + 2S'L'C7 E F6$M ,$7# $6='6 !5 no_nota ='SC2 cmmd + ,ew $le=bCommand sDl& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2no_nota2)& 3& -) 'lse t1tno,ota.7e1t + 2,#////.2 '1it Sub 'nd I0

str"alue + "al str7em3) G . t1tno,ota.7e1t + 2,#2 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue 'nd I0 Catch e1 #s '1ce3tion Ms(!o1 e1.Messa(e) 'nd 7ry 'nd Sub Private Sub btn!tl_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btn!tl.Click bersih ) 'nd Sub Sub bersih ) lvwPl(.Items.Clear ) inde1 + / P 7otal + / t1tnoSP.7e1t + 22 =ate7imePicker..7e1t + 22 t1t:dPl(.7e1t + 22 t1tnmPl(.7e1t + 22 t1t#lmt.7e1t + 22 t1t:ontak.7e1t + 22 t1t7(lSP.7e1t + 22 t1t97.7e1t + 22 'nd Sub Private Sub btnCetak_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnCetak.Click cetak_,ota.Show ) 'nd Sub Private Sub !utton._Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles !utton..Click Me.Close ) 'nd Sub 'nd Class

3.3 Form $ntr* &eta! Nota /or( ini 5ika i5alankan akan (eng'asilkan sebua' output berupa Nota8 i(ana akan berisi (engenai ata9 ata barang yang ibeli ole' pelanggan. Desain layout ari 7or( .etak nota seperti ga(bar berikut =

4isting progra( ari 7or( .etak nota a ala' sebagai berikut =

Im3orts System.=ata.$le=b Im3orts System.=ata Public Class cetak_,ota =im cnn #s $le=bConnection =im cmmd #s $le=bCommand =im d6eader #s $le=b=ata6eader Private Sub cetak_,ota_Closin( !y"al sender #s System.$b%ect& !y"al e #s System.Com3onentModel.Cancel'vent#r(s) *andles My!ase.Closin( Me.*ide ) cur + ,ew ,ota. cur.Show )

'nd Sub Private Sub btnCetak_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnCetak.Click Messa(e!o1.Show 2Maa0& a3likasi ini belum ber0un(si2& 2Pesan2& Messa(e!o1!uttons.$:& Messa(e!o1Icon.In0ormation) 'nd Sub Private Sub btn:eluar_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btn:eluar.Click Me.Close ) 'nd Sub Private Sub btnLayar_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnLayar.Click Layar_,ota.a + t1t,o,ota.7e1t Layar_,ota.Show ) 'nd Sub Private Sub btnCari_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnCari.Click =im 3o3u3nota #s ,ew Po3,ota 3o3u3nota.Show=ialo( ) I0 3o3u3nota.ret,o,ota BC 22 7hen t1t,o,ota.7e1t + 3o3u3nota.ret,o,ota t1tt(lnota.7e1t + 3o3u3nota.ret7(l,ota t1t,oSP.7e1t + 3o3u3nota.ret,oSP t1t,o,ota.'nabled + False btnLayar.Focus ) 'nd I0 AAAA I,7I: M',#MPIL:#, 7#,FF#L SP =im sDl1 #s Strin( sDl1 + 2select t(l_s3 0rom SP where no_s3 like AQ2 ? 7rim t1t,oSP.7e1t) ? 2QR order by no_s3 asc2 cnn + ,ew $le=bConnection strConn) cnn.$3en ) cmmd + ,ew $le=bCommand sDl1& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen

t1t7(lSP.7e1t + Format C=ate d6eader /))& 2ddH MMMMHyyyy2) 'nd I0 'nd Sub Private Sub cetak_,ota_Load !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles My!ase.Load 'nd Sub 'nd Class Public Class Layar_,ota Public a #s Strin( Private Sub Layar_,ota_Load !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles My!ase.Load Ms(!o1 2,o ,ota + 2 ? a) Crystal6e3ort"iewer..SelectionFormula + 2Nnota.no_notaO+ A2 ? a ? 2A2 Crystal6e3ort"iewer..6e0resh6e3ort ) 'nd Sub 'nd Class

3.4 Form &eta! (6itansi /or( ini 5ika i5alankan akan (eng'asilkan sebua' .etakan berupa k1itansi yang igunakan sebagai alat bukti pe(bayaran. Desain ari 7or( 0etak K1itansi seperti ga(bar i ba1a' ini =

Se angkan listing progra( ari 0etak K1itansi a ala' =

Im3orts System.=ata.$le=b Im3orts System.=ata Public Class cetak_:witansi Public ret,oSP& ret7(lSP& ret:dSu3 #s Strin( =im cnn #s $le=bConnection =im cmmd #s $le=bCommand =im d6eader& dreader<& dreader3 #s $le=b=ata6eader =im total #s =ouble& F7otal #s =ouble Private Sub cetak_:witansi_Closin( !y"al sender #s System.$b%ect& !y"al e #s System.Com3onentModel.Cancel'vent#r(s) *andles My!ase.Closin( Me.*ide ) cur + ,ew Menu cur.Show ) 'nd Sub Private Sub cetak_:witansi_#ctivated !y"al sender #s $b%ect& !y"al e #s System.'vent#r(s) *andles Me.#ctivated t1tno:wi.'nabled + False t1t,o,ota.Focus ) 'nd Sub Private Sub cetak_:witansi_Load !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles My!ase.Load AA!uka koneksi cnn + ,ew $le=bConnection strConn) I0 cnn.State BC ConnectionState.Closed 7hen cnn.Close ) cnn.$3en ) A!uat #uto,umber u kode =im str7em3 #s Strin( + 22 =im str"alue #s Strin( + 22 =im sDl #s Strin( sDl + 2S'L'C7 E F6$M :WI7#,SI $6='6 !5 no_kwit ='SC2 cmmd + ,ew $le=bCommand sDl& cnn) d6eader + cmmd.'1ecute6eader

I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2no_kwit2)& 3& -) 'lse t1tno:wi.7e1t + 2:W////.2 '1it Sub 'nd I0 str"alue + "al str7em3) G . t1tno:wi.7e1t + 2:W2 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue 'nd Sub Private Sub btnCetak_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnCetak.Click Messa(e!o1.Show 2Maa0& a3likasi ini belum ber0un(si2& 2Pesan2& Messa(e!o1!uttons.$:& Messa(e!o1Icon.In0ormation) 'nd Sub Private Sub btnCari_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnCari.Click =im 3o3u3nota #s ,ew Po3,ota =im a #s Strin(& b #s Strin(& c #s Strin(& d #s Strin( total + / F7otal + / 3o3u3nota.Show=ialo( ) I0 3o3u3nota.ret,o,ota BC 22 7hen t1t,o,ota.7e1t + 3o3u3nota.ret,o,ota t1t7(l,ota.7e1t + 3o3u3nota.ret7(l,ota t1tno:wi.'nabled + False btnSim3an.Focus ) 'nd I0 AAAA I,7I: M',#MPIL:#, 7#,FF#L SP =im sDl. #s Strin(& sDl< #s Strin(& sDl3 #s Strin( sDl. + 2select no_s3 0rom nota where no_nota like AQ2 ? rim t1t,o,ota.7e1t) ? 2QA order by no_nota asc2 cnn + ,ew $le=bConnection strConn) cnn.$3en ) cmmd + ,ew $le=bCommand sDl.& cnn) d6eader + cmmd.'1ecute6eader

I0 d6eader.6ead 7hen a + d6eader /) sDl< + 2select kd_br(&%ml_3sn 0rom P'S#, where no_s3 like AQ2 ? 7rim a) ? 2QA order by no_s3 desc2 cnn + ,ew $le=bConnection strConn) cnn.$3en ) cmmd + ,ew $le=bCommand sDl<& cnn) dreader< + cmmd.'1ecute6eader While dreader<.6ead b + dreader< .) c + dreader< /) sDl3 + 2select harsat 0rom !#6#,F where kd_br( like AQ2 ? 7rim c) ? 2QR order by kd_br( desc2 cnn + ,ew $le=bConnection strConn) cnn.$3en ) cmmd + ,ew $le=bCommand sDl3& cnn) dreader3 + cmmd.'1ecute6eader I0 dreader3.6ead 7hen d + dreader3 /) total + C=bl b E d) 'nd I0 F7otal G+ total t1t9ml!yr.7e1t + F7otal 'nd While 'nd I0 'nd Sub Private Sub btn:eluar_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btn:eluar.Click Me.Close ) 'nd Sub Private Sub btnLayar_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnLayar.Click Layar_:witansi.b + t1tno:wi.7e1t Layar_:witansi.Show ) 'nd Sub Private Sub btnSim3an_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnSim3an.Click

,o_,$7#) 2 ? _ 2A)2

=im sDl. #s Strin( 7ry sDl. + 2I,S'67 I,7$ :WI7#,SI ,$_:WI7& 7FL_:WI7& ? _ 2"#LI'S A2 ? t1tno:wi.7e1t ? 2A&A2 t(l:wi.7e1t ? 2A&A2 ? _ t1t,o,ota.7e1t ? cmmd + ,ew $le=bCommand sDl.& cnn) =im 1 #s Inte(er + cmmd.'1ecute,onKuery I0 1 + . 7hen Messa(e!o1.Show 2=#7# :WI7#,SI !'6*#SIL

=ISIMP#,2) btnLayar.Focus ) 'nd I0 Catch e1 #s '1ce3tion Ms(!o1 e1.Messa(e) 'nd 7ry 'nd Sub Sub bersih ) t1tno:wi.7e1t + 22 t(l:wi.7e1t + 22 t1t,o,ota.7e1t + 22 t1t7(l,ota.7e1t + 22 t1t9ml!yr.7e1t + 22 'nd Sub 'nd Class Public Class Layar_:witansi Public b #s Strin( Private Sub Layar_:witansi_Load !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles My!ase.Load Crystal6e3ort"iewer..SelectionFormula + 2Nkwitansi.no_kwitO+ A2 ? b ? 2A2 Crystal6e3ort"iewer..6e0resh6e3ort ) 'nd Sub 'nd Class

3.17 Form $ntr* "urat 8alan /or( in ber7ungsi untuk (en.atat ata pesanan yang akan ikiri(8 setiap kali transaksi yang akan ilakukan yang (ana 7or( ini ber'ubungan engan ata barang an ata pelanggan. Desain layout ari 7or( entry surat 5alan seperti ga(bar berikut =

- apun listing progra(nya a ala' =

Im3orts System.=ata.$le=b Im3orts System.=ata Public Class 'ntry_S9 =im cnn #s $le=bConnection =im cmmd& cmmd.& cmmd< #s $le=bCommand =im d6eader& d6eader.& d6eader<& d6eader3& d6eader; #s $le=b=ata6eader

=im total.& total< #s Inte(er Private inde1 #s Inte(er + / Private 7otal #s =ouble + /./& F7otal #s =ouble + /./ Public a #s Strin( Private Sub 'ntry_S9_Closin( !y"al sender #s System.$b%ect& !y"al e #s System.Com3onentModel.Cancel'vent#r(s) *andles My!ase.Closin( Me.*ide ) cur + ,ew Menu cur.Show ) 'nd Sub Private Sub 'ntry_S9_#ctivated !y"al sender #s $b%ect& !y"al e #s System.'vent#r(s) *andles Me.#ctivated t1tnoS9.'nabled + False t1t,o,ota.Focus ) 'nd Sub Private Sub 'ntry_S9_Load !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles My!ase.Load AA!uka koneksi cnn + ,ew $le=bConnection strConn) I0 cnn.State BC ConnectionState.Closed 7hen cnn.Close ) cnn.$3en ) A!uat #uto,umber u kode =im str7em3 #s Strin( + 22 =im str"alue #s Strin( + 22 =im sDl #s Strin( sDl + 2S'L'C7 E F6$M S9 $6='6 !5 no_s% ='SC2 cmmd + ,ew $le=bCommand sDl& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2no_s%2)& 3& -) 'lse t1tnoS9.7e1t + 2S9////.2 '1it Sub 'nd I0 str"alue + "al str7em3) G . t1tnoS9.7e1t + 2S92 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue 'nd Sub

Private Sub btnCari,ota_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnCari,ota.Click =im 3o3u3nota #s ,ew Po3,ota 3o3u3nota.Show=ialo( ) I0 3o3u3nota.ret,o,ota BC 22 7hen t1t,o,ota.7e1t + 3o3u3nota.ret,o,ota t1t7(l,ota.7e1t + 3o3u3nota.ret7(l,ota t1t,oSP.7e1t + 3o3u3nota.ret,oSP t1t,o,ota.'nabled + False t1tkd!r(.Focus ) 'nd I0 AAAA I,7I: M',#MPIL:#, 7#,FF#L ,$7# =im sDl1 #s Strin( sDl1 + 2select t(l_nota&no_s3 0rom nota where no_nota like AQ2 ? 7rim t1t,o,ota.7e1t) ? 2QA order by no_nota asc2 cnn + ,ew $le=bConnection strConn) cnn.$3en ) cmmd + ,ew $le=bCommand sDl1& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen t1t7(l,ota.7e1t + Format C=ate d6eader /))& 2ddH MMMMH yyyy2) t1t,oSP.7e1t + d6eader .) 'nd I0 AAAA I,7I: M',#MPIL:#, 7#,FF#L SP =im sDl. #s Strin( sDl. + 2select t(l_s3&kd_3l( 0rom SP where no_s3 like AQ2 ? 7rim t1t,oSP.7e1t) ? 2QA order by no_s3 asc2 cnn + ,ew $le=bConnection strConn) cnn.$3en ) cmmd + ,ew $le=bCommand sDl.& cnn) d6eader. + cmmd.'1ecute6eader I0 d6eader..6ead 7hen t1t7(lSP.7e1t + Format C=ate d6eader. /))& 2ddH MMMMH yyyy2) 'nd I0

AAAA I,7I: M',#MPIL:#, ,#M# P'L#,FF#, =im sDl< #s Strin( sDl< + 2select nm_3l(&almt&tel3 0rom P'L#,FF#, where kd_3l( like AQ2 ? 7rim d6eader. .)) ? 2QA order by kd_3l( asc2 cnn + ,ew $le=bConnection strConn) cnn.$3en ) cmmd + ,ew $le=bCommand sDl<& cnn) d6eader< + cmmd.'1ecute6eader I0 d6eader<.6ead 7hen t1tnmPl(.7e1t + d6eader< /) t1t#lmt.7e1t + d6eader< .) t1t7el3Pl(.7e1t + d6eader< <) 'nd I0 'nd Sub Private Sub btnCr!r(_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnCr!r(.Click =im 3o3u3br( #s ,ew Po3!r(< bersih_br( ) 3o3u3br(.t1t,oSP.7e1t + t1t,oSP.7e1t 3o3u3br(.t1t,oSP.7e1t + d6eader .) 3o3u3br(.Show=ialo( ) I0 3o3u3br(.ret:d_!r( BC 22 7hen t1tkd!r(.7e1t + 3o3u3br(.ret:d_!r( t1tnm!r(.7e1t + 3o3u3br(.ret,m_!r( t1t*arsat.7e1t + Format C=bl 3o3u3br(.ret*arsat)& 2MM&MMMM&MMMM&MMM2) t1t9mlPsn.7e1t + 3o3u3br(.ret9mlPsn t1tkd!r(.'nabled + False t1t9ml:rm.Focus ) 'nd I0 'nd Sub Private Sub t1t9ml:rm_:eyPress !y"al sender #s $b%ect& !y"al e #s System.Windows.Forms.:eyPress'vent#r(s) *andles t1t9ml:rm.:eyPress I0 #sc e.:eyChar) + .3 7hen t1t7otal.7e1t + Format C=bl CStr CInt t1t*arsat.7e1t)

CInt t1t9ml:rm.7e1t)))& 2MM&MMMM&MMMM&MMM2) btnCr!r(.Focus ) 'nd I0 'nd Sub Private Sub btn7ambah_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btn7ambah.Click =im "alue ) #s Strin( + Nt1tkd!r(.7e1t& t1tnm!r(.7e1t& t1t9mlPsn.7e1t& t1t9ml:rm.7e1t& t1t*arsat.7e1t& t1t7otal.7e1tO #ddList "alue) 7otal G+ C=bl t1t7otal.7e1t) t1tFrand7otal.7e1t + Format C=bl CStr 7otal))& 2MM&MMMM&MMMM&MMM2) 'nd Sub Sub #ddList !y"al "alue ) #s Strin() =im subInde1 #s Inte(er lvw!r(.Items.#dd 22) For subInde1 + / 7o lvw!r(.Items inde1).SubItems.#dd 22) lvw!r(.Items inde1).SubItems subInde1).7e1t + "alue subInde1) ,e1t inde1 + inde1 G . 'nd Sub Private Sub btnSim3an_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnSim3an.Click =im counter #s Inte(er =im sDl.& sDl< #s Strin( 7ry sDl. + 2I,S'67 I,7$ S9 ,$_s%& 7FL_s%& no_nota) 2 ? _ 2"#LI'S A2 ? t1tnoS9.7e1t ? 2A&A2 ? _ =ate7imePicker..7e1t ? 2A&A2 ? _ t1t,o,ota.7e1t ? 2A)2 cmmd. + ,ew $le=bCommand sDl.& cnn) =im 1 #s Inte(er + cmmd..'1ecute,onKuery SFor counter + / 7o inde1 H .

sDl< + 2I,S'67 I,7$ #=# no_s%&kd_br(&%ml_kirim) 2 ? _ 2"#LI'S A2 ? _ t1tnoS9.7e1t ? 2A&A2 ? _ lvw!r(.Items counter).SubItems /).7e1t ? 2A&A2 ? _ lvw!r(.Items counter).SubItems 3).7e1t ? 2A)2 cmmd< + ,ew $le=bCommand sDl<& cnn) cmmd<.'1ecute,onKuery ) ,e1t I0 1 + . 7hen Messa(e!o1.Show 2=#7# SI6#7 9#L#, !'6*#SIL =ISIMP#,2) 'nd I0 Catch e1 #s '1ce3tion Ms(!o1 e1.Messa(e) 'nd 7ry 'nd Sub Sub bersih_br( ) t1tkd!r(.7e1t + 22 t1tnm!r(.7e1t + 22 t1t9mlPsn.7e1t + 22 t1t*arsat.7e1t + 22 t1t9ml:rm.7e1t + 22 t1t7otal.7e1t + 22 'nd Sub Sub bersih_semua ) t1tnoS9.7e1t + 22 =ate7imePicker..7e1t + 22 t1t,o,ota.7e1t + 22 t1t7(l,ota.7e1t + 22 t1t,oSP.7e1t + 22 t1t7(lSP.7e1t + 22 t1tnmPl(.7e1t + 22 t1t#lmt.7e1t + 22 t1t7el3Pl(.7e1t + 22 Call bersih_br( ) lvw!r(.Items.Clear )

'nd Sub Private Sub btn!atal_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btn!atal.Click bersih_semua ) 'nd Sub Private Sub btnCetak_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnCetak.Click cetak_S9.Show ) 'nd Sub 'nd Class

3.11 Form $ntr* %etur /or( ini ber7ungsi untuk (engisi ata9 ata barang yang ike(balikan ole' pelanggan karena rusak atau ti ak sesuai pesanan. Prinsip asarnya sa(a engan proses entry pesanan atau entri nota. Desain 7or( ari &ntry retur a ala' =

4isting progra( ari entry retur a ala' =

Im3orts System.=ata.$le=b Im3orts System.=ata Public Class 6etur =im cnn #s $le=bConnection =im cmmd& cmmd.& cmmd< #s $le=bCommand =im d6eader& d6eader.& d6eader<& d6eader3& d6eader; #s $le=b=ata6eader =im total.& total< #s Inte(er Private inde1 #s Inte(er + / Private 7otal #s =ouble + /./& F7otal #s =ouble + /./ Public a #s Strin( Private Sub 6etur_Closin( !y"al sender #s System.$b%ect& !y"al e #s System.Com3onentModel.Cancel'vent#r(s) *andles My!ase.Closin( Me.*ide ) cur + ,ew Menu cur.Show ) 'nd Sub Private Sub 6etur_#ctivated !y"al sender #s $b%ect& !y"al e #s System.'vent#r(s) *andles Me.#ctivated t1tnoretur.'nabled + False t1t,oS%.Focus ) 'nd Sub Private Sub 6etur_Load !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles My!ase.Load AA!uka koneksi cnn + ,ew $le=bConnection strConn) I0 cnn.State BC ConnectionState.Closed 7hen cnn.Close ) cnn.$3en ) A!uat #uto,umber u kode =im str7em3 #s Strin( + 22 =im str"alue #s Strin( + 22 =im sDl #s Strin( sDl + 2S'L'C7 E F6$M retur $6='6 !5 no_ret ='SC2 cmmd + ,ew $le=bCommand sDl& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2no_ret2)& 3& -) 'lse

t1tnoretur.7e1t + 267////.2 '1it Sub 'nd I0 str"alue + "al str7em3) G . t1tnoretur.7e1t + 2672 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue 'nd Sub Private Sub btncrS9_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btncrS9.Click =im 3o3u3s% #s ,ew Po3S9 =im a #s Strin( 3o3u3s%.Show=ialo( ) I0 3o3u3s%.ret,o,ota BC 22 7hen t1t,oS%.7e1t + 3o3u3s%.ret,oS% t1t,oS%.'nabled + False t1tkd!r(.Focus ) 'nd I0 AAAA I,7I: M',#MPIL:#, no ,$7# 3ada nota =im sDl1 #s Strin( sDl1 + 2select no_nota&no_s3 0rom nota where no_nota like AQ2 ? 7rim 3o3u3s%.ret,o,ota) ? 2QA order by no_nota asc2 cnn + ,ew $le=bConnection strConn) cnn.$3en ) cmmd + ,ew $le=bCommand sDl1& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen a + d6eader .) AAAA I,7I: M',#MPIL:#, 7#,FF#L SP =im sDl. #s Strin(& b #s Strin( sDl. + 2select no_s3&kd_3l( 0rom SP where no_s3 like AQ2 ? 7rim a) ? 2QAorder by no_s3 asc2 cnn + ,ew $le=bConnection strConn) cnn.$3en ) cmmd + ,ew $le=bCommand sDl.& cnn) d6eader. + cmmd.'1ecute6eader I0 d6eader..6ead 7hen b + d6eader. .) AAAA I,7I: M',#MPIL:#, ,#M# P'L#,FF#,

where ? 2QA order by

=im sDl< #s Strin( sDl< + 2select nm_3l(&almt 0rom P'L#,FF#, kd_3l( like AQ2 ? 7rim b) kd_3l( asc2 cnn + ,ew $le=bConnection strConn) cnn.$3en ) cmmd + ,ew $le=bCommand sDl<& cnn) d6eader< + cmmd.'1ecute6eader I0 d6eader<.6ead 7hen t1tnmPl(.7e1t + d6eader< /) t1t#lamat.7e1t + d6eader< .) 'nd I0 'nd I0

'nd I0 'nd Sub Private Sub btnCr!r(_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnCr!r(.Click =im 3o3u3br( #s ,ew Po3!r(3 bersih_br( ) 3o3u3br(.t1t,oS9.7e1t + t1t,oS%.7e1t 3o3u3br(.Show=ialo( ) I0 3o3u3br(.ret:d_!r( BC 22 7hen t1tkd!r(.7e1t + 3o3u3br(.ret:d_!r( t1tnm!r(.7e1t + 3o3u3br(.ret,m_!r( t1t*arsat.7e1t + Format C=bl 3o3u3br(.ret*arsat)& 2MM&MMMM&MMMM&MMM2) t1t9mlkrm.7e1t + 3o3u3br(.ret9ml:rm t1tkd!r(.'nabled + False t1t7otal..7e1t + Format C=bl CStr CInt t1t*arsat.7e1t) E CInt t1t9mlkrm.7e1t)))& 2MM&MMMM&MMMM&MMM2) t1t9mlretur.Focus ) 'nd I0 'nd Sub Private Sub t1t9mlretur_:eyPress !y"al sender #s $b%ect& !y"al e #s System.Windows.Forms.:eyPress'vent#r(s) *andles t1t9mlretur.:eyPress I0 #sc e.:eyChar) + .3 7hen

t1t7otal<.7e1t + Format C=bl CStr CInt t1t*arsat.7e1t) E CInt t1t9mlretur.7e1t)))& 2MM&MMMM&MMMM&MMM2) t1t:et.Focus ) 'nd I0 'nd Sub Private Sub btn7mbh_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btn7mbh.Click =im "alue ) #s Strin( + Nt1tkd!r(.7e1t& t1tnm!r(.7e1t& t1t9mlkrm.7e1t& t1t*arsat.7e1t& t1t9mlretur.7e1t& t1t:et.7e1t& t1t7otal<.7e1tO #ddList "alue) 7otal G+ C=bl t1t7otal<.7e1t) t1tFrandtotal.7e1t + Format C=bl CStr 7otal))& 2MM&MMMM&MMMM&MMM2) 'nd Sub Sub #ddList !y"al "alue ) #s Strin() =im subInde1 #s Inte(er lvwretur.Items.#dd 22) For subInde1 + / 7o T lvwretur.Items inde1).SubItems.#dd 22) lvwretur.Items inde1).SubItems subInde1).7e1t + "alue subInde1) ,e1t inde1 + inde1 G . 'nd Sub Private Sub btnSim3an_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnSim3an.Click =im counter #s Inte(er =im sDl.& sDl< #s Strin( 7ry sDl. + 2I,S'67 I,7$ retur ,$_ret& 7FL_ret& no_s%) 2 ? _ 2"#LI'S A2 ? t1tnoretur.7e1t ? 2A&A2 ? _ =ate7imePicker..7e1t ? 2A&A2 ? _ t1t,oS%.7e1t ? 2A)2

:'M!#LI 2"#LI'S 2A&A2 ? 2A&A2 ? 2A)2

cmmd. + ,ew $le=bCommand sDl.& cnn) =im 1 #s Inte(er + cmmd..'1ecute,onKuery For counter + / 7o inde1 H . sDl< + 2I,S'67 I,7$ no_ret&kd_br(&%ml_ret&ket) 2 ? _ A2 ? _ t1tnoretur.7e1t ? 2A&A2 ? _ lvwretur.Items counter).SubItems /).7e1t ? _ lvwretur.Items counter).SubItems ;).7e1t ? _ lvwretur.Items counter).SubItems -).7e1t ? cmmd< + ,ew $le=bCommand sDl<& cnn) cmmd<.'1ecute,onKuery )

,e1t I0 1 + . 7hen Messa(e!o1.Show 2=#7# 6'7I6 !'6*#SIL =ISIMP#,2) bersih_semua ) A!uat #uto,umber u kode =im str7em3 #s Strin( + 22 =im str"alue #s Strin( + 22 =im sDl #s Strin( sDl + 2S'L'C7 E F6$M retur $6='6 !5 no_ret ='SC2 cmmd + ,ew $le=bCommand sDl& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2no_ret2)& 3& -) 'lse t1tnoretur.7e1t + 267////.2 '1it Sub 'nd I0 str"alue + "al str7em3) G . t1tnoretur.7e1t + 2672 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue 'nd I0 Catch e1 #s '1ce3tion Ms(!o1 e1.Messa(e) 'nd 7ry 'nd Sub

Sub bersih_br( ) t1tkd!r(.7e1t + 22 t1tnm!r(.7e1t + 22 t1t9mlkrm.7e1t + 22 t1t*arsat.7e1t + 22 t1t7otal..7e1t + 22 t1t9mlretur.7e1t + 22 t1t:et.7e1t + 22 t1t7otal<.7e1t + 22 'nd Sub Sub bersih_semua ) t1tnoretur.7e1t + 22 =ate7imePicker..7e1t + 22 t1t,oS%.7e1t + 22 t1tnmPl(.7e1t + 22 t1t#lamat.7e1t + 22 Call bersih_br( ) lvwretur.Items.Clear ) 'nd Sub Private Sub btn!atal_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btn!atal.Click bersih_semua ) A!uat #uto,umber u kode =im str7em3 #s Strin( + 22 =im str"alue #s Strin( + 22 =im sDl #s Strin( sDl + 2S'L'C7 E F6$M retur $6='6 !5 no_ret ='SC2 cmmd + ,ew $le=bCommand sDl& cnn) d6eader + cmmd.'1ecute6eader I0 d6eader.6ead 7hen str7em3 + Mid d6eader.Item 2no_ret2)& 3& -) 'lse t1tnoretur.7e1t + 267////.2 '1it Sub 'nd I0 str"alue + "al str7em3) G . t1tnoretur.7e1t + 2672 ? Mid 2////2& .& - H str"alue.Len(th) ? str"alue

'nd Sub Private Sub btnCetak_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnCetak.Click cetak_6etur.Show ) 'nd Sub 'nd Class

3.12 Form &eta! %etur /or( ini akan (ena(pilkan ata retur yang tela' Desain ta(pilannya a ala' seperti ga(bar berikut = ientri (elalui 7or( entry retur.

4isting progra( .etak retur a ala' =

Public Class cetak_6etur Private Sub cetak_6etur_Closin( !y"al sender #s System.$b%ect& !y"al e #s System.Com3onentModel.Cancel'vent#r(s) *andles My!ase.Closin(

Me.*ide ) cur + ,ew 6etur cur.Show ) 'nd Sub Private Sub btnLayar_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnLayar.Click Layar_6etur.d + t1t,o6etur.7e1t Layar_6etur.Show ) 'nd Sub Private Sub btnCetak_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnCetak.Click Messa(e!o1.Show 2Maa0& a3likasi ini belum ber0un(si2& 2Pesan2& Messa(e!o1!uttons.$:& Messa(e!o1Icon.In0ormation) 'nd Sub Private Sub btnCari6etur_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnCari6etur.Click =im 3o3u3retur #s ,ew Po36etur 3o3u3retur.Show=ialo( ) I0 3o3u3retur.ret,oret BC 22 7hen t1t,o6etur.7e1t + 3o3u3retur.ret,oret t1t7(l6etur.7e1t + 3o3u3retur.ret7(lret t1t,oS9.7e1t + 3o3u3retur.ret,os% t1t,o6etur.'nabled + False btnLayar.Focus ) 'nd I0 'nd Sub Private Sub btn:eluar_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btn:eluar.Click Me.Close ) 'nd Sub Private Sub cetak_6etur_Load !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles My!ase.Load 'nd Sub 'nd Class

Public Class Layar_6etur Public d #s Strin( Private Sub Layar_6etur_Load !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles My!ase.Load Ms(!o1 d) Crystal6e3ort"iewer..SelectionFormula + 2Nretur.no_retO+ A2 ? d ? 2AL Crystal6e3ort"iewer..6e0resh6e3ort ) 'nd Sub 'nd Class

BAB 4 M$MB5A# LA +%AN

Cang ti ak bole' ikesa(pingkan ala( (e(buat suatu aplikasi a ala' pe(buatan laporan. 3ika suatu progra( yang ibangun tanpa ilengkapi progra( untuk (e(buat suatu laporan (asi' belu( lengkap. :le' karena itu laporan (en5a i penting untuk progra( aplikasi. @unanya ari suatu laporan a ala' untuk (eli'at 'asil ari suatu proses ko(puter ala( bentuk reAie1 atau ala( bentuk print out ke printer atau (e ia lain. Me(buat laporan engan VB.Net ti ak perlu sulit8 karena banyak tools yang bisa igunakan8 seperti 0rystal "eport. 6ntuk (e(buat laporan a ala' sebagai berikut = engan 0rystal "eport langka' yang 'arus ilakukan

Klik kanan pa a Pro5e.t ke(u ian pili' - " lalu pili' - ;in o1s /or(s setela' itu progra( akan (ena(pilkan kontak ialog A)) Ne6 Item Pa a 7or( A)) Ne6 Item9 pili' &r*stal %eport9 lalu tekan to(bol A)). Tuliskan na(a laporan yang akan ibuat pa a kolo( Name.

Pa a /or( 0rystal "eport @allery " klik -s a Blank "eport " klik to(bol :K

Setela' esain 0rystal "eport ta(pil klik kanan pa a Database /iel s lalu pili' Database &$pert.

Se'ingga (un.ul ta(pilan seperti

iba1a'. Karena kita (enggunakan

atabase

-..ess8 (aka kita pili' 0reate Ne1 0onne.tion " -..essD&$.el )D-:* " klik :K

Mun.ul 1in o1 untuk (e(ili' Database yang akan to(bol 7inis'.

igunakan8 setela' itu klik

Ke(u ian pili' tabel yang akan setela' itu klik :K

ibuat reportnya pa a /or( Database &$pert

6ntuk (ena(pilkan 7iel 97iel pa a yang akan &$plorer ke ala( 4ayar Design 0rystal "eport.

i.etak8

rag 7iel

pa a sisi /iel

6ntuk (en esign bentuk .etakan8 apat ilakukan i bagian "eport >ea er8 Page >ea er8 "eport /ooter an Page /ooter &onto0 tampilan la*out Laporan Data Barang :

6ntuk (e(buat laporan engan 0rystal "eport8 biasanya iperlukan sebua' 7or( yang (ena(pung ta(pilan se(entara 0rystal "eport. Maka kita perlu (ena(ba' sebua' 7or( baru. 4angka'9langka' yang ilakukan a ala' sbb= Klik kanan pa a Pro5e.t i Solution &$plorer Klik A)) ;in)o6s Form

6ba' na(a pa a kolo( Na(e

Ta(ba'kan ob5ek 0rystal"eportVie1er ari Toolbo$ ke ala( 7or(. >al ini berguna untuk koneksi 7or( engan 0rystal"eport

Ke(u ian koneksikan 7or( engan 0rystal"eport yang tela' ibuat = -tur properties %eport"ource 99L pili' 0rystal"eport yang tela' ibuat

Ta(pilannya akan (en5a i =

4.1 Form &eta! "urat 8alan /or( ini ber7ungsi untuk (en.etak surat 5alan yang tela' ientry. Desain ta(pilan 7or(nya =

Se ang listing progra(nya a ala' =


Public Class cetak_S9 Private Sub cetak_S9_Closin( !y"al sender #s ystem.$b%ect& !y"al e #s System.Com3onentModel.Cancel'vent#r(s) *andles My!ase.Closin( Me.*ide ) cur + ,ew Menu cur.Show ) 'nd Sub Private Sub btnLayar_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnLayar.Click Layar_S9.c + t1t,oS9.7e1t Layar_S9.Show ) 'nd Sub Private Sub btnCetak_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnCetak.Click

Messa(e!o1.Show 2Maa0& a3likasi ini belum ber0un(si2& 2Pesan2& Messa(e!o1!uttons.$:& Messa(e!o1Icon.In0ormation) 'nd Sub Private Sub btn:eluar_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btn:eluar.Click Me.Close ) 'nd Sub Private Sub btnCariS9_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btnCariS9.Click =im 3o3u3s% #s ,ew Po3S9 3o3u3s%.Show=ialo( ) I0 3o3u3s%.ret,o,ota BC 22 7hen t1t,oS9.7e1t + 3o3u3s%.ret,oS% t1tt(ls%.7e1t + 3o3u3s%.ret7(lS% t1t,o,ota.7e1t + 3o3u3s%.ret,o,ota t1t,o,ota.'nabled + False btnLayar.Focus ) 'nd I0 'nd Sub Private Sub cetak_S9_Load !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles My!ase.Load 'nd Sub 'nd Class Public Class Layar_S9 Public c #s Strin( Private Sub Layar_S9_Load !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles My!ase.Load Ms(!o1 c) Crystal6e3ort"iewer..SelectionFormula + 2Ns%.no_s%O+ A2 ? c ? 2AL Crystal6e3ort"iewer..6e0resh6e3ort ) 'nd Sub 'nd Class

"an.angan layar pop barang yang a a i surat 5alan

4isting progra( pop barang yang a a i surat 5alan =


Im3orts System.=ata.$le=b Im3orts System.=ata Public Class Po3!r(< Public ret:d_!r(& ret,m_!r(& ret*arsat& ret9mlPsn #s Strin( =im cnn #s $le=bConnection =im cmmd #s $le=bCommand =im d6eader& d6eader< #s $le=b=ata6eader Private Sub t1t:ey_7e1tChan(ed !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) Call list_data ) 'nd Sub Private Sub List"iew._=oubleClick !y"al sender #s $b%ect& !y"al e #s System.'vent#r(s) *andles List"iew..=oubleClick Call 3ilih ) 'nd Sub

Private Sub btn$:_Click !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles btn$:.Click Call 3ilih ) 'nd Sub Sub 3ilih ) 7ry ret:d_!r( +

List"iew..SelectedItems /).SubItems /).7e1t.7oStrin( ret,m_!r( + List"iew..SelectedItems /).SubItems .).7e1t.7oStrin( ret*arsat + List"iew..SelectedItems /).SubItems <).7e1t.7oStrin( ret9mlPsn + List"iew..SelectedItems /).SubItems 8).7e1t.7oStrin( Me.Close ) Catch e1 #s '1ce3tion Ms(!o1 23ilih salah satu data2& Ms(!o1Style.In0ormation) 'nd 7ry 'nd Sub Private Sub list_data ) Call clear_list ) =im sDl1 #s Strin(& sDl #s Strin( =im 1 #s Inte(er sDl1 + 2select kd_br(&%ml_3sn 0rom P'S#, where no_s3 like AQ2 ? 7rim t1t,oSP.7e1t) ? 2QA order by no_s3 asc2 cnn + ,ew $le=bConnection strConn) I0 cnn.State BC ConnectionState.Closed 7hen cnn.Close ) cnn.$3en ) cmmd + ,ew $le=bCommand sDl1& cnn) d6eader + cmmd.'1ecute6eader 7ry While d6eader.6ead + 7rue sDl + 2select kd_br(&nm_br(&harsat&9:&warna&ukuran 0rom !#6#,F where kd_br( like AQ2 ? 7rim d6eader /)) ? 2QA order by kd_br( asc2 cnn + ,ew $le=bConnection strConn) cnn.$3en ) cmmd + ,ew $le=bCommand sDl& cnn)

d6eader< + cmmd.'1ecute6eader 7ry While d6eader<.6ead + 7rue 1 + "al counter.7e1t) counter.7e1t + Str "al counter.7e1t) G .) With List"iew. .Items.#dd 22) .Items List"iew..Items.Count .Items List"iew..Items.Count .Items List"iew..Items.Count .Items List"iew..Items.Count .Items List"iew..Items.Count .Items List"iew..Items.Count .Items List"iew..Items.Count .Items List"iew..Items.Count .Items 1).SubItems /).7e1t + .Items 1).SubItems .).7e1t + .Items 1).SubItems <).7e1t + .Items 1).SubItems 3).7e1t + .Items 1).SubItems ;).7e1t + .Items 1).SubItems -).7e1t + .Items 1).SubItems 8).7e1t +

H .).SubItems.#dd 22) H .).SubItems.#dd 22) H .).SubItems.#dd 22) H .).SubItems.#dd 22) H .).SubItems.#dd 22) H .).SubItems.#dd 22) H .).SubItems.#dd 22) H .).SubItems.#dd 22) d6eader.FetStrin( /) d6eader<.FetStrin( .) d6eader<.Fet"alue <) d6eader<.FetStrin( 3) d6eader<.FetStrin( ;) d6eader<.FetStrin( -) d6eader.Fet"alue .) 'nd With 'nd While Finally 'nd 7ry 'nd While Finally d6eader.Close ) 'nd 7ry cnn.Close ) 'nd Sub

Sub clear_list ) While "al counter.7e1t) C / List"iew..Items /).6emove ) counter.7e1t + "al counter.7e1t) H . 'nd While

'nd Sub Private Sub Po3!r(<_Load !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles My!ase.Load Call list_data ) 'nd Sub 'nd Class

4.2 Form &eta! Laporan en<ualan Progra( ini ber7ungsi untuk (ena(pilkan ata ala( bentuk laporan8 baik (elalui layar ko(puter )"eAie1* atau (en.etaknya ke printer. 4aporan ini iran.ang agar bisa igunakan untuk (en.etak laporan transaksi pen5ualan se.ara perio eik. - apun esain laporan tersebut a ala' sebagai berikut =

4isting progra( ari laporan tersebut a ala' =


Im3orts System.=ata.$le=b Public Class La3_Pen%ualan Public t(l. #s =ate Public t(l< #s =ate Private Sub La3_Pen%ualan_Load !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles My!ase.Load C6_3en%ualan..SetParameter"alue 2t(lawal2& t(l..=ate)

C6_3en%ualan..SetParameter"alue 2t(lakhir2& t(l<.=ate) 'nd Sub Private Sub La3_Pen%ualan_Closin( !y"al sender #s System.$b%ect& !y"al e #s System.'vent#r(s) *andles My!ase.Load Me.*ide ) cur + ,ew Menu cur.Show ) 'nd Sub 'nd Class

>asil .etakan laporan pen5ualan =

Daftar usta!a

3unin ar8 222+8 +an(,an Len'-a) .en/a(i +r&'rammer# .emb,at A)li-a*i +en/,alan .en'',na-an 0B#NET8 Penerbit Me iakita 4ubis8 -'(a Datako(. Subu'an8 222!8 .emban',n A)li-a*i (en'an 0B#Net8 Penerbit

Santoso8 >arip8 22248 0B#Net 1nt,- )r&'rammer8 Penerbit PT. &le$ Me ia Ko(putin o8 3akarta

Anda mungkin juga menyukai