Modul-Delphi p Gun

download Modul-Delphi p Gun

of 55

description

delphi

Transcript of Modul-Delphi p Gun

  • MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJECT

    (PBO-1)

    DELPHI

    Disusun Oleh : Gunawan Rudi Cahyono, ST. MT.

    Sekolah Tinggi Manajemen Informatika Komputer (STMIK)

    Banjarbaru 2009

  • Diktat Delphi

    BAB I PENDAHULUAN

    (IDE Delphi dan OOP)

    Delphi adalah suatu program berbasis bahasa Pascal yang berjalan dalam lingkungan Windows. Delphi telah memanfaatkan suatu teknik pemrograman yang disebut RAD yang telah membuat pemrograman menjadi lebih mudah. Delphi adalah suatu bahasa pemrograman yang telah memanfaatkan metode pemrograman Object Oriented Programming (OOP).

    Lingkungan kerja Borland Delphi dapat dilihat pada gambar di bawah ini.

    Component Palette

    Unit/Source Code

    Form

    Object Inspector

    Fungsi dari elemen-elemen di atas adalah : - Object Inspector : suatu window yang berguna untuk mengatur suatu object baik

    properti, events dan method. - Form : Digunakan sebagai layar/window yang digunakan sebagai lembar kerja kita. Di

    form-lah semua komponen seperti tombol dan komponen lainnya disimpan. - Window Unit/Source Code : Window/layar yang berisi perintah-perintah yang akan

    dieksekusi oleh komputer. Di layar inilah kita mengisikan program-program. - Component Palette : Layar yang berisikan komponen-komponen yang dipakai dipakai

    dalam program kita.

    By. Gunawan Rudi Cahyono, ST, MT Halaman. 1

  • Diktat Delphi

    Pengantar Object Oriented Programming (OOP) Perbedaan konsep pemrograman berbasis objek dengan konsep pemrograman biasa adalah

    sebagai berikut : 1. Dalam pemrograman biasa, suatu benda hanya memiliki properti (ciri) yang membentuk dirinya.

    Contoh : Objek manusia memiliki nama, tinggi, berat, warna kulit dan lain-lain. 2. Dalam pemrograman berorientasi objek, suatu benda tidak hanya memiliki properti (ciri) tetapi juga

    memiliki method dan event. Contoh: Objek manusia tidak hanya memiliki properti nama, tinggi, berat, warna kulit tetapi juga mempunyai metode / langkah yang dapat dikerjakan dan juga event (suatu kejadian yang bisa terjadi pada objek). Event dapat berupa : Event ketika lapar, ketika haus, ketika ngantuk dan lain-lain. Method dapat berupa : Makan, minum, tidur. Suatu method bisa saja dipanggil ketika suatu event terjadi. Contoh ketika manusia lapar, maka dia akan melakukan method makan.

    Contoh nyata dalam pemrograman adalah sebagai berikut : Misalkan program yang kita buat

    memiliki sebuah form dan sebuah tombol. Kita dapat memberikan suatu perintah ke masing-masing event dari kedua objek tersebut. Misalkan ketika form diklik, maka warna dari form berganti menjadi merah, dan ketika tombol ditekan maka program akan ditutup.

    Untuk membuat program tersebut maka lakukan langkah-langkah sebagai berikut : 1. Buat suatu aplikasi baru dengan mengklik menu File New Application. Sehingga akan muncul

    suatu form kosong yang akan kita beri program. 2. Kemudian tempatkan komponen (objek) Button yang ada pada Component Palette Standar ke

    form. Caranya : Klik Button kemudian geserkan kursor ke form dan kemudian klik ditempat yang diinginkan. Lihat gambar di bawah ini.

    3. Sekarang klik form kemudian klik tab event di window object inspector dan pilih tab Event

    onclick. Double klik event tersebut. Maka akan muncul suatu procedure/method kosong yang harus diisi sesuai keinginan. Contoh di bawah ini akan mengganti warna (properti color) dari Form1 menjadi warna merah. Isilah programnya sebagai berikut : procedure TForm1.FormClick(Sender: TObject); begin Form1.Color:=clred; end; Keterangan program : - Tanda titik (.) adalah tanda pemisah antara objek dengan propertinya. - Setiap akhir dari perintah harus diberi perintah titik koma (;) - Pengisian nilai ke suatu variabel atau properti menggunakan simbol titik dua sama dengan

    (:=). 4. Sekarang klik objek tombol kemudian klik tab event pada object inspector dan pilih event onclick.

    Double klik atau tulis nama fungsi yang akan digunakan sebagai method yang akan dikerjakan ketika tombol diklik. Kemudian tulis perintah untuk menutup form sebagai berikut : procedure TForm1.Button1Click(Sender: TObject); begin Form1.Close; end;

    5. Tekan tombol F9 atau menu Run Run atau tekan tombol untuk menjalankan program.

    By. Gunawan Rudi Cahyono, ST, MT Halaman. 2

  • Diktat Delphi

    BAB II PROGRAM PERTAMA

    Kasus :

    Buatlah sebuah program menggunakan Delphi untuk menghitung penjualan barang. Data yang diinputkan adalah nama barang, harga barang, dan quantitas penjualan. Program tersebut harus dapat menghasilkan data sub total, diskon sebesar 10% dari subtotal dan total penjualan. Solusi :

    Dari kasus di atas, maka kita dapat menyusun form seperti di bawah ini.

    Properti-properti utama yang bisa diatur untuk tiap komponen di atas adalah :

    Properti-properti Form BorderIcon Border icon mempunyai pilihan sebagai berikut :

    - BiSystemMenu : Apakah form akan memakai icon maximize, minimize dan close. Isi properti ini dengan true untuk mengaktifkannya.

    - BiMaximize : Apakah form akan memakai icon Maximize - BiMinimize : Apakah form akan memakai icon Minimize - BiHelp : Apakah form akan memakai icon help.

    BorderStyle Properti ini memiliki 6 nilai, yaitu : - BsDialog : Form hanya akan memiliki icon close - BsNone : Form tidak mempunyai garis pinggir - BsSingle : Form bisa diminimize, dimaximize tapi tidak bisa dibesarkan

    (resize) - BsSizeable : Form default, bisa diminimize, maximize dan diperbesar. - BsToolWindow : Judul form lebih kecil dan tidak bisa diperbesar. - BsSizeToolWin : Sama dengan bsToolWindow bisa diperbesar.

    BorderWidth Lebar border untuk form ke bidang clientnya. Caption Judul dari form. Bisa diisi sesuai keinginan karena tipenya string. Color Warna background dari form.

    Catatan : Coba klik pilihan pada properti color maka akan muncul beberapa pilihan. Pilihan dibawah clWhite adalah warna-warna yang dipakai dalam window (desktop-properties-apperance), seperti warna background desktop, dan lain-lain.

    Cursor Kursor apa yang akan tampil ketika cursor mouse berada diatas form (objek). Font Font standar yang akan digunakan oleh komponen-komponen yang berada dalam

    form tersebut. Untuk memilih font klik tombol elipsis () Height Tinggi dari form secara keseluruhan Hint Pesan apa yang akan ditampilkan ketika mouse diam diatas form. Untuk

    menampilkan hint maka properti ShowHint harus mempunyai nilai true.

    Label

    Button

    Edit

    By. Gunawan Rudi Cahyono, ST, MT Halaman. 1

  • Diktat Delphi

    Left Posisi kiri form dari desktop(dalam pixel). Name Ini adalah properti yang paling penting. Name bukan caption. Name adalah nama

    yang digunakan untuk memanggil/menggunakan objek. Nama object tidak boleh terpisah.

    Position Posisi menampilkan form ketika pertama kali ditampilkan. Top Posisi atas form dari desktop Visible Apakah form akan ditampilkan atau tidak.Defaultnya adalah false Width Lebar form secara keseluruhan WindowState Kondisi state apakah maximize, minimize, atau normal

    Properti-Properti Label

    ( ) Align Peletakan objek terhadap parent (form). Nilai yang dimungkinkan adalah :

    - AlClient : objek diletakan sebesar bidang sisa dari parentnya. - AlRight : objek diletakan di posisi kanan form - AlLeft : objek diletakan di posisi kiri form - AlTop : objek diletakan di posisi atas form - AlBottom : objek diletakan di posisi bawah form - AlNone : objek diletakan sesuai peletakan waktu desain

    Alignment Justifikasi dari text apakah rata kiri (leftJustify), rata kanan (rightJustify) dan tengah (center).

    Autosize Besar bidang objek akan sesuai dengan besarnya caption Caption Text (kata) yang akan ditampilkan dalam label Color Warna background dari objek Font Font yang digunakan dalam objek. Defaultnya adalah font parent. Name Nama dari objek. Ingat Name berbeda dengan Caption Transparent Apakah warna objek akan dibuat transparan (properti color tidak dipakai). WordWarp Jika diisi true, maka jika caption telah melebihi batas, maka akan menggulung ke

    baris berikutnya.

    Properti-Properti Edit

    ( ) BorderStyle Apakah objek akan menggunakan garis pinggir. CharCase Apakah data yang dimasukan akan dicapitalkan (uppercase) atau dihurufkecilkan

    (lowercase) atau normal. Color Warna background dari objek. Ctr3D Apakah akan dibuat 3D atau flat / datar. MaxLength Panjang maksimal data yang akan dimasukan. PasswordChar Karakter apa yang akan ditampilkan ketika objek ini digunakan untuk

    memasukan password contoh *. Isi properti ini dengan #0 jika objek tidak digunakan untuk membaca password.

    ReadOnly Jika diisi true, maka user tidak bisa menulis/mengubah isi objek. Text Isi tulisan dari objek ini. Edit tidak mempunyai caption, sehingga isi dari yang

    ditulis diedit berada di properti ini. Visible Isi properti ini dengan true jika objek ingin ditampilkan.

    Properti-properti dari Button

    ( ) Properti-properti dari button sebenarnya sama dengan properti-properti objek yang telah dijelaskan, tetapi ada beberapa properti yang berbeda yaitu properti : ModalResult Properti ini biasanya digunakan ketika kita membuat program yang memiliki

    banyak form. Properti ini digunakan untuk mengecek tombol apa yang diklik ketika suatu form ditutup.

    Cancel Jika properti ini diisi dengan nilai True, maka ketika ada penekanan tombol Escape dalam form tersebut maka tombol tersebut akan dieksekusi.

    Default Jika properti ini diisi dengan nilai True, maka ketika ada penekanan tombol Enter dalam form tersebut maka tombol tersebut akan dieksekusi.

    By. Gunawan Rudi Cahyono, ST, MT Halaman. 2

  • Diktat Delphi

    Setelah form selesai dibuat, maka langkah berikutnya adalah mengisi event OnClick pada tombol Hitung. Perintah untuk event OnClick adalah sebagai berikut :

    1 2 3 4 5 6 7 8 9

    10 11 12 13 14 15

    procedure TForm1.ThitungClick(Sender: TObject); var Harga:Real; Qty:Integer; SubTotal,Diskon,Total:Real; begin Harga:=StrToFloat(EHarga.text); Qty:=StrToint(EQty.text); Subtotal:=Harga*Qty; Diskon:=0.1 * Subtotal; Total:=Subtotal-Diskon; ESubTotal.text:=FloatToStr(SubTotal); EDiskon.Text:=FloatToStr(Diskon); ETotal.Text:=FloatToStr(Total); end;

    Keterangan Program : - Baris 1 : pendeklarasian method/procedure ThitungClick yang merupakan method yang dipanggil

    ketika tombol Hitung di klik. - Baris 2 : perintah var digunakan untuk mengawali pendeklarasian variabel-variabel yang akan

    digunakan dalam program. - Baris 3-5 : pendeklarasian variabel dan tipenya. Dengan perincian variabel harga bertipe Real

    karena harga bisa berupa nilai pecahan, variabel Qty bertipe Integer karena kuantitas penjualan tidak boleh bilangan pecahan dan harus bilangan bulat (integer), variabel Subtotal bertipe real karena nilai variabel tersebut berasal dari perkalian antara harga yang bertipe real dan qty yang bertipe integer (perkalian integer dengan real menghasilkan nilai real), hal yang sama juga terjadi pada variabel Diskon dan variabel Total. Jenis-jenis tipe data dapat dilihat di bawah ini.

    Tipe-Tipe Data : 1. Bilangan Bulat

    Tipe-tipe bilangan bulat adalah suatu tipe data yang hanya menampung bilangan bulat saja. Tipe data tersebut diantaranya : integer, byte, word, smallint.

    Tipe Data Range Format Shortint 128..127 signed 8-bit Smallint 32768..32767 signed 16-bit Longint 2147483648..2147483647 signed 32-bit Int64 2^63..2^631 signed 64-bit Byte 0..255 unsigned 8-bit Word 0..65535 unsigned 16-bit Longword 0..4294967295 unsigned 32-bit

    2. Bilangan Pecahan Tipe-tipe bilangan pecahan adalah suatu tipe data bilangan yang bisa menampung bilangan pecahan. Tipe-tipe data tersebut diantaranya : Real, Double, Single.

    3. String Tipe data ini menampung data huruf yang banyak seperti untuk nama, alamat dan lain-lain. Tipe data tersebut adalah : String. Untuk pengisian suatu data bertipe String, maka harus diapit oleh tanda apostrop (), kecuali kalau data tersebut berasal dari data / variabel lain. Contoh : A:=Bandung; B:=A; // B berisi string Bandung

    By. Gunawan Rudi Cahyono, ST, MT Halaman. 3

  • Diktat Delphi

    Aturan-aturan operasi perhitungan : - Jika bilangan bulat dioperasikan dengan bilangan bulat maka akan menghasilkan bilangan

    bulat. - Bilangan bulat dioperasikan dengan bilangan pecahan maka hasilnya adalah bilangan

    pecahan. - String tidak bisa dioperasikan dengan suatu bilangan kecuali telah dikonversi ke tipe data

    bilangan. Jika nilai yang dimasukan telah melebihi nilai maksimalnya, maka nilainya akan berputar ke arah minimalnya dan jika nilai yang dimasukan lebih kecil dari nilai minimalnya maka akan berputar ke arah nilai maksimalnya.

    - Baris 6 : Perintah Begin yang menandai awal dari suatu procedure THitungClick. - Baris 7 : Pengisian variabel harga yang berasal dari Eharga (edit box untuk pengisian harga).

    Karena properti Text dari Eharga bertipe string dan variabel harga bertipe real maka properti Text dari Eharga harus dikonversikan menjadi sebuah bilangan real/pecahan (float) dengan perintah StrToFloat.

    - Baris 8 : Pengisian variabel Qty dari edit EQty. Karena terjadi ketidakcocokan tipe, maka properti Text dari EQty harus dikonversikan menjadi sebuah bilangan bulat sesuai dengan tipe data variabel Qty. Pengkonversian dari suatu string ke bilangan integer adalah dengan menggunakan perintah StrToInt.

    - Baris 9 : Perhitungan variabel Subtotal yang berasal dari perkalian antara variabel Harga dan variabel Qty.

    - Baris 10 : Perhitungan variabel Diskon yang berasal dari 10 % dari Subtotal. - Baris 11 : Perhitungan variabel Total yang berasal dari Subtotal Diskon. - Baris 12 : Menampilkan data Subtotal ke dalam edit ESubtotal. Properti yang diisi adalah

    properti Text yang bertipe string. Karena Subtotal bertipe real dan properti Text bertipe string maka harus ada proses konversi data dari real (float) ke string dengan perintah FloatToStr.

    - Baris 13 : Menampilkan data Diskon ke dalam edit EDiskon. Prosesnya mirip dengan Baris 12. - Baris 14 : Menampilkan data Total ke dalam edit ETotal. Prosesnya mirip dengan Baris 13. - Baris 15 : Perintah End yang menadai akhir dari procedure THitungClick.

    Setelah event OnClick tombol Hitung telah diisi, sekarang bagian pengisi OnClick pada tombol Ulang. Programnya adalah sebagai berikut : procedure TForm1.TUlangClick(Sender: TObject); begin Enama.Text:=''; {mengosongkan edit ENama} EHarga.Text:='0'; {me-nol-kan edit Eharga} EQty.Text:='0'; {me-nol-kan edit EQty} ESubTotal.Text:='0';//me-nol-kan edit ESubTotal EDiskon.Clear; // mengosongkan edit EDiskon ETotal.Clear; // mengosongkan edit ETotal ENama.SetFocus; // memindahkan kursor ke edit ENama end;

    Untuk program pada tombol Keluar, programnya adalah sebagai berikut : procedure TForm1.TKeluarClick(Sender: TObject); begin Close; // Menutup Form end;

    Setelah semua ditulis, sebaiknya kita simpan dulu program tersebut. Langkah-langkah untuk menyimpan suatu program adalah : - Simpan Unit/Form dengan mengklik menu File Save atau File Save As. Isi nama filenya sesuai

    dengan fungsi dari formnya. Contoh : UUtama, ULatihan1. - Simpan pula file Projectnya dengan mengklik menu File Save Project As. Isi nama file

    projectnya sesuai dengan kegunaan programnya. Contoh : Penjualan, SIAKAD, HangMan. - Jika suatu program telah disimpan dan kemudian diedit kembali maka langkah yang dilakukan

    untuk penyimpanan adalah dengan menekan menu File Save All yang akan menyimpan semua file yang mengalami perubahan.

    Langkah berikutnya adalah menjalankan program tersebut dengan menekan tombol F9 atau dengan mengklik menu Run Run atau mengklik tombol Run.

    By. Gunawan Rudi Cahyono, ST, MT Halaman. 4

  • BAB III PERCABANGAN

    ( If, If Else, Case Of)

    Perintah if digunakan untuk menentukan perintah mana yang akan dikerjakan ketika suatu kondisi terjadi.

    Bentuk baku perintah if adalah sebagai berikut : if (kondisi1) then

    Kondisi 1, Kondisi 2 adalah suatu pernyataan yang menghasilkan kondisi benar (true) atau salah(false). Contoh kondisi : if (a>=5) then begin perintah; end else if (a

  • Contoh kasus: Sebuah toko mempunyai tabel harga dan diskon seperti berikut :

    Kode Nama Barang Harga Barang A01 Speaker 50000 B02 Mouse 25000 C03 Harddisk 750000 D04 Mouse Pad 5000

    Sub total Diskon >=100000 15% >=50000 10% >=25000 5%

  • else // jika kode tidak diketahui begin NamaBarang:='Tidak Ada'; Harga :=0; end; Quantity:=StrToInt(EQTY.Text);// Ambil Quantity dari EQty SubTotal:=Harga*Quantity; // Hitung Subtotal if SubTotal>=100000 then // Jika Subtotal >= 100000 maka Diskon:=0.15*SubTotal // diskon = 15% else if SubTotal>=50000 then // Jika subtotal >=50000 maka Diskon:=0.10 * SubTotal // diskon = 10% else if SubTotal>=25000 then // Jika subtotal>=25000 maka Diskon:=0.05 * SubTotal // diskon = 5% else // jika subtotal < 25000 Diskon:=0; // diskon = 0% Total:=SubTotal - Diskon; // hitung total ENama.Text:=NamaBarang; // tampilkan nama barang EHarga.Text:=FloatToStr(Harga); // tampilkan harga ESubTotal.Text:=FloatToStr(SubTotal); // tampilkan subtotal EDiskon.Text:=FloatToStr(Diskon); //tampilkan diskon ETotal.Text:=FloatToStr(Total); // tampilkan total end;

    - Untuk event Onclick pada tombol Ulang, silahkan diisi perintah berikut : procedure TForm1.TUlangClick(Sender: TObject); begin CBKode.Text:=''; ENama.Text:=''; EHarga.Text:='0'; ESubTotal.Text:=''; EDiskon.Text:=''; ETotal.Text:=''; CBKode.SetFocus; end;

    - Untuk event OnClick pada tombol Tutup isilah dengan perintah: procedure TForm1.TKeluarClick(Sender: TObject); begin Close; end;

    Operator-operator boolean :

    Simbol Keterangan Contoh = Sama dengan (a = 7) >= Lebih besar sama dengan (a >= 7) > Lebih besar (a > 7)

  • Komponen RadioButton ( )

    Radiobutton adalah suatu komponen yang digunakan untuk pemilihan suatu kondisi dari beberapa kondisi yang ada. Kondisi yang bisa dipilih hanya ada 1 buah.

    Properti yang menandakan bahwa suatu radiobutton dipilih adalah properti Checked. Jika properti checked suatu Radiobutton berisi true, maka berarti Radiobutton tersebut dipilih.

    Contoh kasus : 1. Buatlah form seperti berikut :

    Caranya adalah sebagai berikut :

    - Tempatkan sebuah group box ( ) - Tempatkan 3 buah radiobutton kemudian ganti namanya sesuai dengan keperluan. Contoh

    untuk radiobutton Jakarta beri namanya RBJakarta untuk mempermudah dalam program. - Tempatkan sebuah Button.

    2. Isi event onclick dari button sebagai berikut : Procedure TForm1.Button1Click(Sender:TObject) begin if (RBJakarta.Checked=true) then ShowMessage(Jurusan yang dipilih adalah jakarta) else if (RBYogya.Checked=true) then ShowMessage(Jurusan yang dipilih adalah Yogyakarta) else if (RBSurabaya.Checked=true) then ShowMessage(Jurusan yang dipilih adalah Surabaya); End; ShowMessage adalah suatu perintah untuk menampilkan pesan dengan ketentuan adalah sebagai berikut :

    ShowMessage(Pesan:String) Contoh : ShowMessage(Jurusan yang dipilih adalah jakarta); Hasilnya adalah sebagai berikut :

    3. Coba run progam.

    By. Gunawan Rudi Cahyono, ST, MT Halaman - 10

  • Komponen Radiogroup ( )

    Radiogroup adalah suatu komponen yang digunakan untuk memilih sebuah option dari beberapa pilihan (sifatnya seperti radiobutton) hanya dengan satu buah komponen radiogroup saja.

    Tabel Properti dari RadioGroup Properti Keterangan

    Columns Pilihan mau dibuat berapa kolom Items Daftar pilihan yang akan ditampilkan ItemIndex Item ke berapa yang dipilih. Jika ItemIndex berisi 0 maka yang dipilih

    adalah pilihan ke-1, jika ItemIndex berisi 1 maka yang dipilih adalah pilihan ke-2 dan seterusnya. Jika ItemIndex berisi dengan 1 maka berarti tidak ada yang dipilih.

    Pada program sebelumnya, kita membuat suatu pemilihan dengan membuat sebuah group box dan 3

    buah radiogroup. Sekarang kita akan membuat suatu pemilihan hanya dengan menggunakan sebuah radiogroup saja. Caranya :

    1. Buat form seperti berikut - Tempatkan sebuah radiogroup, kemudian ganti namanya menjadi RGKelas dan captionnya

    diisi dengan Kelas. - Isi properti Items dengan Eksekutif Bisnis Ekonomi

    - Isi properti ItemIndex dengan 0 agar pilihan default adalah Eksekutif.

    2. Isi tombol Oncliknya dengan perintah berikut : Procedure TForm1.Button2Click(Sender:TObject) begin if (RGKelas.ItemIndex=0) then ShowMessage(Kelas adalah Exekutif) else if (RGKelas.ItemIndex=1) then ShowMessage(Kelas adalah Bisnis) else if (RGKelas.ItemIndex=2) then ShowMessage(Kelas adalah Ekonomi); End; Atau : Procedure TForm1.Button2Click(Sender:TObject) begin case RGKelas.ItemIndex of 0:ShowMessage(Kelas adalah Exekutif); 1:ShowMessage(Kelas adalah Bisnis); 2:ShowMessage(Kelas adalah Ekonomi); end; end;

    3. Run Program

    By. Gunawan Rudi Cahyono, ST, MT Halaman - 11

  • Contoh Kasus : Sebuah Perusahaan angkutan Jalan Terus memiliki ketentuan harga seperti berikut :

    Eksekutif Bisnis Ekonomi Jakarta 70000 40000 10000 Solo 80000 50000 20000 Surabaya 90000 60000 30000

    Karena ada masa promosi maka khusus untuk Surabaya Ekonomi atau Solo Eksekutif terdapat diskon 10%.

    Untuk lebih jelasnya, ikutilah cara berikut : 1. Buat suatu aplikasi baru dengan File-New Application 2. Tempatkan sebuah Groupbox kemudian ganti property Caption dengan Jurusan. 3. Tempatkan tiga buah RadioButton pada GroupBox tersebut kemudian ganti properti-propertinya

    seperti berikut : RadioButton1 Name

    Caption : :

    RBJakarta Jakarta

    RadioButton2 Name Caption

    : :

    RBSolo Solo

    RadioButton3 Name Caption

    : :

    RBSurabaya Surabaya

    4. Tempatkan sebuah RadioGroup kemudian ganti propertinya seperti berikut : Name Items ItemIndex

    : : :

    RGKelas Eksekutif Bisnis Ekonomi 0

    5. Tempatkan 2 buah Edit untuk pengisian data banyaknya tiket dan untuk menampilkan hasil dari perhitungan. Gantilah properti-propertinya seperti berikut :

    Edit1 Edit2

    Name Name

    : :

    ETiket ETotal

    6. Tempatkan 3 buah tombol untuk tombol perhitungan, reset, dan tombol keluar. Kemudian atur form seperti form berikut :

    7. Untuk program selengkapnya dari kasus diatas adalah sebagai berikut :

    procedure TForm1.THitungClick(Sender: TObject); var jmltiket,harga:integer; total:real; begin jmltiket:=StrToInt(ETiket.text); if (RBJakarta.Checked=true)and(RGKelas.ItemIndex=0) then harga:=70000 else if (RBJakarta.Checked=true)and(RGKelas.ItemIndex=1) then harga:=40000 else if (RBJakarta.Checked=true)and(RGKelas.ItemIndex=2) then harga:=10000 else if (RBSolo.Checked=true) then begin if RGKelas.ItemIndex=0 then harga:=80000 else if RGKelas.ItemIndex=1 then harga:=50000 else if RGKelas.ItemIndex=2 then harga:=20000; end

    GroupBox

    RadioButton RadioGroup

    By. Gunawan Rudi Cahyono, ST, MT Halaman - 12

  • else if (RBSurabaya.Checked=true) then begin case RGKelas.ItemIndex of 0:Harga:=90000; 1:Harga:=60000; 2:Harga:=30000; end; end; total:=harga*jmltiket; ETotal.Text:=FormatFloat('Rp #,##0.00',total); end;

    8. Untuk perhitungan diskon, sisipkan program berikut setelah perhitungan total :

    if ((RBSurabaya.checked=true)and (RGKelas.ItemIndex=2) ) // Surabaya Ekonomi or // atau ((RBSolo.Checked=true)and (RGKelas.ItemIndex=0) ) then //Solo Bisnis total:=0.9*total;

    9. Untuk event OnClick dari tombol Reset, programnya adalah sebagai berikut : procedure TForm1.TResetClick(Sender: TObject); begin RBJakarta.Checked:=true; RGKelas.ItemIndex:=0; ETiket.Text:='0'; EJmlTotal.Text:='0'; end;

    10. Run Program.

    By. Gunawan Rudi Cahyono, ST, MT Halaman - 13

  • Komponen Check Box ( )

    CheckBox ( ) adalah komponen untuk pemilihan option dimana option yang dipilih bisa lebih dari satu buah. Properti-properti CheckBox

    Property Keterangan Caption Tulisan yang ada di Checkbox Checked Jika berisi true berarti checkbox yang bersangkutan dipilih. Contoh kasus : Rental Internet Surf The World mempunyai harga rental perjam Rp. 3500, dan juga menyediakan fasilitas pemesanan makanan dan minuman. Daftar yang bisa dipesan adalah sebagai berikut :

    Menu Harga Nasi goreng 3500 Coca Cola 1250 Teh Botol 1000

    Buatlah program untuk menghitung berapa yang harus dibayar. Form yang dibuat :

    Catatan : Untuk Kotak, gunakan komponent Panel yang ada di Standar dan untuk Gambar gunakan komponen Image yang ada di additional.

    Properti-properti dari Panel : Properti Keterangan

    Caption Tulisan yang ada di Panel Alignment Peletakan dari Caption, di kiri, tengah atau kanan BorderWidth Lebar bingkai panel antara kotak luar dengan kotak dalam BevelInner Bentuk kotak dalam BevelOuter Bentuk kotal luar Color Warna Panel

    Properti-properti dari Image :

    Properti Keterangan AutoSize Jika berisi true maka bidang gambar mengikuti besarnya gambar. Picture Isi gambar yang ada di image Stretch Jika berisi true maka seluruh gambar akan tampil dalam bidang yang ditentukan,

    besar gambar menyesuaikan besarnya bidangnya. Center Jika berisi true maka gambar akan ditampilkan di tengah bidang gambar.

    By. Gunawan Rudi Cahyono, ST, MT Halaman - 14

  • Program untuk hitung onclick adalah seperti berikut : procedure TForm1.THitungClick(Sender: TObject); const // membuat suatu nilai konstanta HargaRental=3500; HargaNasGor=3500; HargaCocaCola=1250; HargaTehBotol=1000; var lama:real; TotalRental,TotalMakanMinum,GrandTotal:Real; TotalNasgor,TotalCocaCola,TotalTehBotol:real; begin Lama:=StrToFloat(ELama.Text); TotalRental:=Lama * HargaRental; if CBNasgor.checked=true then TotalNasgor:=StrToInt(ENasGor.text) * HargaNasgor else TotalNasgor:=0; if CBCoca.checked=true then TotalCocaCola:=StrToInt(ECoca.text) * HargaCocaCola else TotalCocaCola:=0; if CBTeh.checked=true then TotalTehBotol:=StrToInt(ETeh.text) * HargaTehBotol else TotalTehBotol:=0; TotalMakanMinum:=TotalNasGor + totalCocaCola + TotalTehBotol; GrandTotal:=TotalRental + TotalMakanMinum; ERental.text:=FloatToStr(TotalRental); EMakan.Text:=FloatToStr(TotalMakanMinum); ETotal.Text:=FloatToStr(GrandTotal); end;

    Program untuk tombol Ulang : procedure TForm1.TUlangClick(Sender: TObject); begin ELama.TexT:='1'; ENasGor.text:='0'; ECoca.text:='0'; ETeh.text:='0'; CBNasGor.checked:=false; CBCoca.checked:=false; CBTeh.checked:=false; ETotal.TexT:='0'; EMakan.text:='0'; ERental.Text:='0'; ELama.SetFocus; end;

    By. Gunawan Rudi Cahyono, ST, MT Halaman - 15

  • Modul Praktek Delphi

    BAB IV PERULANGAN

    (For To Do, For Downto Do, Repeat Until, While Do)

    Perulangan adalah suatu cara untuk mengulang satu atau sekumpulan perintah sampai mencapai kondisi tertentu.

    Dalam Delphi terdapat beberapa perulangan yaitu : 1. Perulangan menggunakan For To Do 2. Perulangan menggunakan For DownTo Do 3. Perulangan menggunakan Repeat Until 4. Perulangan menggunakan While Do 5. Perulangan menggunakan Label 6. Perulangan tersarang (perulangan dalam perulangan) 7. Perulangan dengan banyak kondisi Untuk lebih jelasnya, buatlah form seperti berikut dengan mengunakan 1 buah memo dan 7 buah

    BitBtn. Memo digunakan sebagai tempat untuk melihat hasil perulangannya.

    Memo

    Catatan :

    Komponen Memo ( ) umumnya digunakan untuk pemasukan data string yang bisa menampung data dalam bentuk beberapa paragraf (banyak baris). Komponen ini dapat kita samakan dengan Notepad. Isi dari komponen ini ada di properti Lines. Method-method yang banyak dipakai yang dimiliki oleh memo adalah : Clear, gunanya untuk mengosongkan memo.

    Contoh : Memo1.Clear;

    Lines.Add, gunanya untuk memasukan/menambahkan baris di Memo. Inputan untuk method add harus berupa string. Jika yang ingin ditampilkan berupa angka, maka harus dikonversikan dulu. Contoh : Memo1.Lines.Add(Text Yang Ditambahkan); A:=100; Memo1.Lines.Add(Nilai A adalah : +inttostr(A));

    Lines.Delete, gunanya untuk menghapus suatu baris. Contoh : Memo1.Lines.Delete(0); // Menghapus baris ke-1

    Pustekom Int. Hal. 16

  • Modul Praktek Delphi

    1. For To Do Perulangan ini berjalan dengan menggunakan suatu variabel counter yang akan bertambah secara otomatis ketika perintah yang diulang telah selesai dikerjakan. Bentuk umum dari perulangan ini adalah : For counter := nilai awal To Nilai akhir Do Begin

    Perintah; Perintah;

    End; Perulangan ini akan berulang selama nilai variabel counter masih lebih kecil atau sama dengan nilai akhir. Contoh Program yang ditulis dalam event OnClick dari tombol For To Do procedure TForm1.BitBtn1Click(Sender: TObject); var i:integer; c:char; begin Memo1.Clear; for i:=1 to 10 do Memo1.Lines.Add(IntToStr(i)); for c:='A' to 'Z' do Memo1.Lines.Add(c); end;

    2. For DownTo Do Perulangan ini sama seperti perulangan dengan menggunakan For To Do tetapi arah isi counternya berkurang (mundur/turun). Bentuk umum dari perulangan ini adalah : For counter := nilaiawal DownTo Nilaiakhir Do Begin

    Perintah; Perintah;

    End; Perulangan ini akan berulang selama nilai variabel counter masih lebih besar atau sama dengan nilai akhir. Nilai awal suatu counter harus lebih besar atau sama dengan daripada nilai akhirnya. Contoh Program yang ditulis dalam event OnClick dari tombol For To Do procedure TForm1.BitBtn2Click(Sender: TObject); var i:integer; c:char; begin Memo1.Clear; for i:=10 downto 1 do Memo1.Lines.Add(IntToStr(i)); for c:='Z' downto 'A' do Memo1.Lines.Add(c); end;

    Pustekom Int. Hal. 17

  • Modul Praktek Delphi

    3. Repeat Until Perulangan ini bekerja sampai kondisi yang diinginkan tercapai. Perulangan ini bisa digunakan sebagai perulangan yang menggunakan banyak kondisi keluar (multi condition loop). Bentuk umum : Repeat Perintah; Perintah; Until Kondisi; procedure TForm1.BitBtn3Click(Sender: TObject); var i:real; begin Memo1.Clear; i:=0; repeat i:=i+0.5; Memo1.Lines.Add(FloatToStr(i)); until i=10; end; Perulangan ini berulang sampai kondisi yang ada setelah until mempunyai nilai true. Jadi repeat until berjalan selama kondisi salah sampai kondisi benar. Pengecekan kondisi berada di bagian bawah yaitu setelah until sehingga semua program yang memakai perulangan ini akan melakukan minimal 1 kali proses perulangan.

    4. While Do

    Perulangan ini mirip dengan perulangan Repeat Until tetapi pengecekannya berada di awal sebelum melakukan proses yang berulang. Perulangan ini berjalan selama kondisi pengecekan bernilai true. Jika kondisi telah mempunyai nilai false maka perulangan tidak dilakukan lagi. Bentuk umum dari While Do adalah seperti berikut : While kondisi do Begin Perintah; Perintah; End; Contoh program while do yang ditulis pada event onclick dari tombol While Do. procedure TForm1.BitBtn4Click(Sender: TObject); var i:real; begin Memo1.Clear; i:=0; while i

  • Modul Praktek Delphi

    5. Label Label adalah suatu perintah untuk memandai suatu baris program. Untuk pindah ke posisi yang

    ditandai oleh label, maka digunakan perintah Goto. Untuk lebih jelasnya lihatlah program berikut yang ditulis dalam event OnClick dari tombol

    Label. procedure TForm1.BitBtn5Click(Sender: TObject); label A; var i:integer; begin Memo1.Clear; i:=0; A: i:=i+1; Memo1.Lines.Add(IntToStr(i)); if i

  • Modul Praktek Delphi

    7. Perulangan dengan banyak kondisi Perulangan dengan banyak kondisi adalah suatu perulangan dimana berjalannya suatu perulangan tidak hanya berdasarkan suatu kondisi saja tetapi bisa lebih dari satu kondisi. Operator yang bisa digunakan biasanya seperti And, Or, Not dan lain-lain. Contoh Program : procedure TForm1.BitBtn7Click(Sender: TObject); var i:integer; total:integer; begin Memo1.Clear; total:=0; i:=0; repeat i:=i+1; Total:=Total+i; Memo1.Lines.Add('Isi I = '+IntToStr(i)); Memo1.Lines.Add('Isi Total = '+IntToStr(Total)); until (total>150)or(i>25); end;

    Kasus : 1. Buat suatu program untuk menentukan faktorial dan jumlah deret sampai ke N. Buat form sebagai

    berikut :

    2. Buat suatu program untuk menghitung saldo akhir dari suatu tabungan dengan bunga dan jangka

    waktu tertentu : Contoh hasil : Saldo : 100000 Bunga : 10 Waktu : 3 Ketika user menekan tombol Hitung, maka akan muncul hasil seperti berikut di memonya. Saldo Bulan 1 = Rp. 110000 Saldo Bulan 2 = Rp. 121000 Saldo Bulan 3 = Rp. 133100

    Pustekom Int. Hal. 20

  • Modul Praktek Delphi

    3. Mirip dengan program ke-dua hanya input yang diberikan adalah : Saldo awal, bunga dan saldo akhir. Dari ketiga input tersebut maka akan didapatkan lamanya jangka waktu yang diinginkan agar saldo mencapai saldo akhir. Contoh : Saldo Awal : 100000 Bunga : 10 Saldo Akhir : 150000 Maka hasil pada memonya adalah : Saldo Bulan 1 = Rp. 110,000 Saldo Bulan 2 = Rp. 121,000 Saldo Bulan 3 = Rp. 133,100

    Saldo Bulan 4 = Rp. 146,410 Saldo Bulan 5 = Rp. 161,051

    Form yang diinginkan :

    Pustekom Int. Hal. 21

  • Modul Delphi - Database

    Materi Delphi. Hal. 1

    BAB V DASAR-DASAR MEMBUAT PROGRAM

    DATABASE DENGAN DELPHI PENGANTAR DATABASE DENGAN DELPHI

    Database dengan mengagunakan Delphi menggunakan konsep seperti gambar dibawah ini :

    File Database Komponen Table

    Komponen DataSource

    Komponen Data Control

    Keterangan : 1. File Database : File database dari sistem database lain seperti Dbase (*.dbf), Paradox (*.db),

    Microsoft Access (*.mdb), dan lain-lain. 2. Komponen Table : Komponen yang mewakili file database. Setiap melakukan proses dalam

    komponen tabel tersebut, maka isi file database yang terkoneksi ke komponen tersebut berubah juga.

    3. Komponen DataSource : Komponen penghubung antara komponen tabel dengan komponen data control. Dalam datasource harus diisi tabel yang berelasi ke datasource tersebut.

    4. Komponen-Komponen Data Control : Komponen yang digunakan untuk menampilkan data-data yang berasal dari datasource (tabel). Data control ada yang berbentuk tabel, label, edit box, gambar, combobox, listbox dan lain-lain.

    PROGRAM DATABASE 1 : Untuk program pertama ini, program database yang akan dibuat adalah untuk mendata spesies ikan pada suatu toko. (data sudah ada) 1. Buat suatu aplikasi baru dengan Alt+F - New Application

    2. Tempatkan sebuah komponen Table dari component palette BDE. Ganti property berikut :

    Property Nilai DatabaseName DBDEMOS TableName BIOLIFE.DB Name TIkan Active True

    Keterangan : DatabaseName adalah Alias directory atau koneksi ODBC. Pembuatan alias akan diterangkan berikutnya.

    3. Tempatkan sebuah komponen DataSource dari component palette Data Access Ganti property berikut :

    Property Nilai DataSet TIkan Name DSIkan

    4. Tempatkan sebuah DBGrid dari component palette Data Controls pada form kemudian isi properti datasourcenya dengan DSIkan (karena akan menampilkan isi tabel ikan). Coba run program dan lihat hasilnya. Dengan cara yang tadi dijalankan, maka kita sudah dapat melihat, menambah, mengedit data.

  • Modul Delphi - Database

    Materi Delphi. Hal. 2

    5. Tempatkan sebuah DBNavigator dari component palette Data Controls pada form. Komponen ini berguna untuk menjelajahi isi tabel yaitu : Pindah ke record pertama, berikutnya (maju), sebelumnya (mundur), terakhir, menambah data, menghapus data, menyimpan data, mengedit data, membatalkan perubahan data dan refresh data. Isi property DataSource dengan DSIkan. Kemudian run program untuk melihat kegunaan dari DBNavigator tersebut.

    6. Tempatkan sebuah DBText dari component palette Data Controls pada form. Fungsi dari komponen ini sama dengan komponen Label pada component palette Standar. Perbedaannya isi dari DBText berasal dari suatu data field dari suatu tabel. Untuk menghubungkan DBText dengan field, gantilah properti DataSource dengan DSIkan dan DataField dengan field yang diinginkan contoh CommonName. Kemudian run program sehingga kita dapat melihat setiap record aktif pindah maka isi DBText berisi field CommonName record yang aktif.

    7. Tempatkan sebuah DBEdit dari component palette Data Controls pada form. Fungsi dari komponen ini sama dengan komponen Edit perbedaannya isi DBEdit mengacu kepada suatu data field dari suatu tabel. Untuk menghubungkannya dengan suatu field, isi property DataSource dengan DSIkan dan FieldName dengan Spesies No.

    8. Untuk menampilkan data bertipe memo dari component palette Data Controls, gunakan komponen DBMemo, kemudian ganti property Datasource dengan DSIkan dan FieldName dengan Notes.

    9. Untuk menampilkan data bertipe gambar, gunakan komponen DBImage dari component palette Data Controls, kemudian ganti property Datasource dengan DSIkan dan FieldName dengan Graphics.

    10. Tempatkan suatu tombol kemudian ganti caption dengan Tutup Program dan kemudian isi even Onclick dengan perintah Close; atau Application.Terminate.

    Gambar Lengkap form adalah sebagai berikut :

    DBEdit

    Table

    DataSource

    DBNavigator

    DBLabel

    DBMemo

    DBGrid

    DBImage

  • Modul Delphi - Database

    Materi Delphi. Hal. 3

    PEMBUATAN ALIAS Alias digunakan sebagai short cut dari suatu sub directori/folder. Sebenarnya dalam tabel kita bisa menggunakan alamat langsung dari file yang akan diakses contohnya : C:\MY DOCUMENTS\DATA\KARYAWAN.DB, hal tersebut bisa dilakukan tapi kalau file karyawan.db dipindah maka program harus dirubah. Untuk menghindari hal seperti itu, maka dibuatlah suatu Alias. Contoh kita buat suatu alias bernama Karyawan yang mewakili C:\My Documents\Data. Kalau data karyawan tersebut dipindah maka kita tidak lagi mengubah programnya tapi hanya membelokan alias tersebut ke tempat yang baru. Cara pembuatan alias adalah sebagai berikut : 1. Masuk ke Database Desktop yang ada pada Start Menu Program Borland Delphi

    Database Desktop atau pilih menu Tool DataBase Desktop. 2. Pilih menu Tools Alias Manager

    3. Klik tombol New, kemudian isi edit box Database alias dengan alias yang diinginkan, kemudian

    klik tombol Browse.

  • Modul Delphi - Database

    Materi Delphi. Hal. 4

    4. Pilih drive yang diinginkan pada combo (drive or alias), kemudian pilih direktori/folder yang

    dituju pada list Directories. Kemudian tekan tombol OK.

    5. Jika telah benar tekan tombol OK pada Alias Manager. Maka akan muncul dialog apakah alias

    tersebut akan disimpan dalam file configurasi. Tekan tombol Yes.

  • Modul Delphi - Database

    Materi Delphi. Hal. 5

    PEMBUATAN TABEL Pembuatan tabel yang akan diakses oleh Delphi bisa dibuat dengan Database Desktop atau MsAccess. Cara pembuatan tabel dalam Database Desktop :

    1. Masuk ke program Database Desktop 2. Pilih menu File New Table sehingga akan muncul dialog berikut yang akan menanyakan

    tabel jenis apa yang akan dibuat apakah paradox atau dbase atau yang lain, kemudian tekan OK.

    3. Maka akan muncul window pembuatan tabel seperti berikut :

    4. Jika sudah lengkap tekan tombol Save As untuk menyimpan tabel tersebut. 5. Tulis nama file tabel yang sudah dibuat dan simpan pada alias yang tadi dibuat. 6. Tabel sudah bisa diakses oleh Delphi.

    Jenis-jenis field dapat dilihat di halaman berikutnya.

  • Modul Delphi - Database

    Materi Delphi. Hal. 6

    Jenis field-field dalam Paradox yang sering dipakai :

    Simbol Jenis Field Jenis Field Keterangan

    A AlphaNumeric String, Alpabet, Numerik I Integer Integer (Bilangan Bulat) N Number Pecahan D Date Tanggal T Time Jam M Memo Memo / Catatan panjang G Graphic Gambar + AutoIncrement Otomatis naik tiap ada penambahan data $ Money Mata Uang S Short Int Integer kecil (-32768 s/d 32767)

    PENGISIAN DATA

    Pengisian data pada tabel bisa dilakukan dengan dua cara, yaitu : 1. Melalui Database Desktop

    Buka Database Desktop, kemudian pilih File Open Table kemudian pilih file database mana yang akan diisi.

    2. Melalui program yang dibuat

  • Modul Delphi - Database

    Materi Delphi. Hal. 7

    Contoh Aplikasi Database 1

    Untuk kasus aplikasi sekarang, kita akan membuat suatu program untuk pengolahan data barang

    menggunakan tabel yang telah dibuat dan memiliki fasilitas berikut : Navigator Data Penambahan Data Pengeditan Data Penghapusan Data Pencarian Data

    Untuk membuat hal tersebut lakukan langkah berikut : 1. Buatlah form seperti berikut

    Catatan : Nama tabel adalah TBarang

    2. Program untuk tombol navigator (4 buah speedbutton bergambar tangan) adalah sebagai berikut : - Program untuk Pindah Ke Data Pertama (gambar tangan menunjuk ke atas)

    procedure TForm1.SpeedButton1Click(Sender: TObject); begin

    TBarang.First; end;

    - Program untuk Pindah Ke Data Sebelumnya / Mundur (gambar tangan menunjuk ke kiri) procedure TForm1.SpeedButton2Click(Sender: TObject); begin

    TBarang.Prior; if TBarang.BOF then ShowMessage('Anda sudah di awal data');

    end; - Program untuk Pindah Ke Data Berikutnya / Maju (gambar tangan menunjuk ke kanan)

    procedure TForm1.SpeedButton3Click(Sender: TObject); begin

    TBarang.Next; if TBarang.EOF then ShowMessage('Anda sudah di akhir data');

    end;

    Bitbtn

    SpeedButton

  • Modul Delphi - Database

    Materi Delphi. Hal. 8

    - Program untuk Pindah Ke Data Terakhir (gambar tangan menunjuk ke bawah) procedure TForm1.SpeedButton4Click(Sender: TObject); begin

    TBarang.Last; end;

    3. Untuk proses penambahan dan pengeditan data, diperlukan suatu form baru yang digunakan untuk pengisian data barang tersebut. Buat suatu form seperti berikut :

    - Buat form baru dengan File New Form dan namailah dengan FIsiBarang. - Tempatkan 4 buah Edit untuk tempat pengisian data. Kemudian atur properti Name-nya

    sesuai dengan kegunaannya. - Tempatkan tombol suatu tombol kemudian caption diisi dengan Save kemudian properti

    modalresult diisi dengan mrOk. - Tempatkan tombol suatu tombol kemudian caption diisi dengan Cancel kemudian

    properti modalresult diisi dengan mrCancel.

    4. Buatlah objek/component field untuk mempermudah dalam pengisian program dengan cara

    mendouble klik di componen Table kemudian klik kanan dan pilih Add All field. Dengan melakukan hal tersebut, maka setiap field mempunyai objek field khusus.

    5. Isilah program berikut pada event onclick tombol Tambah. Procedure Tform1.TblTambahClick(Sender : Tobject); begin FIsiBarang.ENama.Text:=; FIsiBarang.EHarga.Text:=0; FIsiBarang.EStock.Text:=0; FIsiBarang.EStockMinimal.Text:=0; FIsiBarang.ShowModal; //tampilkan Form Fisibarang if FIsiBarang.ModalResult=mrOk then begin TBarang.Append;//meminta tempat kosong untuk data baru TBarangNama.Value:=FIsiBarang.ENama.Text; TBarangHarga.Value:=StrToFloat(FIsiBarang.EHarga.Text); TBarangStock.Value:=StrToInt(FIsiBarang.EStock.Text); TBarangStockMinimal.Value:=StrToInt(FIsiBarang. EStockMinimal.Text); TBarang.Post;//simpan data end; end;

  • Modul Delphi - Database

    Materi Delphi. Hal. 9

    6. Isilah program berikut untuk event onclick dari Tombol Edit Procedure Tform1.TblEditClick(Sender : Tobject); begin FIsiBarang.ENama.Text:=TBarangNama.Value; FIsiBarang.EHarga.Text:=FloatToStr(TBarangHarga.Value); FIsiBarang.EStock.Text:=IntToStr(TBarangStock.Value); FIsiBarang.EStockMinimal.Text:= IntToStr(TBarangStockMinimal.Value); FIsiBarang.ShowModal; //tampilkan Form Fisibarang if FIsiBarang.ModalResult=mrOk then begin TBarang.Edit;//menyiapkan data untuk diedit TBarangNama.Value:=FIsiBarang.ENama.Text; TBarangHarga.Value:=StrToInt(FIsiBarang.EHarga.Text); TBarangStock.Value:=StrToInt(FIsiBarang.EStock.Text); TBarangStockMinimal.Value:=StrToInt(FIsiBarang. EStockMinimal.Text); TBarang.Post; end; end;

    7. Untuk event onclick pada Tombol Hapus tulislah perintah sebagai berikut : Procedure Tform1.TblHapusClick(Sender : Tobject); begin if MessageDlg(Data Mau Dihapus ?,mtconfirmation, [mbyes,mbno],0)=mryes then begin TBarang.Delete; end; end; Keterangan : Perintah MessageDlg digunakan untuk melakukan suatu dialog dengan user. Cara penulisan MessageDlg adalah : MessageDlg(Pesan, TipeDialog, [DaftarTombol],NoHelp). Parameter pertama yaitu Pesan harus bertipe string. Parameter kedua bisa berisi tipe dari dialog. Parameter ini bisa berisi:

    - mtconfirmation : Ada lambang tanda tanya dalam dialognya - mtwarning : Ada lambang peringatan / tanda seru (!) - mtinformation : Ada lambang huruf i - mterror : Ada lambang silang berwarna merah - mtcustom : Tidak ada lambang dalam dialognya.

    Parameter ketiga merupakan parameter yang mengatur tombol mana yang akan digunakan. Parameter ini bisa berisi : MrNone, mrAbort, mrYes, mrOk, mrRetry, mrNo, mrCancel, mrIgnore, mrAll Fungsi Message dialog ini akan menghasilkan nilai sesuai dengan tombol yang ditekannya. Jika tombol OK yang ditekan, maka MessageDlg ini berisi MrOK, Jika tombol yes yang ditekan, maka MessageDlg ini berisi MrYes dst

    8. Untuk tombol pencarian, maka gunakan perintah berikut : Untuk pencarian pada field key : Procedure Tform1.TblCariClick(Sender : Tobject); begin if Tbarang.Findkey([Ecari.Text])=false then ShowMessage(Data yang dicari tidak ditemukan); end; Fungsi Findkey akan memberikan nilai true jika data ditemukan dan akan mengembalikan nilai false jika data tidak ditemukan.

  • Modul Delphi - Database

    Materi Delphi. Hal. 10

    9. Cara lain untuk penambahan dan pengeditan data adalah dengan menggunakan komponen data control. Lebih jelasnya ikutilah langkah-langkah berikut :

    - Buat form baru dengan File New Form beri nama FIsiBarang2 - Tempatkan 5 buah DBEdit untuk tempat pengisian data. Kemudian atur properti

    DataSource dan DataField dari tiap DBEditnya. (lihat form) - Tempatkan tombol suatu tombol kemudian caption diisi dengan Save kemudian properti

    modalresult diisi dengan mrOk. - Tempatkan tombol suatu tombol kemudian caption diisi dengan Cancel kemudian

    properti modalresult diisi dengan mrCancel.

    10. Untuk onclick pada Tombol Tambah, ketikan perintah berikut :

    Procedure Tform1.TblTambahClick(Sender : Tobject); begin TBarang.Append; FIsiBarang2.ShowModal; if FIsiBarang2.ModalResult=mrOk then begin TBarang.Post; end else begin TBarang.Cancel; end; end;

    11. Untuk onclick pada Tombol Edit, ketikan perintah berikut : Procedure Tform1.TblEditClick(Sender : Tobject); begin TBarang.Edit; FIsiBarang2.ShowModal; if (FIsiBarang2.ModalResult=mrOk) then begin TBarang.Post; end else begin TBarang.Cancel; end; end;

  • Modul Delphi - Database

    Materi Delphi. Hal. 11

    Pembuatan Index Pada Table Ketika pembuatan suatu tabel, kita membuat suatu field yang pada fieldnya diberi tanda *. Isi field yang merupakan field kunci tidak boleh ada data yang sama (harus unik). Dengan membuat suatu field sebagai primary key, maka setiap pengisian data, maka urutan data akan otomatis terurut. Selain primary key ada juga yang namanya secondary index yang fungsinya mirip dengan primary key. Cara pembuatan secondary index adalah :

    1. Masuk ke Database Desktop 2. Pilih menu Table Utilities Restructure, kemudian pilih tabel yang akan diubah

    strukturnya. 3. Pilih Secondary Indexes pada field Table Properties (lihat gambar).

    4. Pilih field yang akan dijadikan index. Pilih field Nama kemudian tekan tombol panah kanan.

    (lihat gambar).

    5. Jika telah dipilih, tulis nama index dari index tersebut. Contoh : idxNama.

    6. Buat juga index dengan nama IdxHarga yang merupakan index dari field harga dengan

    ketentuan pengurutannya secara menurun (descending). 7. Jika telah selesai, simpan table tersebut.

  • Modul Delphi - Database

    Materi Delphi. Hal. 12

    Penggunaan Index dalam Program

    Untuk mengaktifkan suatu index yang telah dibuat, gunakan field IndexName yang merupakan properti milik Table. Untuk lebih jelasnya silahkan buat form seperti di bawah ini.

    Untuk bagian Pengurutan Berdasarkan gunakan RadioGroup. Untuk OnClicknya tuliskan perintah berikutkan :

    Procedure TForm1.RadioGroup1Click(Sender:TObject); begin if (RadioGroup1.ItemIndex=0) then Tbarang.IndexName:= else if (RadioGroup1.ItemIndex=1) then Tbarang.IndexName:=idxBarang else if (RadioGroup1.ItemIndex=2) then Tbarang.IndexName:=IdxHarga; End;

    Untuk tombol Cari tuliskan perintah berikut : Procedure Tform1.CariClick(Sender:Tobject); Var Ditemukan:Boolean; Begin Ditemukan:=Tbarang.FindKey([Ecari.Text]); if (ditemukan=false) then // atau if not ditemukan then ShowMessage(Data tidak ditemukan); End; Untuk tombol Find Nearest tuliskan perintah berikut : Procedure Tform1.TfindNearestClick(Sender:Tobject); Begin TBarang.FindNearest([Ecari.Text]); End;

  • BAB VI JENIS-JENIS FIELD

    (Data Field, Lookup Field dan Calculated Field) Ada 3 jenis field yang ada di Delphi yaitu : 1. Data Field

    Data field adalah data yang berasal dari file databasenya. Field ini secara fisik tersimpan dalam file datanya.

    2. Lookup Field Lookup field adalah suatu field yang merupakan field yang diambil dari tabel lain berdasarkan kunci-kunci tertentu.

    3. Calculated Field Calculated field adalah field yang merupakan hasil perhitungan. Field ini hanya akan dapat dilihat ketika program di run saja dan field ini tidak tersimpan dalam file. Walaupun calculated field merupakan suatu hasil perhitungan, tetapi field ini tipenya tidak hanya bilangan, tetapi bisa juga bertipe data selain bilangan seperti string, boolean dan lain-lain.

    Contoh program : Membuat daftar penjualan data lengkap dengan menampilkan harga dan totalnya.

    1. Buat suatu Applikasi baru dengan File New Application 2. Tempatkan Table dan Datasource dengan properti seperti berikut :

    Properti Isi Name TPenjualan DatabaseName DBDemos TableName Items.DB

    Properti Isi

    Name Tbarang DatabaseName DBDemos TableName Parts.DB

    Properti Isi

    Name TSupplier DatabaseName DBDemos TableName Vendors.DB

    Properti Isi Name DSPenjualan DataSet Tpenjualan

    Properti Isi Name DSBarang DataSet TBarang

    Properti Isi Name DSsupplier DataSet TSupplier

    Tempatkan sebuah DBGrid dengan mengganti properti DataSource dengan DSPenjualan. Untuk lebih jelas lihat gambar di bawah ini.

  • 3. Untuk membuat suatu field Lookup atau Calculated dalam table penjualan, pertama kali sebaiknya dibuat dulu field datanya untuk mempermudah pemrograman dengan mendouble klik Table TPenjualan, atau Klik Kanan di table kemudian pilih Field Editor.

    4. Dalam Field Editor, klik kanan kemudian pilih Add All field jika semua field ingin dipakai semua atau pilih Add Field jika ingin memilih field yang akan dipakai.

    TPenjualan

    DSPenjualan

    TBarang

    DSBarang TSupplier

    DSSupplier

  • 5. Sekarang buat suatu field baru yang berjenis field lookup untuk Harga barang yang diambil dari table TBarang. Caranya : Double klik Table TPenjualan Klik kanan pada field editor kemudian pilih New - Field sehingga akan

    muncul layar seperti berikut :

    Tulis Nama Field dengan Harga Pilih Tipe data dengan Currency atau Float Pilih Field Type dengan Lookup Isi Key Field dengan PartNo Isi Dataset dengan TBarang Isi Lookup Keys dengan PartNo Isi Result Field dengan List Price

    Catatan : Key Field adalah field yang digunakan untuk pencarian ke Dataset

    lookupnya. Lookup Keys adalah field yang ada di Dataset lookup yang dicocokan

    dengan Key Fieldnya. Result Field adalah field apa yang akan diambil dari dataset lookup Tekan OK

  • 6. Untuk membuat Field SubTotal yang merupakan field berjenis Calculated, lakukan hal seperti berikut : Double Klik di TPenjualan Klik kanan di field editor, kemudian pilih New Field Isi Field Name dengan subtotal Isi Tipe dengan Currency atau float Isi tipe field dengan Calculated

    Tekan OK Untuk program perhitungannya, klik tabel Tpenjualan, kemudian klik tab

    Event di Object Inspector, kemudian double klik di event OnCalcField.

    Kemudian isi perintah/rumus perhitungannya seperti berikut :

    TpenjualanSubTotal.value:=TpenjualanQty.Value*TpenjualanHarga.value;

    Run program. Calculated field baru bisa dilihat setelah di run.

  • BAB VII QUERY / SQL

    (Structured Query Language) Komponen query adalah suatu komponen dataset (mirip seperti table) tetapi data yang ada dalam dataset tersebut berasal dari perintah query, dan bukan lagi berdasarkan TableName. Langkah-langkah penggunaan Query sama seperti pembuatan tabel. Coba buat form seperti berikut :

    1. Tempatkan komponen Query yang ada pada component palette Dataset. Isi properti : DatabaseName : DBDEMOS SQL : Select * From Country Active : True

    2. Tempatkan komponen DataSource. Isi properti : Dataset : Query1

    3. Tempatkan DBGrid isi properti DataSource dengan Datasource1. 4. Run Program.

    Contoh perintah-perintah SQL : Select digunakan untuk pemilihan field. Contoh : - Select * from Country

    pilih semua field yang ada pada tabel Country.db - Select Name, Capital from Country

    Pilih field Name dan Capital yang ada pada tabel Country. - Select Name, Capital, Population from Country order by Population

    Desc Pilih field Name, Capital, dan Population dari tabel country kemudian diurutkan berdasarkan population secara descending (menurun). Jika ingin pengurutan secara Ascending, hilangkan perintah Descnya.

    - Select Sum(Population), Max(Population), Min(Population), Avg(Population) from Country Pilih Jumlah (sum) dari population, nilai tertinggi (max) dari population, nilai terkecil (min) dari population dan rata-rata (average) dari population dari tabel Country.

    - Select * from country where Population>25000000 Pilih semua field dari country yang mempunyai population lebih dari 25000000.

    Halaman - 1

  • - Select Parts.*, Vendors.VendorName from Parts, Vendors where Parts.VendorNo = Vendors.VendorNo Pilih semua field dari tabel parts dan field VendorName dari tabel vendors dimana VendorNo yang di Tabel Parts sama dengan VendorNo yang ada di tabel Vendors.

    Membuat program belajar SQL

    Buat Form seperti berikut :

    Isi Perintah Onclick pada tombol Run dengan perintah berikut : Procedure Tform1.TrunClick(Sender:TOBject); Begin Query1.Close; // Tutup Query yang Aktif Query1.SQL.Clear; // Hapus SQL yang ada Query1.SQL.Add(Equery.Text); // Isi SQL dari Equery.Text Query1.Open; // Buka / Aktifkan Query End;

    Halaman - 2

  • BAB VIII MASTER - DETAIL

    Suatu form yang menampilkan suatu hubungan master detail digunakan untuk menyatakan suatu relasi 1 ke banyak dari 2 tabel. Jika tabel master berpindah record, maka pada tabel detail juga akan berubah sesuai dengan relasi antara tabel master dan detail tersebut. Borland Delphi telah menyertakan beberapa tabel yang dapat menggambarkan suatu relasi master detail. Tabel tersebut adalah tabel Orders.db dan Items.db. Tabel Orders.db berisi daftar faktur penjualan dan Items.db berisi item-item faktur penjualan tersebut. Kedua tabel relasikan dengan field OrderNo (nomor order). Untuk membuat suatu form yang menampilkan hubungan master detail, langkah-langkah yang harus dilakukan adalah : 1. Buat suatu aplikasi baru dengan menekan menu File New Application 2. Tempatkan 2 buah Table, 2 buah Data Source dan 2 Buah DBGrid. Peletakannya dapat dilihat di

    gambar di bawah ini. Properti-properti yang harus diganti adalah :

    Objek Properti Isi Name TPenjualan DatabaseName DBDEMOS TableName Orders.db

    Table1

    Active True Name DSPenjualan DataSource1 Dataset TPenjualan Name TItemPenjualan DatabaseName DBDEMOS TableName Items.db

    Table2

    Active True Name DSItemPenjualan DataSource2 Dataset TItemPenjualan

    DBGrid1 DataSource DSPenjualan DBGrid2 DataSource DSItemPenjualan Peletakan komponennya dapat dilihat di bawah ini.

  • 3. Sampai langkah di atas hubungannya masih belum master detail. Untuk membuat agar hubungan relasinya terlihat jelas, maka langkah berikutnya adalah klik di table detail (TItemPenjualan), kemudian isi properti MasterSource dengan DSPenjualan (Data Source Master), kemudian isi juga properti MasterField dengan menekan tombol elipsis () yang akan memunculkan layar desain relasi.

    4. Pilih field relasinya yaitu OrderNo di Detail dan OrderNo di Master. Setelah dipilih klik tombol Add,

    dan kemudian diikuti dengan menekan tombol OK untuk menutup layar desain relasi.

    5. Sekarang form master detail telah dibuat. Setiap ada perpindahan data di tabel master maka tabel detail

    akan ikut berganti sesuai dengan OrderNo yang sama.

  • BAB IX FILTER DATA

    Filter data digunakan untuk memilih sekelompok data berdasarkan kondisi tertentu. Data yang

    dihasilkan oleh filter bisa lebih dari satu buah. Filtering (penyaringan) data dalam Delphi adalah dengan cara memanfaatkan properti Filter dan

    Filtered yang dimiliki oleh komponen Table. Agar lebih jelas, buat form seperti di bawah ini.

    Table DataSource

    DBGrid

    ComboBox CheckBoxEdit

    1. Gantilah properti dan nama dari komponen-komponen tersebut :

    Name Table1 Name CBFilter DatabaseName DBDEMOS TableName Customer.db

    Table

    Active True Name DataSource1

    ComboBox Items Company

    Addr City Contact DataSource

    Dataset Table1 Name CBFilter Name Ekunci

    CheckBox Checked False Edit

    Text Kosongkan DBGrid DataSource DataSource1

  • 2. Pada event OnClick CBFilter isi perintah di bawah ini procedure TForm1.CBFilterClick(Sender: TObject); begin if CBFilter.Checked=true then // Jika CBFilter dipilih begin // susun filter Table1.filter:=CBField.Text+' = '''+EKunci.text+'*'''; Table1.Filtered:=true; // jalankan filter end else // jika CBFilter tidak dipilih Table1.Filtered:=false; // non aktifkan filter end;

    3. Agar setiap ada perubahan isi di edit EKunci mempengaruhi filter, maka event OnChange milik Ekunci harus ditujukan ke procedure CBFilterClick.

    4. Langkah di atas adalah membuat filter tetapi membedakan huruf kapital dan huruf kecil. Agar filter dijalankan dengan menganggap huruf kapital dan huruf kecil dianggap sama maka klik di Table1, kemudian klik tanda + pada Filter Option dan pada properti foCaseInsensitive diisi nilai True.

    5. Run program. Maka akan dapat dilihat kalau kita mengisi kata kunci dan filternya diaktifkan maka isi DBGrid akan sesuai dengan isi kata kunci.

  • BAB X PEMBUATAN LAPORAN

    Pembuatan laporan dalam Delphi menggunakan komponen-komponen yang ada dalam component

    palette QReport. Data yang dilaporkan adalah data-data yang berasal dari database. Suatu laporan umumnya memiliki bagian-bagian (band) sebagai berikut :

    Page Header Title

    Column Header Detail

    Summary Page Footer

    Keterangan : - Page Header : adalah band yang akan tampil di semua halaman dan berada pada posisi paling

    atas (header). - Title : adalah band yang berfungsi sebagai judul dari laporan. Band ini hanya ada pada

    halaman pertama. - Column Header adalah band yang berfungsi untuk menempatkan judul dari data yang akan

    dilaporkan. Column Header ada di setiap halaman - Detail adalah band yang berfungsi untuk menempatkan data yang akan dilaporkan. Band ini

    berulang sampai semua data telah tercetak. - Summary adalah band yang dicetak hanya di halaman terakhir sebagai catatan. Salah satu

    fungsi dari band ini adalah untuk menampilkan total dari semua data yang dilaporkan. - Page Footer berfungsi seperti page header tetapi letaknya di bagian bawah laporan dan selalu

    ada di tiap halaman. Salah satu gunanya adalah untuk menyimpan / menempatkan nomor halaman.

    Membuat Laporan Sederhana

    Cara pembuatan laporan adalah : 1. Buka kembali program yang berisi berisi program master detail. 2. Pilih Menu File New Report, yang akan menampilkan sebuah report kosong.

    Pembuatan Laporan - 1

  • 3. Setelah muncul tampilan laporan kosong, kemudian pilih bands (bagian-bagian report)yang akan digunakan dengan menekan tanda + pada properti Bands. Isi dengan nilai true pada band yang akan digunakan.

    4. Isi tabel yang akan dibuat laporan dengan cara mengisi properti Dataset dari reportnya. Table yang

    akan dilaporkan boleh diambil dari form lain atau dari data module. Jika tabel yang akan dilaporkan ada di form lain atau di data module, maka gunakan Menu File Use Unit untuk mengenalkan semua isi dari form yang memiliki tabel yang akan dibuat laporannya. Isi properti datasetnya dengan Form1.TPenjualan.

    5. Ganti properti Name dari laporan, sesuaikan dengan kegunaan form tersebut contoh : LapPenjualan. Kemudian simpan report tersebut dengan mengklik menu File Save, isi nama filenya UlapPenjualan.pas.

    6. Komponen-komponen yang dapat dipakai dalam laporan berada pada componen palette Qreport.

    Komponen yang sering dipakai diantaranya : - QRLabel : Label / tulisan biasa - QRDBText : Label / Text yang berasal dari data tabel (database) - QRImage : Gambar contoh logo perusahaan - QRSystem : Menampilkan Tanggal, Jam, No Halaman, No Data dll. - QRExpresion : Untuk perhitungan (Rumus).

    7. Untuk membuat garis pinggir (border), gunakan properti Frame dari tiap bandnya. Isi properti dengan true, jika garis mau digambar.

    8. Atur bagian Page Header sesuai keinginan, misalnya dengan menampilkan waktu ketika laporan dibuat. Caranya yaitu dengan meletakan komponen QRSYS, ganti properti Data dengan DateTime dan isi pula properti Text dengan tulisan : Tanggal Laporan

    9. Atur pula bagian Title, misalnya dengan mengisikan judul laporan.

    Pembuatan Laporan - 2

  • 10. Atur pula bagian ColumnHeadernya dengan menempatkan QRLabel sebagai JudulKolom.

    11. Atur pula bagian terpentingnya yaitu bagian Detail. Data-data yang ada dalam band Detail biasanya

    berasal dari database sehingga komponen yang dipakai di band tersebut adalah QRDBText.

    Atur properti setiap QRDBText tersebut. Properti yang diatur adalah properti Dataset dan DataField. Isi dataset dengan Form1.TPenjualan dan DataField disesuaikan dengan nama field yang akan dituliskan oleh QRDBText tersebut. Jangan lupa untuk ItemsTotal sebaiknya dibuat RightJustify karena field tersebut berupa angka dengan cara mengganti properti Alignment dengan taRightJustify.

    12. Atur pula bagian Summary misalnya dengan menghitung banyaknya transaksi penjualan. Caranya adalah dengan meletakan komponen QRSys, kemudian ganti properti Data dengan DetailCount.

    13. Atur Pula bagian PageFooter misalnya dengan menampilkan nomor halaman. Caranya adalah dengan

    meletakan sebuah komponen QRSys dan isi properti Data dengan PageNumber, isi pula properti Text dan isi dengan tulisan : Halaman Ke-.

    14. Secara keseluruhan, desain report terlihat seperti gambar di bawah ini.

    Pembuatan Laporan - 3

  • 15. Untuk mengecek apakah hasil desain laporan telah rapi, caranya adalah klik kanan di laporan dan kemudian klik Preview.

    16. Jika telah benar, simpan laporan tersebut dan kembali ke form utama untuk membuat suatu tombol

    yang akan memanggil laporan tersebut. 17. Di Form1 (form utama), buat suatu tombol dan isi Caption dengan Laporan Penjualan, kemudian isi

    event OnClicknya dan isi dengan perintah di bawah ini. NamaLaporan.Preview; Jika laporan hanya ingin di preview saja NamaLaporan.Print; Jika laporan ingin langsung di print. Contoh : procedure TForm1.Button1Click(Sender: TObject); begin LapPenjualan.Preview; end; atau procedure TForm1.Button1Click(Sender: TObject); begin LapPenjualan.Print; end;

    18. Run program tersebut.

    Pembuatan Laporan - 4

  • BAB XI DATA MODULE

    Datamodule adalah sebuah form khusus yang henya bisa menampung komponen-komponen

    database saja. Datamodule digunakan untuk mengumpulkan semua komponen database dalam suatu tempat

    sehingga semua form yang mengakses database hanya mengakses ke komponen-komponen database yang ada di datamodul saja. Sehingga mempermudah dalam pemrogramannya. Jadi kita tidak lagi dibingungkan oleh tersebarnya komponen-komponen database di banyak form.

    Cara pembuatan datamodule adalah : 1. Klik menu File - New DataModule

    2. Sebaiknya simpan unitnya dengan menggunakan File- Save. Gunakan nama UdataModule.pas

    atau UDM.Pas. (Penamaan file unit bebas) 3. Ganti Nama dari datamodule menjadi DM atau Data.

  • 4. Tempatkan komponen-komponen data akses (database di dalam DataModule).

    5. Kemudian agar form lain dapat mengakses komponen database yang ada di datamodule, maka

    pada tiap form tersebut harus ditambahkan perintah Uses [Nama File unit Data Modul] atau dengan File Use Unit, dan kemudian pilih unit datamodule tadi.

    6. Setiap pemanggilan data dari form lain harus didahului dengan perintah DM kalau nama data modulnya adalah DM. Contoh : DM.TPenjualan.Append.

  • BAB XII PROGRAM PENJUALAN SEDERHANA

    Program yang akan dibuat kali ini adalah program untuk mendata penjualan barang. Fasilitas yang

    diberikan pada program ini adalah : 1. Update Stock (Kalau ada transaksi penjualan, maka stock barang berkurang, Kalau ada transaksi

    pembelian, maka stock barang akan bertambah) 2. Laporan Penjualan, Laporan Barang, Laporan Pembelian Untuk membuat program tersebut maka dibutuhkan 3 buah tabel yaitu : 1. Tabel Barang yang berisi barang-barang yang tersedia dalam toko tersebut. 2. Tabel Penjualan yang akan digunakan untuk menyimpan semua data penjualan. 3. Tabel Pembelian yang akan digunakan untuk menyimpan semua data pembelian barang.

    Langkah-Langkah Pengerjaan : 1. Buatlah ke-3 tabel tersebut dalam database desktop, dengan daftar field seperti berikut :

    Barang.DB Nama Field Type Size Kode + * Nama A 20 Harga $ Stock I StockMinimal I

    Penjualan.DB

    Nama Field Type Size Tanggal D Kode I Harga $ Qty I Diskon N

    Pembelian.DB

    Nama Field Type Size Tanggal D Kode I Harga $ Qty I

    2. Buatlah suatu Aplikasi baru. Kemudian ganti nama dari Form1 menjadi Futama (Form Utama)

    dan kemudian simpan dalam file UFUtama.Pas. Berilah komponen MainMenu yang ada di Standard dan buat daftar menu seperti berikut :

    PEMBUATAN PROGRAM PENJUALAN SEDERHANA - 1

  • 3. Buatlah data modul kemudian beri nama data modul tersebut dengan DM dan kemudian simpan

    dalam UDM.Pas.

    4. Tempatkan semua tabel yang akan digunakan dalam DataModul, lengkap dengan data sourcenya. 5. Buatlah objek field dengan cara men-double klik tiap tabel kemudian klik kanan dan tekan Add

    All Fields. 6. Buatlah sebuah form baru yang akan digunakan untuk pengolahan data barang. Berilah nama form

    ini dengan Fbarang atau FrmBarang dan simpan dalam file UFBarang.pas. Form barang dibuat seperti berikut :

    7. Setelah membuat form Fbarang, kemudian buatlah suatu form baru untuk membuat form input

    data barang yang akan dimunculkan kalau pengguna menekan tombol tambah data atau edit data. Berilah nama formnya dengan FinputBarang dan simpan dalam file UFInputBarang.pas. Contoh FinputBarang adalah seperti gambar berikut :

    PEMBUATAN PROGRAM PENJUALAN SEDERHANA - 2

  • Jangan lupa mengisi properti ModalResult dari tombol OK dengan Mrok dan untuk tombol Cancel diisi dengan MrCancel. Untuk edit gunakan DBEdit.

    8. Pada tombol Tambah pada FormBarang berilah perintah berikut : procedure TFBarang.TblTambahClick(Sender: TObject); begin DM.TBarang.Append;// atau DM.TBarang.Insert; FInputBarang.Showmodal; // menampilkan finputbarang If FinputBarang.ModalResult=mrok then // jika tekan simpan DM.TBarang.Post // simpan data else DM.TBarang.Cancel; // batalkan tambah data end;

    9. Pada tombol Edit pada Formbarang berilah perintah seperti berikut : procedure TFBarang.TblEditClick(Sender: TObject); begin DM.TBarang.Edit; // data mau diedit FInputBarang.Showmodal; // tampilkan finput barang If FinputBarang.ModalResult=mrok then // jika tekan simpan DM.TBarang.Post // simpan data else DM.TBarang.Cancel; // batalkan pengeditan data end;

    10. Pada tombol Hapus pada FormBarang berilah perintah seperti berikut : procedure TFBarang.TblHapusClick(Sender: TObject); begin if Messagedlg('Data Mau Dihapus ?',mtconfirmation, [mbyes,mbno],0)=mryes then // kalau jawab yes DM.TBarang.Delete; // hapus data end;

    11. Pada Tombol Keluar pada Form Barang berilah perintah berikut : procedure TFBarang.TblKeluarClick(Sender: TObject); begin Close; end;

    12. Untuk pemanggilan FormBarang dari Form Utama maka isilah event onclick dari menu Master Barang seperti berikut : procedure TFUtama.Barang1Click(Sender: TObject); begin FBarang.Showmodal; // tampilkan Form Barang end;

    13. Buatlah laporan untuk melaporkan data semua barang dan harus bisa dipanggil pada menu Laporan Laporan Barang.

    PEMBUATAN PROGRAM PENJUALAN SEDERHANA - 3

  • 14. Untuk form pengolahan data penjualan, buatlah sebuah form baru dan beri nama formnya dengan Fpenjualan dan simpan dalam file UFPenjualan.pas. Buatlah form seperti berikut :

    15. Buatlah form baru untuk pemasukan data penjualan kemudian namailah dengan FinputPenjualan

    dan simpan dalam file UfinputPenjualan.pas. Lihat gambar :

    Caranya :

    - Tempatkan Groupbox, label Nama barang dan label Qty. - Tempatkan Tombol OK dan Tombol Cancel, jangan lupa mengisi modal result dari kedua

    komponent tersebut dengan MrOK dan MrCancel - Tempatkan dua buah DBEdit dan mengganti properti Datasource dengan

    DM.DSPenjualan dan datafieldnya dengan Qty dan Diskon. - Tempatkan sebuah DBLookupComboBox yang ada pada komponen tab Data Control

    yang digunakan untuk pemilihan nama barang yang akan dijual dan kemudian ganti properti berikut : DataSource : DM.DSPenjualan DataField : Kode ListSource : DM.DSBarang ListField : NamaBarang KeyField : Kode

    16. Kembali ke FormPenjualan, kemudian isi event onclick dari tombol transaksi dengan perintah seperti berikut : procedure TFPenjualan.TblJualClick(Sender: TObject); begin DM.TPenjualan.Append;// Tambah Penjualan DM.TPenjualan['Tanggal']:=Now; // isi Tanggal dengan Tanggal Sekarang (now) FInputPenjualan.Showmodal; // menampilkan FInputPenjualan

    DBLookupComboBox

    PEMBUATAN PROGRAM PENJUALAN SEDERHANA - 4

  • if FinputPenjualan.Modalresult=mrok then // Kalau menekan Tombol OK begin DM.TBarang.Findkey([DM.TPenjualan['Kode']]); // Cari Barang DM.TBarang.Edit; // Data Barang Mau DiEdit //Stock barang dikurangi dengan Qty Penjualan DM.TBarang['Stock']:=DM.TBarang['Stock']-DM.TPenjualan['Qty']; DM.TBarang.Post; // Simpan Data Barang //Harga Barang yang dijual diisi dari Harga barang dari tabel Barang DM.TPenjualan['Harga']:=DM.TBarang['Harga']; DM.TPenjualan.Post;//Simpan Penjualan end else // kalau tidak menekan OK DM.TPenjualan.Cancel; // Batalkan Penjualan end;

    17. Supaya Fpenjualan dapat dipanggil dari menu utama, maka masukan perintah berikut pada event OnClick dari Menu Transaksi Penjualan Barang. procedure TFUtama.PenjualanBarang1Click(Sender: TObject); begin FPenjualan.Showmodal; end;

    18. Buat juga Laporan Penjualan barang yang akan dipanggil jika kita menekan menu Laporan Laporan Penjualan.

    19. Ulangi perintah langkah-langkah penjualan barang untuk proses pembelian barang. Perbedaannya kalau penjualan barang mengurangi stock, dan pembelian barang menambah stock.

    PEMBUATAN PROGRAM PENJUALAN SEDERHANA - 5

    01 Pengenalan Delphi.pdfBAB I PENDAHULUAN

    02 Program Pertama.pdfShortintSmallintLongintInt64ByteWordLongword

    03 IF Case Of .pdfSub totalBisnis RadioButton1RBJakarta JakartaRadioButton2RBSolo SoloRadioButton3RBSurabaya SurabayaETiket ETotal

    Komponen Check Box ( ) CaptionPropertiProperti

    04 Perulangan.pdf Memo1.Lines.Delete(0); // Menghapus baris ke-1 6. Perulangan Tersarang (perulangan dalam perulangan) Bunga : 10

    05 Database.pdfBAB V DASAR-DASAR MEMBUAT PROGRAM DATABASE DENGAN DELPHI PENGANTAR DATABASE DENGAN DELPHI PEMBUATAN ALIAS PEMBUATAN TABEL PENGISIAN DATA Contoh Aplikasi Database 1 FIsiBarang.EStockMinimal.Text:= IntToStr(TBarangStockMinimal.Value); MrNone, mrAbort, mrYes, mrOk, mrRetry, mrNo, mrCancel, mrIgnore, mrAll

    Pembuatan Index Pada Table Penggunaan Index dalam Program

    07 Query (SQL).pdf Membuat program belajar SQL

    11 Data Module.pdfBAB XI DATA MODULE

    12 PEMBUATAN PROGRAM PENJUALAN SEDERHANA.pdf DM.TBarang.Post // simpan data FInputPenjualan.Showmodal; // menampilkan FInputPenjualan