Docstoc

modul-delphi

Document Sample
modul-delphi Powered By Docstoc
					                                                                                                                   Halaman :   1

                                                         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
                                                                                                                 Halaman :   2

         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
                                                                                                                Halaman :   3

                                                     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                         Menghitung Luas Segitiga
                                    Font : Size                     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
                                                                                                  Halaman :   4

 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
                                                                                                               Halaman :   5

                  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
                                                                                                               Halaman :   6

                                                         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                                     Terbilang
                                           Size                                        20
         Label2                            Caption                                     Angka:
         Panel1                            Caption                                     (dikosongkan)
         BitBtn1                           Caption                                     &Cek
                                           Glyph                                       (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 Files\Common Files\Borland Shared\
             Images\Button, 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
                                                                                                             Halaman :   7

       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
                                                                                                           Halaman :   8

            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
                                                                                                                Halaman :   9

                                                        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
                                                                                                   Halaman : 10



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
                                                                                              Halaman : 11

 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
                                                                                                                Halaman : 12


                                                        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
                                                                                                        Halaman : 13


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
                                                                                                      Halaman : 14




    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
                                                                                                            Halaman : 15




              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                         bsDialog
                                            Caption                             Basis Data...
         Table1                             DatabaseName                        Akademik
                                            TableName                           Mahasiswa.db
                                            IndexFieldName                      Nim; Nama Mahasiswa
                                            Active                              True
         DataSource1                        DataSet                             Table1
         DBGrid1                            DataSource                          DataSource1
         DBNavigator1                       DataSource                          DataSource1
         Bitbtn1                            Caption                             &Laporan
                                            Glyph                               report.bmp
         Bitbtn2                            Kind                                bkClose
         Label1                             Caption                             DATABASE MAHASISWA
                                            Font.Name                           Verdana
                                            Font.Size                           20




                           Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
                                                                                                        Halaman : 16




        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                    Akademik
                                            TableName                       Mahasiswa.db
                                            IndexFieldName                  Nim; Nama Mahasiswa
                                            Active                          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                         Table1
                                            DataField                       Nim
              QRDBtext2                     DataSet                         Table1
                                            DataField                       Nama Mahasiwa
              QRDBtext3                     DataSet                         Table1
                                            DataField                       Tempat Lahir
              QRDBtext4                     DataSet                         Table1
                                            DataField                       Tanggal Lahir
              QRDBtext5                     DataSet                         Table1
                                            DataField                       Jurusan
              QRDBtext6                     DataSet                         Table1
                                            DataField                       Alamat
              QuickRep1                     DataSet                         Table1
                                            ReportTitle                     Laporan Mahasiswa

        4.   Pastikan Tampilan Form anda akan terlihat seperti berikut :




                           Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
                                                                                                            Halaman : 17




             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
                                                                                                              Halaman : 18

  a. Kopikan file .bpl yang berada di folder ZEOSDBO-6.6.0-beta\bplnya ke folder BPL yang ada di folder C:\Program
      Files\Borland\Delphi7\Projects\BPL.
  b. Kopikan juga file .dcu yang berada di folder ZEOSDBO-6.6.0-beta\bplnya\dcu ke folder LIB yang ada di folder C:\Program
      Files\Borland\Delphi7\Lib
  c. Kopikan juga file .dll yang ada di ZEOSDBO-6.6.0-beta\lib\mysql ke folder C:\WINDOWS\system
      dan C:\WINDOWS\system32
  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 Files\Borland\Delphi7\Projects\BPL. 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
                                                                                                               Halaman : 19

         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
                                                                                                       Halaman : 20

       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
                                                                                                     Halaman : 21

-   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
                                                                                                           Halaman : 22

            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
                                                                                                                                            Halaman : 23

                             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
                                                                                                                Halaman : 24

  -> 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
                                                                                                                Halaman : 25




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                              alClient
                                             BorderStyle                        bsSingle
                                             Caption                            ::[ Simple Simpus ]::
                                             Position                           poScreenCenter
                                             Name                               frmUtama
         ZConection1 : TZConnection          Database                           simple_simpus
                                             HostName                           localhost
                                             Protocol                           mysql
                                             User                               root
                                             Name                               ZConnectionSimpleSimpus
                                             Conected                           True
         ZQuery1 : TZQuery                   Connection                         ZConnectionSimpleSimpus
                                             Name                               ZQueryPetugas
                                             SQL                                Klik pada elipses dan masukkan perintah
                                                                                select * from petugas
                                             Active                             True
         ZQuery2 : TZQuery                   Connection                         ZConnectionSimpleSimpus
                                             Name                               ZQueryAnggota
                                             SQL                                Klik pada elipses dan masukkan perintah
                                                                                select * from anggota
                                             Active                             True
         ZQuery3 : TZQuery                   Connection                         ZConnectionSimpleSimpus
                                             Name                               ZQueryBuku
                                             SQL                                Klik pada elipses dan masukkan perintah
                                                                                select * from buku
                                             Active                             True
         ZQuery4 : TZQuery                   Connection                         ZConnectionSimpleSimpus
                                             Name                               ZQueryPeminjaman
                                             SQL                                Klik pada elipses dan masukkan perintah
                                                                                select * from peminjaman
                                             Active                             True
         ZQuery5 : TZQuery                   Connection                         ZConnectionSimpleSimpus
                                             Name                               ZQueryAdmin
                                             SQL                                Klik pada elipses dan masukkan perintah
                                                                                select * from admin
                                             Active                             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                            True
                                             Align                              alClient
                                             Picture                            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
                                                                                                              Halaman : 26




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
                                                                                                                      Halaman : 27




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                                 alRight
                                                BorderStyle                           bsSingle
                                                Caption                               ::[ Data Petugas ]::
                                                Position                              poScreenCenter
                                                Name                                  frmPetugas
          Panel1 : TPanel                       Caption                               :: DATA PETUGAS ::
                                                BevellInner                           bvRaised
                                                BevellOuter                           bvLowered
                                                Align                                 alTop
                                                Color                                 $00E7E7E7
          Panel2: TPanel                        Caption                               (Kosongkan)
                                                BevellInner                           bvRaised
                                                BevellOuter                           bvLowered
                                                Align                                 alTop
                                                Color                                 $00E7E7E7
          ZQuery1 : TZQuery                     Connection                            frmUtama.ZConnectionSimpleSimpus
                                                SQL                                   Klik pada elipses dan masukkan perintah
                                                                                      select * from petugas
          DataSource1:TDataSource               DataSet                               frmUtama.ZQueryPetugas
          Panel3 : TPanel                       Caption                               (Kosongkan)
                                                BevellInner                           bvRaised
                                                BevellOuter                           bvLowered
                                                Align                                 alBottom
                                                Color                                 $00E7E7E7
          StatusBar1 : TStatusBar               Align                                 alBottom
                                                Color                                 $00E7E7E7
          BitButton1 : TBitBtn                  Caption                               &Simpan
                                                Layout                                blGlyphTop
                                                Glyp                                  klik pada elipses          dan pilih gambar
                                                                                      yang ada pada computer anda untuk
                                                                                      dijadikan background
                                                Name                                  BtnSimpan
          BitButton2 : TBitBtn                  Caption                               &Batal
                                                Layout                                blGlyphTop
                                                Glyp                                  klik pada elipses          dan pilih gambar
                                                                                      yang ada pada computer anda untuk
                                                                                      dijadikan background
                                                Name                                  BtnBatal
          BitButton3 : TBitBtn                  Caption                               &Edit
                                                Layout                                blGlyphTop
                                                Glyp                                  klik pada elipses          dan pilih gambar
                                                                                      yang ada pada computer anda untuk
                                                                                      dijadikan background
                                                Name                                  BtnEdit
          BitButton4 : TBitBtn                  Caption                               &Hapus
                                                Layout                                blGlyphTop
                                                Glyp                                  klik pada elipses          dan pilih gambar
                                                                                      yang ada pada computer anda untuk
                                                                                      dijadikan background
                                                Name                                  BtnHapus
          BitButton5 : TBitBtn                  Caption                               &Show All
                                                Layout                                blGlyphTop
                                                Glyp                                  klik pada elipses          dan pilih gambar
                                                                                      yang ada pada computer anda untuk

                            Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
                                                                                                                        Halaman : 28

                                                                                      dijadikan background
                                                  Name                                BtnShowAll
          BitButton6 : TBitBtn                    Caption                             &Cetak
                                                  Layout                              blGlyphTop
                                                  Glyp                                klik pada elipses          dan pilih gambar
                                                                                      yang ada pada computer anda untuk
                                                                                      dijadikan background
                                                  Name                                BtnCetak
          BitButton7 : TBitBtn                    Caption                             (kosongkan)
                                                  Layout                              blGlyphTop
                                                  Glyp                                klik pada elipses          dan pilih gambar
                                                                                      yang ada pada computer anda untuk
                                                                                      dijadikan background
                                                  Name                                BtnCari
          BitButton8 : TBitBtn                    Caption                             &Keluar
                                                  Layout                              blGlyphTop
                                                  Glyp                                klik pada elipses          dan pilih gambar
                                                                                      yang ada pada computer anda untuk
                                                                                      dijadikan background.
                                                  Name                                BtnKeluar
          DBNavigator1 : TDBNavigator             DataSource                          DataSource1
                                                  VisibleButtons                      Klik tombol + yang ada disiamping
                                                                                      VisibleButtons dan atur tombol2 navigator
                                                                                      yang mau ditampilkan seperti pada gambar
                                                  ALign                               alBottom
          DBGrid1 : TDBGrid1                      Align                               alClient
                                                  DataSource                          DataSource1
                                                  PopupMenu                           PopupMenu2
          Edit1 (dipanel 2)    : TEdit            Name                                edNIP
                                                  Text                                (kosongkan)
          Edit2 (dipanel 2)    : TEdit            Name                                edNama
                                                  Text                                (kosongkan)
          Edit3(dipanel 2)     : TEdit            Name                                edTmp
                                                  Text                                (kosongkan)
          Edit4(dipanel 2)     : TEdit            Name                                edSandi
                                                  Text                                (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                                edKeyWord
                                                  Text                                (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
                                                                                                     Halaman : 29

 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
                                                                                                               Halaman : 30

    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
                                                                                                                   Halaman : 31




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                               alRight
                                                BorderStyle                         bsSingle
                                                Caption                             ::[ Data Anggota]::
                                                Position                            poScreenCenter
                                                Name                                frmAnggota
          Panel1 : TPanel                       Caption                             :: DATA ANGGOTA ::
                                                BevellInner                         bvRaised
                                                BevellOuter                         bvLowered
                                                Align                               alTop
                                                Color                               $00E7E7E7
          Panel2: TPanel                        Caption                             (Kosongkan)
                                                BevellInner                         bvRaised
                                                BevellOuter                         bvLowered
                                                Align                               alTop
                                                Color                               $00E7E7E7
          ZQuery1 : TZQuery                     Connection                          frmUtama.ZConnectionSimpleSimpus
                                                SQL                                 Klik pada elipses dan masukkan perintah
                                                                                    select * from anggota
          DataSource1:TDataSource               DataSet                             frmUtama.ZQueryAnggota
          Panel3 : TPanel                       Caption                             (Kosongkan)
                                                BevellInner                         bvRaised
                                                BevellOuter                         bvLowered
                                                Align                               alBottom
                                                Color                               $00E7E7E7
          StatusBar1 : TStatusBar               Align                               alBottom

                            Modul Delphi , disempurnakan akhi_tangguh@yahoo.com. Khanza.Soft Media
                                                                                                              Halaman : 32

                                        Color                               $00E7E7E7
BitButton1 : TBitBtn                    Caption                             &Simpan
                                        Layout                              blGlyphTop
                                        Glyp                                klik pada elipses          dan pilih gambar
                                                                            yang ada pada computer anda untuk
                                                                            dijadikan background
                                        Name                                BtnSimpan
BitButton2 : TBitBtn                    Caption                             &Batal
                                        Layout                              blGlyphTop
                                        Glyp                                klik pada elipses          dan pilih gambar
                                                                            yang ada pada computer anda untuk
                                                                            dijadikan background
                                        Name                                BtnBatal
BitButton3 : TBitBtn                    Caption                             &Edit
                                        Layout                              blGlyphTop
                                        Glyp                                klik pada elipses          dan pilih gambar
                                                                            yang ada pada computer anda untuk
                                                                            dijadikan background
                                        Name                                BtnEdit
BitButton4 : TBitBtn                    Caption                             &Hapus
                                        Layout                              blGlyphTop
                                        Glyp                                klik pada elipses          dan pilih gambar
                                                                            yang ada pada computer anda untuk
                                                                            dijadikan background
                                        Name                                BtnHapus
BitButton5 : TBitBtn                    Caption                             &Show All
                                        Layout                              blGlyphTop
                                        Glyp                                klik pada elipses          dan pilih gambar
                                                                            yang ada pada computer anda untuk
                                                                            dijadikan background
                                        Name                                BtnShowAll
BitButton6 : TBitBtn                    Caption                             &Cetak
                                        Layout                              blGlyphTop
                                        Glyp                                klik pada elipses          dan pilih gambar
                                                                            yang ada pada computer anda untuk
                                                                            dijadikan background
                                        Name                                BtnCetak
BitButton7 : TBitBtn                    Caption                             (kosongkan)
                                        Layout                              blGlyphTop
                                        Glyp                                klik pada elipses          dan pilih gambar
                                                                            yang ada pada computer anda untuk
                                                                            dijadikan background
                                        Name                                BtnCari
BitButton8 : TBitBtn                    Caption                             &Keluar
                                        Layout                              blGlyphTop
                                        Glyp                                klik pada elipses          dan pilih gambar
                                                                            yang ada pada computer anda untuk
                                                                            dijadikan background.
                                        Name                                BtnKeluar
DBNavigator1 : TDBNavigator             DataSource                          DataSource1
                                        VisibleButtons                      Klik tombol + yang ada disiamping
                                                                            VisibleButtons dan atur tombol2 navigator
                                                                            yang mau ditampilkan seperti pada gambar
                                        ALign                               alBottom
DBGrid1 : TDBGrid1                      Align                               alClient
                                        DataSource                          DataSource1
Edit1 (dipanel 2)    : TEdit            Name                                edNoAnggota
                                        Text                                (kosongkan)
Edit2 (dipanel 2)    : TEdit            Name                                edNama
                                        Text                                (kosongkan)
Edit3(dipanel 2)     : TEdit            Name                                edTmp
                                        Text                                (kosongkan)
Edit4(dipanel 2)     : TEdit            Name                                edSandi
                                        Text                                (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
                                                                                                                 Halaman : 33

          DateTimePicker1:TDateTimePicker       Name                                DTPTglLahir
          Edit5 (dipanel 3)                     Name                                edKeyWord
                                                Text                                (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
                                                                                                                Halaman : 34

   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
                                                                                                                   Halaman : 35

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                         alRight
                                               BorderStyle                   bsSingle
                                               Caption                       ::[ Data Peminjaman ]::
                                               Position                      poScreenCenter
                                               Name                          frmPeminjaman
          Panel1 : TPanel                      Caption                       :: DATA PEMINJAMAN ::
                                               BevellInner                   bvRaised
                                               BevellOuter                   bvLowered
                                               Align                         alTop
                                               Color                         $00E7E7E7
          Panel2: TPanel                       Caption                       (Kosongkan)
                                               BevellInner                   bvRaised
                                               BevellOuter                   bvLowered
                                               Align                         alBottom
                                               Color                         $00E7E7E7
          ZQuery1 : TZQuery                    Connection                    frmUtama.ZConnectionSimpleSimpus
                                               SQL                           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
                                                                                                                    Halaman : 36

                                                                              and
                                                                               peminjaman.nip=petugas.nip
         DataSource1: TDataSource               DataSet                       ZQuery1
         StatusBar1 : TStatusBar                Align                         alBottom
                                                Color                         $00E7E7E7
         BitButton1 : TBitBtn                   Caption                       &Pinjam
                                                Layout                        blGlyphTop
                                                Glyp                          klik pada elipses      dan pilih gambar yang ada
                                                                              pada computer anda untuk dijadikan background
                                                Name                          BtnPinjam
         BitButton2 : TBitBtn                   Caption                       &Kembali
                                                Layout                        blGlyphTop
                                                Glyp                          klik pada elipses      dan pilih gambar yang ada
                                                                              pada computer anda untuk dijadikan background
                                                Name                          BtnKembali
         BitButton3 : TBitBtn                   Caption                       &Show All
                                                Layout                        blGlyphTop
                                                Glyp                          klik pada elipses      dan pilih gambar yang ada
                                                                              pada computer anda untuk dijadikan background
                                                Name                          BtnShowAll
         BitButton4 : TBitBtn                   Caption                       &Cetak
                                                Layout                        blGlyphTop
                                                Glyp                          klik pada elipses      dan pilih gambar yang ada
                                                                              pada computer anda untuk dijadikan background
                                                Name                          BtnCetak
         BitButton5 : TBitBtn                   Caption                       (kosongkan)
                                                Layout                        blGlyphTop
                                                Glyp                          klik pada elipses      dan pilih gambar yang ada
                                                                              pada computer anda untuk dijadikan background
                                                Name                          BtnCari
         BitButton6 : TBitBtn                   Caption                       &Keluar
                                                Layout                        blGlyphTop
                                                Glyp                          klik pada elipses      dan pilih gambar yang ada
                                                                              pada computer anda untuk dijadikan background.
                                                Name                          BtnKeluar
         DBNavigator1 : TDBNavigator            DataSource                    DataSource1
                                                VisibleButtons                Klik tombol + yang ada disiamping VisibleButtons
                                                                              dan atur tombol2 navigator yang mau ditampilkan
                                                                              seperti pada gambar
                                                ALign                         alBottom
         DBGrid1 : TDBGrid1                     Align                         alClient
                                                DataSource                    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                          edKeyWord
                                                Text                          (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
                                                                                                                      Halaman : 37


                   Nama Objek                         Properti Yang Diubah                            Nilai
          Form1 : TForm1                         Align                              alNone
                                                 BorderStyle                        bsSingle
                                                 Caption                            ::[ Input Peminjaman ]::
                                                 Position                           poScreenCenter
                                                 Name                               frmInputPinjam
          ComboBox1 : TComboBox                  Name                               cmbInv
                                                 Text                               (kosongkan)
          ComboBox2 : TComboBox                  Name                               cmbPeminjam
                                                 Text                               (kosongkan)
          ComboBox3 : TComboBox                  Name                               cmbPetugas
                                                 Text                               (kosongkan)
          BitButton1 : TBitBtn                   Caption                            &Simpan
                                                 Layout                             blGlyphTop
                                                 Glyp                               klik pada elipses        dan   pilih gambar
                                                                                    yang ada pada computer         anda untuk
                                                                                    dijadikan background
                                                 Name                               BtnSimpan
                                                 ModalResult                        mrYes
          BitButton2 : TBitBtn                   Caption                            &Batal
                                                 Layout                             blGlyphTop
                                                 Glyp                               klik pada elipses        dan   pilih gambar
                                                                                    yang ada pada computer         anda untuk
                                                                                    dijadikan background
                                                 Name                               BtnBatal
          BitButton1 : TBitBtn                   Caption                            &Keluar
                                                 Layout                             blGlyphTop
                                                 Glyp                               klik pada elipses        dan   pilih gambar
                                                                                    yang ada pada computer         anda untuk
                                                                                    dijadikan background
                                                 Name                               BtnKeluar
          Edit1     : TEdit                      Name                               edInventaris
                                                 Text                               (kosongkan)
                                                 Color                              clSilver
                                                 ReadOnly                           True
          Edit2     : TEdit                      Name                               edPeminjam
                                                 Text                               (kosongkan)
                                                 Color                              clSilver
                                                 ReadOnly                           True
          Edit3     : TEdit                      Name                               edTgl
                                                 Text                               (kosongkan)
                                                 Color                              clSilver
                                                 ReadOnly                           True
          Edit4     : TEdit                      Name                               edPetugas
                                                 Text                               (kosongkan)
                                                 Color                              clSilver
                                                 ReadOnly                           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
                                                                                                        Halaman : 38

 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
                                                                                                           Halaman : 39




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
                                                                                                           Halaman : 40

    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
                                                                                                     Halaman : 41

       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

				
DOCUMENT INFO
Shared By:
Categories:
Stats:
views:1020
posted:3/25/2011
language:Indonesian
pages:41