MODUL I Konsep Dasar 1. Projek Projek Delphi adalah sekumpulan file yang akan membangun aplikasi. Pada saat memulai Delphi akan terbuka projek baru, setelah itu terserah apakah akan membuat projek baru atau membuka projek yang sudah ada. Projek aplikasi terdiri atas : •
File projek ( Project ) : file projek tersimpan dengan ekstensi .DPR. Hanya ada satu file projek untuk satu projek.
•
File Form : file form tersimpan dengan ekstensi
.DFM, adalah file biner yang berisi
gambaran grafis dari form. Setiap file .DFM selalu paralel dengan satu unit file yang berekstensi .PAS. •
Unit ( file source code ) : file unit tersimpan dengan ekstensi .PAS. Setiap file unit berupa file source code Pascal, tetapi tidak setiap file unit mempunyai file .DFM. File projek menggabungkan semua file di atas yang digunakan oleh Delphi untuk
melakukan kompilasi dan membuat file target ( .EXE atau .DLL ). 2. Form Inti dari setiap aplikasi Delphi adalah Form. Form berbentuk jendela dan dapat dianggap sebagai kertas atau meja yang dapat ditulisi atau diletakkan pada obyek-obyek lain. Saat memulai Delphi, akan otomatis tersedia sebuah form atau Form1.
Pada form
terdapat garis titik-titik yang disebut Grid, berguna untuk membantu pengaturan tata letak obyek yang dimasukkan dalam form. Setiap form mengandung unit. Unit dalam form inilah yang dipakai untuk engatur dan mengendalikan form.
Gambar 1: Form kosong 3 Unit Unit adalah modul kode program, digunakn untuk mengatur dan mengendalikan segala sesuatu yanng berhubungan dengan form. Berisi bagian publik ( bagian antarmuka ) dan bagian privat ( bagian implementasi ). Unit ini disimpan dalam bentuk .PAS sedang yang sudah terkompilasi disimpan dalam bentuk .DCU. Proses link akan menggabung file-file .DCU menjadi satu file .EXE atau .DLL.
1
4. Menu Semua perintah yang diperlukan selama merancang dan membangun program aplikasi tersedia dalam menu bar, terletak di bagian atas window utama Delphi. Menu-menunya : File, Edit, Search, View, Project, Run, Component, Database, Tools dan menu Help.
Gambar 2 : Menu Bar 5. SpeedBar SpeedBar adalah sekumpulan tombol yang digunakan untuk mengakses beberapa perintah dalam menu. Biasanya yang tersedia pada SpeedBar adalah perintah-perintah yang umum digunakan dalam proses perancangan program aplikasi.
Gambar 3 : SpeedBar 6. Object Ispector Object Inspector sangat perlu dalam pembuatan aplikasi. Object Inspector terdiri dari dua tab ; Properti dan event. 6.1. Properti Properti digunakan untuk menentukan setting suatu obyek. Satu obyek memiliki beberapa properti yang dapat diatur langsung dari lembar properti pada jendela object inspector maupun melalui kode program. Setting ini mempengaruhi cara kerja obyek yang bersangkutansaat aplikasi dijalankan. 6.2. Event Event adalah peristiwa atau kejadian yang diterima oleh suatu obyek, misalnya klik, drag, tunjuk dan lain-lain. Event yang diterima obyek akan memicu Delphi menjalankan kode program yang ada di dalamnya. 7. Komponen ( Component Palette ) Komponen ( Component Palette ) adalah tool yang berupa kumpulan tab, dimana setiap tab/halaman memuat berbagai tombol komponen yang digunakan sebagai interface program aplikasi. Tab defaultnya adalah : Standard, Additional, Win32, System, Data Access, Data Controls, Midas, Decision Cube, Qreport, Dialogs, Win31, Samples, ADO, InternetExpres, Internet, FastNet, Samples dan ActiveX.
2
Tab aktif
judul tab
lihat komponen lain lihat tab lain
Gambar 4 : component palette 7.1. Standard Sesuai dengan namanya, standard page berisi item-item yang diperlukan untuk membangun aplikasi windows. 7.1.1. Label, Edit dan Button Ketiga obyek di atas sangat sering dipakai pada program aplikasi, karena bersifat umum dan diperlukan pada hampir semua program aplikasi. Fungsi dari masingmasing obyek adalah, Label digunakan untuk membuat tulisan yang bersifat tetap, Edit dipakai untuk masukan dan keluaran data pada layar monitor, adapun Button biasa dipakai untuk pushbutton. 7.1.2. MainMenu Digunakan untuk membuat menu pada form, dalam membuat menu urutan penempatan item-itemnya disarankan agar mengikuti kebiasaan aplikasi windows, agar mudah pembacaannya. 7.2. Tab Additional Tab additional mempunyai 14 komponen, yang paling sering digunakan adalah komponen BitBtn, SpedButton, Image, dan Shape. 7.2.1. BitBtn Dipakai untuk membuat sebuah button dengan grafik bitmap, misalnya tombol OK dengan tanda
. Komponen ini visual.
7.2.2. SpeddButton Komponen ini dipakai bersama-sama dengan komponen panel (tab standard). Dipakai untuk membuat toolbar dan button-button khusus. Komponen ini juga visual. 7.2.3. Image Komponen image untuk menampilkan grafik seperti icon, bitmap dan metafile. Komponen ini visual. 7.2.4. Shape Untuk menampilkan bentuk-bentuk seperti segiempat, lingkaran, segitiga dan lain-lain. Komponen ini visual. 3
Contoh 1 Menggunakan Komponen Label, Edit dan Button
Gambar 5 : obyek Label, Edit dan Button Langkah Pengerjaan : 1. Tampilkan 7 buah komponen Label (Standar), dengan cara klik pada komponen lalu letakkan pada Form1. 2. Tampilkan 4 buah komponen Edit (Standar), dengan cara klik pada komponen lalu letakkan pada Form1. 3. Tampilkan 3 buah komponen Button (Standar), dengan cara klik pada komponen lalu letakkan pada Form1. 4. Klik Label1, pada Object Inspector ubah properties : Caption : NAMA 5. Klik Label2, pada Object Inspector ubah properties : Caption : ALAMAT 6. Klik Label3, pada Object Inspector ubah properties : Caption : KOTA 7. Klik Label4, pada Object Inspector ubah properties : Caption : KET 8. Klik Button1, pada Object Inspector ubah properties : Caption : &TAMPIL 9. Klik Button2, pada Object Inspector ubah properties : Caption : &HAPUS 10. Klik Button3, pada Object Inspector ubah properties : Caption : &KELUAR 11. Klik ganda pada Button1, lalu lengkapi kode program berikut : procedure TForm1.Button1Click(Sender: TObject) ; begin Label5.Caption := ' HAI ' ; Label6.Caption := Edit1.Text ; Label7.Caption := ' APA KHABAR ? ' ; end; 4
12. Klik ganda pada Button2, lalu lengkapi kode program berikut : procedure TForm1.Button2Click(Sender: TObject) ; begin Edit1.Text :=' ' ; Edit2.Text :=' ' ; Edit3.Text :=' ' ; Edit4.Text :=' ' ; Edit1.SetFocus ; end; 13. Klik ganda pada Button3, lalu lengkapi kode program berikut : procedure TForm1.Button3Click(Sender: TObject); begin Close ; end; 14. Simpan program dengan memilih menu File Save All A. Klik disini untuk menentukan drive tempat penyimpanan
Jika belum punya direktory klik disini setelah masuk temp
b. klik di sini
F. Klik disini
D. Ketikkan namanya disini
C. Dobel klik disini, lalu dobel klik lagi pada direktory anda sendiri
Gambar 6 : Form Penyimpanan
Ganti namanya dari unit1 menjadi Contoh1 dan project1 menjadi Pcontoh1.
Lakukan langkah langkah yang sama untuk menyimpan file lainnya, ingat setiap form harus disimpan file *.pas-nya, ditambah dengan satu buah file project (*.dpr)
15. Jalankan program dengan memilih menu Run Run atau tekan tombol F9.
5
TUGAS 1 1. tambahkan semua komponen yang terdapat pada pallete standard 2. Cobalah anda ganti property color dari form1 dengan mengklik drop down list pada obyek inspector dengan value clblue, apa yang terjadi lakukan untuk value-value yang lain laporkan dalam laporan kelompok anda misal clblue=biru dst. 3. Coba lakukan untuk komponen yang lain lalu catat efeknya 4. Coba lakukan terhadap property yang lain (bukan color) lalu catat hasilnya laporkan semuanya sebagai laporan tugas kelompok Membuat program atau yang disebut biasa disebut project jika anda membuatnya menggunakan delphi meliputi beberapa langkah yaitu: Mendesain antar muka (interface), mengatur tata letak dan propertinya, menangkap event kemudian menuliskan untuk menanggapi event yang kita pilih. Dalam praktikum kali ini kita akan mencoba melakukan ketiga langkah tersebut untuk membuat suatu program. Contoh 2 Program Pencacah Waktu
Gambar 7 : Hasil eksekusi program Lengkapilah rancangan program dengan kode berikut : unit pencatatWaktu; var Form1: TForm1; Awal, Akhir : tDateTime; Lama : Real; implementation {$R *.DFM} 1. Klik ganda pada tombol START, Lalu ketikkan kode berikut ini : procedure TForm1.btStartClick(Sender: TObject) ; begin if btStart.caption = ' START ' Then Begin Awal := Time ; Edit1.Text := TimeToStr(Time) ; btStart.Caption := ' STOP ' ; end else if btStart.Caption = ' STOP ' Then btStart.Caption := ' Selesai ' else Application.Terminate ; end; 6
2. Klik ganda pada tombol TIMER, Lalu ketikkan kode berikut ini : procedure TForm1.Timer1Timer(Sender: TObject) ; Var SLama : string ; begin if btStart.Caption =' STOP ' Then begin Akhir := Time ; Edit2.Text := TimeToStr(Akhir) ; Lama := (Akhir-Awal)*100000 ; Str(Lama:12:2,SLama) ; Edit3.Text := Slama ; End ; End ; end. 3. Jalankan program dengan menekan tombol F9. 4. Simpanlah program pada direktori anda.
7
MODUL II Memahami Property Komponen Setiap komponen memiliki property property yang akan menentukan sifat dari komponen tersebut. Property dari masing masing komponen ada yang sama dan ada pula yang berbeda yang pasti jumlahnya akan sangat banyak jika harus di hapalkan dengan metode yang
sama dengan anda menghapalkan lima sila di pancasila. Untuk memudahkan kita memahaminya maka syaratanya kita harus sering sering memakainya. Dalam praktikum kali ini kita akan mencoba mengamati apa fungsi beberapa property dari beberapa komponen. Diharapkan pada akhir praktikum ini para peserta mampu mencari sendiri property property lain dari komponen-komponen yang tersedia. Perlu diperhatikan dalam melakukan penggantian value (nilai) dari sebuah property, secara garis besar ada tiga macam cara pengisian property melalui object inspector yaitu: 1. Property yang pengisiannya langsung di tuliskan pada kotak di belakang nama propertynya seperti property caption. 2. Property yang nilainya
sudah tertentu biasanya kita di beri pilihan misalnya property
enabled pilihan valuenya adalah true/false, yang seperti ini biasanya bercirikan dengan adanya drop down list pada kotak isian nilai propertinya cara mengisinya adalah dengan mengklik saja drop down listnya lalu pilih salah satu nilai yang ditawarkan. 3. Property yang pengisian nilainya harus melalui kotak dialog, jenis ini dicirikan dengan ada tanda titik tiga buah […] pada kotak isian di object inspector. Pengisiannya dilakukan dengan meng-klik tanda
[…] lalu ikuti petunjuk pada kotak dialog yang akan segera
muncul. Efek penggantian property dari beberapa komponen dapat di lihat langsung pada form sedang anda disain, terutama untuk property property yang visible (kelihatan) seperti penggantian warna, tulisan (text) caption dan sebagainya. Namun ada beberapa yang harus di amati pada saat program di jalankan (Running) seperti showhint, hint dll. Perhatikan object inspector di bawah ini : Jenis pertama Jenis kedua
Jenis ketiga
Gambar 8 : Properties Di dalam program program aplikasi standard saat ini hampir selalu dapat di jumpai yang dinamakan menu seperti pada layar delphi yang anda gunakan sekarang. Untuk itu delphi juga telah menyediakan komponen pada pallete standard untuk membuat mainmenu dan popup menu. Main menu adalah menu yang biasanya tampil di sebelah atas dari aplikasi anda sedangkan popup menu adalah menu yang biasanya tampil pada saat anda melakukan klik kanan di window aplikasi yang anda gunakan. 8
Contoh Program Password
Gambar 9 : Program Password 1. Klik Form1, ubah property : Name
: FrPass
BorderStyle : bsDialog 2. Klik pada Edit1 (Standar), ubah property : CharCase : LowerCase 3. Klik pada Bitbtn1 (Additional), ubah property : Kind
: bkOK
4. Klik pada Bitbtn2 (Additional), ubah property : Kind
: bkCancel
5. Klik ganda pada Bitbtn1, lalu lengkapilah kode program berikut : procedure TFrPass.BitBtn1Click(Sender: TObject); begin if edit1.text= '1234' then FrUtama.Show else Application.MessageBox(' PASSWORDNYA SALAH… ! ' , ' INFORMASI ' ,MB_OK); End ; 6. Klik ganda pada Bitbtn2, lalu lengkapilah kode program berikut : procedure TFrPass.BitBtn2Click(Sender: TObject) ; begin Edit1.Text := ' ' ; end; 7. Klik File New Form 8. Klik pada Form ubah property name : FrUtama 9. Klik Run Run
F9
Contoh Program Utama
Gambar 10 : Program Utama 9
1. Klik pada FrUtama, isikan property Caption : ‘Program Utama’ 2. Klik komponen MainMenu (Standar) letakkan pada Form “FrUtama” 3. Klik ganda pada MainMenu1, lalu isikan menu berikut : FILE PROSES HELP DATA BARANG PENCARIAN UBOUT PELANGGAN TRANSAKSI ---------KELUAR 4. Letakkan komponen Image (Additional) pada FrUtama, lalu klik ganda untuk menampilkan gambar, Klik Load lalu cari direktory gambar mis : C:\My Pictures\… lalu klik OK 5. Klik pada komponen Image1, lalu ubahlah property: Strech
: True
Align
: alClient
6. Letakkan komponen Label (Standar) pada FrUtama, lalu ubahlah property: Font
:…
Align
: alBottom
7. Letakkan komponen Timer (System) pada FrUtama, lalu klik ganda dan tuliskan kode berikut: procedure TFrUtama.Timer1Timer(Sender: TObject) ; begin Label1.Caption := TimeToStr(Time) ; End ; 8. Klik pada FrUtama, pilih FILE lalu klik pada KELUAR, tuliskan kode berikut : procedure TFrUtama.KELUAR1Click(Sender: TObject) ; begin Application.Terminate ; End ; 9. Klik Run Run
F9
10. Simpan program dengan memilih menu File Save All
Ganti nama dari unit1 menjadi uPassword
Ganti nama dari unit2 menjadi uProgUtama
Ganti nama dari Project1 menjadi PAplikasiKu
10
TUGAS 2 Program About Dari aplikasi diatas Klik File New Form, lalu rancanganlah form baru tersebut seperti contoh berikut ini:
Gambar 11 : Program About TUGAS 3 Dengan metode yang sama dengan yang anda lakukan pada langkah langkah tadi cobalah cobalah isi tabel di bawah ini : Jenis Komponen Tbutton
Pallete Standard
Tedit
Standard
Tlabel
Standard
TspeedButton
Additionall
Tannimate
Win32
Tform
Property Caption Cursor Visible Charcase Text Max Length Password Char Caption Visible Color Glyph Flat CommonAvi Active Caption Icon Position WindowState
11
Kegunaan Menentukan Text yang tampil di komponen tersebut
MODUL III Memahami Events dari Komponen Events adalah kejadian kejadian yang mungkin terjadi terhadap sebuah komponen (obyek). Ada banyak sekali macam events yang dikenal di Delphi. Ada beberapa events yang
mungkin terjadi terhadap beberapa komponen, ada pula events yang hanya terjadi pada sebuah komponen saja. Kesulitan untuk mengahaplakan events yang banyak ini tentunya akan sama sulitnya dengan menghapalkan jumlah property yang juga banyak. Satu satunya cara adalah dengan memakai events events tersebut di dalam proyek-proyek yang anda buat. Untuk mengenalkan events kepada peserta praktikum, mau tidak mau anda harus mengerti salah satu perintah yang dimiliki delphi karena events ini hanya dapat di amati jika events tersebut di pakai. Salah satu perintah yang dapat dengan mudah di pakai untuk mengamati kapan sebuah events akan terjadi adalah perintah (method) untuk menampilkan pesan milik obyek application. Perintahnya seperi di bawah ini :
Application.Messagebox(‘Isi Pesan’,’Judul Pesan’,Mb_Ok); Jika perintah ini di eksekusi maka akan di tampilkan kotak pesan seperti gambar di bawah ini:
Gambar 12 : MessageBox Cara yang lain adalah dengan mengubah value property caption dari sebuah komponen
Tlabel (standard), di mana perintah ini di letakkan pada sebuah procedure milik events yang ingin diamati kejadiannya. Pada praktikum kali ini anda akan mengamati events events milik dari beberapa komponen. Pada akhirnya anda akan di minta mengamati sendiri events events lainnya. Namun perlu menjadi catatan bahwa terkadang ada dua events yang berbeda yang terjadi pada dua komponen yang berbeda tetapi pada kenyataanya kejadiannya terjadi bersama sama. Dari semua events yang tersedianya tidak semuanya sering (umum) dipakai maka dalam praktikum kali ini akan di kenalkan events events yang penting saja. Terutama yang perlakuannya dapat di kenakan oleh pemakai seperti karena pemakaian mouse atau keyboard.
12
Langkah-Langkah 1. Desain Program seperti gambar di bawah ini :
Gambar 13 : Desain Program 2. Klik Pada Komponen Edit1 3. Dobel Klik di sebelah kanan Events Onchange 4. Tuliskan perintah di bawah ini pada Procedure yang telah tersedia :
Application.Messagebox(‘Ini Events On Change Komponen Edit1’,’Pesen’,Mb_Ok); 5. Jalankan Project ini 6. Gantilah Tulisan Edit1 dengan tulisan YU 7. Amati apa yang terjadi Pertanyaan : Events On Change adalah Event (kejadian) pada saat pemakai melakukan ……….. 8. Tutup project anda. 9. Kembali ke jendela disain, klik pada komponen edit1 10. Dobel Klik di sebelah kanan Events OnExit 11. Tuliskan perintah di bawah ini pada Procedure yang telah tersedia :
Application.Messagebox(‘Ini Events On Exit Komponen Edit1’,’Pesen’,Mb_Ok); 12. Jalankan Project ini 13. Tempatkan mouse anda pada komponen edit1 14. Pindahkan ke komponen Edit2, atau tekan tombol Tab di keyboard anda 15. Amati apa yang terjadi Pertanyaan : Events OnExit adalah Event (kejadian) pada saat 16. Tutup Project anda, dan kembali ke jendela disain 17. klik pada komponen edit2 18. Dobel Klik di sebelah kanan Events OnEnter 19. Tuliskan perintah di bawah ini pada Procedure yang telah tersedia :
Application.Messagebox(‘Ini Events On Enter Komponen Edit2’,’Pesen’,Mb_Ok); 20. Jalankan Project ini 21. Tempatkan mouse anda pada komponen edit1 22. Pindahkan ke komponen Edit2, atau tekan tombol Tab di keyboard anda 23. Amati apa yang terjadi Pertanyaan : Events OnEnter adalah Event (kejadian) pada saat 13
24. Tutup Project anda, dan kembali ke jendela disain 25. Klik komponen Panel1 26. Dobel Klik di sebelah kanan Events OnMouseDown 27. Tuliskan perintah di bawah ini pada Procedure yang telah tersedia :
Label1.Caption:=’Ini Events OnmouseDown Panel1’; 28. Jalankan Project ini 29. Klik mouse pada panel1 30. Amati apa yang terjadi Pertanyaan : Events OnMousedown adalah Event (kejadian) pada saat 31. Tutup Project anda, dan kembali ke jendela disain 32. Klik komponen Panel1 33. Dobel Klik di sebelah kanan Events OnMouseUp 34. Tuliskan perintah di bawah ini pada Procedure yang telah tersedia :
Label1.Caption:=’Ini Events OnmouseUp Panel1’; 35. Jalankan Project ini 36. Klik mouse pada panel1 37. Amati apa yang terjadi Pertanyaan : Events OnMouseUp adalah Event (kejadian) pada saat TUGAS 4 Dengan cara yang sama cobalah isi tabel di bawah ini Jenis Komponen Tedit Tbutton Timage
Pallete Standard Standard Additional
Events OnKeyPress Onclick OnDblClick
Tambahkan Event event yang lain yang sempat anda coba!!
14
Kejadian
MODUL IV Database Desktop Sesuai dengan tujuan kita pada mata kuliah ini bahwa anda akan di bawa untuk mencoba membuat suatu perogram pengolah data. Untuk mewujudkan impian itu kita harus memiliki beberapa program aplikasi untuk membantu kita. Salah satunya adalah database desktop. Database Desktop adalah suatu program “Add-Ins“, yaitu program terpisah yang “ditempelkan” dalam Delphi. Cara memanggil Database Desktop adalah klik menu Tools lalu Databasse Desktop, akan muncul tampilan seperti pada gambar
Gambar 14 : Database Desktop Pada Database Desktop kita bisa membuat table untuk file database, untuk aplikasi di Delphi kita tidak harus langsung mengisi record-record, karena kita bisa mengisinya melalui program. 1. Membuat Alias Kita perlu membuat alias manajer ini untuk memudahkan kita dalam pencarian file database yang kita simpan. Langkah-langkahnya : 1. Setelah Database Desktop terbuka 2. Klik menu tools pilih Alias Manajer 3. Akan tampil Alias Manajer editor, klik pada tombol New
Gambar 15 : Alias Manajer 4. Isilah
Database alias, isinya harus kata yang unik, database alias ini untuk
menggantikan nama tempat penyimpanan file database. 5. Rubahlah isi path dengan nama directory tempat penyimpanan file database 6. Klik OK dan akan tampil
15
Gambar 16 : confirmasi 7. Klik Yes 8. Anda sudah memiliki Alias Manajer Setelah ini tidak usah repot-repot mengingat nama directory kita, cukup dengan mengingat nama alias manajernya saja, kita dapat membuka directory kita dan kita dapat membuka file-file database kita. 2. Membuat File Database Dengan Database Desktop kita dapat membuat tabel database dalam berbagai format, dan yang paling sering dibuat adalah file database dalam format Paradox. Dalam format paradox, satu file
database hanya berisi satu tabel. Untuk membuat tabel dalam format paradox
langkahnya : 1. pilih File, New, lalu Table akan muncul
gambar 17 : Pilihan format database 2. pilih OK akan muncul
gambar 18 : structur database 3. Pada kolom field Name tentukan nama field, Type data nya diinginkan. 4. Tekan Save As akan muncul tampilan save as editor
16
dan ukuran
yang
5. Alias diisi dengan alias anda, file name bisa dirubah sesuka hati anda.
Gambar 19 : saveas editor 6. Klik save, file database anda sudah tersimpan di directory anda. TUGAS 5 1. Buatlah alias untuk folder kelas anda dengan alias yang bernama kelas anda. 2. Buatlah Dua buah file table dan disimpan dengan nama tabelsatu dan tabeldua, file tabelsatu untuk menyimpan data data pelanggan warnet yang akan mencatat nama, alamat rumah, alamat email serta nomor anggota, sedangkan tabel dua dirancang untuk mencatat transaksi dengan pelanggan tersebut yang terdiri dari nomor transaksi, nomor anggota, tanggal transaksi, besarnya uang transaksi serta keterangan.
17
MODUL V Komponen Database
Dalam IDE (Integrated Development Environment), komponen database dikelompokkan menjadi dua page pada component Palette, yaitu:
Page Data Access yang berisi non-visual data-access components
Page Data Control yang berisi data-aware visual components
Selain kedua page tersebut ada satu page yang merupakan komponen untuk membuat laporan yaitu page Qreport. Semua komponen pada page ini bukanlah asli buatan Borland, tetapi dibuat oleh perusahaan lain yaitu QuSoft SA. 1. Komponen Data Access Komponen yang ada page Data Access di komponen palette adalah sbb: Komponen TdataSource
Kegunaan Bertindak sebagai penghubung antara data access component dengan data-aware visual control.
Ttable
Bertindak sebagai DataSource yang mengakses record dari Tabel.
Tquery
Bertindak sebagai DataSource yang mengakses record dari tabel berdasarkan perintah SQL query.
TstoredProc
Bertindak
sebagai
DataSource
yang
mengakses
record
berdasarkan perintah store procedure untuk database server. Menciptakan Tdatabase
Client/server
connection
dengan
sebuah
database dalam sebuah session. Menciptakan sebuah session dalam sebuah aplikasi multi-
Tsession
threaded database. Digunakan jika kita ingin memindahkan record/field dari
TbatchMove
sebuah tabel ke tabel lainnya secara cepat (seluruhnya). Digunakan untuk membuat laporan menggunakan Report Smith.
Treport
Menjalankan perintah SQL seperti INSERT, UPDATE dan DELETE.
TupdateSQL 2. Komponen Data Control Komponen yang ada page Data Control di komponen palette adalah sbb: Komponen TDBGrid
Kegunaan Display dan edit Dataset seperti dengan format Tabular (dalam xBase seperti Browse). 18
TDBNavigator
Mengontrol kursor (Posisi) record seperti Previous Record, Next Record, First Record, Last Record, Refresh. Mengubah status dari sebuah DataSet seperti Open, Close, Edit, Post (simpan), Delete, Cancel Edit. Display sebuah field sebagai sebuah label
TDBText
Display dan edit sebuah field dalam edit box.
TDBEdit
Display dan edit sebuah field seperti sebuah text editor.
TDBMemo
Display dan edit sebuah field seperti image atau binary blok data.
TDBImage
Display sejumlah pilihan untuk mengisi sebuah field. Display sebuah edit-box dan drop-list untuk mengisi
TDBListBox
sebuah field. Display sebuah check-box untuk sebuah field Boolean
TDBComboBox
(dalam xBase Logical field). Display sejumlah pilihan dalam bentuk radio button
TDBCheckBox
group. Display sejumlah pilihan untuk mengisi sebuah field,
TDBRadioGroup
pilihan diambil DataSet lain. Display sebuah edit-box dan drop-list untuk mengisi
TDBLookupLisBox
sebuah field, pilihan dari drop-list diambil dari DataSet lain.
TDBLookupCom-
Display dan edit record secara tabular grid dan setiap
boBox
selnya dapat terdiri dari Data-aware component.
TDBCtrGrid 3. Memahami Cara Kerja Komponen Database Beberapa data control dapat menggunakan satu buah DataSource. Tetapi sebuah DataSource hanya dapat menghubungi satu DataSet saja. 1. Tempatkan sebuah DataSet (Ttable). Tentukan property database dan isi property TableName-nya. Untuk mengaktifkan, ubah property Active menjadi True. 2. Tempatkan sebuah DataSource. Isi property DataSet dengan nama komponen yang dibuat pada langkah 1. 3. Untuk menampilkan data dibutuhkan salah satu komponen visual seperti TDBEdit dsb. Ubah property DataSource dengan nama komponen yang disebutkan pada langkah 2. Pilih field dengan mengubah property Field. Contoh : 1. Jalankan Delphi. Setiap menjalankan
maka secara otomatis akan dibuat sebuah projek
dengan sebuah form. 2. Tempatkan komponen-komponen berikut ini. 19
Komponen Data Access:
TTable dibei nama Table1
TDataSource diberi nama Datasource1
Komponen Data Control:
TDBGrid diberi nama DBGrid1
TDBNavigator diberi nama DBNavigator1
Hasilnya terlihat seperti pada gambar
Gambar 20 : Form1 Biolife Pengisian property 1. Komponen Table1, Property yang harus diubah adalah:
DatabaseName
= DBDEMOS
TableName
= BIOLIFE.DB
Active
= True
2. Komponen DataSource1, Property yang harus diubah adalah:
Dataset
= Table1
3. Komponen DBGrid1, Property yang harus diubah adalah:
DataSource
= DataSource1
4. Komponen DBNavigator1, Property yang harus diubah adalah:
DataSource
= DataSource1
20
Gambar 21 : Form1 Biolife Hasil Eksekusi Klik tombol Run atau tekan tombol F9, untuk menjalankan aplikasi. Hasilnya terlihat sebagai berikut : TUGAS 6 Buatlah program lain seperti contoh program diatas dengan mengganti TableNamenya menjadi selain Biolife.db
21
MODUL VI Bekerja Dengan Tabel Tabel merupakan komponen dataset yang paling dasar dan paling fleksibel. Dengan memanfaatkan komponen ini kita dapat mengakses langsung ke database Paradox atau dBase, atau menggunakan ODBC (Open Database Connectivity). Dengan menggunakan ODBC ini kita langsung dapat memanfaatkan database dari Microsoft SQL, MS-Access, Interbase, Sybase dan sebagainya. A. Menempatkan sebuah Komponen Tabel 1. Klik page Data Access pada Componen Palette. Tempatkan sebuah komponen Table pada form. Maka secara otomatis akan diberi nama Table1. 2. Tempatkan sebuah komponen DataSource. secara otomatis akan diberi nama DataSource1. 3. Klik page Data Control pada Componen Palette. Tempatkan sebuah komponen DBGrid pada form, diberi nama DBGrid1. Lanjutkan dengan menempatkan komponen DBNavigator, sebuah DBImage dan sebuah DBEdit. 4. Klik page Additional pada Componen Palette, lalu tempatkan empat buah BitBtn. 5. Untuk mengubah property, Klik BitBtn1. Pada Object Inspector property : Kind = bkOK Caption = &Buka Name = btOpen 6. Klik BitBtn2. Pada Object Inspector property : Kind = bkCancel Caption = &Tutup Name = btCancel 7. Klik BitBtn3. Pada Object Inspector property : Kind = bkClose Caption = &KELUAR Name = btClose 8. Klik BitBtn4. Pada Object Inspector property : Glyph = Program Files/ Common Files/ Borland Shared/ Images/ ButtonS Caption = &TOOL Name = btTool 9. Klik Table1, Pada Object Inspector ubahlah property : DatabaseName
= DBDEMOS
TableName
= BIOLIFE.DB
10. Klik Datasource1, Pada Object Inspector ubahlah property DataSet dengan Table1. 11. Klik
DBNavigator,
Pada
Object
Inspector
DataSource1. 12. Klik DBEdit1, ubah property: 22
ubahlah
property
DataSource
dengan
DataSource = DataSource1 DataField
= Species Name
13. Klik DBImage1, ubah property: DataSource = DataSource1 DataField
= Graphic
Stretch
= True
14. Klik ganda tombol Buka. procedure TForm1.btOpenClick(Sender: TObject); begin Table1.Open; {Table1.Active :=True;} end; 15. Klik ganda tombol Tutup. procedure TForm1.btCancelClick(Sender: TObject); begin Table1.Close; {Table1.Active :=False;} end; 16. Klik ganda tombol Keluar. procedure TForm1.btCloseClick(Sender: TObject); begin Application.Terminate; end; 17. Klik ganda tombol Tool. procedure TForm1.btToolClick(Sender: TObject); begin if table1.Active then ShowMessage('File Sudah Dibuka, ReadOnly tidak dapat diubah') else Table1.ReadOnly :=True; end;
Gambar 22 : Form1 Biolife Toll 18. Jalankan program dengan mengklik tombol Run, atau tekan F9.
23
Klik “BUKA”, hasilnya sbb:
Gambar 23 : Form1 Biolife Toll Hasil Eksekusi Lanjutkan dengan langkah berikut:
Klik “TOOL” tampil keterangan “File Sudah Dibuka, ReadOnly tidak dapat diubah”.
Klik DBEdit1, maka kita dapat mengubah isinya.
Klik “TUTUP” File akan ditutup.
Klik “TOOL”, maka ReadOnly akan diisi dengan nilai True, lalu klik kembali “BUKA”.
Klik DBEdit1, lalu ubah isinya. Sekarang kita tidak dapat mengubah karena status tabel dibuka dalam keadaan hanya untuk dibaca (Read Only).
B. Contoh lain dengan Tabel Buatlah Tabel berikut
TableName = Music.db Table Type = Paradox 7 Field Name Kode Judul_Lagu Penyanyi Tahun_Rekaman
Type A A A A
Size 5 30 5 4
Key *
Selanjutnya Masuk ke program Delphi, kemudian rancanglah program berikut ini :
Gambar 24 : Form Lagu 24
1. Klik pada Form1, ganti property caption = Koleksi Lagu Terbaru. 2. Letakkan 4 buah Label pada Form1. 3. Letakkan 4 buah DBEdit ( Data Control ) pada Form1. 4. Letakkan masing-masing 1 buah ; DBText, DBGrid, DBNavigator ( Data Control ). 5. Letakkan masing-masing 1 buah ; Table, Datasource ( Data Access ). 6. Letakkan sebuah Bitbtn ( Additional ), ubah property kind = bkClose. 7. Klik pada Table, ubahlah property : DatabaseName TableName Name Active
= = = =
(Alias_Name) Music.db tbMusic True
8. Klik pada Datasource, ubahlah property : DataSet Name
= tbMusic = dsMusic
9. Klik pada DBText, ubahlah property : DataSource DataField
= dsMusic = Judul_Lagu
10. Klik pada DBEdit1, ubahlah property : DataSource DataField
= dsMusic = Kode
11. Seperti Langkah ke –10, Klik pada DBEdit2 s/d DBEdit4 dan ubah DataFieldnya sesuai dengan yang dibutuhkan. 12. Klik pada DBGrid, ubahlah property DataSource = dsMusic 13. Klik pada DBNavigator, ubahlah property DataSource = dsMusic 14. Jalankan Program, coba dan perhatikan hasil eksekusi program. TUGAS 7 1. Buatlah tabel dengan nama Mhs.db, dan tentukan field–field yang diperlukan. 2. Rancanglah program untuk menampilkan data pada tabel yang telah anda buat.
25
MODUL VII Menggunakan Query Komponen Query disusun berdasarkan SQL. Query menghasilkan sebuah Dataset dari satu atau beberapa tabel dengan batasan yang ditentukan pada perintah SQL (Property SQL). Komponen ini tidak terbatas hanya mengakses data Paradox atau dBase, tetapi juga dapat mengakses database lainnya seperti Sybase, Oracle, InterBase dan SQL Server. Perintah SQL pada komponen Query dijalankan berdasarkan dua cara yaitu:
Static SQL, perintah SQl dibuat pada saat design-time
Dynamic SQL, perintah SQL dibuat pada aplikasi sedang dijalankan
1. Menggunakan Static Query Contoh :
SELECT PARTS.PARTNO, PARTS . DESCRIPTION, PARTS . VENDORNO, VENDORS . VENDORNAME, VENDORS . PHONE FROM PARTS, VENDORS WHERE VENDORS . VENDORNO = PARTS.VENDORNO AND PARTS . VENDORNO = 3511 Pada contoh diatas, Delphi akan menampilkan semua record yang memenuhi syarat bahwa kolom VendorNo bernilai 3511. Query ini berjalan dan tidak dapat diubah oleh pemakai pada saat aplikasi dijalankan. 2. Menggunakan Dynamic SQL Contoh : Letakkan sebuah komponen bitbtn dari page Additional, ubah caption dengan RunSQL. Klik ganda pada “RunSQL”, lalu ubahlah menjadi seperi di bawah ini: procedure TForm1.BitBtn1Click(Sender: TObject); begin Query1.Close; Query1.SQL.Clear; Query1.SQL.Add('SELECT PARTS.PARTNO,'); Query1.SQL.Add(' PARTS.DESCRIPTION,'); Query1.SQL.Add(' PARTS.VENDORNO,'); Query1.SQL.Add(' VENDORS.VENDORNAME,'); Query1.SQL.Add(' VENDORS.PHONE'); Query1.SQL.Add(' FROM PARTS,VENDORS'); Query1.SQL.Add(' WHERE VENDORS.VENDORNO ='); Query1.SQL.Add(' PARTS.VENDORNO'); Query1.Active := True; end;
26
Gambar 25 : Form RunSql Pada saat di jalankan menjadi :
Gambar 26 : Hasil Eksekusi Form RunSql 3. Menggunakan SQL Interaktif
Gambar 27 : SQl Interaktif Langkah perancangan program, sebagai berikut ; 1. Klik pada Form1, ubah property caption = SQL Interaktif Kemudian klik 2 kali pada Form1, lalu tuliskan kode program berikut: procedure TForm1.FormCreate(Sender: TObject); begin Query1.SQL.Clear; Query1.SQL.Add ( ' Select * from Music.db ' ); Query1.Open; end; 27
2. Letakkan sebuah Query (Data Access) pada Form1, lalu ubahlah property DatabaseName = (Alias_Name) 3. Letakkan sebuah Datasource ( Data Access ), pada Form1 lalu ubahlah property DataSet = Query1 4. Letakkan DBGrid ( Data Control ), pada Form1. 5. Letakkan 2 buah Bitbtn ( additional ), ubah captionnya sesuai gambar. 6. Klik 2x pada Bitbtn Aktifkan SQL, lalu tuliskan kode program berikut : procedure TForm1.BitBtn1Click(Sender: TObject); begin try begin query1.SQL.Clear; query1.SQL.Add ( edit1.Text ); Query1.Open; end; Except begin beep; ShowMessage (' Pernyataan SQL tidak Sah ! ' ); end; end; end; 7. Klik 2x pada Bitbtn Selesai, lalu tuliskan kode program berikut : procedure TForm1.BitBtn2Click(Sender: TObject); begin Application . Terminate ; end; 8. Letakkan sebuah StaticText (Additional) pada form1, lalu ubah property : Caption
= Pernyataan SQL
BorderStyle = sbsSingle 9. Letakkan sebuah Edit (Standar) pada form1, lalu klik 2x dan tuliskan kode program berikut: procedure TForm1.Edit1Change(Sender: TObject); begin BitBtn1.Default :=True; end; 10. Simpanlah Program pada direktori anda, lalu jalankan dengan tombol F9.
28
Hasil eksekusi program ;
Gambar 28 : Hasil Eksekusi SQL Interaktif TUGAS 8 1. Apakah yang dimaksud dengan SQL ? , berikan contoh bentuk penulisannya . 2. Apa yang anda ketahui tentang hasil eksekusi program di atas ? 3. Buatlah program untuk menampilkan data (dari tabel), dengan menggunakan Query seperti contoh dan latihan sebelumnya. 4. Jelaskan secara rinci tentang program yang anda kerjakan. 5. Presentasikanlah tugas anda di depan teman-teman lainnya, Good Luck !
29
MODUL VIII Query Berparameter Query Berparameter adalah metode pengambilan data menggunakan komponen query yang disediakan oleh delphi. Untuk mengambil data dari database menggunakan komponen query, pernyataan untuk mengambil data menjadi isi (value) dalam property SQL dari komponen tersebut. Dengan demikian kalimat querynya merupakan kalimat yang statis. Kadang kadang kita perlu mengambil data dengan kalimat query yang tidak jauh berbeda dengan kalimat query yang sudah ada di property SQL, hanya perlu merubah nilai syaratnya. Misalnya jika kita ingin mengambil data mahasiswa yang laki laki, disaat yang lain kita ingin mengambil data mahasiswa yang perempuan maka sebetulnya kita cukup menggunakan kalimat query yang sama hanya saja syaratnya diubah dari laki laki menjadi perempuan. Untuk keperluan itulah kita menggunakan query berparameter. 1. Gunakan Database Desktop, Buatlah Table tabel dengan rancangan seperti dibawah ini, Lalu isikan beberapa data ke tabel person dan tabel city: PERSON.DB disimpan di C:\Temp Nama Field
Type
Keterangan
NoKTP
N
Field Kunci dengan panjang 5 Angka
Nama
A
Berisi nama alfabet atau string atau karakter
JK
A
Alfabet 1 huruf W=Wanita, P=Pria
Rambut
A
Alfabet 1 Huruf L=Lurus, K=Keriting, O=Ombak
TB
N
Tinggi Badan Numerik
Penghasilan
N
Penghasilan pertahun dalam Jutaan Rupiah
KodeKota
N
CITY.DB disimpan di C:\Temp Nama Field
Type
Keterangan
KodeKota
N
Field Kunci tabel city
NamaKota
A
Berisi nama kota alfabet atau string atau karakter
Propinsi
A
Alfabet,String atau Karakter berisi nama propinsi
Negara
A
Alfabet,String atau Karakter berisi nama Negara
2. Buatlah Rancangan Form Seperti di bawah ini :
Gambar 29 : Rancangan Form 30
3. Pada komponen Query1 isilah propeerty SQL dengan kalimat seperti di bawah ini:
Select * From Person Where Nama Like:SyaratNama 4. Aturlah Property Params dari komponen Query1 untuk memberikan tipe data yang sesuai Untuk parameter Syaratnama (String) dengan cara seperti gambar di bawah ini : 2. Klik disini untuk memiilih tipe data parameter
1.Klik Here
Gambar 30 : kotak dialog pengisian prperty Params.. 5. Atur Property Dataset pada komponen Datasource1 diisi dengan Query1 dan
Property
Datasource dari komponen DBGrid1 diisi dengan Datasource1 6.
Jika kita ingin pada saat Button Button1 di Klik maka Program akan Mengambil data dari tabel person dengan syarat yang sudah dinputkan ke edit1. Program yang harus dituliskan pada Procedure milik Event OnClick dari komponen Button1 adalah :
Procedure TForm1.Button1Click(Sender: TObject); Begin Query1.Close; Query1.ParamByName('SyaratNama').Value:=Edit1.text; Query1.Open End; End. 7. Coba Jalankan Program ini, (F9) Lalu anda masukkan syarat ke kotak edit1 dengan S% lalu Klik button1 perhatikan apa yang muncul di DBGRID1…???!!!##$$. Cobalah anda ganti syarat di Edit1 lalu klik lagi Button1 apa yang terjadi…???&&%%##$$. Kembangkan Program ini dengan kalimat Query yang lain, buat beberapa parameter yang lain!!!Coba Juga tambahkan Query2 dengan kalimat SQL untuk menghapus dan mengupdate data dengan parameter lalu tambahkan Button2 dan eksekusilah kalimat tersebut pada saat button2 di klik.
31
MODUL IX Membuat Report 1. Bukalah Project yang anda buat pada modul 9. 2. Tambahkan sebuah Button, Isilah property caption dengan Preview 3. Klik menu File lalu Klik Sub menu New… 4. Pada Kotak dialog pilihlah Report lalu Klik OK 5. Klik kanan pada QuickReport1 lalu pilih Repport Setting lihat gambar1
Gambar 31 : Kotak Dialog Pengaturan Setting Report 6. Pada kotak dialog Berilah tanda Check
pada semua bands lalu klik OK
7. Tambahkan sebuah Komponen Query dan Property SQL diisi dengan :
Select * From Person Where Nama Like:SyaratNama 8. Atur Property DatabaseName menjadi path tempat menyimpan file person.db di komputer anda atau aliasnya.(seerti modul9) 9. Atur Property Params untuk parameter Syaratnama menjadi string(seperti modul9) 10. Klik pada komponen QuickReport1 milik anda lalu atur Property Dataset menjadi Query1 11. Letakkan Komponen QRLABEL di bands tittle, lalu property Caption menjadi : LAPORANE INYONG MASSS!~!!@@@ 12. Letakkan 3 buah komponen QRLABEL Column header 13. Lettakkan komponen QRDbtext di bagian tengah komponen Detail lalu property Dataset diisi dengan Query1 dan property datafield diisi nama 14. Letakkan Komponen QRExpr di bagian kiri detail lalu, isilah property expression dengan count dengan cara mengklik tanda … di sebelah kanannya lalu pilih count pada kotak dialog (lihat gambar 2) 15. Letakkan komponen QRSysdata
pada bands Page Footer lalu isilah property data
dengan qrsPageNumber. 16. Klik Tombol Shift berbarengan dengan F12 lalu pilih Form1, 17. akan muncul form1 di layar lalu dobel klik di button yang bertuliskan preview 18. tuliskan program seperti di bawah ini (yang tercetak miring berarti sudah dituliskan oleh delphi)
procedure TForm1.Button2Click(Sender: TObject); begin Quickreport1.Query1.Close; 32
Quickreport1.Query1.ParamByName('syaratnama').asstring:=edit1.text; quickreport1.Query1.open; Quickreport1.Preview;
end; end. Report anda akan menjadi seperti ini
Gambar 32 : Rancangan Report
33
Daftar Pustaka Martina, Inge, 36 Jam Belajar Komputindo, Jakarta, 1999.
Komputer
Delphi
4.0,
Pramono, Joko, Mudah Menguasai Delphi 4 jilid dua, Komputindo, Jakarta, 1999.
PT.
Elex
Media
PT. Elex
Media
Pramana, Hengky W, Kunci Sukses Database Desktop Versi 7.0, PT. Elex Media Komputindo, Jakarta, 1999. Jayanto, Membuat Aplikasi Database Komputindo, Jakarta, 1999.
dengan
Delphi,
PT.
Elex
Media
Alam, M. Agus J, Belajar Sendiri Borland Delphi 5.0, PT. Elex Media Komputindo, Jakarta, 2000.
34