SlideShare uma empresa Scribd logo
1 de 41
Baixar para ler offline
Halaman :
MODUL I
APLIKASI DASAR
Bahasan: Dasar-Dasar Pemograman Delphi
Tujuan: 1. Mahasiswa Dapat Membuat Aplikasi Sederhana Menggunakan Delphi
A. MENGENAL DELPHI
Delphi merupakan sebuah program berbasiskan windows yang memiliki bahasa mirip dengan pascal. Jadi bila anda telah
menguasai pascal barangkali tidak akan kesulitan dalam menggunakan program ini. Perbedaan mendasar antara delphi dengan
pascal adalah bahwa delphi memiliki oop (object orientation program) atau program yang berorientasi ke objek. Dengan
demikian delphi lebih mudah digunakan dibandingkan dengan pascal, karena anda hanya tinggal mengatur properti atau sifat
dari objek dan menambahkan sedikit pengkodean.
Untuk menjalankan:
1. Klik tombol Start, pilih menu Programs  Borland Dephi 7  Delphi 7
2. Tunggu hingga program delphi aktif
3. Perhatikan komponen yang ada, diantaranya component pallete (berisi sekumpulan objek yang akan kita gunakan
dalam pembuatan proram) dan object inspector (berisi daftar property atau sifat dari objek yang aktif yang dapat kita
ubah sesuai dengan kebutuhan dalam program kita). Kedua objek ini merupakan komponen yang paling sering
dipakai dalam pembuatan program visual.
Gambar 1.1.Toolbar Component Pallete.
Gambar 1.2. Object Inspector
B. KONSEP DASAR
Didalam delphi ada beberapa pengertian yang memerlukan penjelasan untuk memahami bagaimana dan apa saja
komponen yang ada dalam delphi, adapun diantaranya adalah:
- PROJECT
Project delphi adalah sekumpulan file yang akan membangun aplikasi atau library yang dapat disebarkan kepada
pemrogram lain. Pada saat memulai delphi, delphi akan membuat sebuah project baru. Setelah itu terserah pengguna apakah
apakah ingin memodifikasi projek terasebut, membuat projek baru lagi atau mungkin membuka projek yang sudah ada.
Project aplikasi terdiri atas :
1. File project : file ini tersimpan dengan ekstensi .Dpr, hanya ada satu file projek untuk satu projek.
2. File form : file form tersimpan dengan ekstensi .dfm, adalah file biner yang berisi gambaran grafis dari form.
Setiap file .dfm selalu pararel dengan satu unit file yang berekstensi .pas.
3. Unit (source): file unit tersimpan dengan ekstensi .pas, dimana setiap unit berupa file source code dalam bahasa
pascal. Tidak setiap file unit memiliki atau terhubung file .dfm
File projek menggabung semua file diatas yang digunakan oleh delphi untuk melakukan kompilasi dan membuat file target
(.exe atau .dll).
-FORM
Form merupakan tempat kita merancang program. Jika seorang pemogram diibaratkan sebagai seorang pelukis maka form
inilah yang menjadi kanvasnya. Form yang dirancang dalam delphi bisa digunakan kembali oleh projek delphi yang lain. Form
dapat juga disimpan dalam bentuk dll, sehingga dapat digunakan oleh aplikasi yang lain seperti c++, paradox, atau dbase.
Delphi menawarkan kemudahan pembuatan form melalui model template.
-UNIT
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
1
Halaman :
Unit merupakan modul yang terpisah yang dapat dikompilasi tersendiri, yang berisi deklarasi bagian publik (antarmuka)
dan bagian privat (implementasi). Setiap form dalam delphi mempunyai satu unit yang bersesuaian. Source code unit
tersimpan dengan ekstensi pas, sedangkan yang sudah terkompilasi tersimpan dengan ekstensi .dcu. proses link akan
menggabung file .dcu menjadi satu file exe atau dll.
C. MEMBUAT PROYEK BARU
Untuk membuat aplikasi atau proyek baru, langkah-langkah yang harus anda lakukan adalah:
1. Pilih menu File | New Application
2. Tunggu hingga muncul jendela form
3. Dengan memilih component pallette standar, masukan sebuah label dan button
4. Kemudian ubah propertinya dengan menggunakan Object Inspector
5. Pada Fom1: Tform1, caption anda isi dengan pengalaman pertama...
6. Label1, Caption : ini adalah pengalaman pertamaku menggunakan program delphi
7. Button1, Caption : &Tutup
8. Untuk lebih jelasnya, silahkan lihat gambar 1.3.
Gambar 1.3.Jendela Form Hasil Perubahan.
9. Klik dua kali pada button hingga muncul jendela pengkodean, kemudian ketik : Close diantara kata begin dan end
sehingga terlihat sebagai berikut:
procedure TForm1.Button1Click(Sender: TObject);
begin
Close;
end;
10. Jalankan program dengan menu Run | Run. Atau bisa juga dengan langsung menekan tombol F9
11. Untuk keluar dari program klik tombol tutup
12. File menu File | Save All
13. Simpan project anda dengan nama ppertama.dpr dan upertama.pas untuk unitnya.
14. Kembangkan contoh program tersebut.
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
2
Halaman :
MODUL II
MENGHITUNG LUAS SEGI TIGA
Bahasan: Program Menghitung Luas Segi Tiga
Tujuan: 1. Mahasiswa Dapat Membuat Aplikasi Perhitungan Dengan Delphi
A. MENDESAIN FORM
Untuk membuat program menghitung luas segitiga ini, kita membutuhkan sebuah form. Namun anda juga bisa
membuatnya bersama proyek yang baru. Kemudian anda masukan beberapa komponen diantaranya Label sebanyak empat
buah, Edit sebanyak tiga buah dan Button sebanyak dua buah. Anda atur posisinya sehingga terlihat seperti pada Gambar 2.1.
Gambar 2.1. Jendela Desain Form.
B. MENGUBAH PROPERTI
Dengan menggunakan Object Inspector, ubahlah properti dari komponen yang ada dengan ketentuan sebagai berikut :
Nama Objek Properti Yang Diubah Nilai
Form1 : TForm1 Caption Mata Matiku...
Label1 : TLabel1 Caption
Font : Size
Menghitung Luas Segitiga
15
Label2 : TLabel2 Caption Alas:
Label3 : TLabel3 Caption Tinggi:
Label4 : TLabel4 Caption Luas:
Edit1 : TEdit1 Text (Kosongkan)
Edit2 : Tedit2 Text (Kosongkan)
Edit3 : Tedit3 Text (Kosongkan)
Button1 : TButton1 Caption &Hitung
Button2 : Tbutton2 Caption &Tutup
Panel1 : TPanel1 Caption Kosongkan
Jika sudah selesai seharusnya tampilan form anda akan terlihat seperti gambar 2.2.
Gambar 2.2. Tampilan Hasil Perubahan Properti.
C. MEMASUKAN KODE
Agar desain program yang telah kita buat bisa berfungsi sebagaimana mestinya, tentunya kita harus memasukkan kode
kedalam objek tersebut. Anda cukup memasukan kode untuk Button1 dan Button2 saja.
Berikut ini kode sumbernya:
procedure TForm1.Button1Click(Sender: TObject);
var alas,tinggi,luas: real;
begin
// cek apakah input sudah diisi ?
IF edit1.text='' THEN
Begin
MessageDlg('Alas masih kosong',mtInformation,[mbOK],0);
edit1.setfocus;
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
3
Halaman :
End
ELSE IF edit2.text='' THEN
Begin
MessageDlg('Tinggi masih kosong',mtInformation,[mbOK],0);
edit2.setfocus;
End
ELSE
// jika sudah :
Begin
alas:=STRtoFLOAT(edit1.text);
tinggi:=STRtoFLOAT(edit2.text);
luas:=0.5*alas*tinggi;
edit3.text:=FLOATtoSTR(luas);
// Edit3.Text:='Bukan Bilangan';
End;
End;
Sedangkan untuk kode Button2 adalah sebagai berikut :
procedure TForm1.Button2Click(Sender: TObject);
begin
Close;
end;
Sehingga kode lengkapnya akan terlihat seperti dibawah ini:
unit Usegi3;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Button1: TButton;
Button2: TButton;
Edit3: TEdit;
Panel1: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button2Click(Sender: TObject);
begin
close;
end;
procedure TForm1.Button1Click(Sender: TObject);
var alas,tinggi,luas: real;
begin
// cek apakah input sudah diisi ?
IF edit1.text='' THEN
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
4
Halaman :
Begin
MessageDlg('Alas masih kosong',mtInformation,[mbOK],0);
edit1.setfocus;
End
ELSE IF edit2.text='' THEN
Begin
MessageDlg('Tinggi masih kosong',mtInformation,[mbOK],0);
edit2.setfocus;
End
ELSE
// jika sudah :
Begin
alas:=STRtoFLOAT(edit1.text);
tinggi:=STRtoFLOAT(edit2.text);
luas:=0.5*alas*tinggi;
edit3.text:=FLOATtoSTR(luas);
Edit3.Text:='Bukan Bilangan';
End;
end;
end.
D. LATIHAN
- Modifikasi program diatas, sehingga ketika user menginputkan nilai alas dan tinggi tidak berupa angka, program bisa
menghandlenya.
- Buatlah program baru seperti diatas, misalkan untuk menghitung luas lingkaran, volume tabung, dan sebagainya.
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
5
Halaman :
MODUL III
TERBILANG
Bahasan: Penggunaan Fungsi Dalam Delphi
Tujuan: 1. Mahasiswa Dapat Membuat Fungsi Untuk Setiap Permasalahan Dalam Delhi
A. DESAIN FORM
Sekarang kita mencoba membuat sebuah aplikasi untuk menampilkan keterangan bilangan yang dimasukan. Misalkan
ketika user atau pengguna mengetik angka 1, maka akan muncul tulisan Satu.
Berikut ini contoh desainnya:
Gambar 3.1. Contoh Tampilan Desain Form.
B. UBAH PROPERTI
Untuk memperindah tampilan, ubahlah properti masing-masing dengan ketentuan sebagai berikut:
Nama Object Properti Nilai
Label1 Caption
Size
Terbilang
20
Label2 Caption Angka:
Panel1 Caption (dikosongkan)
BitBtn1 Caption
Glyph
&Cek
(Tbitmap)
BitBtn2 Kind bkClose
Form1 Caption Kubilang Terbilang...
Edit1 Text (dikosongkan)
Untuk menambahkan icon pada BitBtn1, langkah yang harus anda lakukan adalah:
1. Aktifkan komponen Bitbtn1, sehingga tampil propertinya pada Object Inspector
2. Pada Tab Propeties pilih baris Glyph, kemudian klik tombol
3. Tunggu hingga muncul jendela Picture Editor.
Gambar 3.2. Jendela Picture Editor.
4. Klik tombol Load...
5. Ketik muncul jendela berikutnya, pastikan anda aktifkan foder : C:Program FilesCommon FilesBorland Shared
ImagesButton, pada bagian Look in:
6. Pilih Check.bmp
7. Klik tombol Open hingga kembali kejendela semula
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
6
Halaman :
8. Klik tombol OK.
Gambar 3.3. Jendela Picture Editor Pemilihan Image
Jika langkah yang anda lakukan sudah tepat maka form anda akan terlihat seperti dibawah ini:
Gambar 3.4. Tampilan Form Setelah Perubahan
C. PENGKODEAN
9. CARA SEDERHANA
Untuk cara sederhana ini, kita hanya menyeleksi setiap angka pertama yang dimasukan dengan seleksi Case Of.
Sebenarnya kita bisa juga menyeleksi dengan IF Then, namun akan membutuhkan lebih banyak pengkodean.
Aktifkan Tombol Cek, dari Object Inspector di tab Events pada event OnClick() anda ketik kode berikut ini:
procedure TForm1.BitBtn1Click(Sender: TObject);
Var Digit1 : Char;
begin
Digit1 := Edit1.Text[1];
Case Digit1 Of
'0' : Panel1.caption := 'Nol';
'1' : Panel1.caption := 'Satu';
'2' : Panel1.caption := 'Dua';
'3' : Panel1.caption := 'Tiga';
'4' : Panel1.caption := 'Empat';
'5' : Panel1.caption := 'Lima';
'6' : Panel1.caption := 'Enam';
'7' : Panel1.caption := 'Tujuh';
'8' : Panel1.caption := 'Delapan';
'9' : Panel1.caption := 'Sembilan';
End;
end;
Untuk memeriksa apakah program kita bisa berjalan dengan baik atau tidak, sekarang coba anda jalankan program
tersebut dengan menekan tombol F9. Kemudian anda isikan angka pada kotak isian dan klik tombol Cek.
10. DENGAN FUNGSI
Cara yang lebih efektif, untuk menerjemahkan banyak angka adalah dengan membuat sebuah fungsi. Fungsi ini harus
anda letakkan dibagian bawah dari Implementation.
Function TERBILANG( n : longint) : String;
Const
Bil : Array[0..11] Of String[15] =
('','Satu','Dua','Tiga','Empat','Lima',
'Enam','Tujuh','Delapan','Sembilan','Sepuluh','Sebelas');
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
7
Halaman :
Begin
Case n Of
0..11 : Result := Bil[n];
12..19 : Result := Terbilang(n-10) + ' Belas';
20..99 : Result := Terbilang(n div 10) + ' Puluh ' + Terbilang(n mod 10);
100..199 : Result := 'Seratus ' + Terbilang(n-100);
200..999 : Result := Terbilang(n div 100) + ' Ratus ' + Terbilang(n mod 100);
1000..1999: Result := 'Seribu ' + Terbilang(n-1000);
2000..9999: Result := Terbilang(n div 1000) + ' Ribu ' + Terbilang(n mod 1000);
End;
//form1.caption := inttostr(n)
End;
Kemudian anda hapus dan ganti kode yang ada ditombol check sehingga menjadi sebagai berikut:
procedure TForm1.BitBtn1Click(Sender: TObject);
Var Digit1 : Char;
begin
If Edit1.text<>'' Then
Begin
If Edit1.text='0' Then Panel1.Caption:='Nol'
Else Panel1.Caption:= TERBILANG(STRtoINT(Edit1.text));
End
Else
Panel1.Caption:='Kosong';
end;
Berikut ini Contoh Aplikasi yang sedang di RUN.
Gambar 3.4. Contoh Form Yang Sedang Dijalankan
D. LATIHAN DAN TUGAS
1. Buat supaya keterangan tampil ketika kita sedang mengetik angkanya (tanpa mengklik tombol cek)
2. Tambahkan pengkodean sehingga program bisa menghandle hingga bilangan Triliunan.
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
8
Halaman :
MODUL IV
MENU
A. DESAIN FORM
Untuk membuat sebuah form bermenu caranya sangat mudah sekali yaitu :
1. Buat sebauh aplikasi baru
2. Tambahkan sebuah MainMenu pada form anda.
Gambar 4.1. Rancangan Form Bermenu.
3. Double klik pada komponen MainMenu yang ada pada form, tunggu hingga muncul jendela baru
4. Isi Properti Caption pada Object Inspector dengan : &Berkas, sehingga akan terlihat seperti Gambar 4.2
Gambar 4.2. Penambahan Menu Berkas
5. Klik tombol kosong yang ada dibawah tulisan Berkas pada form, kemudian anda tambahkan Caption dengan
&Keluar
6. Klik tanda titik-titik yang membentuk kotak kosong dengan disebelah kanan menu Berkas, kemudian anda ubah
Captionnya dengan &Warna.
7. Berturut-turut anda buatkan 3 buah sub menu baru dibawah menu Warna dengan Caption masing-masing Hitam,
Putih, Standar.
8. Kemudian anda tambahkan menu Help, disamping kanan Warna.
9. Dibawah menu Help, anda tambahkan dua sub menu dengan Caption Program, - , Tentang.
10. Tutup Form rancangan menu tersebut sehingga kita kembali aktif di Form yang pertama dan perhatikan perubahan
yang terjadi.
Gambar 3.4. Tampilan Setelah Penambahan Menu
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
9
Halaman :
B. PENGKODEAN
Tambahkan pengkodean sehingga seluruh kodenya akan terlihat seperti dibawah ini:
unit Umenu;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Menus;
type
TForm1 = class(TForm)
MainMenu1: TMainMenu;
Berkas1: TMenuItem;
Keluar1: TMenuItem;
Warna1: TMenuItem;
Hitam1: TMenuItem;
Putih1: TMenuItem;
Standar1: TMenuItem;
Help1: TMenuItem;
Program1: TMenuItem;
N1: TMenuItem;
Tentang1: TMenuItem;
procedure Keluar1Click(Sender: TObject);
procedure Hitam1Click(Sender: TObject);
procedure Putih1Click(Sender: TObject);
procedure Standar1Click(Sender: TObject);
procedure Program1Click(Sender: TObject);
procedure Tentang1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Keluar1Click(Sender: TObject);
begin
if Application.MessageBox(
'Apakah anda yakin keluar program ? ',
'Keluar Program',36) = 6 then
Close;
end;
procedure TForm1.Hitam1Click(Sender: TObject);
begin
Form1.Color := clBlack;
end;
procedure TForm1.Putih1Click(Sender: TObject);
begin
Form1.Color := clWhite;
end;
procedure TForm1.Standar1Click(Sender: TObject);
begin
Form1.Color := clLtGray;
end;
procedure TForm1.Program1Click(Sender: TObject);
begin
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
10
Halaman :
Application.MessageBox('Program Menu-Menuan v.0.1'+#13+#13+'Oleh : abu syafa',
'Tentang Program',64);
end;
procedure TForm1.Tentang1Click(Sender: TObject);
begin
Application.MessageBox('Nama : Abu Syafa'+#13+
'Alamat : Yogyakarta'+#13+
'Phone : 618379 / 08562878105','Programmer...',64);
end;
end.
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
11
Halaman :
MODUL V
DATA BASE
Bahasan: Data Base Menggunakan Delphi
Tujuan: 1. Mahasiswa Dapat Membuat Aplikasi Basis Data Sekaligus Laporan
Dengan Delphi
2. Mahasiswa Dapat Membuat Aplikasi Utuh Dengan Delphi
A. MEMBUAT TABLE
Untuk membuat table dengan menggunakan delphi, anda membutuhkan sebuah program bantual lain yang menjadi satu
dengan delphi yaitu Database Desktop.
Cara untuk membuat table, bisa anda lakukan dengan mengikuti langkah-langkah dibawah ini:
3. Dari program delphi, pilih menu Tools | DataBase Desktop.
4. Tunggu beberapa saat hingga muncul jendela Database Desktop.
Gambar 6.1. Jendela Database Desktop.
5. Dari jendela tersebut, anda pilih menu Tools | Alias Manager.
Gambar 6.2 Jendela Alias Manager.
6. Klik tombol New.
7. Pada isian Database alias: anda ketikkan nama aliasnya misalkan Akademik.
8. Driver type: anda pilih STANDAR.
9. Path: diisi dengan letak penyimpanan tabel anda. Jika anda tidak hapal nama direktorinya, silahkan
klik tombol Browse untuk mencarinya.
10. Klik tombol OK, ketika muncul konfirmasi, anda pilih tombol Yes.
Gambar 6.3. Jendela Konfirmasi.
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
12
Halaman :
11. Kemudian anda pilih menu File | Working Directory...
12. Setelah muncul jendela Set Working Directory, anda pilih Akademik pada bagian Aliases:
13. Jika tidak muncul, kemungkinan ada kesalahan ketika anda membuat Alias Manager.
Gambar 6.4. Jendela Working Directory.
14. Klik tombol OK.
15. Pilih menu File | New | Table.
Gambar 6.5. Jendela Create Table.
16. Ketika muncul jendela Create Table, anda pilih type table Paradox 7, kemudian klik tombol OK
17. Setelah muncul jendela Create Paradox 7 Table, anda buat struktur tabel sebagai berikut:
Gambar 6.6. Jendela Desain Tabel.
18. Klik tombol Save As...
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
13
Halaman :
Gambar 6.7. Jendela Save As
19. Pada isian File name, anda isikan nama tabelnya, misalkan Mhs, sedangkan pada bagain Alias anda
pilih Akademik.
20. Klik tombol Save.
21. Buka tabel anda, dengan memilih menu File | Open | Table
Gambar 6.8. Jendela Open.
22. Ketika muncul jendela open, anda pilih table Mahasiswa
23. Pilih menu Table | Edit Data, kemudin anda masukan record seperti dibawah ini:
Gambar 6.9. Contoh Data Yang Dimasukan Tabel Mahasiswa.
24. Pilih menu File | Close. Ketika muncul konfirmasi penyimpanan, anda pilih yes.
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
14
Halaman :
Gambar 6.10. Jendela Konfirmasi.
25. Pilih menu File | Exit, untuk keluar dari program Database Desktop dan kembali ke program
Delphi.
B. MENDESAIN FORM
Untuk merancang aplikasi database ini, kita membutuhkan beberapa komponen pallete antara lain: Table, DataSource,
DBGrid, dan DBNavigator. Anda bisa menambahkan komponen tersebut dari tab Data Access dan Data Control.
Jangan lupa untuk menambahkan sebuah label dan dua buah Bitbtn. Atur sedemikian rupa sehingga terlihat seperti pada
gambar 6.11.
Gambar 6.11. Rancangan Form DataBase.
Atur propertinya sebagai berikut:
Nama Object Properti Nilai
Form1 BorderStyle
Caption
bsDialog
Basis Data...
Table1 DatabaseName
TableName
IndexFieldName
Active
Akademik
Mahasiswa.db
Nim; Nama Mahasiswa
True
DataSource1 DataSet Table1
DBGrid1 DataSource DataSource1
DBNavigator1 DataSource DataSource1
Bitbtn1 Caption
Glyph
&Laporan
report.bmp
Bitbtn2 Kind bkClose
Label1 Caption
Font.Name
Font.Size
DATABASE MAHASISWA
Verdana
20
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
15
Halaman :
Gambar 6.12. Rancangan Form Setelah Perubahan Properti.
Sekarang coba anda jalankan form tersebut.
C. REPORT
Sebelum anda bisa menampilkan laporan terlebih dahulu anda harus mempersiapkan hal dibawah ini:
1. Tambahkan sebuah form baru, dengan memilih menu File | New Form.
2. Dengan menggunakan pallete QReport, masukkan beberapa komponen antara lain:
a. Sebuah QuickRep
b. Empat buah QRBand
c. Enam buah QRLabel
d. Enam buah QRDBtext
e. Satu buah Table
3. Ubah propertinya sebagai berikut:
Nama Objek Properti Nilai
Form1 Caption Laporan...
Table1 DatabaseName
TableName
IndexFieldName
Active
Akademik
Mahasiswa.db
Nim; Nama Mahasiswa
True
QRBand1 BandType rbTitle
QRBand2 BandType rbClumnHeader
QRBand3 BandType rbDetail
QRBand4 BandType rbPageFooter
QRLabel1 Caption NIM
QRLabel2 Caption Nama Mahasiswa
QRLabel3 Caption Tempat Lahir
QRLabel4 Caption Tanggal Lahir
QRLabel5 Caption Jurusan
QRLabel6 Caption Alamat
QRDBtext1 DataSet
DataField
Table1
Nim
QRDBtext2 DataSet
DataField
Table1
Nama Mahasiwa
QRDBtext3 DataSet
DataField
Table1
Tempat Lahir
QRDBtext4 DataSet
DataField
Table1
Tanggal Lahir
QRDBtext5 DataSet
DataField
Table1
Jurusan
QRDBtext6 DataSet
DataField
Table1
Alamat
QuickRep1 DataSet
ReportTitle
Table1
Laporan Mahasiswa
4. Pastikan Tampilan Form anda akan terlihat seperti berikut :
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
16
Halaman :
Gambar 6.13. Tampilan Form Setelah Perubahan.
5. Aktifkan kembali Form1 anda
6. Double Klik pada Bibtn1 (tombol Laporan), kemudian anda ketik:
Form2.QuickRep1.Preview;
7. Tekan tombol F9
8. Ketika muncul konfirmasi, pilih tombol yes
Gambar 6.14. Jendela Konfirmasi.
9. Tekan tombol F9 sekali lagi
10. Sekarang aplikasi anda bisa diuji coba.
D. LATIHAN
1. Lengkapi laporan diatas dengan menambahkan Judul Laporan, Garis pembatas antar data, dan tanggal pencetakan
laporan pada bagian footer.
2. Buat sebuah aplikasi utuh dengan menggunakan menu, grafik dan data base seperti yang telah anda buat sebelumnya.
MODUL VI
SISTEM INFORMASI PRESENSI PEGAWAI
DENGAN DELPHI & MYSQL SERVER , CONECTOR ZEOSDBO6
Bahasan: Data Base Mysal Menggunakan Delphi
Tujuan: 26. Mahasiswa Dapat Membuat Aplikasi Basis Data Sekaligus Laporan
Dengan Delphi
27. Mahasiswa Dapat Membuat Aplikasi Utuh Dengan Delphi
Langkah ke 1 : Mebuat Database presensi.sql
a. Masuk ke mysql console dan ketikan perintah :
mysql>create database presensi;
b. Kemudian kita buat table admin dengan mengetikkan perintah :
mysql> create table admin(
-> id varchar(20),
-> password varchar(20),
-> judul_presensi varchar(50));
c. Kemudian kita buat table pegawai dengan mengetikan perintah :
mysql> create table pegawai(
-> nip varchar(10),
-> nama_pegawai varchar(20),
-> j_kel char(1),
-> alamat varchar(50),
-> no_telp varchar(13),
-> sandi varchar(20), primary key(nip));
d. Kemudian kita buat table rekap_presensi dengan mengetikan perintah :
mysql> create table rekap_presensi(
-> nip varchar(10),
-> nama_pegawai varchar(20),
-> tanggal date,
-> jam_datang time,
-> jam_pulang time,
-> durasi varchar(8));
Langkah ke 2 : Menginstall Zeos di Delphi dengan cara :
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
17
Halaman :
a. Kopikan file .bpl yang berada di folder ZEOSDBO-6.6.0-betabplnya ke folder BPL yang ada di folder C:Program
FilesBorlandDelphi7ProjectsBPL.
b. Kopikan juga file .dcu yang berada di folder ZEOSDBO-6.6.0-betabplnyadcu ke folder LIB yang ada di folder C:Program
FilesBorlandDelphi7Lib
c. Kopikan juga file .dll yang ada di ZEOSDBO-6.6.0-betalibmysql ke folder C:WINDOWSsystem
dan C:WINDOWSsystem32
d. Kemudian buka Delphi masuk ke menu Component, install packages, kemudian pilih ADD, masukan file bpl yang ada di
folder BPL yang ada di C:Program FilesBorlandDelphi7ProjectsBPL. Klik OK. Secara otomatis component Zeos sudah
ditambahkan pada tab component VCL Delphi
Langkah ke 3 : Membuat Aplikasi dengan cara :
a. Membuat formUtama :
- Simpan form yang telah aktif dengan nama UUtama.pas untuk file .pas nya dan dengan nama Presensi untuk file .dpr
nya.
- Atur Propertiesnya sbb:
1. Name : frmUtama
2. Caption : ::[ Presensi Pegawai ::]
3. BorderStyle : bsSingle
4. Border Icon : biMaximize=false
5. Icon : pilih icon sesuai yang diinginkan dengan mengelikkan tombol icon
6. Align : alClient
7. Positiom : poScreenCenter
- Tambahkan Component MainMenu dengan memilih pada tab standard dan letakkan di frmUtama.
Buat menu-menu yang akan digunakan di aplikasi :
1. &Admin : Data Admin,login
2. &File : Data Pegawai, Rekap Presensi
3. &Transaksi : Presensi Masuk, Presensi Pulang
4. &Lihat : Data Pegawai, Presensi(Sudah Datang,Sudah Pulang),Cek Presensi
5. A&bout Program
6. &Keluar
- Tambahkan Komponent ZConection ke frmUtama dengan memilih pada tab Zeos Access dan atur properties
ZConnection sbb :
1. Name : ZConnectionPresensi
2. Database : presensi
3. HostName : localhost
4. Protocol : mysql
5. User : root
6. Connected : true
- Tambahkan 3 Component ZQuery ke frmUtama dengan memilih pada tab Zeos Access dan atur properties ZQuery1 sbb :
1. Name : ZQueryPegawai
2. Connection : ZConnectionPresensi
3. Sql : isi dengan sintaks sql select * from pegawai order by nip
4. Active : true
5. Klik dua kali pada ZQueryPegawai, Klik kanan pilih Add all fields
properties ZQuery2 sbb :
6. Name : ZQueryAdmin
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
18
Halaman :
7. Connection : ZConnectionPresensi
8. Sql : isi dengan sintaks sql select * from admin
9. Active : true
10. Klik dua kali pada ZQueryAdmin, Klik kanan pilih Add all fields
properties ZQuery3 sbb :
11. Name : ZQueryRekapPresensi
12. Connection : ZConnectionPresensi
13. Sql : isi dengan sintaks sql select * from rekap_presensi order by tanggal
14. Active : true
15. Klik dua kali pada ZQueryRekapPresensi, Klik kanan pilih Add all fields
- Tambahkan component image dengan memilih pada tab additional , letakkan pada frmUtama dan atur propertiesnya :
1. Stretch : True
2. Align : alClient
3. Picture : tekan picture dan pilih picture sesuai kebutuhan.(kalau mau dikasih photoku aja juga boleh)
- Tambahkan Component StatusBar dengan memilih pada tab Win32 , letakkan pada frmUtama dan atur propertiesnya :
1. Height : 23
Tampilan Sebelum decompile :
Tekan F9 dan Tampilan Saat Dicompile :
b. Membuat frmPegawai
- Pilih menu File>New >Form, simpan ditempat yang sama dengan tempat menyimpan file UUtama. Beri nama
UPegawai.pas (ingat loooch harus disimpan ditempat yang sama dengan UUtama, jangan sampai terpisah)
- Atur propertiesnya sbb :
1. Name : frmPegawai
2. Caption : ::[ Data Pegawai ]::
3. Positon : poScreenCenter
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
19
Halaman :
4. Icon : klik tombol icon dan pilih icon sesuai dengan kebutuhan
5. BorderStyle : bsSingle
6. BorderIcons : biMaximize dibuat false, biMinimize dibuat false
- Tambahkan Component Panel dengan memilih pada tab standard, den letakkan ke frmPegawai dan atur properties dari
panel tersebut :
1. Name : PanelJudul
2. Caption : :: DATA PEGAWAI ::
3. Height : 40
4. Font : tekan tombol dan atur jenis font Book Antique, color = maroon , size =18
5. BevelInner : bvRaised
6. BevelOuter : bvRaised
- Tambahkan lagi Component Panel dengan memilih pada tab standard, den letakkan ke frmPegawai dan atur properties
dari panel tersebut :
7. Name : PanelField
8. Caption : (kosongkan)
9. BevelInner : bvRaised
10. BevelOuter : bvRaised
- Tambahkan Component image, 6 label dan 5 edit, 1 ComboBox letakkan ke dalam PanelField frmPegawai dan atur
properties masing-component tersebut tersebut :
1. Image : Stretch=true, Align=alClient, Picture=pilih sesuai kebutuhan
2. edit1 : Name =edNIP,
3. edit2 : Name =edNama,
4. edit3 : Name =edAlamat,
5. edit4 : Name =edNoTelp,
6. edit5 : Name =edSandi,
7. ComboBox1 : Name=cmbJK, Items=LAKI-LAKI ; PEREMPUAN
- Tambahkan Component DBGrid dan DBControl dengan memilih pada TAB DataControls, tambahkan Component
dataSource dengan memilih pada dataAccess, tambahkan component statusbar dengan memilih pada Tab Win
32.letakkan ke dalam frmPegawai dan atur properties masing-component tersebut sbb :
8. DBGrid : Align=AlClient, DataSource=DataSource1, ReadOnly=true
9. CBControl : Align=alBotom,DataSource=DataSource1, VisibleButtons= nbInsert=false; nbCancel=false;
nbDelete=false;nbPost=false;nbEdit=false, Flat=true
10. sebelum mengatur properties data source pilih menu File>use Unit>pilih UUtama>klik OK, baru kemudian pada
dataSource atur Properties DataSet =frmUtama.ZQueryPegawai
11.
- Tambahkan 5 component BiButton dengan memilih pada TAB Additional letakkan ke dalam panel field frmPegawai dan
atur properties masing-component tersebut sbb :
12. BitButton1 : Name =bbtnSimpan, Caption=&Simpan
13. BitButton1 : Name =bbtnBatal, Caption=&Batal
14. BitButton1 : Name =bbtnEdit, Caption=&Edit
15. BitButton1 : Name =bbtnHapus, Caption=&Hapus
16. BitButton1 : Name =bbtnKeluar, Caption=&Keluar
Contoh hasil sebelum di Compile :
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
20
Halaman :
- Kembali ke frmUtama lalu pilih Menu Files>Use Unit>pilih UPegawai>klik Ok
- Pada frmPegawai tekan pada menu File>Data Pegawai dan masukkan perintah frmPegawai.ShowModal;
Untuk sintak lengkapnya :
procedure TfrmUtama.DataPegawai1Click(Sender: TObject);
begin
frmPegawai.ShowModal;
end;
- Jalankan dengan menekan F9 dan hasilnya :
- kembali ke frmPegawai dan akan mulai memasukkan baris2 perintah :
1. Klik dua kali Tombol Keluar dan masukkan perintah close; untuk secript lengkapnya :
procedure TfrmPegawai.bbtnKeluarClick(Sender: TObject);
begin
close;
end;
2. Klik dua kali Tombol Batal dan untuk script lengkapnya :
procedure TfrmPegawai.bbtnBatalClick(Sender: TObject);
begin
edNIP.Clear;
edNama.Clear;
cmbJK.Text:='';
edAlamat.Clear;
edNoTelp.Clear;
edSandi.Clear;
end;
3. Tambahkan Component ZQuery terlebih dulu ke dalam frmPegawai yang nantinya akan digunakan untuk validasi
agar tak terjadi redundancy data pada primary key. Atur propertiesnya sbb :
a. SQL= select * from pegawai
b. Connection=frmUtama.ZConnectionPresensi
c. Pada ZQuery klik dua kali, klik kanan dan pilih Add all fields
4. Klik dua kali Tombol Simpan dan untuk perintah lengkapnya sbb :
procedure TfrmPegawai.bbtnSimpanClick(Sender: TObject);
begin
ZQuery1.Close;
ZQuery1.SQL.Clear;
ZQuery1.SQL.Add('select * from pegawai where nip ="'+edNIP.Text+'"');
ZQuery1.Open;
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
21
Halaman :
if not ZQuery1.IsEmpty then
begin
MessageDlg('Maaf NIP '+ZQuery1nip.Value+' sudah dipakai sebelumnya. Silahkan anda pakai
NIP lain..!!!',mtInformation,[mbOK],0);
edNIP.Clear;
edNIP.SetFocus;
end
else
if ZQuery1.IsEmpty then
begin
frmUtama.ZQueryPegawai.Insert;
frmUtama.ZQueryPegawainip.Value:=edNIP.Text;
frmUtama.ZQueryPegawainama_pegawai.Value:=edNama.Text;
frmUtama.ZQueryPegawaij_kel.Value:=cmbJK.Text;
frmUtama.ZQueryPegawaialamat.Value:=edAlamat.Text;
frmUtama.ZQueryPegawaino_telp.Value:=edNoTelp.Text;
frmUtama.ZQueryPegawaisandi.Value:=edSandi.Text;
frmUtama.ZQueryPegawai.Post;
end;
end;
5. Klik dua kali tombol hapus dan untuk perintah lengkapnya sbb :
procedure TfrmPegawai.bbtnHapusClick(Sender: TObject);
begin
if (frmUtama.ZQueryPegawai.RecordCount=0) then
begin
MessageDlg('" Maaf, Data Pegawai sudah kosong ! Silahkan Anda isi
kembali..!!!',mtInformation,[mbOK],0);
edNIP.SetFocus;
exit;
end
else
if MessageDlg('Yakin Data mau dihapus..??? ',mtConfirmation,[mbYes,mbNo],0)=mrYes then
begin
frmUtama.ZQueryPegawai.Delete;
edNIP.SetFocus;
end;
end;
6. Klik dua kali tombol edit, dan untuk script lengkapnya :
procedure TfrmPegawai.bbtnEditClick(Sender: TObject);
begin
ZQuery1.Close;
ZQuery1.SQL.Clear;
ZQuery1.SQL.Add('select * from pegawai where nip ="'+edNIP.Text+'"');
ZQuery1.Open;
if ZQuery1.IsEmpty then
begin
MessageDlg('Maaf NIP '+edNIP.Text+' belum dimasukkan sebelumnya. Data tidak
ada!!!',mtInformation,[mbOK],0);
edNIP.Clear;
edNIP.SetFocus;
end
else
if Trim(edNIP.Text)='' then
begin
MessageDlg('Maaf NIP harus diisi...!!!!',mtInformation,[mbOK],0);
edNIP.SetFocus;
end
else
if not ZQuery1.IsEmpty then
begin
ZQuery1.Edit;
ZQuery1nip.Value:=edNIP.Text;
ZQuery1nama_pegawai.Value:=edNama.Text;
ZQuery1j_kel.Value:=cmbJK.Text;
ZQuery1alamat.Value:=edAlamat.Text;
ZQuery1no_telp.Value:=edNoTelp.Text;
ZQuery1sandi.Value:=edSandi.Text;
ZQuery1.Post;
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
22
Halaman :
frmUtama.ZQueryPegawai.Refresh;
end;
end;
- Untuk perintah button sudah lengkap untuk langkah berikutnya tinggal mengatur validasi security formnya.
1. Set properties text menjadi kosong untuk semua component edit dan component combobox
2. Set properties MaxLength edNip=10
3. Set properties MaxLength edNama=20
4. Set properties MaxLength cmbJK=1
5. Set properties MaxLength edAlamat=50
6. Set properties MaxLength edNoTelp=13
7. Set properties MaxLength edSandi=20
8. klik edNip, pada jendela Object Inspector pilih event OnKeypress dan masukkan perintah :
procedure TfrmPegawai.edNIPKeyPress(Sender: TObject; var Key: Char);
begin
if (key
in['a'..'z','A'..'Z','!','@','#','$','%','^','&','*','(',')','_','-','+','=','{','}','[',']',':',';','"','|','','<','>','?','/',',','.','~',
'`',' ']) then
key:=#0
else
if not(Key=chr(13)) then exit
else edNama.SetFocus;
end;
9. klik edNama, pada jendela Object Inspector pilih event OnKeypress dan masukkan perintah :
procedure TfrmPegawai.edNamaKeyPress(Sender: TObject; var Key: Char);
begin
if not(Key=chr(13)) then exit
else cmbJK.SetFocus;
end;
10. lakukan hal sama untuk component combobox dan edit
- Untuk selanjutnya qita bisa membuat laporan / print out dari table Pegawai dengan menggunkan Quick report atau Rave
report atau komponen tambahan lainnya.
Untuk membuat laporan dengan Quick report terlebih dulu qita harus menambahkan komponen seperti halnya ketika kita
menambahkan Zeos kedalam Delphi. Cara menambahkan Quick report dengan cara :
1. Pilih Menu Componnent > Install Packages > setelah muncul jendela windows baru klik button Add
2. Setelah Tampil jendela Add Design Package buka folder C > Program Files > Borland > Delphi7 > Bin > dclqrt.bpl
> klik Ok secara otomatis akan ditambahkan di tab component pada delphi
MODUL VI
SISTEM INFORMASI PRESENSI PEGAWAI
DENGAN DELPHI & MYSQL SERVER , CONECTOR ZEOSDBO6
Bahasan: Data Base Mysal Menggunakan Delphi
Tujuan: a. Mahasiswa Dapat Membuat Aplikasi Basis Data Sekaligus Laporan Dengan Delphi
b. Mahasiswa Dapat Membuat Aplikasi Utuh Dengan Delphi
Pada tutorial ini diharapkan sebelumnya anda telah menguasai database mysql, Serta Component Zeos dan Quick Report telah
ditambahkan dalam palete Delphi anda karena dalam tutorial ini hal-hal tersebut tidak dibahas.
Membuat database simple_simpus :
Silahkan masuk ke commend prompt mysql dan masukkan perintah2 dibawah ini untuk membuat database simple_simpus
mysql> create database simple_simpus;
mysql> use simple_simpus;
mysql> create table anggota(
-> no_anggota varchar(8) primary key,
-> nama_anggota varchar(30),
-> tmp_lahir varchar(20),
-> tgl_lahir date,
-> alamat varchar(50),
-> tgl_gabung date,
-> tgl_habis_keanggotaan date);
mysql> create table petugas(
-> nip varchar(8)primary key,
-> nama_petugas varchar(30),
-> tmp_lahir varchar(20),
-> tgl_lahir date,
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
23
Halaman :
-> alamat varchar(50));
mysql> create table buku(
-> no_inventaris varchar(10)primary key,
-> judul_inventaris varchar(70),
-> pengarang varchar(30),
-> penerbit varchar(20),
-> jml_halaman char(4),
-> isbn varchar(20),
-> thn_terbit year);
mysql> create table peminjaman(
-> no_inventaris varchar(10),
-> no_anggota varchar(8),
-> nip varchar(8),
-> tgl_pinjam date,
-> tgl_kembali date,
-> foreign key(no_inventaris) references buku(no_inventaris) on delete cascade on update cascade,
-> foreign key(no_anggota) references anggota(no_anggota) on delete cascade on update cascade,
-> foreign key(nip) references petugas(nip) on delete cascade on update cascade);
mysql> create table admin(
-> id_admin varchar(20),
-> password varchar(20));
Membuat aplikasi Simple Simpus di Delphi :
1. Membuat Form Utama
Silahkan buat Form aplikasi baru dengan cara pilih menu file->New->Aplication sehingga akan ditampilkan form baru. Silahkan
tambahkan component ZConennection, 5 component ZQuery dari pallete Zeos Access seperti ditampilkan pada gambar :
Gb. Tampilan Tab Component Palette Zeos Access.
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
24
Halaman :
Gb. Tampilan Form Utama
Tambahkan juga component MainMenu dari tab palete Standard dan component Image dari tab palete additional dan atur
propertiesnya masing-masing sbb :
Nama Objek Properti Yang Diubah Nilai
Form1 : TForm1 Align
BorderStyle
Caption
Position
Name
alClient
bsSingle
::[ Simple Simpus ]::
poScreenCenter
frmUtama
ZConection1 : TZConnection Database
HostName
Protocol
User
Name
Conected
simple_simpus
localhost
mysql
root
ZConnectionSimpleSimpus
True
ZQuery1 : TZQuery Connection
Name
SQL
Active
ZConnectionSimpleSimpus
ZQueryPetugas
Klik pada elipses dan masukkan perintah
select * from petugas
True
ZQuery2 : TZQuery Connection
Name
SQL
Active
ZConnectionSimpleSimpus
ZQueryAnggota
Klik pada elipses dan masukkan perintah
select * from anggota
True
ZQuery3 : TZQuery Connection
Name
SQL
Active
ZConnectionSimpleSimpus
ZQueryBuku
Klik pada elipses dan masukkan perintah
select * from buku
True
ZQuery4 : TZQuery Connection
Name
SQL
Active
ZConnectionSimpleSimpus
ZQueryPeminjaman
Klik pada elipses dan masukkan perintah
select * from peminjaman
True
ZQuery5 : TZQuery Connection
Name
SQL
Active
ZConnectionSimpleSimpus
ZQueryAdmin
Klik pada elipses dan masukkan perintah
select * from admin
True
MainMenu1 : TMainMenu Items Klik tombol elipses dan buatlah Menu
dengan mengisi properties captionnya :
Aplikasi – About Program
– Login
File – Petugas
– Anggota
– Buku
– Admin
Transaksi – Sirkulasi
Keluar
Image1 Stretch
Align
Picture
True
alClient
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background
Gambar MainMenu yang tadi diisi captionnya :
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
25
Halaman :
Silahkan simpan dengan nama UUtama.pas untuk file pasnya dan Simple_simpus.dpr untuk file dprnya. Klik pada masing2
ZQuery dua kali kemudian ketika muncul jendela dialog silahkan klik kanan dan pilih Add all fields.
2. Membuat Form Petugas
Silahkan pilih menu File->New ->Form, Jangan sampai salah yaaaa. Tambahkan 3 Component Panel dari tab palete
standard. dan
a. Pada panel No 3 tambahkan 8 Component BitButton dari tab palete additional, 3 Component Label dan 1 component edit
dari tab palete standard.
b. Pada panel No 2 tambahkan 4 Component Edit, 1 Component Memo dari tab palete standard, dan 1 component
DateTimePicker dari tab palete win32.
Tambahkan juga 1 Component ZQuery dari tab palete ZQueryAccess, 1 Component DataSource dari tab palete DataAcces, 2
Component PopupMenu dari Tab Palete standard, 1 compoent XPManifest dan 1 Component StatusBar dari tab palete 32, 1
Component DBGrid dari tab panel DataControl
Atur tampilannya seperti gambar berikut :
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
26
Halaman :
Jika sudah, pilih menu file->Use Unit. Ketika muncul kotak dialog pilihan unit, pilih UUtama. Kemudian atur juga propertisnya
masing-masing componentnya sbb:
Nama Objek Properti Yang Diubah Nilai
Form1 : TForm1 Align
BorderStyle
Caption
Position
Name
alRight
bsSingle
::[ Data Petugas ]::
poScreenCenter
frmPetugas
Panel1 : TPanel Caption
BevellInner
BevellOuter
Align
Color
:: DATA PETUGAS ::
bvRaised
bvLowered
alTop
$00E7E7E7
Panel2: TPanel Caption
BevellInner
BevellOuter
Align
Color
(Kosongkan)
bvRaised
bvLowered
alTop
$00E7E7E7
ZQuery1 : TZQuery Connection
SQL
frmUtama.ZConnectionSimpleSimpus
Klik pada elipses dan masukkan perintah
select * from petugas
DataSource1:TDataSource DataSet frmUtama.ZQueryPetugas
Panel3 : TPanel Caption
BevellInner
BevellOuter
Align
Color
(Kosongkan)
bvRaised
bvLowered
alBottom
$00E7E7E7
StatusBar1 : TStatusBar Align
Color
alBottom
$00E7E7E7
BitButton1 : TBitBtn Caption
Layout
Glyp
Name
&Simpan
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background
BtnSimpan
BitButton2 : TBitBtn Caption
Layout
Glyp
Name
&Batal
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background
BtnBatal
BitButton3 : TBitBtn Caption
Layout
Glyp
Name
&Edit
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background
BtnEdit
BitButton4 : TBitBtn Caption
Layout
Glyp
Name
&Hapus
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background
BtnHapus
BitButton5 : TBitBtn Caption
Layout
Glyp
&Show All
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
27
Halaman :
Name
dijadikan background
BtnShowAll
BitButton6 : TBitBtn Caption
Layout
Glyp
Name
&Cetak
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background
BtnCetak
BitButton7 : TBitBtn Caption
Layout
Glyp
Name
(kosongkan)
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background
BtnCari
BitButton8 : TBitBtn Caption
Layout
Glyp
Name
&Keluar
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background.
BtnKeluar
DBNavigator1 : TDBNavigator DataSource
VisibleButtons
ALign
DataSource1
Klik tombol + yang ada disiamping
VisibleButtons dan atur tombol2 navigator
yang mau ditampilkan seperti pada gambar
alBottom
DBGrid1 : TDBGrid1 Align
DataSource
PopupMenu
alClient
DataSource1
PopupMenu2
Edit1 (dipanel 2) : TEdit Name
Text
edNIP
(kosongkan)
Edit2 (dipanel 2) : TEdit Name
Text
edNama
(kosongkan)
Edit3(dipanel 2) : TEdit Name
Text
edTmp
(kosongkan)
Edit4(dipanel 2) : TEdit Name
Text
edSandi
(kosongkan)
PopupMenu1 :TPopupMenu Items klik pada elipses dan isi caption
dengan -------- ^_ ^ -----------
PopupMenu2 :TPopupMenu Items klik pada elipses dan isi capion
dengan Simpan, Batal, Edit, Hapus, Show
All, Cetak, Keluar
DateTimePicker1:TDateTimePicker Name DTPTglLahir
Edit5 (dipanel 3) Name
Text
edKeyWord
(kosongkan)
Klik dua kali pada ZQuery1 kemudian ketika muncul jendela dialog silahkan klik kanan dan pilih Add all fields.
Mengisikan Perintah program :
1. Klik pada edNip, kemudian pada Object inspector klik tab Event. Pilih OnKeyPress dengan mengeklik dua kali dan isikan di
antara begin dan end kode :
if (Key=chr(13)) then edNama.SetFocus //artinya jika dienter maka cursor akan terfokus pada edNama
else
if not(key in['0'..'9',Chr(8)]) then key:=#0 //artinya membatasi imput keyboard
baris kode diatas digunakan untuk membatasi input keyboard yaitu hanya bisa dimasukkan angka 0 sampai 9 saja untuk kode
lengkapnya :
procedure TfrmPetugas.edNipKeyPress(Sender: TObject; var Key: Char);
begin
if (Key=chr(13)) then edNama.SetFocus
else
if not(key in['0'..'9',Chr(8)]) then key:=#0
end;
2. Klik pada Tombol BtnBatal dua kali, isikan diantara begin dan end kode :
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
28
Halaman :
edNip.Clear; //artinya teks pada edNip akan jadi kosong dikarenakan ada perintah clear
edNama.Clear;
edTmpLahir.Clear;
mmAlamat.Clear;
edSandi.Clear;
edNip.SetFocus;
3. Klik pada Tombol BtnSimpan dua kali, isikan diantara begin dan end kode :
if(Trim(edNip.Text)='')or(Trim(edNama.Text)='')or(Trim(edTmpLahir.Text)='')or(Trim(mmAlamat.Text)='')or(Trim(ed
Sandi.Text)='')then//artinya jika ada field yg kosong maka akan keluar konfirmasi
begin
MessageDlg('Maaf, Semua field harus isi...!!!',mtInformation,[mbOK],0);
edNip.SetFocus;
end
else
begin
ZQuery1.Close;
ZQuery1.SQL.Clear;
ZQuery1.SQL.Add('select * from petugas where nip="'+edNip.Text+'"');//menyeleksi apa ada nip yg sama
ZQuery1.Open;
if not(ZQuery1.IsEmpty) then//jika ada nip sama maka data tak bisa disimpan dan keluar konfirmasi
begin
MessageDlg('Maaf, NIP "'+ZQuery1nip.Value+'" sudah dipakai sebelumnya untuk petugas dengan nama
"'+ZQuery1nama_petugas.Value+'". Silahkan anda ganti dengan NIP lain..!!!',mtInformation,[mbOK],0);
edNip.Clear;
edNip.SetFocus;
end
else
if (ZQuery1.IsEmpty) then//jika tidak ada nip yg sama maka data akan disimpan
begin
ZQuery1.Insert;//insert merupakan perintah untuk menyisipkan satu baris data
ZQuery1nip.Value:=edNip.Text;
ZQuery1nama_petugas.Value:=edNama.Text;
ZQuery1tmp_lahir.Value:=edTmpLahir.Text;
ZQuery1tgl_lahir.Value:=DTPTglLahir.Date;
ZQuery1alamat.Value:=UpperCase(mmAlamat.Text);
ZQuery1sandi.Value:=edSandi.Text;
ZQuery1.Post;//post merupakan perintah untuk menyimpan satu baris data yang disisipkan
frmUtama.ZQueryPetugas.Refresh;
BtnBatalClick(Sender);
end
end
4. Klik pada Tombol btnEdit dua kali, isikan diantara begin dan end kode :
if(Trim(edNip.Text)='')or(Trim(edNama.Text)='')or(Trim(edTmpLahir.Text)='')or(Trim(mmAlamat.Text)='')or(Trim(ed
Sandi.Text)='')then
begin
MessageDlg('Maaf, Semua field harus isi...!!!',mtInformation,[mbOK],0);
edNip.SetFocus;
end
else
begin
ZQuery1.Close;
ZQuery1.SQL.Clear;
ZQuery1.SQL.Add('select * from petugas where nip="'+edNip.Text+'"');
ZQuery1.Open;
if (ZQuery1.IsEmpty) then
begin
MessageDlg('Maaf, Petugas dengan NIP "'+edNip.Text+'" tidak ditemukan. Kemungkinan data petugas dengan NIP
tersebut belum pernah dimasukkan sebelumnya atau sudah terhapus..!!!',mtInformation,[mbOK],0);
edNip.Clear;
edNip.SetFocus;
end
else
if not(ZQuery1.IsEmpty) then
begin
ZQuery1.Edit;
ZQuery1nip.Value:=edNip.Text;
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
29
Halaman :
ZQuery1nama_petugas.Value:=edNama.Text;
ZQuery1tmp_lahir.Value:=edTmpLahir.Text;
ZQuery1tgl_lahir.Value:=DTPTglLahir.Date;
ZQuery1alamat.Value:=UpperCase(mmAlamat.Text);
ZQuery1sandi.Value:=edSandi.Text;
ZQuery1.Post;
frmUtama.ZQueryPetugas.Refresh;
BtnBatalClick(Sender);
end
end
5. Klik pada Tombol btnHapus dua kali, isikan diantara begin dan end kode :
if(frmUtama.ZQueryPetugas.RecordCount=0)then//Melakukan pengecekkan jika terjadi kekosongan data
begin
MessageDlg('Maaf data petugas sudah habis. Tidak ada data yang bisa anda hapus...!!',mtInformation,[mbOK],0);
edNip.SetFocus;
end
else
if(MessageDlg('Yakin data petugas dengan NIP "'+frmUtama.ZQueryPetugasnip.Value+'" mau
dihapus.. ???',mtConfirmation,[mbYes,mbNo],0)=mrYes)then//melakukan konfirmasi penghapusan data
begin
frmUtama.ZQueryPetugas.Delete;
end;
6. Klik pada Tombol btnKeluar, isikan diantara begin dan end kode :
Close;
7. Klik pada Tombol btnShowAll, isikan diantara begin dan end kode :
frmUtama.ZQueryPetugas.Close;
frmUtama.ZQueryPetugas.SQL.Clear;
frmUtama.ZQueryPetugas.SQL.Add('select * from petugas');
frmUtama.ZQueryPetugas.Open;
8. Klik pada Tombol btnCari dua kali, isikan diantara begin dan end kode :
frmUtama.ZQueryPetugas.Close;
frmUtama.ZQueryPetugas.SQL.Clear;
frmUtama.ZQueryPetugas.SQL.Add('select * from petugas where nip like "%'+Trim(edKeyword.Text)+'%" or
nama_petugas like "%'+Trim(edKeyword.Text)+'%" or tmp_lahir like "%'+Trim(edKeyword.Text)+'%" or tgl_lahir like
"%'+Trim(edKeyword.Text)+'%" or alamat like "%'+Trim(edKeyword.Text)+'%"');
frmUtama.ZQueryPetugas.Open;
jangan lupa simpan dulu dengan nama UPetugas…, jika sudah silahkan kembali ke frmUtama kemudian pilih File -> Use unit dan
pilih UPetugas. Selanjutnya pada form utama klik menu dan pilih menu petugas kemudian klik dua kali dan masukkan perintah :
frmPetugas.ShowModal;
Silahkan tekan F9 untuk melihat hasilnya dan pastikan form petugas tampil ketika anda pilih menu petugas
3. Membuat Form Anggota
Silahkan pilih menu File->New ->Form, Jangan sampai salah yaaaa. Dalam pembuatan form ini hampir sama seperti
form sebelumnya. Hanya saja perlu pengeditan beberapa hal. Tambahkan 3 Component Panel dari tab palete standard. dan
a. Pada panel No 3 tambahkan 8 Component BitButton dari tab palete additional, 3 Component Label dan 1 component edit
dari tab palete standard.
b. Pada panel No 2 tambahkan 4 Component Edit, 1 Component Memo dari tab palete standard, dan 3 component
DateTimePicker dari tab palete win32.
Tambahkan juga 1 Component ZQuery dari tab palete ZQueryAccess, 1 Component DataSource dari tab palete DataAcces, 2
Component PopupMenu dari Tab Palete standard, 1 compoent XPManifest dan 1 Component StatusBar dari tab palete 32, 1
Component DBGrid dari tab panel DataControl
Atur tampilannya seperti gambar berikut :
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
30
Halaman :
Jika sudah, pilih menu file->Use Unit. Ketika muncul kotak dialog pilihan unit, pilih UUtama. Kemudian atur juga propertisnya
masing-masing componentnya sbb:
Nama Objek Properti Yang Diubah Nilai
Form1 : TForm1 Align
BorderStyle
Caption
Position
Name
alRight
bsSingle
::[ Data Anggota]::
poScreenCenter
frmAnggota
Panel1 : TPanel Caption
BevellInner
BevellOuter
Align
Color
:: DATA ANGGOTA ::
bvRaised
bvLowered
alTop
$00E7E7E7
Panel2: TPanel Caption
BevellInner
BevellOuter
Align
Color
(Kosongkan)
bvRaised
bvLowered
alTop
$00E7E7E7
ZQuery1 : TZQuery Connection
SQL
frmUtama.ZConnectionSimpleSimpus
Klik pada elipses dan masukkan perintah
select * from anggota
DataSource1:TDataSource DataSet frmUtama.ZQueryAnggota
Panel3 : TPanel Caption
BevellInner
BevellOuter
Align
Color
(Kosongkan)
bvRaised
bvLowered
alBottom
$00E7E7E7
StatusBar1 : TStatusBar Align alBottom
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
31
Halaman :
Color $00E7E7E7
BitButton1 : TBitBtn Caption
Layout
Glyp
Name
&Simpan
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background
BtnSimpan
BitButton2 : TBitBtn Caption
Layout
Glyp
Name
&Batal
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background
BtnBatal
BitButton3 : TBitBtn Caption
Layout
Glyp
Name
&Edit
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background
BtnEdit
BitButton4 : TBitBtn Caption
Layout
Glyp
Name
&Hapus
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background
BtnHapus
BitButton5 : TBitBtn Caption
Layout
Glyp
Name
&Show All
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background
BtnShowAll
BitButton6 : TBitBtn Caption
Layout
Glyp
Name
&Cetak
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background
BtnCetak
BitButton7 : TBitBtn Caption
Layout
Glyp
Name
(kosongkan)
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background
BtnCari
BitButton8 : TBitBtn Caption
Layout
Glyp
Name
&Keluar
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background.
BtnKeluar
DBNavigator1 : TDBNavigator DataSource
VisibleButtons
ALign
DataSource1
Klik tombol + yang ada disiamping
VisibleButtons dan atur tombol2 navigator
yang mau ditampilkan seperti pada gambar
alBottom
DBGrid1 : TDBGrid1 Align
DataSource
alClient
DataSource1
Edit1 (dipanel 2) : TEdit Name
Text
edNoAnggota
(kosongkan)
Edit2 (dipanel 2) : TEdit Name
Text
edNama
(kosongkan)
Edit3(dipanel 2) : TEdit Name
Text
edTmp
(kosongkan)
Edit4(dipanel 2) : TEdit Name
Text
edSandi
(kosongkan)
PopupMenu1 :TPopupMenu Items klik pada elipses dan isi caption
dengan -------- ^_ ^ -----------
PopupMenu2 :TPopupMenu Items klik pada elipses dan isi capion
dengan Simpan, Batal, Edit, Hapus, Show
All, Cetak, Keluar
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
32
Halaman :
DateTimePicker1:TDateTimePicker Name DTPTglLahir
Edit5 (dipanel 3) Name
Text
edKeyWord
(kosongkan)
DateTimePicker2:TDateTimePicker Name DTPTglGabung
DateTimePicker3:TDateTimePicker Name DTPTglKadaluarsa
Memo1 Name mmAlamat
Klik dua kali pada ZQuery1 kemudian ketika muncul jendela dialog silahkan klik kanan dan pilih Add all fields.
Mengisikan baris kode :
1. Klik pada Tombol btnBAtal dua kali, isikan diantara begin dan end kode :
edNoA.Clear;
edNama.Clear;
edTmpLahir.Clear;
mmAlamat.Clear;
edNoTelp.Clear;
edNoA.SetFocus;
2. Klik pada Tombol btnSimpan dua kali, isikan diantara begin dan end kode :
if(Trim(edNoA.Text)='')or(Trim(edNama.Text)='')or(Trim(edTmpLahir.Text)='')or(Trim(mmAlamat.Text)='')or(Trim(ed
NoTelp.Text)='')then
begin
MessageDlg('Maaf, Semua field harus isi...!!!',mtInformation,[mbOK],0);
edNoA.SetFocus;
end
else
begin
ZQuery1.Close;
ZQuery1.SQL.Clear;
ZQuery1.SQL.Add('select * from anggota where no_anggota="'+edNoA.Text+'"');
ZQuery1.Open;
if not(ZQuery1.IsEmpty) then
begin
MessageDlg('Maaf, No.Anggota "'+ZQuery1no_anggota.Value+'" sudah dipakai sebelumnya untuk petugas dengan
nama "'+ZQuery1nama_anggota.Value+'". Silahkan anda ganti dengan No.Anggota lain..!!!',mtInformation,[mbOK],0);
edNoA.Clear;
edNoA.SetFocus;
end
else
if (ZQuery1.IsEmpty) then
begin
ZQuery1.Insert;
ZQuery1no_anggota.Value:=edNoA.Text;
ZQuery1nama_anggota.Value:=edNama.Text;
ZQuery1tmp_lahir.Value:=edTmpLahir.Text;
ZQuery1tgl_lahir.Value:=DTPTglLahir.Date;
ZQuery1alamat.Value:=UpperCase(mmAlamat.Text);
ZQuery1tgl_gabung.Value:=DTPTglGabung.Date;
ZQuery1tgl_habis_anggota.Value:=DTPTglKadaluarsa.Date;
ZQuery1no_telp.Value:=edNoTelp.Text;
ZQuery1.Post;
frmUtama.ZQueryAnggota.Refresh;
BtnBatalClick(Sender);
end
end
3. Klik pada Tombol btnEdit dua kali, isikan diantara begin dan end kode :
if(Trim(edNoA.Text)='')or(Trim(edNama.Text)='')or(Trim(edTmpLahir.Text)='')or(Trim(mmAlamat.Text)='')or(Trim(ed
NoTelp.Text)='')then
begin
MessageDlg('Maaf, Semua field harus isi...!!!',mtInformation,[mbOK],0);
edNoA.SetFocus;
end
else
begin
ZQuery1.Close;
ZQuery1.SQL.Clear;
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
33
Halaman :
ZQuery1.SQL.Add('select * from anggota where no_anggota="'+edNoA.Text+'"');
ZQuery1.Open;
if (ZQuery1.IsEmpty) then
begin
MessageDlg('Maaf, Anggota dengan No.Anggota "'+edNoA.Text+'" tidak ditemukan. Kemungkinan data anggota
dengan No.Anggota tersebut belum pernah dimasukkan sebelumnya atau sudah terhapus..!!!',mtInformation,[mbOK],0);
edNoA.Clear;
edNoA.SetFocus;
end
else
if not(ZQuery1.IsEmpty) then
begin
ZQuery1.Edit;
ZQuery1no_anggota.Value:=edNoA.Text;
ZQuery1nama_anggota.Value:=edNama.Text;
ZQuery1tmp_lahir.Value:=edTmpLahir.Text;
ZQuery1tgl_lahir.Value:=DTPTglLahir.Date;
ZQuery1alamat.Value:=UpperCase(mmAlamat.Text);
ZQuery1tgl_gabung.Value:=DTPTglGabung.Date;
ZQuery1tgl_habis_anggota.Value:=DTPTglKadaluarsa.Date;
ZQuery1no_telp.Value:=edNoTelp.Text;
ZQuery1.Post;
frmUtama.ZQueryAnggota.Refresh;
BtnBatalClick(Sender);
end
end
4. Klik pada Tombol btnHapus dua kali, isikan diantara begin dan end kode :
if(frmUtama.ZQueryAnggota.RecordCount=0)then
begin
MessageDlg('Maaf data anggota sudah habis. Tidak ada data yang bisa anda hapus...!!',mtInformation,[mbOK],0);
edNoA.SetFocus;
end
else
if(MessageDlg('Yakin data anggota dengan No.Anggota "'+frmUtama.ZQueryAnggotano_anggota.Value+'" mau
dihapus.. ???',mtConfirmation,[mbYes,mbNo],0)=mrYes)then
begin
frmUtama.ZQueryAnggota.Delete;
end;
5. Klik pada Tombol btnKeluar dua kali, isikan diantara begin dan end kode :
close;
6. Klik pada Tombol btnCari dua kali, isikan diantara begin dan end kode :
frmUtama.ZQueryAnggota.Close;
frmUtama.ZQueryAnggota.SQL.Clear;
frmUtama.ZQueryAnggota.SQL.Add('select * from anggota where no_anggota like "%'+Trim(edKeyword.Text)+'%" or
nama_anggota like "%'+Trim(edKeyword.Text)+'%" or tmp_lahir like "%'+Trim(edKeyword.Text)+'%" or tgl_lahir like
"%'+Trim(edKeyword.Text)+'%" or alamat like "%'+Trim(edKeyword.Text)+'%" or tgl_gabung like
"%'+Trim(edKeyword.Text)+'%" or tgl_habis_anggota like "%'+Trim(edKeyword.Text)+'%" or no_telp like
"%'+Trim(edKeyword.Text)+'%"');
frmUtama.ZQueryAnggota.Open;
Label15.Caption:=IntToStr(frmUtama.ZQueryAnggota.RecordCount);
7. Klik pada Tombol btnShowAll, isikan diantara begin dan end kode :
frmUtama.ZQueryPetugas.Close;
frmUtama.ZQueryPetugas.SQL.Clear;
frmUtama.ZQueryPetugas.SQL.Add('select * from anggota');
frmUtama.ZQueryPetugas.Open;
jangan lupa simpan dulu dengan nama UAnggota…, jika sudah silahkan kembali ke frmUtama kemudian pilih File -> Use unit dan
pilih UAnggota. Selanjutnya pada form utama klik menu dan pilih menu petugas kemudian klik dua kali dan masukkan perintah :
frmAnggota.ShowModal;
Silahkan tekan F9 untuk melihat hasilnya dan pastikan form Anggota tampil ketika anda pilih menu petugas. Untuk yang form
buku silahkan anda coba sendiri seperti dua contoh form diatas karena untuk algoritma hamper sama, untuk selanjutnya langsung
aja ke form peminjaman dan pengembalian buku
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
34
Halaman :
4. Membuat Form Peminjaman
Silahkan pilih menu File->New ->Form, Jangan sampai salah yaaaa. Dalam pembuatan form ini hampir sama seperti
form sebelumnya. Hanya saja perlu pengeditan beberapa hal. Silahkan tambahkan 2 Component Panel dari tab palete standard.
Pada panel No 2 tambahkan 6 Component BitButton dari tab palete additional, 3 Component Label dan 1 component edit dari
tab palete standard. Tambahkan juga 1 Component ZQuery dari tab palete ZQueryAccess, 1 Component DataSource dari tab
palete DataAcces, 2 Component PopupMenu dari Tab Palete standard, 1 compoent XPManifest dan 1 Component StatusBar
dari tab palete 32, 1 Component DBGrid dari tab panel DataControl. Atur tampilannya seperti gambar berikut
:
Jika sudah, pilih menu file->Use Unit. Ketika muncul kotak dialog pilihan unit, pilih UUtama. Kemudian atur juga propertisnya
masing-masing componentnya sbb:
Nama Objek Properti Yang Diubah Nilai
Form1 : TForm1 Align
BorderStyle
Caption
Position
Name
alRight
bsSingle
::[ Data Peminjaman ]::
poScreenCenter
frmPeminjaman
Panel1 : TPanel Caption
BevellInner
BevellOuter
Align
Color
:: DATA PEMINJAMAN ::
bvRaised
bvLowered
alTop
$00E7E7E7
Panel2: TPanel Caption
BevellInner
BevellOuter
Align
Color
(Kosongkan)
bvRaised
bvLowered
alBottom
$00E7E7E7
ZQuery1 : TZQuery Connection
SQL
frmUtama.ZConnectionSimpleSimpus
Klik pada elipses dan masukkan perintah select
peminjaman.no_inventaris,buku.judul_inventaris,
peminjaman.no_anggota,anggota.nama_anggota,
peminjaman.nip,petugas.nama_petugas,
peminjaman.tgl_pinjam,peminjaman.tgl_kembali
from buku,peminjaman,anggota,petugas
where
peminjaman.no_inventaris=buku.no_inventaris
and
peminjaman.no_anggota=anggota.no_anggota
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
35
Halaman :
and
peminjaman.nip=petugas.nip
DataSource1: TDataSource DataSet ZQuery1
StatusBar1 : TStatusBar Align
Color
alBottom
$00E7E7E7
BitButton1 : TBitBtn Caption
Layout
Glyp
Name
&Pinjam
blGlyphTop
klik pada elipses dan pilih gambar yang ada
pada computer anda untuk dijadikan background
BtnPinjam
BitButton2 : TBitBtn Caption
Layout
Glyp
Name
&Kembali
blGlyphTop
klik pada elipses dan pilih gambar yang ada
pada computer anda untuk dijadikan background
BtnKembali
BitButton3 : TBitBtn Caption
Layout
Glyp
Name
&Show All
blGlyphTop
klik pada elipses dan pilih gambar yang ada
pada computer anda untuk dijadikan background
BtnShowAll
BitButton4 : TBitBtn Caption
Layout
Glyp
Name
&Cetak
blGlyphTop
klik pada elipses dan pilih gambar yang ada
pada computer anda untuk dijadikan background
BtnCetak
BitButton5 : TBitBtn Caption
Layout
Glyp
Name
(kosongkan)
blGlyphTop
klik pada elipses dan pilih gambar yang ada
pada computer anda untuk dijadikan background
BtnCari
BitButton6 : TBitBtn Caption
Layout
Glyp
Name
&Keluar
blGlyphTop
klik pada elipses dan pilih gambar yang ada
pada computer anda untuk dijadikan background.
BtnKeluar
DBNavigator1 : TDBNavigator DataSource
VisibleButtons
ALign
DataSource1
Klik tombol + yang ada disiamping VisibleButtons
dan atur tombol2 navigator yang mau ditampilkan
seperti pada gambar
alBottom
DBGrid1 : TDBGrid1 Align
DataSource
alClient
DataSource1
PopupMenu1 :TPopupMenu Items klik pada elipses dan isi caption dengan --------
^_ ^ -----------
PopupMenu2 :TPopupMenu Items klik pada elipses dan isi caption dengan
Pinjam,Kembali,Show All, Cetak Keluar
Edit1 (dipanel 2) Name
Text
edKeyWord
(kosongkan)
Klik dua kali pada ZQuery1 kemudian ketika muncul jendela dialog silahkan klik kanan dan pilih Add all fields. Kemudian buat
lagi form baru untuk menginputkan data peminjaman dengan tampilan :
Simpan dengan nama UInputAnggota dan atur propertiesnya masing2 :
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
36
Halaman :
Nama Objek Properti Yang Diubah Nilai
Form1 : TForm1 Align
BorderStyle
Caption
Position
Name
alNone
bsSingle
::[ Input Peminjaman ]::
poScreenCenter
frmInputPinjam
ComboBox1 : TComboBox Name
Text
cmbInv
(kosongkan)
ComboBox2 : TComboBox Name
Text
cmbPeminjam
(kosongkan)
ComboBox3 : TComboBox Name
Text
cmbPetugas
(kosongkan)
BitButton1 : TBitBtn Caption
Layout
Glyp
Name
ModalResult
&Simpan
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background
BtnSimpan
mrYes
BitButton2 : TBitBtn Caption
Layout
Glyp
Name
&Batal
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background
BtnBatal
BitButton1 : TBitBtn Caption
Layout
Glyp
Name
&Keluar
blGlyphTop
klik pada elipses dan pilih gambar
yang ada pada computer anda untuk
dijadikan background
BtnKeluar
Edit1 : TEdit Name
Text
Color
ReadOnly
edInventaris
(kosongkan)
clSilver
True
Edit2 : TEdit Name
Text
Color
ReadOnly
edPeminjam
(kosongkan)
clSilver
True
Edit3 : TEdit Name
Text
Color
ReadOnly
edTgl
(kosongkan)
clSilver
True
Edit4 : TEdit Name
Text
Color
ReadOnly
edPetugas
(kosongkan)
clSilver
TRue
Mengisikan baris kode :
1. Klik pada Object TreeView, Pilih frmInputPinjam kemudian pada Object Inspector pilih tab Events kemudian klik dua kali pada
OnActive. Masukkan code diantara begin dan end :
frmUtama.FormActivate(sender);
frmPeminjaman.ZQuery1.Active:=true;
edTgl.Text:=DateToStr(now);
2. Klik pada Tombol btnBatal dua kali, isikan diantara begin dan end kode :
if(cmbInv.Enabled=true)then
begin
cmbInv.Text:='';
cmbPeminjam.Text:='';
cmbPetugas.Text:='';
edInventaris.Clear;
edPeminjam.Clear;
edPetugas.Clear;
end
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
37
Halaman :
else
if(cmbInv.Enabled=false)then close;
3. Klik pada Tombol btnKeluar dua kali, isikan diantara begin dan end kode :
close;
4. Membuat Procedure load :
Masukkan diatas code program private baris code procedure load seperti ditampilkan pada gambar
Kemudian masukkan procedure load diantara procedure yang lain :
procedure TfrmInputPinjam.load;
var
i:integer;
begin
cmbPetugas.Clear;
frmPetugas.tampil('');
for i:=1 to frmUtama.ZQueryPetugas.RecordCount do
begin
cmbPetugas.Items.Add(frmUtama.ZQueryPetugasnip.Value);
frmUtama.ZQueryPetugas.Next;
end;
frmAnggota.tampil('');
cmbPeminjam.Clear;
for i:=1 to frmUtama.ZQueryAnggota.RecordCount do
begin
cmbPeminjam.Items.Add(frmUtama.ZQueryAnggotano_anggota.Value);
frmUtama.ZQueryAnggota.Next;
end;
frmBuku.tampil('');
cmbInv.Clear;
for i:=1 to frmUtama.ZQueryBuku.RecordCount do
begin
cmbInv.Items.Add(frmUtama.ZQueryBukuno_inventaris.Value);
frmUtama.ZQueryBuku.Next;
end;
end;
Seperti ditunjukkan pada gambar :
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
38
Halaman :
Silahkan simpan dengan nama UInputPinjam, Kemudian silahkan kembali ke frmPeminjaman dan pilih Menu File->Use Unit-
>Pilih UInput Pinjam
Memasukkan Kode di frmPeminjaman :
1. Klik pada Tombol btnPinjam dua kali, isikan diantara begin dan end kode :
frmInputPinjam.load;
frmInputPinjam.cmbInv.Text:='';
frmInputPinjam.cmbInv.Enabled:=true;
frmInputPinjam.cmbInv.Color:=clWindow;
frmInputPinjam.cmbInv.Font.Color:=clGreen;
frmInputPinjam.edInventaris.Clear;
frmInputPinjam.cmbPeminjam.Text:='';
frmInputPinjam.cmbPeminjam.Enabled:=true;
frmInputPinjam.cmbPeminjam.Color:=clWindow;
frmInputPinjam.cmbPeminjam.Font.Color:=clGreen;
frmInputPinjam.edPeminjam.Clear;
frmInputPinjam.cmbPetugas.Text:='';
frmInputPinjam.cmbPetugas.Enabled:=true;
frmInputPinjam.cmbPetugas.Color:=clWindow;
frmInputPinjam.cmbPetugas.Font.Color:=clGreen;
frmInputPinjam.edPetugas.Clear;
frmInputPinjam.Caption:='::[ Input Peminjaman ]::';
frmInputPinjam.Panel2.Caption:=':: INPUT PEMINJAMAN ::';
frmInputPinjam.Label2.Caption:='Tgl.Pinjam :';
frmInputPinjam.Label2.Left:=44;
frmInputPinjam.ShowModal;
if(frmInputPinjam.ModalResult=mrYes)then
begin
if(Trim(frmInputPinjam.edInventaris.Text)='')or(Trim(frmInputPinjam.edPeminjam.Text)='')or(Trim(frmInputPinja
m.edPetugas.Text)='')then
begin
MessageDlg('Maaf, Semua field harus terisi. Jika pada Fild-field data ada yang kosong kemungkinan ada yang salah
pada inputan di combo...!!',mtInformation,[mbOK],0);
end
else
begin
frmUtama.ZQueryPeminjaman.Close;
frmUtama.ZQueryPeminjaman.SQL.Clear;
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
39
Halaman :
frmUtama.ZQueryPeminjaman.SQL.Add('select * from peminjaman where
no_inventaris="'+frmInputPinjam.cmbInv.Text+'"');
frmUtama.ZQueryPeminjaman.Open;
if not(frmUtama.ZQueryPeminjaman.IsEmpty)then
begin
MessageDlg('Maaf, Buku dengan No.Inventaris "'+frmUtama.ZQueryPeminjamanno_inventaris.Value+'" sedang
dipinjam sejak tanggal "'+frmUtama.ZQueryPeminjamantgl_pinjam.AsString+'" dan belum kembali...!!!
',mtInformation,[mbOK],0);
end
else
if(frmUtama.ZQueryPeminjaman.IsEmpty)then
begin
frmUtama.ZQueryPeminjaman.Insert;
frmUtama.ZQueryPeminjamanno_inventaris.Value:=frmInputPinjam.cmbInv.Text;
frmUtama.ZQueryPeminjamanno_anggota.Value:=frmInputPinjam.cmbPeminjam.Text;
frmUtama.ZQueryPeminjamannip.Value:=frmInputPinjam.cmbPetugas.Text;
frmUtama.ZQueryPeminjamantgl_pinjam.Value:=now;
frmUtama.ZQueryPeminjaman.Post;
frmInputPinjam.BtnBatalClick(sender);
ZQuery1.Refresh;
end;
end;
end;
2. Klik pada Tombol btnKembali dua kali, isikan diantara begin dan end kode :
if(ZQuery1.RecordCount=0)then
begin
MessageDlg('Maaf, Data peminjaman sudah kosong. Tidak ada inventaris yang bisa dikembalikan',mtInformation,
[mbOK],0);
end
else
begin
frmInputPinjam.load;
frmInputPinjam.cmbInv.Text:=ZQuery1no_inventaris.Value;
frmInputPinjam.cmbInv.Enabled:=false;
frmInputPinjam.cmbInv.Color:=clSilver;
frmInputPinjam.cmbInv.Font.Color:=clWhite;
frmInputPinjam.edInventaris.Text:=ZQuery1judul_inventaris.Value;
frmInputPinjam.cmbPeminjam.Text:=ZQuery1no_anggota.Value;
frmInputPinjam.cmbPeminjam.Enabled:=false;
frmInputPinjam.cmbPeminjam.Color:=clSilver;
frmInputPinjam.cmbPeminjam.Font.Color:=clWhite;
frmInputPinjam.edPeminjam.Text:=ZQuery1nama_anggota.Value;
frmInputPinjam.cmbPetugas.Text:=ZQuery1nip.Value;
frmInputPinjam.cmbPetugas.Enabled:=false;
frmInputPinjam.cmbPetugas.Color:=clSilver;
frmInputPinjam.cmbPetugas.Font.Color:=clWhite;
frmInputPinjam.edPetugas.Text:=ZQuery1nama_petugas.Value;
frmInputPinjam.Caption:='::[ Input Pengembalian ]::';
frmInputPinjam.Panel2.Caption:=':: INPUT PENGEMBALIAN ::';
frmInputPinjam.Label2.Caption:='Tgl.Kembali :';
frmInputPinjam.Label2.Left:=39;
frmInputPinjam.ShowModal;
if(frmInputPinjam.ModalResult=mrYes)then
begin
if(Trim(frmInputPinjam.edInventaris.Text)='')or(Trim(frmInputPinjam.edPeminjam.Text)='')or(Trim(frmInputPinja
m.edPetugas.Text)='')then
begin
MessageDlg('Maaf, Semua field harus terisi. Jika pada Fild-field data ada yang kosong kemungkinan ada yang salah
pada inputan di combo...!!',mtInformation,[mbOK],0);
end
else
begin
frmUtama.ZQueryPeminjaman.Close;
frmUtama.ZQueryPeminjaman.SQL.Clear;
frmUtama.ZQueryPeminjaman.SQL.Add('select * from peminjaman where
no_inventaris="'+frmInputPinjam.cmbInv.Text+'"');
frmUtama.ZQueryPeminjaman.Open;
if (frmUtama.ZQueryPeminjaman.IsEmpty)then
begin
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
40
Halaman :
MessageDlg('Maaf, Buku dengan No.Inventaris "'+frmUtama.ZQueryPeminjamanno_inventaris.Value+'" sedang
sedang dipinjam sejak tanggal "'+frmUtama.ZQueryPeminjamantgl_pinjam.AsString+'" dan belum kembali...!!!
',mtInformation,[mbOK],0);
end
else
if not(frmUtama.ZQueryPeminjaman.IsEmpty)then
begin
frmUtama.ZQueryPeminjaman.Delete;
ZQuery1.Refresh;
end;
end;
end;
end;
3. Klik pada Tombol btnKeluar dua kali, isikan diantara begin dan end kode :
close
Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
41

Mais conteúdo relacionado

Mais procurados

Diktat borlanddelphi 7
Diktat borlanddelphi 7Diktat borlanddelphi 7
Diktat borlanddelphi 7Hendriana Ana
 
Modul pemrograman-1-revisi
Modul pemrograman-1-revisiModul pemrograman-1-revisi
Modul pemrograman-1-revisiYang Terluka
 
Pemograman delphi untuk pemula
Pemograman delphi untuk pemula Pemograman delphi untuk pemula
Pemograman delphi untuk pemula PT.goLom na
 
Makalah fisika komputasi
Makalah fisika komputasiMakalah fisika komputasi
Makalah fisika komputasiHalimah Halimah
 
Gabung1 sd 6_dekstop_java
Gabung1 sd 6_dekstop_javaGabung1 sd 6_dekstop_java
Gabung1 sd 6_dekstop_javaDewa Nala
 
Module Delphi
Module DelphiModule Delphi
Module Delphiborncb
 
Laporan praktikum modul vi
Laporan praktikum modul viLaporan praktikum modul vi
Laporan praktikum modul viDevi Apriansyah
 
My modul visual basic 6.0
My modul visual basic 6.0My modul visual basic 6.0
My modul visual basic 6.0Dys Ayudya
 
D3 modul algol_&_pemrog_i_c++
D3 modul algol_&_pemrog_i_c++D3 modul algol_&_pemrog_i_c++
D3 modul algol_&_pemrog_i_c++Paulino Guterres
 
Pemrogaman Visual Basic.NET (Modul 1)
Pemrogaman Visual Basic.NET (Modul 1)Pemrogaman Visual Basic.NET (Modul 1)
Pemrogaman Visual Basic.NET (Modul 1)Materi Kuliah Online
 
Modul Tutorial Membuat Class pada Visual Studio 2010
Modul Tutorial Membuat Class pada Visual Studio 2010Modul Tutorial Membuat Class pada Visual Studio 2010
Modul Tutorial Membuat Class pada Visual Studio 2010Choi Melia
 
Part 2 - PENGENALAN VISUAL STUDIO 2010
Part 2 - PENGENALAN VISUAL STUDIO 2010Part 2 - PENGENALAN VISUAL STUDIO 2010
Part 2 - PENGENALAN VISUAL STUDIO 2010Rolly Yesputra
 

Mais procurados (18)

MATERI_DELPHI_XI
MATERI_DELPHI_XIMATERI_DELPHI_XI
MATERI_DELPHI_XI
 
Diktat borlanddelphi 7
Diktat borlanddelphi 7Diktat borlanddelphi 7
Diktat borlanddelphi 7
 
Modul pemrograman-1-revisi
Modul pemrograman-1-revisiModul pemrograman-1-revisi
Modul pemrograman-1-revisi
 
M1t1
M1t1M1t1
M1t1
 
Modul praktikum pbw
Modul praktikum pbwModul praktikum pbw
Modul praktikum pbw
 
Pemograman delphi untuk pemula
Pemograman delphi untuk pemula Pemograman delphi untuk pemula
Pemograman delphi untuk pemula
 
Makalah fisika komputasi
Makalah fisika komputasiMakalah fisika komputasi
Makalah fisika komputasi
 
Modul Net PRo
Modul Net PRoModul Net PRo
Modul Net PRo
 
Gabung1 sd 6_dekstop_java
Gabung1 sd 6_dekstop_javaGabung1 sd 6_dekstop_java
Gabung1 sd 6_dekstop_java
 
Dot net
Dot netDot net
Dot net
 
Module Delphi
Module DelphiModule Delphi
Module Delphi
 
Modul visual basic
Modul visual basicModul visual basic
Modul visual basic
 
Laporan praktikum modul vi
Laporan praktikum modul viLaporan praktikum modul vi
Laporan praktikum modul vi
 
My modul visual basic 6.0
My modul visual basic 6.0My modul visual basic 6.0
My modul visual basic 6.0
 
D3 modul algol_&_pemrog_i_c++
D3 modul algol_&_pemrog_i_c++D3 modul algol_&_pemrog_i_c++
D3 modul algol_&_pemrog_i_c++
 
Pemrogaman Visual Basic.NET (Modul 1)
Pemrogaman Visual Basic.NET (Modul 1)Pemrogaman Visual Basic.NET (Modul 1)
Pemrogaman Visual Basic.NET (Modul 1)
 
Modul Tutorial Membuat Class pada Visual Studio 2010
Modul Tutorial Membuat Class pada Visual Studio 2010Modul Tutorial Membuat Class pada Visual Studio 2010
Modul Tutorial Membuat Class pada Visual Studio 2010
 
Part 2 - PENGENALAN VISUAL STUDIO 2010
Part 2 - PENGENALAN VISUAL STUDIO 2010Part 2 - PENGENALAN VISUAL STUDIO 2010
Part 2 - PENGENALAN VISUAL STUDIO 2010
 

Semelhante a TERBILANG

Delphi part 1.pdf
Delphi part 1.pdfDelphi part 1.pdf
Delphi part 1.pdfJurnal IT
 
Diktat borlanddelphi 7
Diktat borlanddelphi 7Diktat borlanddelphi 7
Diktat borlanddelphi 7ratnacahya2
 
form dengan FormMDI Delphi 7
form dengan FormMDI Delphi 7form dengan FormMDI Delphi 7
form dengan FormMDI Delphi 7hera wijaya
 
Belajar pemrograman borland delphi 7 [the-xp.blogspot.com]
Belajar pemrograman borland delphi 7   [the-xp.blogspot.com]Belajar pemrograman borland delphi 7   [the-xp.blogspot.com]
Belajar pemrograman borland delphi 7 [the-xp.blogspot.com]Adre Ridwan
 
Modul1 pengenalan borlanddelphi7
Modul1 pengenalan borlanddelphi7Modul1 pengenalan borlanddelphi7
Modul1 pengenalan borlanddelphi7asa_guskun
 
Event & Property VB - dasar visual basic bagian 4
Event & Property VB - dasar visual basic bagian 4Event & Property VB - dasar visual basic bagian 4
Event & Property VB - dasar visual basic bagian 4Isya Ansyari
 
Laporan Praktikum Algoritma Pemrograman Modul I
Laporan Praktikum Algoritma Pemrograman Modul ILaporan Praktikum Algoritma Pemrograman Modul I
Laporan Praktikum Algoritma Pemrograman Modul IShofura Kamal
 
Presentasi delphi
Presentasi delphiPresentasi delphi
Presentasi delphiJauhar Anam
 
Modul Pemrograman Visual
Modul Pemrograman VisualModul Pemrograman Visual
Modul Pemrograman VisualWahyu Widodo
 
Dasarpemrogramanvisualbasic
DasarpemrogramanvisualbasicDasarpemrogramanvisualbasic
Dasarpemrogramanvisualbasicdhi her
 
Dasarpemrogramanvisualbasic
DasarpemrogramanvisualbasicDasarpemrogramanvisualbasic
Dasarpemrogramanvisualbasicdhi her
 
Struktur bahasa delphi
Struktur bahasa delphiStruktur bahasa delphi
Struktur bahasa delphimistriana
 
D3 modul algol_&_pemrog_i_c++
D3 modul algol_&_pemrog_i_c++D3 modul algol_&_pemrog_i_c++
D3 modul algol_&_pemrog_i_c++Saybia Himma
 
Tutorial 2 bahasa pemrogaman
Tutorial 2 bahasa pemrogamanTutorial 2 bahasa pemrogaman
Tutorial 2 bahasa pemrogamanmdzulkifli
 

Semelhante a TERBILANG (20)

Modul Delphi ,buat pemula
Modul Delphi ,buat pemulaModul Delphi ,buat pemula
Modul Delphi ,buat pemula
 
modul-delphi-7.pdf
modul-delphi-7.pdfmodul-delphi-7.pdf
modul-delphi-7.pdf
 
Modul delphi 7
Modul delphi 7Modul delphi 7
Modul delphi 7
 
Modul 1-AP3-Deplhi-Unpar
Modul 1-AP3-Deplhi-UnparModul 1-AP3-Deplhi-Unpar
Modul 1-AP3-Deplhi-Unpar
 
Delphi part 1.pdf
Delphi part 1.pdfDelphi part 1.pdf
Delphi part 1.pdf
 
Diktat borlanddelphi 7
Diktat borlanddelphi 7Diktat borlanddelphi 7
Diktat borlanddelphi 7
 
9093 fd01
9093 fd019093 fd01
9093 fd01
 
20110323 modul1 vb
20110323 modul1 vb20110323 modul1 vb
20110323 modul1 vb
 
form dengan FormMDI Delphi 7
form dengan FormMDI Delphi 7form dengan FormMDI Delphi 7
form dengan FormMDI Delphi 7
 
Belajar pemrograman borland delphi 7 [the-xp.blogspot.com]
Belajar pemrograman borland delphi 7   [the-xp.blogspot.com]Belajar pemrograman borland delphi 7   [the-xp.blogspot.com]
Belajar pemrograman borland delphi 7 [the-xp.blogspot.com]
 
Modul1 pengenalan borlanddelphi7
Modul1 pengenalan borlanddelphi7Modul1 pengenalan borlanddelphi7
Modul1 pengenalan borlanddelphi7
 
Event & Property VB - dasar visual basic bagian 4
Event & Property VB - dasar visual basic bagian 4Event & Property VB - dasar visual basic bagian 4
Event & Property VB - dasar visual basic bagian 4
 
Laporan Praktikum Algoritma Pemrograman Modul I
Laporan Praktikum Algoritma Pemrograman Modul ILaporan Praktikum Algoritma Pemrograman Modul I
Laporan Praktikum Algoritma Pemrograman Modul I
 
Presentasi delphi
Presentasi delphiPresentasi delphi
Presentasi delphi
 
Modul Pemrograman Visual
Modul Pemrograman VisualModul Pemrograman Visual
Modul Pemrograman Visual
 
Dasarpemrogramanvisualbasic
DasarpemrogramanvisualbasicDasarpemrogramanvisualbasic
Dasarpemrogramanvisualbasic
 
Dasarpemrogramanvisualbasic
DasarpemrogramanvisualbasicDasarpemrogramanvisualbasic
Dasarpemrogramanvisualbasic
 
Struktur bahasa delphi
Struktur bahasa delphiStruktur bahasa delphi
Struktur bahasa delphi
 
D3 modul algol_&_pemrog_i_c++
D3 modul algol_&_pemrog_i_c++D3 modul algol_&_pemrog_i_c++
D3 modul algol_&_pemrog_i_c++
 
Tutorial 2 bahasa pemrogaman
Tutorial 2 bahasa pemrogamanTutorial 2 bahasa pemrogaman
Tutorial 2 bahasa pemrogaman
 

Mais de Kira R. Yamato

Tutorial game-maker-bagi-pemula
Tutorial game-maker-bagi-pemulaTutorial game-maker-bagi-pemula
Tutorial game-maker-bagi-pemulaKira R. Yamato
 
Paparan pembekalan kkl 20 januari 2014
Paparan pembekalan kkl   20 januari 2014Paparan pembekalan kkl   20 januari 2014
Paparan pembekalan kkl 20 januari 2014Kira R. Yamato
 
Paparan pembekalan kkl 9 juli 2013
Paparan pembekalan kkl   9 juli 2013Paparan pembekalan kkl   9 juli 2013
Paparan pembekalan kkl 9 juli 2013Kira R. Yamato
 
Rock mag 1 (2013.15) terjemah
Rock mag 1 (2013.15) terjemahRock mag 1 (2013.15) terjemah
Rock mag 1 (2013.15) terjemahKira R. Yamato
 
Speed of light apparatus modul
Speed of light apparatus modulSpeed of light apparatus modul
Speed of light apparatus modulKira R. Yamato
 
Pembiasan pada trapesium
Pembiasan pada trapesiumPembiasan pada trapesium
Pembiasan pada trapesiumKira R. Yamato
 
Tuntunan menulis artikel
Tuntunan menulis artikel Tuntunan menulis artikel
Tuntunan menulis artikel Kira R. Yamato
 
Supriyanto s komputasi untuk sains dan teknik menggunakan matlab edisi 4 - ...
Supriyanto s   komputasi untuk sains dan teknik menggunakan matlab edisi 4 - ...Supriyanto s   komputasi untuk sains dan teknik menggunakan matlab edisi 4 - ...
Supriyanto s komputasi untuk sains dan teknik menggunakan matlab edisi 4 - ...Kira R. Yamato
 
Laporan eksperimen go 5 kelompok 7
Laporan eksperimen go 5 kelompok 7Laporan eksperimen go 5 kelompok 7
Laporan eksperimen go 5 kelompok 7Kira R. Yamato
 
Mengatasi apache xampp yang tidak bisa berjalan
Mengatasi apache xampp yang tidak bisa berjalanMengatasi apache xampp yang tidak bisa berjalan
Mengatasi apache xampp yang tidak bisa berjalanKira R. Yamato
 
Gelombang elektromagnetik
Gelombang elektromagnetikGelombang elektromagnetik
Gelombang elektromagnetikKira R. Yamato
 
Modul 1 medan elektromagnetik
Modul 1 medan elektromagnetikModul 1 medan elektromagnetik
Modul 1 medan elektromagnetikKira R. Yamato
 

Mais de Kira R. Yamato (20)

Tutorial game-maker-bagi-pemula
Tutorial game-maker-bagi-pemulaTutorial game-maker-bagi-pemula
Tutorial game-maker-bagi-pemula
 
Fisika komputasi
Fisika komputasiFisika komputasi
Fisika komputasi
 
Fisika komputasi
Fisika komputasiFisika komputasi
Fisika komputasi
 
Fisika komputasi
Fisika komputasiFisika komputasi
Fisika komputasi
 
Sosialisasi+kp+09
Sosialisasi+kp+09Sosialisasi+kp+09
Sosialisasi+kp+09
 
Paparan pembekalan kkl 20 januari 2014
Paparan pembekalan kkl   20 januari 2014Paparan pembekalan kkl   20 januari 2014
Paparan pembekalan kkl 20 januari 2014
 
Ujian pkl
Ujian pkl Ujian pkl
Ujian pkl
 
Paparan pembekalan kkl 9 juli 2013
Paparan pembekalan kkl   9 juli 2013Paparan pembekalan kkl   9 juli 2013
Paparan pembekalan kkl 9 juli 2013
 
Rock mag 1 (2013.15) terjemah
Rock mag 1 (2013.15) terjemahRock mag 1 (2013.15) terjemah
Rock mag 1 (2013.15) terjemah
 
Speed of light apparatus modul
Speed of light apparatus modulSpeed of light apparatus modul
Speed of light apparatus modul
 
Tugas go polarisasi
Tugas go polarisasiTugas go polarisasi
Tugas go polarisasi
 
Pembiasan pada trapesium
Pembiasan pada trapesiumPembiasan pada trapesium
Pembiasan pada trapesium
 
Tuntunan menulis artikel
Tuntunan menulis artikel Tuntunan menulis artikel
Tuntunan menulis artikel
 
Supriyanto s komputasi untuk sains dan teknik menggunakan matlab edisi 4 - ...
Supriyanto s   komputasi untuk sains dan teknik menggunakan matlab edisi 4 - ...Supriyanto s   komputasi untuk sains dan teknik menggunakan matlab edisi 4 - ...
Supriyanto s komputasi untuk sains dan teknik menggunakan matlab edisi 4 - ...
 
Laporan eksperimen go 5 kelompok 7
Laporan eksperimen go 5 kelompok 7Laporan eksperimen go 5 kelompok 7
Laporan eksperimen go 5 kelompok 7
 
Dasar matlab
Dasar matlabDasar matlab
Dasar matlab
 
Mengatasi apache xampp yang tidak bisa berjalan
Mengatasi apache xampp yang tidak bisa berjalanMengatasi apache xampp yang tidak bisa berjalan
Mengatasi apache xampp yang tidak bisa berjalan
 
Gelombang elektromagnetik
Gelombang elektromagnetikGelombang elektromagnetik
Gelombang elektromagnetik
 
G e hay's
G e hay'sG e hay's
G e hay's
 
Modul 1 medan elektromagnetik
Modul 1 medan elektromagnetikModul 1 medan elektromagnetik
Modul 1 medan elektromagnetik
 

TERBILANG

  • 1. Halaman : MODUL I APLIKASI DASAR Bahasan: Dasar-Dasar Pemograman Delphi Tujuan: 1. Mahasiswa Dapat Membuat Aplikasi Sederhana Menggunakan Delphi A. MENGENAL DELPHI Delphi merupakan sebuah program berbasiskan windows yang memiliki bahasa mirip dengan pascal. Jadi bila anda telah menguasai pascal barangkali tidak akan kesulitan dalam menggunakan program ini. Perbedaan mendasar antara delphi dengan pascal adalah bahwa delphi memiliki oop (object orientation program) atau program yang berorientasi ke objek. Dengan demikian delphi lebih mudah digunakan dibandingkan dengan pascal, karena anda hanya tinggal mengatur properti atau sifat dari objek dan menambahkan sedikit pengkodean. Untuk menjalankan: 1. Klik tombol Start, pilih menu Programs  Borland Dephi 7  Delphi 7 2. Tunggu hingga program delphi aktif 3. Perhatikan komponen yang ada, diantaranya component pallete (berisi sekumpulan objek yang akan kita gunakan dalam pembuatan proram) dan object inspector (berisi daftar property atau sifat dari objek yang aktif yang dapat kita ubah sesuai dengan kebutuhan dalam program kita). Kedua objek ini merupakan komponen yang paling sering dipakai dalam pembuatan program visual. Gambar 1.1.Toolbar Component Pallete. Gambar 1.2. Object Inspector B. KONSEP DASAR Didalam delphi ada beberapa pengertian yang memerlukan penjelasan untuk memahami bagaimana dan apa saja komponen yang ada dalam delphi, adapun diantaranya adalah: - PROJECT Project delphi adalah sekumpulan file yang akan membangun aplikasi atau library yang dapat disebarkan kepada pemrogram lain. Pada saat memulai delphi, delphi akan membuat sebuah project baru. Setelah itu terserah pengguna apakah apakah ingin memodifikasi projek terasebut, membuat projek baru lagi atau mungkin membuka projek yang sudah ada. Project aplikasi terdiri atas : 1. File project : file ini tersimpan dengan ekstensi .Dpr, hanya ada satu file projek untuk satu projek. 2. File form : file form tersimpan dengan ekstensi .dfm, adalah file biner yang berisi gambaran grafis dari form. Setiap file .dfm selalu pararel dengan satu unit file yang berekstensi .pas. 3. Unit (source): file unit tersimpan dengan ekstensi .pas, dimana setiap unit berupa file source code dalam bahasa pascal. Tidak setiap file unit memiliki atau terhubung file .dfm File projek menggabung semua file diatas yang digunakan oleh delphi untuk melakukan kompilasi dan membuat file target (.exe atau .dll). -FORM Form merupakan tempat kita merancang program. Jika seorang pemogram diibaratkan sebagai seorang pelukis maka form inilah yang menjadi kanvasnya. Form yang dirancang dalam delphi bisa digunakan kembali oleh projek delphi yang lain. Form dapat juga disimpan dalam bentuk dll, sehingga dapat digunakan oleh aplikasi yang lain seperti c++, paradox, atau dbase. Delphi menawarkan kemudahan pembuatan form melalui model template. -UNIT Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 1
  • 2. Halaman : Unit merupakan modul yang terpisah yang dapat dikompilasi tersendiri, yang berisi deklarasi bagian publik (antarmuka) dan bagian privat (implementasi). Setiap form dalam delphi mempunyai satu unit yang bersesuaian. Source code unit tersimpan dengan ekstensi pas, sedangkan yang sudah terkompilasi tersimpan dengan ekstensi .dcu. proses link akan menggabung file .dcu menjadi satu file exe atau dll. C. MEMBUAT PROYEK BARU Untuk membuat aplikasi atau proyek baru, langkah-langkah yang harus anda lakukan adalah: 1. Pilih menu File | New Application 2. Tunggu hingga muncul jendela form 3. Dengan memilih component pallette standar, masukan sebuah label dan button 4. Kemudian ubah propertinya dengan menggunakan Object Inspector 5. Pada Fom1: Tform1, caption anda isi dengan pengalaman pertama... 6. Label1, Caption : ini adalah pengalaman pertamaku menggunakan program delphi 7. Button1, Caption : &Tutup 8. Untuk lebih jelasnya, silahkan lihat gambar 1.3. Gambar 1.3.Jendela Form Hasil Perubahan. 9. Klik dua kali pada button hingga muncul jendela pengkodean, kemudian ketik : Close diantara kata begin dan end sehingga terlihat sebagai berikut: procedure TForm1.Button1Click(Sender: TObject); begin Close; end; 10. Jalankan program dengan menu Run | Run. Atau bisa juga dengan langsung menekan tombol F9 11. Untuk keluar dari program klik tombol tutup 12. File menu File | Save All 13. Simpan project anda dengan nama ppertama.dpr dan upertama.pas untuk unitnya. 14. Kembangkan contoh program tersebut. Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 2
  • 3. Halaman : MODUL II MENGHITUNG LUAS SEGI TIGA Bahasan: Program Menghitung Luas Segi Tiga Tujuan: 1. Mahasiswa Dapat Membuat Aplikasi Perhitungan Dengan Delphi A. MENDESAIN FORM Untuk membuat program menghitung luas segitiga ini, kita membutuhkan sebuah form. Namun anda juga bisa membuatnya bersama proyek yang baru. Kemudian anda masukan beberapa komponen diantaranya Label sebanyak empat buah, Edit sebanyak tiga buah dan Button sebanyak dua buah. Anda atur posisinya sehingga terlihat seperti pada Gambar 2.1. Gambar 2.1. Jendela Desain Form. B. MENGUBAH PROPERTI Dengan menggunakan Object Inspector, ubahlah properti dari komponen yang ada dengan ketentuan sebagai berikut : Nama Objek Properti Yang Diubah Nilai Form1 : TForm1 Caption Mata Matiku... Label1 : TLabel1 Caption Font : Size Menghitung Luas Segitiga 15 Label2 : TLabel2 Caption Alas: Label3 : TLabel3 Caption Tinggi: Label4 : TLabel4 Caption Luas: Edit1 : TEdit1 Text (Kosongkan) Edit2 : Tedit2 Text (Kosongkan) Edit3 : Tedit3 Text (Kosongkan) Button1 : TButton1 Caption &Hitung Button2 : Tbutton2 Caption &Tutup Panel1 : TPanel1 Caption Kosongkan Jika sudah selesai seharusnya tampilan form anda akan terlihat seperti gambar 2.2. Gambar 2.2. Tampilan Hasil Perubahan Properti. C. MEMASUKAN KODE Agar desain program yang telah kita buat bisa berfungsi sebagaimana mestinya, tentunya kita harus memasukkan kode kedalam objek tersebut. Anda cukup memasukan kode untuk Button1 dan Button2 saja. Berikut ini kode sumbernya: procedure TForm1.Button1Click(Sender: TObject); var alas,tinggi,luas: real; begin // cek apakah input sudah diisi ? IF edit1.text='' THEN Begin MessageDlg('Alas masih kosong',mtInformation,[mbOK],0); edit1.setfocus; Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 3
  • 4. Halaman : End ELSE IF edit2.text='' THEN Begin MessageDlg('Tinggi masih kosong',mtInformation,[mbOK],0); edit2.setfocus; End ELSE // jika sudah : Begin alas:=STRtoFLOAT(edit1.text); tinggi:=STRtoFLOAT(edit2.text); luas:=0.5*alas*tinggi; edit3.text:=FLOATtoSTR(luas); // Edit3.Text:='Bukan Bilangan'; End; End; Sedangkan untuk kode Button2 adalah sebagai berikut : procedure TForm1.Button2Click(Sender: TObject); begin Close; end; Sehingga kode lengkapnya akan terlihat seperti dibawah ini: unit Usegi3; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class(TForm) Edit1: TEdit; Edit2: TEdit; Button1: TButton; Button2: TButton; Edit3: TEdit; Panel1: TPanel; Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; procedure Button2Click(Sender: TObject); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.DFM} procedure TForm1.Button2Click(Sender: TObject); begin close; end; procedure TForm1.Button1Click(Sender: TObject); var alas,tinggi,luas: real; begin // cek apakah input sudah diisi ? IF edit1.text='' THEN Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 4
  • 5. Halaman : Begin MessageDlg('Alas masih kosong',mtInformation,[mbOK],0); edit1.setfocus; End ELSE IF edit2.text='' THEN Begin MessageDlg('Tinggi masih kosong',mtInformation,[mbOK],0); edit2.setfocus; End ELSE // jika sudah : Begin alas:=STRtoFLOAT(edit1.text); tinggi:=STRtoFLOAT(edit2.text); luas:=0.5*alas*tinggi; edit3.text:=FLOATtoSTR(luas); Edit3.Text:='Bukan Bilangan'; End; end; end. D. LATIHAN - Modifikasi program diatas, sehingga ketika user menginputkan nilai alas dan tinggi tidak berupa angka, program bisa menghandlenya. - Buatlah program baru seperti diatas, misalkan untuk menghitung luas lingkaran, volume tabung, dan sebagainya. Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 5
  • 6. Halaman : MODUL III TERBILANG Bahasan: Penggunaan Fungsi Dalam Delphi Tujuan: 1. Mahasiswa Dapat Membuat Fungsi Untuk Setiap Permasalahan Dalam Delhi A. DESAIN FORM Sekarang kita mencoba membuat sebuah aplikasi untuk menampilkan keterangan bilangan yang dimasukan. Misalkan ketika user atau pengguna mengetik angka 1, maka akan muncul tulisan Satu. Berikut ini contoh desainnya: Gambar 3.1. Contoh Tampilan Desain Form. B. UBAH PROPERTI Untuk memperindah tampilan, ubahlah properti masing-masing dengan ketentuan sebagai berikut: Nama Object Properti Nilai Label1 Caption Size Terbilang 20 Label2 Caption Angka: Panel1 Caption (dikosongkan) BitBtn1 Caption Glyph &Cek (Tbitmap) BitBtn2 Kind bkClose Form1 Caption Kubilang Terbilang... Edit1 Text (dikosongkan) Untuk menambahkan icon pada BitBtn1, langkah yang harus anda lakukan adalah: 1. Aktifkan komponen Bitbtn1, sehingga tampil propertinya pada Object Inspector 2. Pada Tab Propeties pilih baris Glyph, kemudian klik tombol 3. Tunggu hingga muncul jendela Picture Editor. Gambar 3.2. Jendela Picture Editor. 4. Klik tombol Load... 5. Ketik muncul jendela berikutnya, pastikan anda aktifkan foder : C:Program FilesCommon FilesBorland Shared ImagesButton, pada bagian Look in: 6. Pilih Check.bmp 7. Klik tombol Open hingga kembali kejendela semula Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 6
  • 7. Halaman : 8. Klik tombol OK. Gambar 3.3. Jendela Picture Editor Pemilihan Image Jika langkah yang anda lakukan sudah tepat maka form anda akan terlihat seperti dibawah ini: Gambar 3.4. Tampilan Form Setelah Perubahan C. PENGKODEAN 9. CARA SEDERHANA Untuk cara sederhana ini, kita hanya menyeleksi setiap angka pertama yang dimasukan dengan seleksi Case Of. Sebenarnya kita bisa juga menyeleksi dengan IF Then, namun akan membutuhkan lebih banyak pengkodean. Aktifkan Tombol Cek, dari Object Inspector di tab Events pada event OnClick() anda ketik kode berikut ini: procedure TForm1.BitBtn1Click(Sender: TObject); Var Digit1 : Char; begin Digit1 := Edit1.Text[1]; Case Digit1 Of '0' : Panel1.caption := 'Nol'; '1' : Panel1.caption := 'Satu'; '2' : Panel1.caption := 'Dua'; '3' : Panel1.caption := 'Tiga'; '4' : Panel1.caption := 'Empat'; '5' : Panel1.caption := 'Lima'; '6' : Panel1.caption := 'Enam'; '7' : Panel1.caption := 'Tujuh'; '8' : Panel1.caption := 'Delapan'; '9' : Panel1.caption := 'Sembilan'; End; end; Untuk memeriksa apakah program kita bisa berjalan dengan baik atau tidak, sekarang coba anda jalankan program tersebut dengan menekan tombol F9. Kemudian anda isikan angka pada kotak isian dan klik tombol Cek. 10. DENGAN FUNGSI Cara yang lebih efektif, untuk menerjemahkan banyak angka adalah dengan membuat sebuah fungsi. Fungsi ini harus anda letakkan dibagian bawah dari Implementation. Function TERBILANG( n : longint) : String; Const Bil : Array[0..11] Of String[15] = ('','Satu','Dua','Tiga','Empat','Lima', 'Enam','Tujuh','Delapan','Sembilan','Sepuluh','Sebelas'); Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 7
  • 8. Halaman : Begin Case n Of 0..11 : Result := Bil[n]; 12..19 : Result := Terbilang(n-10) + ' Belas'; 20..99 : Result := Terbilang(n div 10) + ' Puluh ' + Terbilang(n mod 10); 100..199 : Result := 'Seratus ' + Terbilang(n-100); 200..999 : Result := Terbilang(n div 100) + ' Ratus ' + Terbilang(n mod 100); 1000..1999: Result := 'Seribu ' + Terbilang(n-1000); 2000..9999: Result := Terbilang(n div 1000) + ' Ribu ' + Terbilang(n mod 1000); End; //form1.caption := inttostr(n) End; Kemudian anda hapus dan ganti kode yang ada ditombol check sehingga menjadi sebagai berikut: procedure TForm1.BitBtn1Click(Sender: TObject); Var Digit1 : Char; begin If Edit1.text<>'' Then Begin If Edit1.text='0' Then Panel1.Caption:='Nol' Else Panel1.Caption:= TERBILANG(STRtoINT(Edit1.text)); End Else Panel1.Caption:='Kosong'; end; Berikut ini Contoh Aplikasi yang sedang di RUN. Gambar 3.4. Contoh Form Yang Sedang Dijalankan D. LATIHAN DAN TUGAS 1. Buat supaya keterangan tampil ketika kita sedang mengetik angkanya (tanpa mengklik tombol cek) 2. Tambahkan pengkodean sehingga program bisa menghandle hingga bilangan Triliunan. Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 8
  • 9. Halaman : MODUL IV MENU A. DESAIN FORM Untuk membuat sebuah form bermenu caranya sangat mudah sekali yaitu : 1. Buat sebauh aplikasi baru 2. Tambahkan sebuah MainMenu pada form anda. Gambar 4.1. Rancangan Form Bermenu. 3. Double klik pada komponen MainMenu yang ada pada form, tunggu hingga muncul jendela baru 4. Isi Properti Caption pada Object Inspector dengan : &Berkas, sehingga akan terlihat seperti Gambar 4.2 Gambar 4.2. Penambahan Menu Berkas 5. Klik tombol kosong yang ada dibawah tulisan Berkas pada form, kemudian anda tambahkan Caption dengan &Keluar 6. Klik tanda titik-titik yang membentuk kotak kosong dengan disebelah kanan menu Berkas, kemudian anda ubah Captionnya dengan &Warna. 7. Berturut-turut anda buatkan 3 buah sub menu baru dibawah menu Warna dengan Caption masing-masing Hitam, Putih, Standar. 8. Kemudian anda tambahkan menu Help, disamping kanan Warna. 9. Dibawah menu Help, anda tambahkan dua sub menu dengan Caption Program, - , Tentang. 10. Tutup Form rancangan menu tersebut sehingga kita kembali aktif di Form yang pertama dan perhatikan perubahan yang terjadi. Gambar 3.4. Tampilan Setelah Penambahan Menu Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 9
  • 10. Halaman : B. PENGKODEAN Tambahkan pengkodean sehingga seluruh kodenya akan terlihat seperti dibawah ini: unit Umenu; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Menus; type TForm1 = class(TForm) MainMenu1: TMainMenu; Berkas1: TMenuItem; Keluar1: TMenuItem; Warna1: TMenuItem; Hitam1: TMenuItem; Putih1: TMenuItem; Standar1: TMenuItem; Help1: TMenuItem; Program1: TMenuItem; N1: TMenuItem; Tentang1: TMenuItem; procedure Keluar1Click(Sender: TObject); procedure Hitam1Click(Sender: TObject); procedure Putih1Click(Sender: TObject); procedure Standar1Click(Sender: TObject); procedure Program1Click(Sender: TObject); procedure Tentang1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.DFM} procedure TForm1.Keluar1Click(Sender: TObject); begin if Application.MessageBox( 'Apakah anda yakin keluar program ? ', 'Keluar Program',36) = 6 then Close; end; procedure TForm1.Hitam1Click(Sender: TObject); begin Form1.Color := clBlack; end; procedure TForm1.Putih1Click(Sender: TObject); begin Form1.Color := clWhite; end; procedure TForm1.Standar1Click(Sender: TObject); begin Form1.Color := clLtGray; end; procedure TForm1.Program1Click(Sender: TObject); begin Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 10
  • 11. Halaman : Application.MessageBox('Program Menu-Menuan v.0.1'+#13+#13+'Oleh : abu syafa', 'Tentang Program',64); end; procedure TForm1.Tentang1Click(Sender: TObject); begin Application.MessageBox('Nama : Abu Syafa'+#13+ 'Alamat : Yogyakarta'+#13+ 'Phone : 618379 / 08562878105','Programmer...',64); end; end. Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 11
  • 12. Halaman : MODUL V DATA BASE Bahasan: Data Base Menggunakan Delphi Tujuan: 1. Mahasiswa Dapat Membuat Aplikasi Basis Data Sekaligus Laporan Dengan Delphi 2. Mahasiswa Dapat Membuat Aplikasi Utuh Dengan Delphi A. MEMBUAT TABLE Untuk membuat table dengan menggunakan delphi, anda membutuhkan sebuah program bantual lain yang menjadi satu dengan delphi yaitu Database Desktop. Cara untuk membuat table, bisa anda lakukan dengan mengikuti langkah-langkah dibawah ini: 3. Dari program delphi, pilih menu Tools | DataBase Desktop. 4. Tunggu beberapa saat hingga muncul jendela Database Desktop. Gambar 6.1. Jendela Database Desktop. 5. Dari jendela tersebut, anda pilih menu Tools | Alias Manager. Gambar 6.2 Jendela Alias Manager. 6. Klik tombol New. 7. Pada isian Database alias: anda ketikkan nama aliasnya misalkan Akademik. 8. Driver type: anda pilih STANDAR. 9. Path: diisi dengan letak penyimpanan tabel anda. Jika anda tidak hapal nama direktorinya, silahkan klik tombol Browse untuk mencarinya. 10. Klik tombol OK, ketika muncul konfirmasi, anda pilih tombol Yes. Gambar 6.3. Jendela Konfirmasi. Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 12
  • 13. Halaman : 11. Kemudian anda pilih menu File | Working Directory... 12. Setelah muncul jendela Set Working Directory, anda pilih Akademik pada bagian Aliases: 13. Jika tidak muncul, kemungkinan ada kesalahan ketika anda membuat Alias Manager. Gambar 6.4. Jendela Working Directory. 14. Klik tombol OK. 15. Pilih menu File | New | Table. Gambar 6.5. Jendela Create Table. 16. Ketika muncul jendela Create Table, anda pilih type table Paradox 7, kemudian klik tombol OK 17. Setelah muncul jendela Create Paradox 7 Table, anda buat struktur tabel sebagai berikut: Gambar 6.6. Jendela Desain Tabel. 18. Klik tombol Save As... Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 13
  • 14. Halaman : Gambar 6.7. Jendela Save As 19. Pada isian File name, anda isikan nama tabelnya, misalkan Mhs, sedangkan pada bagain Alias anda pilih Akademik. 20. Klik tombol Save. 21. Buka tabel anda, dengan memilih menu File | Open | Table Gambar 6.8. Jendela Open. 22. Ketika muncul jendela open, anda pilih table Mahasiswa 23. Pilih menu Table | Edit Data, kemudin anda masukan record seperti dibawah ini: Gambar 6.9. Contoh Data Yang Dimasukan Tabel Mahasiswa. 24. Pilih menu File | Close. Ketika muncul konfirmasi penyimpanan, anda pilih yes. Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 14
  • 15. Halaman : Gambar 6.10. Jendela Konfirmasi. 25. Pilih menu File | Exit, untuk keluar dari program Database Desktop dan kembali ke program Delphi. B. MENDESAIN FORM Untuk merancang aplikasi database ini, kita membutuhkan beberapa komponen pallete antara lain: Table, DataSource, DBGrid, dan DBNavigator. Anda bisa menambahkan komponen tersebut dari tab Data Access dan Data Control. Jangan lupa untuk menambahkan sebuah label dan dua buah Bitbtn. Atur sedemikian rupa sehingga terlihat seperti pada gambar 6.11. Gambar 6.11. Rancangan Form DataBase. Atur propertinya sebagai berikut: Nama Object Properti Nilai Form1 BorderStyle Caption bsDialog Basis Data... Table1 DatabaseName TableName IndexFieldName Active Akademik Mahasiswa.db Nim; Nama Mahasiswa True DataSource1 DataSet Table1 DBGrid1 DataSource DataSource1 DBNavigator1 DataSource DataSource1 Bitbtn1 Caption Glyph &Laporan report.bmp Bitbtn2 Kind bkClose Label1 Caption Font.Name Font.Size DATABASE MAHASISWA Verdana 20 Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 15
  • 16. Halaman : Gambar 6.12. Rancangan Form Setelah Perubahan Properti. Sekarang coba anda jalankan form tersebut. C. REPORT Sebelum anda bisa menampilkan laporan terlebih dahulu anda harus mempersiapkan hal dibawah ini: 1. Tambahkan sebuah form baru, dengan memilih menu File | New Form. 2. Dengan menggunakan pallete QReport, masukkan beberapa komponen antara lain: a. Sebuah QuickRep b. Empat buah QRBand c. Enam buah QRLabel d. Enam buah QRDBtext e. Satu buah Table 3. Ubah propertinya sebagai berikut: Nama Objek Properti Nilai Form1 Caption Laporan... Table1 DatabaseName TableName IndexFieldName Active Akademik Mahasiswa.db Nim; Nama Mahasiswa True QRBand1 BandType rbTitle QRBand2 BandType rbClumnHeader QRBand3 BandType rbDetail QRBand4 BandType rbPageFooter QRLabel1 Caption NIM QRLabel2 Caption Nama Mahasiswa QRLabel3 Caption Tempat Lahir QRLabel4 Caption Tanggal Lahir QRLabel5 Caption Jurusan QRLabel6 Caption Alamat QRDBtext1 DataSet DataField Table1 Nim QRDBtext2 DataSet DataField Table1 Nama Mahasiwa QRDBtext3 DataSet DataField Table1 Tempat Lahir QRDBtext4 DataSet DataField Table1 Tanggal Lahir QRDBtext5 DataSet DataField Table1 Jurusan QRDBtext6 DataSet DataField Table1 Alamat QuickRep1 DataSet ReportTitle Table1 Laporan Mahasiswa 4. Pastikan Tampilan Form anda akan terlihat seperti berikut : Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 16
  • 17. Halaman : Gambar 6.13. Tampilan Form Setelah Perubahan. 5. Aktifkan kembali Form1 anda 6. Double Klik pada Bibtn1 (tombol Laporan), kemudian anda ketik: Form2.QuickRep1.Preview; 7. Tekan tombol F9 8. Ketika muncul konfirmasi, pilih tombol yes Gambar 6.14. Jendela Konfirmasi. 9. Tekan tombol F9 sekali lagi 10. Sekarang aplikasi anda bisa diuji coba. D. LATIHAN 1. Lengkapi laporan diatas dengan menambahkan Judul Laporan, Garis pembatas antar data, dan tanggal pencetakan laporan pada bagian footer. 2. Buat sebuah aplikasi utuh dengan menggunakan menu, grafik dan data base seperti yang telah anda buat sebelumnya. MODUL VI SISTEM INFORMASI PRESENSI PEGAWAI DENGAN DELPHI & MYSQL SERVER , CONECTOR ZEOSDBO6 Bahasan: Data Base Mysal Menggunakan Delphi Tujuan: 26. Mahasiswa Dapat Membuat Aplikasi Basis Data Sekaligus Laporan Dengan Delphi 27. Mahasiswa Dapat Membuat Aplikasi Utuh Dengan Delphi Langkah ke 1 : Mebuat Database presensi.sql a. Masuk ke mysql console dan ketikan perintah : mysql>create database presensi; b. Kemudian kita buat table admin dengan mengetikkan perintah : mysql> create table admin( -> id varchar(20), -> password varchar(20), -> judul_presensi varchar(50)); c. Kemudian kita buat table pegawai dengan mengetikan perintah : mysql> create table pegawai( -> nip varchar(10), -> nama_pegawai varchar(20), -> j_kel char(1), -> alamat varchar(50), -> no_telp varchar(13), -> sandi varchar(20), primary key(nip)); d. Kemudian kita buat table rekap_presensi dengan mengetikan perintah : mysql> create table rekap_presensi( -> nip varchar(10), -> nama_pegawai varchar(20), -> tanggal date, -> jam_datang time, -> jam_pulang time, -> durasi varchar(8)); Langkah ke 2 : Menginstall Zeos di Delphi dengan cara : Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 17
  • 18. Halaman : a. Kopikan file .bpl yang berada di folder ZEOSDBO-6.6.0-betabplnya ke folder BPL yang ada di folder C:Program FilesBorlandDelphi7ProjectsBPL. b. Kopikan juga file .dcu yang berada di folder ZEOSDBO-6.6.0-betabplnyadcu ke folder LIB yang ada di folder C:Program FilesBorlandDelphi7Lib c. Kopikan juga file .dll yang ada di ZEOSDBO-6.6.0-betalibmysql ke folder C:WINDOWSsystem dan C:WINDOWSsystem32 d. Kemudian buka Delphi masuk ke menu Component, install packages, kemudian pilih ADD, masukan file bpl yang ada di folder BPL yang ada di C:Program FilesBorlandDelphi7ProjectsBPL. Klik OK. Secara otomatis component Zeos sudah ditambahkan pada tab component VCL Delphi Langkah ke 3 : Membuat Aplikasi dengan cara : a. Membuat formUtama : - Simpan form yang telah aktif dengan nama UUtama.pas untuk file .pas nya dan dengan nama Presensi untuk file .dpr nya. - Atur Propertiesnya sbb: 1. Name : frmUtama 2. Caption : ::[ Presensi Pegawai ::] 3. BorderStyle : bsSingle 4. Border Icon : biMaximize=false 5. Icon : pilih icon sesuai yang diinginkan dengan mengelikkan tombol icon 6. Align : alClient 7. Positiom : poScreenCenter - Tambahkan Component MainMenu dengan memilih pada tab standard dan letakkan di frmUtama. Buat menu-menu yang akan digunakan di aplikasi : 1. &Admin : Data Admin,login 2. &File : Data Pegawai, Rekap Presensi 3. &Transaksi : Presensi Masuk, Presensi Pulang 4. &Lihat : Data Pegawai, Presensi(Sudah Datang,Sudah Pulang),Cek Presensi 5. A&bout Program 6. &Keluar - Tambahkan Komponent ZConection ke frmUtama dengan memilih pada tab Zeos Access dan atur properties ZConnection sbb : 1. Name : ZConnectionPresensi 2. Database : presensi 3. HostName : localhost 4. Protocol : mysql 5. User : root 6. Connected : true - Tambahkan 3 Component ZQuery ke frmUtama dengan memilih pada tab Zeos Access dan atur properties ZQuery1 sbb : 1. Name : ZQueryPegawai 2. Connection : ZConnectionPresensi 3. Sql : isi dengan sintaks sql select * from pegawai order by nip 4. Active : true 5. Klik dua kali pada ZQueryPegawai, Klik kanan pilih Add all fields properties ZQuery2 sbb : 6. Name : ZQueryAdmin Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 18
  • 19. Halaman : 7. Connection : ZConnectionPresensi 8. Sql : isi dengan sintaks sql select * from admin 9. Active : true 10. Klik dua kali pada ZQueryAdmin, Klik kanan pilih Add all fields properties ZQuery3 sbb : 11. Name : ZQueryRekapPresensi 12. Connection : ZConnectionPresensi 13. Sql : isi dengan sintaks sql select * from rekap_presensi order by tanggal 14. Active : true 15. Klik dua kali pada ZQueryRekapPresensi, Klik kanan pilih Add all fields - Tambahkan component image dengan memilih pada tab additional , letakkan pada frmUtama dan atur propertiesnya : 1. Stretch : True 2. Align : alClient 3. Picture : tekan picture dan pilih picture sesuai kebutuhan.(kalau mau dikasih photoku aja juga boleh) - Tambahkan Component StatusBar dengan memilih pada tab Win32 , letakkan pada frmUtama dan atur propertiesnya : 1. Height : 23 Tampilan Sebelum decompile : Tekan F9 dan Tampilan Saat Dicompile : b. Membuat frmPegawai - Pilih menu File>New >Form, simpan ditempat yang sama dengan tempat menyimpan file UUtama. Beri nama UPegawai.pas (ingat loooch harus disimpan ditempat yang sama dengan UUtama, jangan sampai terpisah) - Atur propertiesnya sbb : 1. Name : frmPegawai 2. Caption : ::[ Data Pegawai ]:: 3. Positon : poScreenCenter Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 19
  • 20. Halaman : 4. Icon : klik tombol icon dan pilih icon sesuai dengan kebutuhan 5. BorderStyle : bsSingle 6. BorderIcons : biMaximize dibuat false, biMinimize dibuat false - Tambahkan Component Panel dengan memilih pada tab standard, den letakkan ke frmPegawai dan atur properties dari panel tersebut : 1. Name : PanelJudul 2. Caption : :: DATA PEGAWAI :: 3. Height : 40 4. Font : tekan tombol dan atur jenis font Book Antique, color = maroon , size =18 5. BevelInner : bvRaised 6. BevelOuter : bvRaised - Tambahkan lagi Component Panel dengan memilih pada tab standard, den letakkan ke frmPegawai dan atur properties dari panel tersebut : 7. Name : PanelField 8. Caption : (kosongkan) 9. BevelInner : bvRaised 10. BevelOuter : bvRaised - Tambahkan Component image, 6 label dan 5 edit, 1 ComboBox letakkan ke dalam PanelField frmPegawai dan atur properties masing-component tersebut tersebut : 1. Image : Stretch=true, Align=alClient, Picture=pilih sesuai kebutuhan 2. edit1 : Name =edNIP, 3. edit2 : Name =edNama, 4. edit3 : Name =edAlamat, 5. edit4 : Name =edNoTelp, 6. edit5 : Name =edSandi, 7. ComboBox1 : Name=cmbJK, Items=LAKI-LAKI ; PEREMPUAN - Tambahkan Component DBGrid dan DBControl dengan memilih pada TAB DataControls, tambahkan Component dataSource dengan memilih pada dataAccess, tambahkan component statusbar dengan memilih pada Tab Win 32.letakkan ke dalam frmPegawai dan atur properties masing-component tersebut sbb : 8. DBGrid : Align=AlClient, DataSource=DataSource1, ReadOnly=true 9. CBControl : Align=alBotom,DataSource=DataSource1, VisibleButtons= nbInsert=false; nbCancel=false; nbDelete=false;nbPost=false;nbEdit=false, Flat=true 10. sebelum mengatur properties data source pilih menu File>use Unit>pilih UUtama>klik OK, baru kemudian pada dataSource atur Properties DataSet =frmUtama.ZQueryPegawai 11. - Tambahkan 5 component BiButton dengan memilih pada TAB Additional letakkan ke dalam panel field frmPegawai dan atur properties masing-component tersebut sbb : 12. BitButton1 : Name =bbtnSimpan, Caption=&Simpan 13. BitButton1 : Name =bbtnBatal, Caption=&Batal 14. BitButton1 : Name =bbtnEdit, Caption=&Edit 15. BitButton1 : Name =bbtnHapus, Caption=&Hapus 16. BitButton1 : Name =bbtnKeluar, Caption=&Keluar Contoh hasil sebelum di Compile : Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 20
  • 21. Halaman : - Kembali ke frmUtama lalu pilih Menu Files>Use Unit>pilih UPegawai>klik Ok - Pada frmPegawai tekan pada menu File>Data Pegawai dan masukkan perintah frmPegawai.ShowModal; Untuk sintak lengkapnya : procedure TfrmUtama.DataPegawai1Click(Sender: TObject); begin frmPegawai.ShowModal; end; - Jalankan dengan menekan F9 dan hasilnya : - kembali ke frmPegawai dan akan mulai memasukkan baris2 perintah : 1. Klik dua kali Tombol Keluar dan masukkan perintah close; untuk secript lengkapnya : procedure TfrmPegawai.bbtnKeluarClick(Sender: TObject); begin close; end; 2. Klik dua kali Tombol Batal dan untuk script lengkapnya : procedure TfrmPegawai.bbtnBatalClick(Sender: TObject); begin edNIP.Clear; edNama.Clear; cmbJK.Text:=''; edAlamat.Clear; edNoTelp.Clear; edSandi.Clear; end; 3. Tambahkan Component ZQuery terlebih dulu ke dalam frmPegawai yang nantinya akan digunakan untuk validasi agar tak terjadi redundancy data pada primary key. Atur propertiesnya sbb : a. SQL= select * from pegawai b. Connection=frmUtama.ZConnectionPresensi c. Pada ZQuery klik dua kali, klik kanan dan pilih Add all fields 4. Klik dua kali Tombol Simpan dan untuk perintah lengkapnya sbb : procedure TfrmPegawai.bbtnSimpanClick(Sender: TObject); begin ZQuery1.Close; ZQuery1.SQL.Clear; ZQuery1.SQL.Add('select * from pegawai where nip ="'+edNIP.Text+'"'); ZQuery1.Open; Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 21
  • 22. Halaman : if not ZQuery1.IsEmpty then begin MessageDlg('Maaf NIP '+ZQuery1nip.Value+' sudah dipakai sebelumnya. Silahkan anda pakai NIP lain..!!!',mtInformation,[mbOK],0); edNIP.Clear; edNIP.SetFocus; end else if ZQuery1.IsEmpty then begin frmUtama.ZQueryPegawai.Insert; frmUtama.ZQueryPegawainip.Value:=edNIP.Text; frmUtama.ZQueryPegawainama_pegawai.Value:=edNama.Text; frmUtama.ZQueryPegawaij_kel.Value:=cmbJK.Text; frmUtama.ZQueryPegawaialamat.Value:=edAlamat.Text; frmUtama.ZQueryPegawaino_telp.Value:=edNoTelp.Text; frmUtama.ZQueryPegawaisandi.Value:=edSandi.Text; frmUtama.ZQueryPegawai.Post; end; end; 5. Klik dua kali tombol hapus dan untuk perintah lengkapnya sbb : procedure TfrmPegawai.bbtnHapusClick(Sender: TObject); begin if (frmUtama.ZQueryPegawai.RecordCount=0) then begin MessageDlg('" Maaf, Data Pegawai sudah kosong ! Silahkan Anda isi kembali..!!!',mtInformation,[mbOK],0); edNIP.SetFocus; exit; end else if MessageDlg('Yakin Data mau dihapus..??? ',mtConfirmation,[mbYes,mbNo],0)=mrYes then begin frmUtama.ZQueryPegawai.Delete; edNIP.SetFocus; end; end; 6. Klik dua kali tombol edit, dan untuk script lengkapnya : procedure TfrmPegawai.bbtnEditClick(Sender: TObject); begin ZQuery1.Close; ZQuery1.SQL.Clear; ZQuery1.SQL.Add('select * from pegawai where nip ="'+edNIP.Text+'"'); ZQuery1.Open; if ZQuery1.IsEmpty then begin MessageDlg('Maaf NIP '+edNIP.Text+' belum dimasukkan sebelumnya. Data tidak ada!!!',mtInformation,[mbOK],0); edNIP.Clear; edNIP.SetFocus; end else if Trim(edNIP.Text)='' then begin MessageDlg('Maaf NIP harus diisi...!!!!',mtInformation,[mbOK],0); edNIP.SetFocus; end else if not ZQuery1.IsEmpty then begin ZQuery1.Edit; ZQuery1nip.Value:=edNIP.Text; ZQuery1nama_pegawai.Value:=edNama.Text; ZQuery1j_kel.Value:=cmbJK.Text; ZQuery1alamat.Value:=edAlamat.Text; ZQuery1no_telp.Value:=edNoTelp.Text; ZQuery1sandi.Value:=edSandi.Text; ZQuery1.Post; Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 22
  • 23. Halaman : frmUtama.ZQueryPegawai.Refresh; end; end; - Untuk perintah button sudah lengkap untuk langkah berikutnya tinggal mengatur validasi security formnya. 1. Set properties text menjadi kosong untuk semua component edit dan component combobox 2. Set properties MaxLength edNip=10 3. Set properties MaxLength edNama=20 4. Set properties MaxLength cmbJK=1 5. Set properties MaxLength edAlamat=50 6. Set properties MaxLength edNoTelp=13 7. Set properties MaxLength edSandi=20 8. klik edNip, pada jendela Object Inspector pilih event OnKeypress dan masukkan perintah : procedure TfrmPegawai.edNIPKeyPress(Sender: TObject; var Key: Char); begin if (key in['a'..'z','A'..'Z','!','@','#','$','%','^','&','*','(',')','_','-','+','=','{','}','[',']',':',';','"','|','','<','>','?','/',',','.','~', '`',' ']) then key:=#0 else if not(Key=chr(13)) then exit else edNama.SetFocus; end; 9. klik edNama, pada jendela Object Inspector pilih event OnKeypress dan masukkan perintah : procedure TfrmPegawai.edNamaKeyPress(Sender: TObject; var Key: Char); begin if not(Key=chr(13)) then exit else cmbJK.SetFocus; end; 10. lakukan hal sama untuk component combobox dan edit - Untuk selanjutnya qita bisa membuat laporan / print out dari table Pegawai dengan menggunkan Quick report atau Rave report atau komponen tambahan lainnya. Untuk membuat laporan dengan Quick report terlebih dulu qita harus menambahkan komponen seperti halnya ketika kita menambahkan Zeos kedalam Delphi. Cara menambahkan Quick report dengan cara : 1. Pilih Menu Componnent > Install Packages > setelah muncul jendela windows baru klik button Add 2. Setelah Tampil jendela Add Design Package buka folder C > Program Files > Borland > Delphi7 > Bin > dclqrt.bpl > klik Ok secara otomatis akan ditambahkan di tab component pada delphi MODUL VI SISTEM INFORMASI PRESENSI PEGAWAI DENGAN DELPHI & MYSQL SERVER , CONECTOR ZEOSDBO6 Bahasan: Data Base Mysal Menggunakan Delphi Tujuan: a. Mahasiswa Dapat Membuat Aplikasi Basis Data Sekaligus Laporan Dengan Delphi b. Mahasiswa Dapat Membuat Aplikasi Utuh Dengan Delphi Pada tutorial ini diharapkan sebelumnya anda telah menguasai database mysql, Serta Component Zeos dan Quick Report telah ditambahkan dalam palete Delphi anda karena dalam tutorial ini hal-hal tersebut tidak dibahas. Membuat database simple_simpus : Silahkan masuk ke commend prompt mysql dan masukkan perintah2 dibawah ini untuk membuat database simple_simpus mysql> create database simple_simpus; mysql> use simple_simpus; mysql> create table anggota( -> no_anggota varchar(8) primary key, -> nama_anggota varchar(30), -> tmp_lahir varchar(20), -> tgl_lahir date, -> alamat varchar(50), -> tgl_gabung date, -> tgl_habis_keanggotaan date); mysql> create table petugas( -> nip varchar(8)primary key, -> nama_petugas varchar(30), -> tmp_lahir varchar(20), -> tgl_lahir date, Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 23
  • 24. Halaman : -> alamat varchar(50)); mysql> create table buku( -> no_inventaris varchar(10)primary key, -> judul_inventaris varchar(70), -> pengarang varchar(30), -> penerbit varchar(20), -> jml_halaman char(4), -> isbn varchar(20), -> thn_terbit year); mysql> create table peminjaman( -> no_inventaris varchar(10), -> no_anggota varchar(8), -> nip varchar(8), -> tgl_pinjam date, -> tgl_kembali date, -> foreign key(no_inventaris) references buku(no_inventaris) on delete cascade on update cascade, -> foreign key(no_anggota) references anggota(no_anggota) on delete cascade on update cascade, -> foreign key(nip) references petugas(nip) on delete cascade on update cascade); mysql> create table admin( -> id_admin varchar(20), -> password varchar(20)); Membuat aplikasi Simple Simpus di Delphi : 1. Membuat Form Utama Silahkan buat Form aplikasi baru dengan cara pilih menu file->New->Aplication sehingga akan ditampilkan form baru. Silahkan tambahkan component ZConennection, 5 component ZQuery dari pallete Zeos Access seperti ditampilkan pada gambar : Gb. Tampilan Tab Component Palette Zeos Access. Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 24
  • 25. Halaman : Gb. Tampilan Form Utama Tambahkan juga component MainMenu dari tab palete Standard dan component Image dari tab palete additional dan atur propertiesnya masing-masing sbb : Nama Objek Properti Yang Diubah Nilai Form1 : TForm1 Align BorderStyle Caption Position Name alClient bsSingle ::[ Simple Simpus ]:: poScreenCenter frmUtama ZConection1 : TZConnection Database HostName Protocol User Name Conected simple_simpus localhost mysql root ZConnectionSimpleSimpus True ZQuery1 : TZQuery Connection Name SQL Active ZConnectionSimpleSimpus ZQueryPetugas Klik pada elipses dan masukkan perintah select * from petugas True ZQuery2 : TZQuery Connection Name SQL Active ZConnectionSimpleSimpus ZQueryAnggota Klik pada elipses dan masukkan perintah select * from anggota True ZQuery3 : TZQuery Connection Name SQL Active ZConnectionSimpleSimpus ZQueryBuku Klik pada elipses dan masukkan perintah select * from buku True ZQuery4 : TZQuery Connection Name SQL Active ZConnectionSimpleSimpus ZQueryPeminjaman Klik pada elipses dan masukkan perintah select * from peminjaman True ZQuery5 : TZQuery Connection Name SQL Active ZConnectionSimpleSimpus ZQueryAdmin Klik pada elipses dan masukkan perintah select * from admin True MainMenu1 : TMainMenu Items Klik tombol elipses dan buatlah Menu dengan mengisi properties captionnya : Aplikasi – About Program – Login File – Petugas – Anggota – Buku – Admin Transaksi – Sirkulasi Keluar Image1 Stretch Align Picture True alClient klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background Gambar MainMenu yang tadi diisi captionnya : Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 25
  • 26. Halaman : Silahkan simpan dengan nama UUtama.pas untuk file pasnya dan Simple_simpus.dpr untuk file dprnya. Klik pada masing2 ZQuery dua kali kemudian ketika muncul jendela dialog silahkan klik kanan dan pilih Add all fields. 2. Membuat Form Petugas Silahkan pilih menu File->New ->Form, Jangan sampai salah yaaaa. Tambahkan 3 Component Panel dari tab palete standard. dan a. Pada panel No 3 tambahkan 8 Component BitButton dari tab palete additional, 3 Component Label dan 1 component edit dari tab palete standard. b. Pada panel No 2 tambahkan 4 Component Edit, 1 Component Memo dari tab palete standard, dan 1 component DateTimePicker dari tab palete win32. Tambahkan juga 1 Component ZQuery dari tab palete ZQueryAccess, 1 Component DataSource dari tab palete DataAcces, 2 Component PopupMenu dari Tab Palete standard, 1 compoent XPManifest dan 1 Component StatusBar dari tab palete 32, 1 Component DBGrid dari tab panel DataControl Atur tampilannya seperti gambar berikut : Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 26
  • 27. Halaman : Jika sudah, pilih menu file->Use Unit. Ketika muncul kotak dialog pilihan unit, pilih UUtama. Kemudian atur juga propertisnya masing-masing componentnya sbb: Nama Objek Properti Yang Diubah Nilai Form1 : TForm1 Align BorderStyle Caption Position Name alRight bsSingle ::[ Data Petugas ]:: poScreenCenter frmPetugas Panel1 : TPanel Caption BevellInner BevellOuter Align Color :: DATA PETUGAS :: bvRaised bvLowered alTop $00E7E7E7 Panel2: TPanel Caption BevellInner BevellOuter Align Color (Kosongkan) bvRaised bvLowered alTop $00E7E7E7 ZQuery1 : TZQuery Connection SQL frmUtama.ZConnectionSimpleSimpus Klik pada elipses dan masukkan perintah select * from petugas DataSource1:TDataSource DataSet frmUtama.ZQueryPetugas Panel3 : TPanel Caption BevellInner BevellOuter Align Color (Kosongkan) bvRaised bvLowered alBottom $00E7E7E7 StatusBar1 : TStatusBar Align Color alBottom $00E7E7E7 BitButton1 : TBitBtn Caption Layout Glyp Name &Simpan blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnSimpan BitButton2 : TBitBtn Caption Layout Glyp Name &Batal blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnBatal BitButton3 : TBitBtn Caption Layout Glyp Name &Edit blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnEdit BitButton4 : TBitBtn Caption Layout Glyp Name &Hapus blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnHapus BitButton5 : TBitBtn Caption Layout Glyp &Show All blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 27
  • 28. Halaman : Name dijadikan background BtnShowAll BitButton6 : TBitBtn Caption Layout Glyp Name &Cetak blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnCetak BitButton7 : TBitBtn Caption Layout Glyp Name (kosongkan) blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnCari BitButton8 : TBitBtn Caption Layout Glyp Name &Keluar blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background. BtnKeluar DBNavigator1 : TDBNavigator DataSource VisibleButtons ALign DataSource1 Klik tombol + yang ada disiamping VisibleButtons dan atur tombol2 navigator yang mau ditampilkan seperti pada gambar alBottom DBGrid1 : TDBGrid1 Align DataSource PopupMenu alClient DataSource1 PopupMenu2 Edit1 (dipanel 2) : TEdit Name Text edNIP (kosongkan) Edit2 (dipanel 2) : TEdit Name Text edNama (kosongkan) Edit3(dipanel 2) : TEdit Name Text edTmp (kosongkan) Edit4(dipanel 2) : TEdit Name Text edSandi (kosongkan) PopupMenu1 :TPopupMenu Items klik pada elipses dan isi caption dengan -------- ^_ ^ ----------- PopupMenu2 :TPopupMenu Items klik pada elipses dan isi capion dengan Simpan, Batal, Edit, Hapus, Show All, Cetak, Keluar DateTimePicker1:TDateTimePicker Name DTPTglLahir Edit5 (dipanel 3) Name Text edKeyWord (kosongkan) Klik dua kali pada ZQuery1 kemudian ketika muncul jendela dialog silahkan klik kanan dan pilih Add all fields. Mengisikan Perintah program : 1. Klik pada edNip, kemudian pada Object inspector klik tab Event. Pilih OnKeyPress dengan mengeklik dua kali dan isikan di antara begin dan end kode : if (Key=chr(13)) then edNama.SetFocus //artinya jika dienter maka cursor akan terfokus pada edNama else if not(key in['0'..'9',Chr(8)]) then key:=#0 //artinya membatasi imput keyboard baris kode diatas digunakan untuk membatasi input keyboard yaitu hanya bisa dimasukkan angka 0 sampai 9 saja untuk kode lengkapnya : procedure TfrmPetugas.edNipKeyPress(Sender: TObject; var Key: Char); begin if (Key=chr(13)) then edNama.SetFocus else if not(key in['0'..'9',Chr(8)]) then key:=#0 end; 2. Klik pada Tombol BtnBatal dua kali, isikan diantara begin dan end kode : Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 28
  • 29. Halaman : edNip.Clear; //artinya teks pada edNip akan jadi kosong dikarenakan ada perintah clear edNama.Clear; edTmpLahir.Clear; mmAlamat.Clear; edSandi.Clear; edNip.SetFocus; 3. Klik pada Tombol BtnSimpan dua kali, isikan diantara begin dan end kode : if(Trim(edNip.Text)='')or(Trim(edNama.Text)='')or(Trim(edTmpLahir.Text)='')or(Trim(mmAlamat.Text)='')or(Trim(ed Sandi.Text)='')then//artinya jika ada field yg kosong maka akan keluar konfirmasi begin MessageDlg('Maaf, Semua field harus isi...!!!',mtInformation,[mbOK],0); edNip.SetFocus; end else begin ZQuery1.Close; ZQuery1.SQL.Clear; ZQuery1.SQL.Add('select * from petugas where nip="'+edNip.Text+'"');//menyeleksi apa ada nip yg sama ZQuery1.Open; if not(ZQuery1.IsEmpty) then//jika ada nip sama maka data tak bisa disimpan dan keluar konfirmasi begin MessageDlg('Maaf, NIP "'+ZQuery1nip.Value+'" sudah dipakai sebelumnya untuk petugas dengan nama "'+ZQuery1nama_petugas.Value+'". Silahkan anda ganti dengan NIP lain..!!!',mtInformation,[mbOK],0); edNip.Clear; edNip.SetFocus; end else if (ZQuery1.IsEmpty) then//jika tidak ada nip yg sama maka data akan disimpan begin ZQuery1.Insert;//insert merupakan perintah untuk menyisipkan satu baris data ZQuery1nip.Value:=edNip.Text; ZQuery1nama_petugas.Value:=edNama.Text; ZQuery1tmp_lahir.Value:=edTmpLahir.Text; ZQuery1tgl_lahir.Value:=DTPTglLahir.Date; ZQuery1alamat.Value:=UpperCase(mmAlamat.Text); ZQuery1sandi.Value:=edSandi.Text; ZQuery1.Post;//post merupakan perintah untuk menyimpan satu baris data yang disisipkan frmUtama.ZQueryPetugas.Refresh; BtnBatalClick(Sender); end end 4. Klik pada Tombol btnEdit dua kali, isikan diantara begin dan end kode : if(Trim(edNip.Text)='')or(Trim(edNama.Text)='')or(Trim(edTmpLahir.Text)='')or(Trim(mmAlamat.Text)='')or(Trim(ed Sandi.Text)='')then begin MessageDlg('Maaf, Semua field harus isi...!!!',mtInformation,[mbOK],0); edNip.SetFocus; end else begin ZQuery1.Close; ZQuery1.SQL.Clear; ZQuery1.SQL.Add('select * from petugas where nip="'+edNip.Text+'"'); ZQuery1.Open; if (ZQuery1.IsEmpty) then begin MessageDlg('Maaf, Petugas dengan NIP "'+edNip.Text+'" tidak ditemukan. Kemungkinan data petugas dengan NIP tersebut belum pernah dimasukkan sebelumnya atau sudah terhapus..!!!',mtInformation,[mbOK],0); edNip.Clear; edNip.SetFocus; end else if not(ZQuery1.IsEmpty) then begin ZQuery1.Edit; ZQuery1nip.Value:=edNip.Text; Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 29
  • 30. Halaman : ZQuery1nama_petugas.Value:=edNama.Text; ZQuery1tmp_lahir.Value:=edTmpLahir.Text; ZQuery1tgl_lahir.Value:=DTPTglLahir.Date; ZQuery1alamat.Value:=UpperCase(mmAlamat.Text); ZQuery1sandi.Value:=edSandi.Text; ZQuery1.Post; frmUtama.ZQueryPetugas.Refresh; BtnBatalClick(Sender); end end 5. Klik pada Tombol btnHapus dua kali, isikan diantara begin dan end kode : if(frmUtama.ZQueryPetugas.RecordCount=0)then//Melakukan pengecekkan jika terjadi kekosongan data begin MessageDlg('Maaf data petugas sudah habis. Tidak ada data yang bisa anda hapus...!!',mtInformation,[mbOK],0); edNip.SetFocus; end else if(MessageDlg('Yakin data petugas dengan NIP "'+frmUtama.ZQueryPetugasnip.Value+'" mau dihapus.. ???',mtConfirmation,[mbYes,mbNo],0)=mrYes)then//melakukan konfirmasi penghapusan data begin frmUtama.ZQueryPetugas.Delete; end; 6. Klik pada Tombol btnKeluar, isikan diantara begin dan end kode : Close; 7. Klik pada Tombol btnShowAll, isikan diantara begin dan end kode : frmUtama.ZQueryPetugas.Close; frmUtama.ZQueryPetugas.SQL.Clear; frmUtama.ZQueryPetugas.SQL.Add('select * from petugas'); frmUtama.ZQueryPetugas.Open; 8. Klik pada Tombol btnCari dua kali, isikan diantara begin dan end kode : frmUtama.ZQueryPetugas.Close; frmUtama.ZQueryPetugas.SQL.Clear; frmUtama.ZQueryPetugas.SQL.Add('select * from petugas where nip like "%'+Trim(edKeyword.Text)+'%" or nama_petugas like "%'+Trim(edKeyword.Text)+'%" or tmp_lahir like "%'+Trim(edKeyword.Text)+'%" or tgl_lahir like "%'+Trim(edKeyword.Text)+'%" or alamat like "%'+Trim(edKeyword.Text)+'%"'); frmUtama.ZQueryPetugas.Open; jangan lupa simpan dulu dengan nama UPetugas…, jika sudah silahkan kembali ke frmUtama kemudian pilih File -> Use unit dan pilih UPetugas. Selanjutnya pada form utama klik menu dan pilih menu petugas kemudian klik dua kali dan masukkan perintah : frmPetugas.ShowModal; Silahkan tekan F9 untuk melihat hasilnya dan pastikan form petugas tampil ketika anda pilih menu petugas 3. Membuat Form Anggota Silahkan pilih menu File->New ->Form, Jangan sampai salah yaaaa. Dalam pembuatan form ini hampir sama seperti form sebelumnya. Hanya saja perlu pengeditan beberapa hal. Tambahkan 3 Component Panel dari tab palete standard. dan a. Pada panel No 3 tambahkan 8 Component BitButton dari tab palete additional, 3 Component Label dan 1 component edit dari tab palete standard. b. Pada panel No 2 tambahkan 4 Component Edit, 1 Component Memo dari tab palete standard, dan 3 component DateTimePicker dari tab palete win32. Tambahkan juga 1 Component ZQuery dari tab palete ZQueryAccess, 1 Component DataSource dari tab palete DataAcces, 2 Component PopupMenu dari Tab Palete standard, 1 compoent XPManifest dan 1 Component StatusBar dari tab palete 32, 1 Component DBGrid dari tab panel DataControl Atur tampilannya seperti gambar berikut : Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 30
  • 31. Halaman : Jika sudah, pilih menu file->Use Unit. Ketika muncul kotak dialog pilihan unit, pilih UUtama. Kemudian atur juga propertisnya masing-masing componentnya sbb: Nama Objek Properti Yang Diubah Nilai Form1 : TForm1 Align BorderStyle Caption Position Name alRight bsSingle ::[ Data Anggota]:: poScreenCenter frmAnggota Panel1 : TPanel Caption BevellInner BevellOuter Align Color :: DATA ANGGOTA :: bvRaised bvLowered alTop $00E7E7E7 Panel2: TPanel Caption BevellInner BevellOuter Align Color (Kosongkan) bvRaised bvLowered alTop $00E7E7E7 ZQuery1 : TZQuery Connection SQL frmUtama.ZConnectionSimpleSimpus Klik pada elipses dan masukkan perintah select * from anggota DataSource1:TDataSource DataSet frmUtama.ZQueryAnggota Panel3 : TPanel Caption BevellInner BevellOuter Align Color (Kosongkan) bvRaised bvLowered alBottom $00E7E7E7 StatusBar1 : TStatusBar Align alBottom Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 31
  • 32. Halaman : Color $00E7E7E7 BitButton1 : TBitBtn Caption Layout Glyp Name &Simpan blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnSimpan BitButton2 : TBitBtn Caption Layout Glyp Name &Batal blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnBatal BitButton3 : TBitBtn Caption Layout Glyp Name &Edit blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnEdit BitButton4 : TBitBtn Caption Layout Glyp Name &Hapus blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnHapus BitButton5 : TBitBtn Caption Layout Glyp Name &Show All blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnShowAll BitButton6 : TBitBtn Caption Layout Glyp Name &Cetak blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnCetak BitButton7 : TBitBtn Caption Layout Glyp Name (kosongkan) blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnCari BitButton8 : TBitBtn Caption Layout Glyp Name &Keluar blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background. BtnKeluar DBNavigator1 : TDBNavigator DataSource VisibleButtons ALign DataSource1 Klik tombol + yang ada disiamping VisibleButtons dan atur tombol2 navigator yang mau ditampilkan seperti pada gambar alBottom DBGrid1 : TDBGrid1 Align DataSource alClient DataSource1 Edit1 (dipanel 2) : TEdit Name Text edNoAnggota (kosongkan) Edit2 (dipanel 2) : TEdit Name Text edNama (kosongkan) Edit3(dipanel 2) : TEdit Name Text edTmp (kosongkan) Edit4(dipanel 2) : TEdit Name Text edSandi (kosongkan) PopupMenu1 :TPopupMenu Items klik pada elipses dan isi caption dengan -------- ^_ ^ ----------- PopupMenu2 :TPopupMenu Items klik pada elipses dan isi capion dengan Simpan, Batal, Edit, Hapus, Show All, Cetak, Keluar Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 32
  • 33. Halaman : DateTimePicker1:TDateTimePicker Name DTPTglLahir Edit5 (dipanel 3) Name Text edKeyWord (kosongkan) DateTimePicker2:TDateTimePicker Name DTPTglGabung DateTimePicker3:TDateTimePicker Name DTPTglKadaluarsa Memo1 Name mmAlamat Klik dua kali pada ZQuery1 kemudian ketika muncul jendela dialog silahkan klik kanan dan pilih Add all fields. Mengisikan baris kode : 1. Klik pada Tombol btnBAtal dua kali, isikan diantara begin dan end kode : edNoA.Clear; edNama.Clear; edTmpLahir.Clear; mmAlamat.Clear; edNoTelp.Clear; edNoA.SetFocus; 2. Klik pada Tombol btnSimpan dua kali, isikan diantara begin dan end kode : if(Trim(edNoA.Text)='')or(Trim(edNama.Text)='')or(Trim(edTmpLahir.Text)='')or(Trim(mmAlamat.Text)='')or(Trim(ed NoTelp.Text)='')then begin MessageDlg('Maaf, Semua field harus isi...!!!',mtInformation,[mbOK],0); edNoA.SetFocus; end else begin ZQuery1.Close; ZQuery1.SQL.Clear; ZQuery1.SQL.Add('select * from anggota where no_anggota="'+edNoA.Text+'"'); ZQuery1.Open; if not(ZQuery1.IsEmpty) then begin MessageDlg('Maaf, No.Anggota "'+ZQuery1no_anggota.Value+'" sudah dipakai sebelumnya untuk petugas dengan nama "'+ZQuery1nama_anggota.Value+'". Silahkan anda ganti dengan No.Anggota lain..!!!',mtInformation,[mbOK],0); edNoA.Clear; edNoA.SetFocus; end else if (ZQuery1.IsEmpty) then begin ZQuery1.Insert; ZQuery1no_anggota.Value:=edNoA.Text; ZQuery1nama_anggota.Value:=edNama.Text; ZQuery1tmp_lahir.Value:=edTmpLahir.Text; ZQuery1tgl_lahir.Value:=DTPTglLahir.Date; ZQuery1alamat.Value:=UpperCase(mmAlamat.Text); ZQuery1tgl_gabung.Value:=DTPTglGabung.Date; ZQuery1tgl_habis_anggota.Value:=DTPTglKadaluarsa.Date; ZQuery1no_telp.Value:=edNoTelp.Text; ZQuery1.Post; frmUtama.ZQueryAnggota.Refresh; BtnBatalClick(Sender); end end 3. Klik pada Tombol btnEdit dua kali, isikan diantara begin dan end kode : if(Trim(edNoA.Text)='')or(Trim(edNama.Text)='')or(Trim(edTmpLahir.Text)='')or(Trim(mmAlamat.Text)='')or(Trim(ed NoTelp.Text)='')then begin MessageDlg('Maaf, Semua field harus isi...!!!',mtInformation,[mbOK],0); edNoA.SetFocus; end else begin ZQuery1.Close; ZQuery1.SQL.Clear; Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 33
  • 34. Halaman : ZQuery1.SQL.Add('select * from anggota where no_anggota="'+edNoA.Text+'"'); ZQuery1.Open; if (ZQuery1.IsEmpty) then begin MessageDlg('Maaf, Anggota dengan No.Anggota "'+edNoA.Text+'" tidak ditemukan. Kemungkinan data anggota dengan No.Anggota tersebut belum pernah dimasukkan sebelumnya atau sudah terhapus..!!!',mtInformation,[mbOK],0); edNoA.Clear; edNoA.SetFocus; end else if not(ZQuery1.IsEmpty) then begin ZQuery1.Edit; ZQuery1no_anggota.Value:=edNoA.Text; ZQuery1nama_anggota.Value:=edNama.Text; ZQuery1tmp_lahir.Value:=edTmpLahir.Text; ZQuery1tgl_lahir.Value:=DTPTglLahir.Date; ZQuery1alamat.Value:=UpperCase(mmAlamat.Text); ZQuery1tgl_gabung.Value:=DTPTglGabung.Date; ZQuery1tgl_habis_anggota.Value:=DTPTglKadaluarsa.Date; ZQuery1no_telp.Value:=edNoTelp.Text; ZQuery1.Post; frmUtama.ZQueryAnggota.Refresh; BtnBatalClick(Sender); end end 4. Klik pada Tombol btnHapus dua kali, isikan diantara begin dan end kode : if(frmUtama.ZQueryAnggota.RecordCount=0)then begin MessageDlg('Maaf data anggota sudah habis. Tidak ada data yang bisa anda hapus...!!',mtInformation,[mbOK],0); edNoA.SetFocus; end else if(MessageDlg('Yakin data anggota dengan No.Anggota "'+frmUtama.ZQueryAnggotano_anggota.Value+'" mau dihapus.. ???',mtConfirmation,[mbYes,mbNo],0)=mrYes)then begin frmUtama.ZQueryAnggota.Delete; end; 5. Klik pada Tombol btnKeluar dua kali, isikan diantara begin dan end kode : close; 6. Klik pada Tombol btnCari dua kali, isikan diantara begin dan end kode : frmUtama.ZQueryAnggota.Close; frmUtama.ZQueryAnggota.SQL.Clear; frmUtama.ZQueryAnggota.SQL.Add('select * from anggota where no_anggota like "%'+Trim(edKeyword.Text)+'%" or nama_anggota like "%'+Trim(edKeyword.Text)+'%" or tmp_lahir like "%'+Trim(edKeyword.Text)+'%" or tgl_lahir like "%'+Trim(edKeyword.Text)+'%" or alamat like "%'+Trim(edKeyword.Text)+'%" or tgl_gabung like "%'+Trim(edKeyword.Text)+'%" or tgl_habis_anggota like "%'+Trim(edKeyword.Text)+'%" or no_telp like "%'+Trim(edKeyword.Text)+'%"'); frmUtama.ZQueryAnggota.Open; Label15.Caption:=IntToStr(frmUtama.ZQueryAnggota.RecordCount); 7. Klik pada Tombol btnShowAll, isikan diantara begin dan end kode : frmUtama.ZQueryPetugas.Close; frmUtama.ZQueryPetugas.SQL.Clear; frmUtama.ZQueryPetugas.SQL.Add('select * from anggota'); frmUtama.ZQueryPetugas.Open; jangan lupa simpan dulu dengan nama UAnggota…, jika sudah silahkan kembali ke frmUtama kemudian pilih File -> Use unit dan pilih UAnggota. Selanjutnya pada form utama klik menu dan pilih menu petugas kemudian klik dua kali dan masukkan perintah : frmAnggota.ShowModal; Silahkan tekan F9 untuk melihat hasilnya dan pastikan form Anggota tampil ketika anda pilih menu petugas. Untuk yang form buku silahkan anda coba sendiri seperti dua contoh form diatas karena untuk algoritma hamper sama, untuk selanjutnya langsung aja ke form peminjaman dan pengembalian buku Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 34
  • 35. Halaman : 4. Membuat Form Peminjaman Silahkan pilih menu File->New ->Form, Jangan sampai salah yaaaa. Dalam pembuatan form ini hampir sama seperti form sebelumnya. Hanya saja perlu pengeditan beberapa hal. Silahkan tambahkan 2 Component Panel dari tab palete standard. Pada panel No 2 tambahkan 6 Component BitButton dari tab palete additional, 3 Component Label dan 1 component edit dari tab palete standard. Tambahkan juga 1 Component ZQuery dari tab palete ZQueryAccess, 1 Component DataSource dari tab palete DataAcces, 2 Component PopupMenu dari Tab Palete standard, 1 compoent XPManifest dan 1 Component StatusBar dari tab palete 32, 1 Component DBGrid dari tab panel DataControl. Atur tampilannya seperti gambar berikut : Jika sudah, pilih menu file->Use Unit. Ketika muncul kotak dialog pilihan unit, pilih UUtama. Kemudian atur juga propertisnya masing-masing componentnya sbb: Nama Objek Properti Yang Diubah Nilai Form1 : TForm1 Align BorderStyle Caption Position Name alRight bsSingle ::[ Data Peminjaman ]:: poScreenCenter frmPeminjaman Panel1 : TPanel Caption BevellInner BevellOuter Align Color :: DATA PEMINJAMAN :: bvRaised bvLowered alTop $00E7E7E7 Panel2: TPanel Caption BevellInner BevellOuter Align Color (Kosongkan) bvRaised bvLowered alBottom $00E7E7E7 ZQuery1 : TZQuery Connection SQL frmUtama.ZConnectionSimpleSimpus Klik pada elipses dan masukkan perintah select peminjaman.no_inventaris,buku.judul_inventaris, peminjaman.no_anggota,anggota.nama_anggota, peminjaman.nip,petugas.nama_petugas, peminjaman.tgl_pinjam,peminjaman.tgl_kembali from buku,peminjaman,anggota,petugas where peminjaman.no_inventaris=buku.no_inventaris and peminjaman.no_anggota=anggota.no_anggota Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 35
  • 36. Halaman : and peminjaman.nip=petugas.nip DataSource1: TDataSource DataSet ZQuery1 StatusBar1 : TStatusBar Align Color alBottom $00E7E7E7 BitButton1 : TBitBtn Caption Layout Glyp Name &Pinjam blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnPinjam BitButton2 : TBitBtn Caption Layout Glyp Name &Kembali blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnKembali BitButton3 : TBitBtn Caption Layout Glyp Name &Show All blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnShowAll BitButton4 : TBitBtn Caption Layout Glyp Name &Cetak blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnCetak BitButton5 : TBitBtn Caption Layout Glyp Name (kosongkan) blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnCari BitButton6 : TBitBtn Caption Layout Glyp Name &Keluar blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background. BtnKeluar DBNavigator1 : TDBNavigator DataSource VisibleButtons ALign DataSource1 Klik tombol + yang ada disiamping VisibleButtons dan atur tombol2 navigator yang mau ditampilkan seperti pada gambar alBottom DBGrid1 : TDBGrid1 Align DataSource alClient DataSource1 PopupMenu1 :TPopupMenu Items klik pada elipses dan isi caption dengan -------- ^_ ^ ----------- PopupMenu2 :TPopupMenu Items klik pada elipses dan isi caption dengan Pinjam,Kembali,Show All, Cetak Keluar Edit1 (dipanel 2) Name Text edKeyWord (kosongkan) Klik dua kali pada ZQuery1 kemudian ketika muncul jendela dialog silahkan klik kanan dan pilih Add all fields. Kemudian buat lagi form baru untuk menginputkan data peminjaman dengan tampilan : Simpan dengan nama UInputAnggota dan atur propertiesnya masing2 : Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 36
  • 37. Halaman : Nama Objek Properti Yang Diubah Nilai Form1 : TForm1 Align BorderStyle Caption Position Name alNone bsSingle ::[ Input Peminjaman ]:: poScreenCenter frmInputPinjam ComboBox1 : TComboBox Name Text cmbInv (kosongkan) ComboBox2 : TComboBox Name Text cmbPeminjam (kosongkan) ComboBox3 : TComboBox Name Text cmbPetugas (kosongkan) BitButton1 : TBitBtn Caption Layout Glyp Name ModalResult &Simpan blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnSimpan mrYes BitButton2 : TBitBtn Caption Layout Glyp Name &Batal blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnBatal BitButton1 : TBitBtn Caption Layout Glyp Name &Keluar blGlyphTop klik pada elipses dan pilih gambar yang ada pada computer anda untuk dijadikan background BtnKeluar Edit1 : TEdit Name Text Color ReadOnly edInventaris (kosongkan) clSilver True Edit2 : TEdit Name Text Color ReadOnly edPeminjam (kosongkan) clSilver True Edit3 : TEdit Name Text Color ReadOnly edTgl (kosongkan) clSilver True Edit4 : TEdit Name Text Color ReadOnly edPetugas (kosongkan) clSilver TRue Mengisikan baris kode : 1. Klik pada Object TreeView, Pilih frmInputPinjam kemudian pada Object Inspector pilih tab Events kemudian klik dua kali pada OnActive. Masukkan code diantara begin dan end : frmUtama.FormActivate(sender); frmPeminjaman.ZQuery1.Active:=true; edTgl.Text:=DateToStr(now); 2. Klik pada Tombol btnBatal dua kali, isikan diantara begin dan end kode : if(cmbInv.Enabled=true)then begin cmbInv.Text:=''; cmbPeminjam.Text:=''; cmbPetugas.Text:=''; edInventaris.Clear; edPeminjam.Clear; edPetugas.Clear; end Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 37
  • 38. Halaman : else if(cmbInv.Enabled=false)then close; 3. Klik pada Tombol btnKeluar dua kali, isikan diantara begin dan end kode : close; 4. Membuat Procedure load : Masukkan diatas code program private baris code procedure load seperti ditampilkan pada gambar Kemudian masukkan procedure load diantara procedure yang lain : procedure TfrmInputPinjam.load; var i:integer; begin cmbPetugas.Clear; frmPetugas.tampil(''); for i:=1 to frmUtama.ZQueryPetugas.RecordCount do begin cmbPetugas.Items.Add(frmUtama.ZQueryPetugasnip.Value); frmUtama.ZQueryPetugas.Next; end; frmAnggota.tampil(''); cmbPeminjam.Clear; for i:=1 to frmUtama.ZQueryAnggota.RecordCount do begin cmbPeminjam.Items.Add(frmUtama.ZQueryAnggotano_anggota.Value); frmUtama.ZQueryAnggota.Next; end; frmBuku.tampil(''); cmbInv.Clear; for i:=1 to frmUtama.ZQueryBuku.RecordCount do begin cmbInv.Items.Add(frmUtama.ZQueryBukuno_inventaris.Value); frmUtama.ZQueryBuku.Next; end; end; Seperti ditunjukkan pada gambar : Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 38
  • 39. Halaman : Silahkan simpan dengan nama UInputPinjam, Kemudian silahkan kembali ke frmPeminjaman dan pilih Menu File->Use Unit- >Pilih UInput Pinjam Memasukkan Kode di frmPeminjaman : 1. Klik pada Tombol btnPinjam dua kali, isikan diantara begin dan end kode : frmInputPinjam.load; frmInputPinjam.cmbInv.Text:=''; frmInputPinjam.cmbInv.Enabled:=true; frmInputPinjam.cmbInv.Color:=clWindow; frmInputPinjam.cmbInv.Font.Color:=clGreen; frmInputPinjam.edInventaris.Clear; frmInputPinjam.cmbPeminjam.Text:=''; frmInputPinjam.cmbPeminjam.Enabled:=true; frmInputPinjam.cmbPeminjam.Color:=clWindow; frmInputPinjam.cmbPeminjam.Font.Color:=clGreen; frmInputPinjam.edPeminjam.Clear; frmInputPinjam.cmbPetugas.Text:=''; frmInputPinjam.cmbPetugas.Enabled:=true; frmInputPinjam.cmbPetugas.Color:=clWindow; frmInputPinjam.cmbPetugas.Font.Color:=clGreen; frmInputPinjam.edPetugas.Clear; frmInputPinjam.Caption:='::[ Input Peminjaman ]::'; frmInputPinjam.Panel2.Caption:=':: INPUT PEMINJAMAN ::'; frmInputPinjam.Label2.Caption:='Tgl.Pinjam :'; frmInputPinjam.Label2.Left:=44; frmInputPinjam.ShowModal; if(frmInputPinjam.ModalResult=mrYes)then begin if(Trim(frmInputPinjam.edInventaris.Text)='')or(Trim(frmInputPinjam.edPeminjam.Text)='')or(Trim(frmInputPinja m.edPetugas.Text)='')then begin MessageDlg('Maaf, Semua field harus terisi. Jika pada Fild-field data ada yang kosong kemungkinan ada yang salah pada inputan di combo...!!',mtInformation,[mbOK],0); end else begin frmUtama.ZQueryPeminjaman.Close; frmUtama.ZQueryPeminjaman.SQL.Clear; Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 39
  • 40. Halaman : frmUtama.ZQueryPeminjaman.SQL.Add('select * from peminjaman where no_inventaris="'+frmInputPinjam.cmbInv.Text+'"'); frmUtama.ZQueryPeminjaman.Open; if not(frmUtama.ZQueryPeminjaman.IsEmpty)then begin MessageDlg('Maaf, Buku dengan No.Inventaris "'+frmUtama.ZQueryPeminjamanno_inventaris.Value+'" sedang dipinjam sejak tanggal "'+frmUtama.ZQueryPeminjamantgl_pinjam.AsString+'" dan belum kembali...!!! ',mtInformation,[mbOK],0); end else if(frmUtama.ZQueryPeminjaman.IsEmpty)then begin frmUtama.ZQueryPeminjaman.Insert; frmUtama.ZQueryPeminjamanno_inventaris.Value:=frmInputPinjam.cmbInv.Text; frmUtama.ZQueryPeminjamanno_anggota.Value:=frmInputPinjam.cmbPeminjam.Text; frmUtama.ZQueryPeminjamannip.Value:=frmInputPinjam.cmbPetugas.Text; frmUtama.ZQueryPeminjamantgl_pinjam.Value:=now; frmUtama.ZQueryPeminjaman.Post; frmInputPinjam.BtnBatalClick(sender); ZQuery1.Refresh; end; end; end; 2. Klik pada Tombol btnKembali dua kali, isikan diantara begin dan end kode : if(ZQuery1.RecordCount=0)then begin MessageDlg('Maaf, Data peminjaman sudah kosong. Tidak ada inventaris yang bisa dikembalikan',mtInformation, [mbOK],0); end else begin frmInputPinjam.load; frmInputPinjam.cmbInv.Text:=ZQuery1no_inventaris.Value; frmInputPinjam.cmbInv.Enabled:=false; frmInputPinjam.cmbInv.Color:=clSilver; frmInputPinjam.cmbInv.Font.Color:=clWhite; frmInputPinjam.edInventaris.Text:=ZQuery1judul_inventaris.Value; frmInputPinjam.cmbPeminjam.Text:=ZQuery1no_anggota.Value; frmInputPinjam.cmbPeminjam.Enabled:=false; frmInputPinjam.cmbPeminjam.Color:=clSilver; frmInputPinjam.cmbPeminjam.Font.Color:=clWhite; frmInputPinjam.edPeminjam.Text:=ZQuery1nama_anggota.Value; frmInputPinjam.cmbPetugas.Text:=ZQuery1nip.Value; frmInputPinjam.cmbPetugas.Enabled:=false; frmInputPinjam.cmbPetugas.Color:=clSilver; frmInputPinjam.cmbPetugas.Font.Color:=clWhite; frmInputPinjam.edPetugas.Text:=ZQuery1nama_petugas.Value; frmInputPinjam.Caption:='::[ Input Pengembalian ]::'; frmInputPinjam.Panel2.Caption:=':: INPUT PENGEMBALIAN ::'; frmInputPinjam.Label2.Caption:='Tgl.Kembali :'; frmInputPinjam.Label2.Left:=39; frmInputPinjam.ShowModal; if(frmInputPinjam.ModalResult=mrYes)then begin if(Trim(frmInputPinjam.edInventaris.Text)='')or(Trim(frmInputPinjam.edPeminjam.Text)='')or(Trim(frmInputPinja m.edPetugas.Text)='')then begin MessageDlg('Maaf, Semua field harus terisi. Jika pada Fild-field data ada yang kosong kemungkinan ada yang salah pada inputan di combo...!!',mtInformation,[mbOK],0); end else begin frmUtama.ZQueryPeminjaman.Close; frmUtama.ZQueryPeminjaman.SQL.Clear; frmUtama.ZQueryPeminjaman.SQL.Add('select * from peminjaman where no_inventaris="'+frmInputPinjam.cmbInv.Text+'"'); frmUtama.ZQueryPeminjaman.Open; if (frmUtama.ZQueryPeminjaman.IsEmpty)then begin Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 40
  • 41. Halaman : MessageDlg('Maaf, Buku dengan No.Inventaris "'+frmUtama.ZQueryPeminjamanno_inventaris.Value+'" sedang sedang dipinjam sejak tanggal "'+frmUtama.ZQueryPeminjamantgl_pinjam.AsString+'" dan belum kembali...!!! ',mtInformation,[mbOK],0); end else if not(frmUtama.ZQueryPeminjaman.IsEmpty)then begin frmUtama.ZQueryPeminjaman.Delete; ZQuery1.Refresh; end; end; end; end; 3. Klik pada Tombol btnKeluar dua kali, isikan diantara begin dan end kode : close Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media 41