Anda di halaman 1dari 250

Politeknik Telkom

Pemrograman Visual

PEMROGRAMAN VISUAL

POLITEKNIK TELKOM BANDUNG 2009

Politeknik Telkom

Pemrograman Visual

PENULIS: SURYATININGSIH, S.T. LUTCE RUSTYANA, S.T. RITA RISMALA YOGI ARJAN

Dilarang menerbitkan kembali, menyebarluaskan, atau menyimpan baik sebagian maupun seluruh isi buku dalam bentuk dan dengan cara apapun tanpa izin tertulis dari Politeknik Telkom Hak cipta dilindungi undang-undang @ Politeknik Telkom 2008 No part of this document may be copied, reproduced, printed, distributed, modified, removed and amended in any form by any means without prior written authorization of Telkom Polytechnic. Copyright @ 2009 Telkom Polytechnic. All rights reserved
ii

Politeknik Telkom

Pemrograman Visual

KATA PENGANTAR

Assalamualaikum Wr. Wb Segala puji bagi Allah SWT karena dengan karunia-Nya courseware ini dapat diselesaikan. Atas nama Politeknik Telkom, kami sangat menghargai dan ingin menyampaikan terima kasih kepada penulis, penerjemah dan penyunting yang telah memberikan tenaga, pikiran, dan waktu sehingga c ourseware ini dapat tersusun. Tak ada gading yang tak retak, di dunia ini tidak ada yang sempurna, oleh karena itu kami harapkan para pengguna buku ini dapat memberikan masukan perbaikan demi pengembangan selanjutnya. Semoga courseware ini dapat memberikan manfaat dan membantu seluruh Sivitas Akademika Politeknik Telkom dalam memahami dan mengikuti materi perkuliahan di Politeknik Telkom. Amin. Wassalamualaikum Wr. Wb. Bandung, Desember 2007

Christanto Triwibisono Wakil Direktur I Bidang Akademik & Pengembangan

iii

Politeknik Telkom

Pemrograman Visual

DAFTAR ISI KATA PENGANTAR ............................................................................................... iii DAFTAR ISI ................................................................................................................ iv DAFTAR GAMBAR ................................................................................................. vii 1 PEMROGRAMAN VISUAL ...................................................................... 1-1 1.1 Visual Programming ................................................................................... 1-2 1.2 Integrated Development Environment.................................................. 1-2 1.3 Rapid Application Development ............................................................. 1-4 2 PENGENALAN IDE BORLAND DELPHI ............................................ 2-1 2.1 Instalasi Borland Delphi ............................................................................ 2-2 2.2 Pengenalan IDE Borland Delphi .............................................................. 2-5 2.2.1 Main Menu ................................................................................................... 2-5 2.2.2 Code Editor ................................................................................................. 2-6 2.2.3 Component Palette ................................................................................... 2-6 2.2.4 Form View ................................................................................................... 2-7 2.2.5 Object Inspector ........................................................................................ 2-7 2.3 File Project, Unit dan Form Borland Delphi ........................................ 2-8 2.3.1 Project File ................................................................................................... 2-8 2.3.2 Unit File ........................................................................................................ 2-9 2.3.3 Form File ...................................................................................................... 2-9 2.4 Event Driven Programming...................................................................... 2-9 2.5 Properties .................................................................................................... 2-9 2.6 Event ........................................................................................................... 2-10 2.7 Container ................................................................................................... 2-11 3 PENGENALAN FORM SDI DAN MDI ................................................ 3-1 3.1 MDI dan SDI ................................................................................................ 3-2 3.2 Struktur Aplikasi MDI ............................................................................... 3-3 3.3 Aplikasi MDI di Delphi .............................................................................. 3-3 3.4 Implementasi aplikasi MDI........................................................................ 3-4 4 TIPE DATA, STRUKTUR PROGRAM, FUNGSI DAN PROSEDUR ........................................................................................................................ 4-1 4.1 Tipe Data ..................................................................................................... 4-2 4.1.1 Integer........................................................................................................... 4-2 4.1.2 Real ........................................................................................................... 4-2 4.1.3 Boolean......................................................................................................... 4-3 4.1.4 Character ..................................................................................................... 4-3 4.1.5 String ........................................................................................................... 4-3 4.1.6 Array ........................................................................................................... 4-4
iv

Politeknik Telkom

Pemrograman Visual

4.1.7 4.2 4.2.1 4.3 4.4 4.4.1 4.4.2 4.5 4.5.1 4.5.2 4.5.3 4.5.4 4.6 4.6.1 4.6.2 4.7 4.8 4.8.1 4.8.2 5 5.1 5.1.1 6 6.1 6.1.1 6.1.2 6.2.1. 7 7.1 7.2 7.3 7.4 7.4.1 7.4.2 7.4.3 7.4.4 7.5 7.5.1

Record .......................................................................................................... 4-4 Tipe Terenumerasi dan Subrange ........................................................... 4-4 Ordinal ......................................................................................................... 4-5 Konstanta ..................................................................................................... 4-5 Variabel ......................................................................................................... 4-6 Variabel Global ........................................................................................... 4-6 Variabel Lokal.............................................................................................. 4-6 Operator ...................................................................................................... 4-6 Operator Penugasan .................................................................................. 4-6 Operator Aritmatika ................................................................................. 4-6 Operator Relasi .......................................................................................... 4-7 Operator Logika ......................................................................................... 4-7 Kontrol Program ........................................................................................ 4-8 Pencabangan ................................................................................................ 4-8 Perulangan .................................................................................................... 4-9 Function dan Procedure ........................................................................... 4-9 Studi Kasus ................................................................................................ 4-10 Apikasi Stopwatch .................................................................................... 4-10 Aplikasi Notepad ...................................................................................... 4-14 KONVERSI TIPE DATA ........................................................................... 5-1 Konversi Tipe Data.................................................................................... 5-2 Studi Kasus : Aplikasi Currency Converter ......................................... 5-3 MICROSOFT ACCESS ............................................................................. 6-1 Relational Database ................................................................................... 6-2 Membuat Relational Database dengan Microsoft Access.................. 6-2 Membuat Relational Database dengan Microsoft Access 2003 ....... 6-4 Membuat Relational Database dengan................................................. 6-11 PENGANTAR APLIKASI DATABASE MENGGUNAKAN DELPHI ........................................................................................................................ 7-1 Aplikasi Database ....................................................................................... 7-2 Mekanisme Akses Data Dengan Delphi ................................................ 7-2 Arsitektur Dasar Aplikasi Database dalam Delphi ............................. 7-3 User Interface (UI)..................................................................................... 7-4 DataSource .................................................................................................. 7-4 DataSet ......................................................................................................... 7-4 Connection .................................................................................................. 7-4 DataModule ................................................................................................. 7-5 Menggunakan Database Desktop............................................................ 7-5 Membuat file Database Desktop ............................................................ 7-6
v

Politeknik Telkom

Pemrograman Visual

7.6 7.7 8

Mengolah Database MS Access ............................................................... 7-9 Menghubungkan Database ke dalam Form ........................................... 7-9 PEMAKAIAN KOMPONEN DATA CONTROL DAN IMPLEMENTASI SINTAKS QUERY PADA DELPHI .......................... 8-1 8.1 Insert Data ................................................................................................... 8-2 8.2 Select Data................................................................................................... 8-2 8.3 Update Data ................................................................................................ 8-4 8.4 Delete Data ................................................................................................. 8-4 8.5 Karakter Spesial .......................................................................................... 8-5 8.6 ADOConnection........................................................................................ 8-6 8.7 Aplikasi Insert, Update, Delete Anggota ............................................... 8-6 8.8 Aplikasi Insert, Update, Delete dengan menggunakan DBNavigator ... ...................................................................................................................... 8-17 8.9 Aplikasi Searching ..................................................................................... 8-21 9 APLIKASI DATABASE MASTER DETAIL ........................................... 9-1 9.1 Aplikasi Database Master Detail ............................................................. 9-2 10 DELPHI REPORTING MENGGUNAKAN QUICK REPORT ....... 10-1 10.1 Installasi Quick Report............................................................................ 10-2 10.2 Komponen Quick Report ...................................................................... 10-4 10.3 Membuat Laporan dengan Quick Report ........................................... 10-5 10.3.1 Membuat Form Aplikasi Laporan ......................................................... 10-5 10.3.2 Mendesain Laporan ............................................................................... 10-10 10.3.3 Menulis Kode Program Laporan ........................................................ 10-13 11 TUTORIAL PEMBUATAN APLIKASI RENTAL VCD ..................... 11-1 11.1 Pengantar Aplikasi Rental VCD ............................................................ 11-2 11.2 Perancangan dan Pembuatan Database Rental VCD ........................ 11-2 11.3 Merancang dan Membuat Form menggunakan Borland Delphi .. 11-12 11.4 Menulis Kode Program VCD Rental ................................................. 11-37 11.5 Menjalankan Program VCD Rental ................................................... 11-63 DAFTAR PUSTAKA ................................................................................................ xii

vi

Politeknik Telkom

Pemrograman Visual

DAFTAR GAMBAR Gambar 1-1 - Flowcode IDE .................................................................................... 1-3 Gambar 1-2 - Anjuta IDE C / C++ Editor ......................................................... 1-4 Gambar 1-3 Impelementasi KonsepRAD dengan Codegear Delphi IDE ... 1-5 Gambar 2-1 - Menu Installer Borland .................................................................... 2-3 Gambar 2-2 Welcome Screen ............................................................................. 2-3 Gambar 2-3 - Verifikasi Serial Number ................................................................. 2-4 Gambar 2-4 - Pilihan Opsi Instalasi ........................................................................ 2-4 Gambar 2-5 - Proses Installasi ................................................................................. 2-5 Gambar 2-6 - Main Menu (Component Palette, Context Menu, Main Toolbar)........................................................................................................................ 2-5 Gambar 2-7 - Code Editor ....................................................................................... 2-6 Gambar 2-8 - Main Component Palette................................................................ 2-6 Gambar 2-9 - Form View dengan satu komponen button dan satu label ...... 2-7 Gambar 2-10 - Object Inspector digunakan untuk melakukan perubahan atribut dari komponen. ............................................................................................. 2-8 Gambar 2-11 - Pengaturan properties sebuah komponen melalui Object Insector....................................................................................................................... 2-10 Gambar 2-12 - Pembuatan sebuah event dengan mengakses event dalam object inspector ........................................................................................................ 2-11 Gambar 2-13 - Kerangka yang di generate secara otomatis ketika event oncreate di Object Inspector Form1 di klik-ganda ........................................... 2-11 Gambar 3-1 - Tampilan Form Utama..................................................................... 3-5 Gambar 3-2 - Dialog MainMenu .............................................................................. 3-5 Gambar 3-3 - Menu dan Submenu.......................................................................... 3-7 Gambar 3-4 - Form Utama dengan Menu ............................................................. 3-8 Gambar 3-5 - Project Option .................................................................................. 3-9 Gambar 3-6 - Running Program ............................................................................ 3-11 Gambar 4-1 - Gambar Tampilan Stop Watch .................................................... 4-10 Gambar 4-2 - System Tab Component Palette.............................................. 4-11 Gambar 4-3 - Delphi Notepad .............................................................................. 4-15 Gambar 5-1 - gambaran umum fungsi konversi dengan studi kasus converter mata uang ..................................................................................................................... 5-2 Gambar 5-2 - Rancangan Form Currency Converter ........................................ 5-4 Gambar 5-3 - Tampilan konversi US Dollar ke Rupiah atau sebaliknya ....... 5-10 Gambar 5-4 - Tampilan konversi EURO ke Rupiah atau sebaliknya ............. 5-10 Gambar 5-5 - Tampilan konversi Yen Jepang ke Rupiah atau sebaliknya ..... 5-11 Gambar 6-1 - Microsoft Access 2007 .................................................................... 6-4

vii

Politeknik Telkom

Pemrograman Visual

Gambar 6-2 - Microsoft Access New File Dialog............................................ 6-5 Gambar 6-3 - Microsoft Access Create Table ................................................. 6-6 Gambar 6-4 - Microsoft Access - Table Designer .............................................. 6-6 Gambar 6-5 - Microsoft Access Save Table Dialog......................................... 6-7 Gambar 6-6 - Microsoft Access Console .......................................................... 6-8 Gambar 6-7 - Microsoft Access Show Table .................................................... 6-9 Gambar 6-8 - Microsoft Access Relationship Dialog ...................................... 6-9 Gambar 6-9 - Edit Relationship ............................................................................. 6-10 Gambar 6-10 - Microsoft Access Relationship............................................... 6-11 Gambar 6-11 - Microsoft Access 2007 ............................................................... 6-12 Gambar 6-12 - Microsoft Access New Database Pane ................................ 6-12 Gambar 6-13 - Microsoft Access 2007 New File Dialog ............................. 6-13 Gambar 6-14 - Microsoft Access 2007 Database console .......................... 6-14 Gambar 6-15 - Microsoft Access 2007 Table Save Dialog .......................... 6-15 Gambar 6-16 - Microsoft Access 2007 Console ........................................... 6-15 Gambar 6-17 - Microsoft Access 2007 Show Table Dialog ........................ 6-16 Gambar 6-18 - Microsoft Access 2007 Relationship .................................... 6-17 Gambar 6-19 - Microsoft Access 2007 Edit Relationship Dialog ............... 6-17 Gambar 6-20 - Access 2007 Relationship ....................................................... 6-18 Gambar 7-1- Arsitektur Aplikasi Database pada Delphi ................................... 7-4 Gambar 7-2 - Database Desktop ............................................................................ 7-5 Gambar 7-3 - Format database ............................................................................... 7-6 Gambar 7-4 - struktur table database ................................................................... 7-7 Gambar 7-5 - pengisian Nama Field pada table ................................................... 7-8 Gambar 7-6 - menyimpan table ............................................................................... 7-8 Gambar 7-7 - Form View TAdoTable Component ...................................... 7-10 Gambar 7-8 - Form View ConnectionString Properties .............................. 7-10 Gambar 7-9 - Form View Data Link Dialog .................................................... 7-11 Gambar 7-10 Form View Connection Success........................................... 7-12 Gambar 7-11 - Form View TDataSource ........................................................ 7-13 Gambar 7-12 Form View TDBGrid .............................................................. 7-14 Gambar 7-13 DbGrid Properties ...................................................................... 7-14 Gambar 8-1- Tampilan Form Anggota ................................................................... 8-7 Gambar 8-2 - Data Module ...................................................................................... 8-9 Gambar 8-3 - Connection String ............................................................................ 8-9 Gambar 8-4 - Data Link Properties Provider .................................................... 8-10 Gambar 8-5 - Data Link Properties Connection............................................... 8-11 Gambar 8-6 - SQL String List Editor ................................................................... 8-11 Gambar 8-7 - Tampilan Form Anggota Lengkap ............................................... 8-12

viii

Politeknik Telkom

Pemrograman Visual

Gambar 8-8 - Setting Column DBGrid................................................................ 8-13 Gambar 8-9 - Tampilan Form Anggota................................................................ 8-18 Gambar 8-10 - Data Module.................................................................................. 8-19 Gambar 8-11 - Setting column DBGrid............................................................... 8-20 Gambar 8-12 - Running PrjDBAnggotaVCD ...................................................... 8-21 Gambar 8-13 - Gbr 10.18 Form Search .............................................................. 8-21 Gambar 8-14 - String List Editor........................................................................... 8-23 Gambar 8-15 - Running Program Search ............................................................ 8-25 Gambar 9-1 - Form Master-Detail Anggota ......................................................... 9-2 Gambar 9-2 - Data Module ...................................................................................... 9-3 Gambar 9-3 - Field Link Designer .......................................................................... 9-5 Gambar 9-4 - Aplikasi Running ................................................................................ 9-5 Gambar 10-1 - Project Options ............................................................................ 10-2 Gambar 10-2 - Browse - pencarian library quickreport .................................. 10-3 Gambar 10-3 - Component Pallete QReport .................................................... 10-3 Gambar 10-4 - Component Pallete QReport - Detail ..................................... 10-4 Gambar 10-5 - Form Navigasi Laporan .............................................................. 10-6 Gambar 10-6 Lembar Kerja Laporan ............................................................... 10-9 Gambar 10-7 - Design Laporan .......................................................................... 10-10 Gambar 10-8 - Report Setting ............................................................................ 10-13 Gambar 10-9 - Form Navigasi Laporan Running ........................................... 10-16 Gambar 10-10 - Display Report......................................................................... 10-17 Gambar 11-1 Tampilan Awal MS Access 2007 .............................................. 11-2 Gambar 11-2 Membuat Database Baru ........................................................... 11-3 Gambar 11-3 Membuat Database Baru ........................................................... 11-3 Gambar 11-4 Memilih Format Access 2003 dan memasukkan nama........ 11-3 Gambar 11-5 Create new table ......................................................................... 11-5 Gambar 11-6 Memberi nama pada table baru ................................................. 11-5 Gambar 11-7 Detil Table Anggota .................................................................... 11-6 Gambar 11-8 Detil Tabel VCD ........................................................................... 11-6 Gambar 11-9 Detil Tabel PenyewaanDetil ....................................................... 11-6 Gambar 11-10 - Detil Tabel PenyewaanDetil .................................................... 11-7 Gambar 11-11 Membuat Relationship.............................................................. 11-7 Gambar 11-12 Memilih table yang akan digunakan di relationship ............ 11-8 Gambar 11-13 - Relationship Anggota - PenyewaanMaster ........................... 11-8 Gambar 11-14 Relationship PenyewaanDetil - PenyewaanMaster ............ 11-9 Gambar 11-15 - Relationship VCD - PenyewaanDetil ..................................... 11-9 Gambar 11-16 - Menghubungkan dua field dalam sebuah relasi ................. 11-10 Gambar 11-17 - Relationship Complete .......................................................... 11-10
ix

Politeknik Telkom

Pemrograman Visual

Gambar 11-18 - Database yang saling terhubung dan detil .......................... 11-11 Gambar 11-19 - Membuat aplikasi baru ........................................................... 11-12 Gambar 11-20 - Menambahkan beberapa form baru .................................... 11-12 Gambar 11-21 - Form Utama ............................................................................. 11-13 Gambar 11-22 - Edit Main Menu........................................................................ 11-14 Gambar 11-23 - Properties Windows Form Utama ..................................... 11-16 Gambar 11-24 - Form VCD ................................................................................ 11-17 Gambar 1-25 - Form Anggota ............................................................................ 11-19 Gambar 11-26 - Properties Windows Form Anggota .................................. 11-21 Gambar 11-27 Form Transaksi Penyewaan ................................................. 11-22 Gambar 11-28 Form Laporan Transaksi Peminjaman ............................... 11-24 Gambar 11-29 Install Quickreport ................................................................ 11-26 Gambar 11-30 Menambah Package dari file bpl (Borland Package Library) ................................................................................................................................... 11-26 Gambar 11-31 Memilih file dclqrt70.bpl ....................................................... 11-27 Gambar 11-32 Menu Use Unit untuk menggunakan Unit pada form utama ................................................................................................................................... 11-28 Gambar 11-33 Daftar Unit yang akan digunakan ........................................ 11-28 Gambar 11-34 Representasi Sintaksis Uses pada Unit .............................. 11-29 Gambar 11-35 Click Project Options untuk menambahkan form child MDI sehingga ditampilkan hanya ketika di akses melalui form utama ........ 11-29 Gambar 11-36 Daftar Form-Form yang Tersedia dalam Project ............ 11-30 Gambar 11-37 Daftar Form-Form yang telah dipilih ................................. 11-30 Gambar 11-38 Menu create new Data Module .......................................... 11-31 Gambar 11-39 Data Access component: ADOConnection, ADOQuery, dan ADODataSet .................................................................................................. 11-31 Gambar 11-40 Properties Window ADOConnRentalVCD .................... 11-34 Gambar 11-41 ConnectionString Dialog ...................................................... 11-35 Gambar 11-42 Data Link Properties - ConnectionString Builder Dialog ........ ................................................................................................................................... 11-35 Gambar 11-43 Data Link Properties Test Connection Success .......... 11-36 Gambar 11-44 Memasukkan string SQL pada property SQL ADOQueryLaporanPeminjaman ........................................................................ 11-36 Gambar 11-45 Cara 1 Mengakses object untuk memasukkan code ... 11-37 Gambar 11-46 Cara 2 Men-generate procedure baru dengan menggunakan event OnClick pada properties ................................................ 11-37 Gambar 11-47 Membuat procedure baru dengan meng-klik ganda pada button....................................................................................................................... 11-38 Gambar 11-48 - Aplikasi Rental VCD Running - Form Utama ................... 11-64
x

Politeknik Telkom

Pemrograman Visual

Gambar 11-49 - Aplikasi Rental VCD Running - Form Anggota............. 11-65 Gambar 11-50 - - Aplikasi Rental VCD Running - Form VCD Gambar 11-51 - Aplikasi Rental VCD Running Penyewaan Running ................................. 11-66 Gambar 11-52 - Aplikasi Rental VCD Running Nama dan No Anggota 11-68 Gambar 11-53 Error Message ID Peminjam ............................................ 11-68 Gambar 11-54 Aplikasi Rental VCD Running Judul VCD ......................... 11-69 Gambar 11-55 Aplikasi Rental VCD Running Harga sewa otomatis .. 11-70 Gambar 11-56 Error Message Judul VCD ................................................ 11-70 Gambar 11-57 Aplikasi Rental VCD Running Data Peminjaman Sukses disimpan ................................................................................................................... 11-71 Gambar 11-58 - Aplikasi Rental VCD Running Tampilan Report ........... 11-72

xi

Politeknik Telkom

Pemrograman Visual

1 PEMROGRAMAN VISUAL

Overview

Bab ini akan menjelaskan tentang konsep pemrograman visual secara umum. Memperkenalkan konsep Rapid Application Development dan Integrated Development Environment, dan memperenalkan beberapa aplikasi pegembangan visual.

Tujuan

1. 2. 3.

Mahasiswa mengetahui konsep pemrograman visual Mahasiswa mengerti Integrated Development Environment Mahasiswa mengenal konsep RAD (Rapid Application Development)

Pemrograman Visual

1-1

Politeknik Telkom

Pemrograman Visual

Pada awal diperkenalkannya pemrograman menggunakan komputer, representasi sintaksis perintah-perintah program (command syntax) adalah berupa rangkaian karakter atau tekstual. Interaksi pengguna dengan komputer juga terbatas pada inptut keyboard dan representasi tombol, table dan garis yang merupakan gabungan dan manipulasi dari karakter ASCII. Seiring dengan perkembangan pada teknologi hardware/perangkat keras komputer, visualisasi antarmuka pengguna (user interface) komputer yang pada awalnya berupa text-based mengalami kemajuan dan berkembang menjadi graphical-based. Hal ini juga memicu perkembangan pengembangan aplikasi-aplikasi komputer yang lebih menuntut tampilan dan menu yang interaktif dan bersahabat (user friendly) seperti aplikasi pengolah kata, pengolah angka, aplikasi permainan (game), aplikasi pemutar musik/video (multimedia) dan lain sebagainya. 1.1 Visual Programming

Perkembangan pada antarmuka pengguna komputer berupa graphicalbased juga berdampak pada aplikasi pengembangan yang digunakan, saat ini dikenal istilah VPL (Visual Programming Language) dimana artinya adalah bahasa pemrograman yang dibantu atau lebih menggantungkan pada aplikasi pengembangan bersifat visual dibanding secara textual. Pengembangan aplikasi secara visual ini menggunakan penggabungan antara form, icon, notasi simbolik (symbolic notation) dan sintaksis program yang merupakan notasi sekunder dari sebuah lingkungan aplikasi pengembangan visual atau bisa kita sebut kode (Code). 1.2 Integrated Development Environment

Aplikasi pengembangan visual menitikberatkan pada penggunaan alatalat visual untuk pengembangan aplikasinya seperti tombol, kotat text, kotak dialog, label, table, bar, selain itu juga berbagai opsi untuk pengaturan atribut dari komponen visual, kustomisasi kode dan lain sebagainya. Hal ini menuntut sebuah lingkungan pengembangan yang terpadu dan terintegrasi atau dikenal dengan IDE (Integrated Development Environment).
Pemrograman Visual 1-2

Politeknik Telkom

Pemrograman Visual

Saat ini banyak sekali digunakan berbagai macam IDE dari berbagai pengembang aplikasi yang berbeda baik komersil maupun opensource. Yang terkenal dan banyak digunakan pada saat ini diantaranya adalah: 1. Microsoft Visual Studio .Net IDE 2. Borland RAD IDE Delphi, C++ Builder, dan Builder series lainnya 3. Eclipse IDE 4. Netbeans IDE, dan sebagainya.

Gambar 1-1 - Flowcode IDE Dengan adanya konsep IDE ini memungkinkan aktifitas pengembangan aplikasi lebih mudah dan lebih bersifat drag-drop untuk pengaturan kebanyakan opsi dan atribut visual.
Pemrograman Visual 1-3

Politeknik Telkom

Pemrograman Visual

Gambar 1-2 - Anjuta IDE C / C++ Editor 1.3 Rapid Application Development

RAD (Rapid Application Development) atau pengembangan aplikasi secara cepat, adalah sebuah tipe SDLC (Software Development Liffe Cycle) yang memungkinkan pengembangan aplikasi dengan menggunakan prototipe. RAD banyak diusung oleh aplikasi pengembangan visual yang memungkinkan pengembangan dari mulai perancangan fungsi, implementasi, dan pengujian secara cepat (rapid). Konsep RAD ini dimungkinkan dengan penggunaan IDE dalam aplikasi pengembangan visual.

Pemrograman Visual

1-4

Politeknik Telkom

Pemrograman Visual

Gambar 1-3 Impelementasi KonsepRAD dengan Codegear Delphi IDE

Pemrograman Visual

1-5

Politeknik Telkom

Pemrograman Visual

Rangkuman

1.

Aplikasi pengembangan visual merupakan aplikasi pengembangan yang dibantu dan menitikberatkan penggunaan notasi visual dibandingkan tekstual. IDE adalah lingkungan pengembangan aplikasi visual yang terpadu dan terintegrasi. RAD memungkinkan pengembangan dari mulai perangcangan fungsi, implementasi, dan testing secara cepat (rapid)

2.

3.

Kuis Benar Salah 1. 2. Pemrograman yang menitikberatkan pengembangannya pada alat bantu tekstual disebut pemrograman visual Rapid Application Development memperlambat pengembangan aplikasi secara signifikan

Pemrograman Visual

1-6

Politeknik Telkom

Pemrograman Visual

2 PENGENALAN IDE BORLAND DELPHI

Overview

Bab ini memperkenalkan Borland Delphi sebagai alat pengembangan aplikasi visual termasuk petunjuk instalasi, pengenalan lingkungan dan pengantar pembuatan aplikasi menggunakan IDE Delphi.

Tujuan

1 Mahasiswa mengenal Borland Delphi sebagai aplikasi pengembangan visual 2 Mahasiswa mengerti cara instalasi borland delphi 3 Mahasiswa mengenal ligkungan kerja IDE delphi yang terintegrasi 4 Mehasiswa mengerti struktur file Borland Delphi
Pengenalan IDE Borland Delphi 2-1

Politeknik Telkom

Pemrograman Visual

Delphi adalah sebuah aplikasi pengembangan visual produksi Borland dan sekarang telah berganti nama menjadi Codegear Delphi setelah divisi software Borland di akuisisi oleh Codegear pada pertengahan tahun 2004. Sebagai aplikasi pengembagan visual, Delphi memakai notasi sintaksis sekunder berupa Object Pascal, dimana object pascal ini merupakan pengembangan dari bahasa pemrograman Pascal yang merupakan bahasa pemrograman yang bersifat prosedural. Dengan penggunaan pascal sebagai programming language atau notasi sekunder, membuat Borland Delphi lebih mudah dipelajari untuk programmer yang telah terbiasa memakai bahasa pascal atau programmer yang awam sekalipun dengan bantuan dan petunjuk dari fitur help (dokumentasi) nya yang terintegrasi dan mudah di akses. IDE Delphi pun lebih mudah digunakan dan memungkinkan adaptasi yang lebih cepat secara visual karena di lengkapi dengan penggunaan alat bantu visual berupa tombol-tombol dan icon yang mudah di akses dan di ingat. Saat ini Borland Delphi telah mengalami beberapa perubahan versi, yang terakhir adalah Codegear Delphi 2009 yang mendukung teknologi .Net 3.5 dari Microsoft dan komponen-komponen grafis yang mendukung trend antarmuka pengguna (user interface). Pada courseware ini digunakan Borland Delphi versi 7 yang cukup lengkap dan masih cukup banyak pemakaiannya di industri-industri pengembang aplikasi perangkat lunak.

2.1

Instalasi Borland Delphi

Instalasi Borland Delphi 7 cukup mudah dan jelas, dengan panduan grafis berupa wizard yang memandu pengguna langkah demi langkah. Instalasi dimulai dengan menu dari Borland yang berisi beberapa opsi yaitu Delphi 7 itu sendiri, lalu Interbase, ModelMaker dan juga InstallShield Express yang mana merupakan aplikasi untuk membuat sebuah paket instalasi buatan kita sendiri.

Pengenalan IDE Borland Delphi

2-2

Politeknik Telkom

Pemrograman Visual

Gambar 2-1 - Menu Installer Borland

Gambar 2-2 Welcome Screen

Pengenalan IDE Borland Delphi

2-3

Politeknik Telkom

Pemrograman Visual

Gambar 2-3 - Verifikasi Serial Number

Gambar 2-4 - Pilihan Opsi Instalasi

Pengenalan IDE Borland Delphi

2-4

Politeknik Telkom

Pemrograman Visual

Gambar 2-5 - Proses Installasi

2.2

Pengenalan IDE Borland Delphi

Borland Delphi merupakan aplikasi pengembangan visual dengan lingkungan pengembangan yang terintegrasi (IDE Intergrated Development Environment). IDE Borland Delphi terdiri dari beberapa bagian sebagai berikut:

2.2.1

Main Menu

Pada main menu terdapat main toolbar, component palette, dan context menu. Toolbar berfungsi untuk mengatur semua fungsi pengembangan aplikasi. Component palette berfungsi untuk menyimpan semua komponen-komponen yang bisa digunakan oleh sebuah program yang sedang dikembangkan.

Gambar 2-6 - Main Menu (Component Palette, Context Menu, Main Toolbar)

Pengenalan IDE Borland Delphi

2-5

Politeknik Telkom

Pemrograman Visual

2.2.2

Code Editor

Code Editor berfungsi untuk menambahkan notasi sintaksis sekunder berupa teks kode program, pascal. Code Editor ini dilengkapi dengan fitur code completion yaitu sebuah fitur dimana kita bisa menyisipkan deklarasi kelas, object, properties, tipe data, dan lain sebagainya dalam bentuk teks.

Gambar 2-7 - Code Editor

2.2.3

Component Palette

Component Palette menampung berbagai macam notasi simbolis berupa icon-icon yang mewakili fungsi-fungsi tertentu sebuah komponen.

Gambar 2-8 - Main Component Palette

Pengenalan IDE Borland Delphi

2-6

Politeknik Telkom

Pemrograman Visual

2.2.4

Form View

Form view merupakan area kerja visual anda. Anda dapat menambahkan berbagai macam fungsi dengan penambahan komponenkomponen yang tersedia di component palette seperti label, button, text edit, memo, dan lain-lain.

Gambar 2-9 - Form View dengan satu komponen button dan satu label

2.2.5

Object Inspector

Setiap komponen yang mempunyai representasi visual seperti button, label, edit, numedit dan lain-lain memiliki atribut-atribut seperti warna, ukuran, tipe font dan lain sebagainya yang bisa di ubah sesuai dengan kebutuhan di Object Inspector.

Pengenalan IDE Borland Delphi

2-7

Politeknik Telkom

Pemrograman Visual

Gambar 2-10 - Object Inspector digunakan untuk melakukan perubahan atribut dari komponen.

2.3

File Project, Unit dan Form Borland Delphi

Dalam sebuah project yang kita buat dalam Borland Delphi, secara default terdapat file-file yang diciptakan pada saat project tersebut di buat.

2.3.1

Project File

File .dpr adalah file pusat atau utama dari sebuah project Delphi (satu file .dpr per project). File berekstensi *.dpr ini sebenarnya merupakan file sumber berisi kode bahasa pascal. File ini berfungsi sebagai pintu masuk untuk Delphi kedalam sebuah project. Meskipun file .dpr bisa di edit secara manual, tetapi tidak dianjurkan untuk mengubah isi dari file ini.

Pengenalan IDE Borland Delphi

2-8

Politeknik Telkom

Pemrograman Visual

2.3.2

Unit File

File berekstensi .pas ini berisi source code program dalam bahasa Object Pascal. File source ini merupakan impelementasi fungsi dari event yang ada di form atau sebuah file source yang digunakan untuk unit lain.

2.3.3

Form File

File berekstensi .frm ini berisi seluruh informasi mengenai form, baik itu ukuran, caption, warna, event dan bahkan informasi komponen-komponen child yang berada di dalam form tersebut.

2.4

Event Driven Programming

Event driven programming adalah tipe pemrograman yang hampir semua prosesnya dimulai/dipicu dari sebuah event yang terjadi di lingkungan atau siklus aktifnya sebuah aplikasi dalam memori.

2.5

Properties

Setiap komponen di dalam delphi diperlakukan sebagai objek, objek tentunya memiliki atribut, dan method (metoda2) yang bisa dijalankan pada dirinya. Setiap atribut yang bisa diubah oleh programmer disebut properties, contoh properties untuk sebuah form adalah caption (nama di title bar), ukuran (width x height), anchor (jangkar), cursor, warna latar (color), visibility (tampak atau tidak), dan lain-lain. Properties ini pun bisa di akses secara tekstual atau kode dari code editor, tentunya dengan event tertentu.

Pengenalan IDE Borland Delphi

2-9

Politeknik Telkom

Pemrograman Visual

Gambar 2-11 - Pengaturan properties sebuah komponen melalui Object Insector.

2.6

Event

Event adalah sebuah kejadian atau yang lebih tepat adalah sebuah aksi yang dilakukan ketika aplikasi menemui sebuah kondisi tertentu, misal ketika sebuah form pertama kali ditampilkan maka sebuah event bernama onCreate milik form tersebut dieksekusi, nah event onCreate memiliki notasi tekstual berupa prosedur di code editor nah sebagai contoh jika anda ingin mengeksekusi sebuah program pada event on create, anda bisa mengaktifkan nya dengan cara klik ganda di bagian event onCreate yang teradapat di Object Inspector, dan Delphi akan secara otomatis menyediakan kerangka untuk prosedur tersebut di dalam unit yang terdapat di code editor.

Pengenalan IDE Borland Delphi

2-10

Politeknik Telkom

Pemrograman Visual

Gambar 2-12 - Pembuatan sebuah event dengan mengakses event dalam object inspector

Gambar 2-13 - Kerangka yang di generate secara otomatis ketika event oncreate di Object Inspector Form1 di klik-ganda

2.7

Container

Bayangkan sebuah "truk container", isinya bermacam-macam bukan? Begitu juga analoginya dengan pemrograman visual dengan Delphi. Sebuah component, bisa menjadi container atau wadah untuk component lainnya. container yang paling utama di dalam sebuah aplikasi di delphi adalah Form,
Pengenalan IDE Borland Delphi 2-11

Politeknik Telkom

Pemrograman Visual

setiap kali anda membuat sebuah program baru di delphi atau ketika anda membuka delphi untuk pertama kalinya, maka akan dibuatkan sebuah form dengan nama Form1, nah di dalam container berupa Form1 ini lah anda dapat memasukkan berbagai macam komponen lainnya yang mana sifat dari komponen tersebut disebut child (anak) dan Form1 disebut sebagai parent (orangtua).

Gambar 2.12 Contoh Implementasi Container dengan satu panel dan satu button

Pengenalan IDE Borland Delphi

2-12

Politeknik Telkom

Pemrograman Visual

Rangkuman

1.

Borland Delphi merupakan aplikasi pengembangan software visual yang memiliki lingkungan IDE yang terintegrasi dan mudah digunakan Event adalah sebuah kejadian atau yang lebih tepat adalah sebuah aksi yang dilakukan ketika aplikasi menemui sebuah kondisi tertentu Dalam Delphi, Container merupakan komponen yang menjadi parent atau tempat bagi komponen yang lainnya. Setiap atribut yang bisa dirubah oleh programmer disebut properties File .dpr adalah file utama dari sebuah project Delphi (satu file .dpr per project). Yang berisi kode pascal. File Unit yang berekstensi .pas ini berisi source ccode program dalam bahasa Object Pascal. File source ini merupakan impelementasi fungsi dari event yang ada di form, atau sebuah file source yang digunakan untuk unit lain. Form File memuat semua atribut baik form itu sendiri maupun komponen-komponen yang diperlukan dalam sebuah aplikasi

2.

3.

4. 5.

6.

7.

Pengenalan IDE Borland Delphi

2-13

Politeknik Telkom

Pemrograman Visual

Kuis Benar Salah

1. 2. 3.

Komponen Child adalah komponen yang menjadi tempat untuk komponen lainnya. Event dalam Delphi hanya bisa digunakan melalui komponen visual IDE Borland Delphi memiliki fitur code completion untuk mempermudah pengembang aplikasi dalam menuliskan kode program

Pilihan Ganda 1 Fitur dalam code editor yang menampilkan snippet (contoh kode) adalah a. Code master b. Code syntax c. Syntax Assistant d. Code Assist e. Code Completion Fitur dalam code editor yang menampilkan snippet (contoh kode) adalah a. Code master b. Code syntax c. Syntax Assistant d. Code Assist e. Code Completion

Pengenalan IDE Borland Delphi

2-14

Politeknik Telkom

Pemrograman Visual

3 PENGENALAN FORM SDI DAN MDI

Overview

Bab ini akan menjelaskan tentang aplikasi berupa form MDI dan SDI, dan juga akan dijelaskan cara pembuatan form MDI dan SDI beserta contoh implementasinya.

Tujuan

1. 2. 3.

Mengetahui perbedaan form SDI dan MDI Mengetahui cara pembuatan aplikasi SDI Mengetahui cara pembuatan form MDI

Pengenalan Form SDI dan MDI

3-1

Politeknik Telkom

Pemrograman Visual

3.1

MDI dan SDI

MDI merupakan kepanjangan dari Multiple Document Interface. Di dalam suatu aplikasi MDI terdapat lebih dari satu dokumen atau child window, dimana child window ini dapat dibuka pada satu form induk (parent window). Penggunaan MDI banyak terdapat pada aplikasi seperti spreadsheet. Jadi secara keseluruhan MDI terdiri dari dua bagian yaitu sebuah form induk atau MDI Container atau MDI Parent dan satu atau lebih form anak atau disebut sebagai child forms. Child forms dibuka di MDI Container. Aplikasi yang mengimplementasikan MDI biasanya terdiri dari tiga komponen dasar yaitu : 1. Satu (dan hanya satu) form MDI Container atau form induk 2. Satu atau lebih form MDI Child 3. Menu utama MDI Aplikasi MDI biasanya dibuat untuk aplikasi yang menggunakan banyak file tetapi untuk memberi kemudahan akses, semua file itu ingin ditampilkan dalam sebuah form. SDI merupakan kepanjangan dari Single Document Interface. Di dalam suatu aplikasi SDI hanya terdapat sebuah form untuk sebuah file. Contoh aplikasi SDI adalah Notepad, dimana jika kita membuka notepad maka akan muncul sebuah form dan apabila kita akan membuat file notepad baru, maka akan muncul form yang kedua. Setiap kita membuat file baru maka akan muncul form (jendela) notepad yang baru. Contoh aplikasi MDI adalah Microsoft Word, dimana ketika kita membuka MS Word untuk pertama kalinya, maka akan muncul sebuah form (jendela) yang terdapat menu-menu dan sebuah form (jendela) tempat kita menulis. Jika kita ingin membuat file baru maka akan muncul form baru untuk menulis, tetapi form menu tetap satu. MS Word menggunakan MDI Application, dimana form yang terdapat menu-menu tersebut merupakan MDI Container (form induk) sedangkan form tempat kita menulis adalah Form MDI Child.

Pengenalan Form SDI dan MDI

3-2

Politeknik Telkom

Pemrograman Visual

3.2
1. 2.

Struktur Aplikasi MDI


Suatu aplikasi MDI mempunyai suatu struktur, yaitu : Form utama aplikasi asalah sebuah frame atau sebuah container Form khusus yang dinamakan MDI client, meliputi seluruh area client dari frame yang dilengkapi dengan kemampuan-kemampuan khusus. Misalnya MDI Client menangani sejumlah form anak. Sejumlah form anak yang tipenya sama atau berbeda. Form anak tersebut tidak langsung ditempatkan di frame tetapi di definisikan sebagai anak dari form MDI Client, dimana MDI Client berada di dalam frame.

3.

Untuk menampilkan form anak jumlahnya lebih dari satu, maka diperlukan struktur penyusunan form, terdapat dua cara penyusunan form yaitu : 1. Cascade Form child akan diatur mulai dari ujung kiri atas frame dan bergerak ke ujung kanan bawah. Jendela akan saling tumpang tindih. 2. Tile Form child akan diatur seperti susunan ubin, sehingga tidak saling tumpang tindih. Area Form utama akan dibagi sama rata untuk semua form child.

3.3

Aplikasi MDI di Delphi

Aplikasi MDI di Delphi dapat dilakukan dengan dua cara, cara yang pertama adalah dengan membuat beberapa form, sebuah form akan disetting menjadi form induk (MDI Container) dan form yang lain akan disetting menjadi form child (MDI Child). Membuat form menjadi MDI Container atau MDI Child dapat dilakukan dari properties FormStyle pada komponen Form, pada properties ini akan terdapat pilihan fsMDIForm untuk membuat form menjadi MDI Container dan fsMDIChild untuk membuat form menjadi MDI Child. Sedangkan cara yang kedua, kita dapat menggunakan aplikasi MDI dengan menggunakan wizard yang terdapat pada File > New > Other kemudian pilih tab Projects dan pilih MDI Application.

Pengenalan Form SDI dan MDI

3-3

Politeknik Telkom

Pemrograman Visual

Pada studi kasus pada bab ini akan dicontohkan penggunaan cara yang pertama.

3.4
1. 2.

Implementasi aplikasi MDI


Untuk membuat aplikasi MDI lakukan langkah-langkah berikut : Siapkan sebuah folder untuk menyimpan aplikasi dengan nama ProjectMDI1 Membuat Form Parent atau MDI Container a. Buat aplikasi baru dengan memilih menu File > New > Application, sehingga akan muncul Form1 b. Ubah properties Form1 sebagai berikut : Tabel 3-1 Properties Form1 Komponen Form Properties Name Caption FormStyle Align BorderStyle Height Width Position Nilai Properties FormMain Form Utama fsMDIForm alCustom bsSizeToolWindow 500 600 poDesktopCenter

c.

Simpan file unit dengan nama UnitMain.pas dan file project dengan nama PrjMDIApplication.dpr

3.

FormStyle fsMDIForm merupakan setting untuk form yang akan berperan sebagai MDI Parent atau MDI Container, dan hanya sebuah form yang mempunyai style fsMDIForm. MDI Parent biasanya berisi menu-menu untuk memproses MDI Child. Masukkan komponen berikut ke dalam FormMain

Pengenalan Form SDI dan MDI

3-4

Politeknik Telkom

Pemrograman Visual

Gambar 3-1 - Tampilan Form Utama

Tabel 3-2 Komponen pada FormMain Komponen MainMenu Label1 Label2 Properties Name Caption Caption Nilai Properties MainMenu1 SISTEM INFORMASI RENTAL VCD MERIAH pada tool pallete pada

Untuk memasukkan komponen MainMenu, klik tanda

Standard. Kemudian klik pada komponen MainMenu1, klik tanda properties Items sehingga akan keluar dialog seperti berikut :

Gambar 3-2 - Dialog MainMenu

Pengenalan Form SDI dan MDI

3-5

Politeknik Telkom

Pemrograman Visual

Klik pada bagian yg berwarna kuning, kemudian ubah isi properties Caption menjadi Persewaan. Klik menu Persewaan sehingga akan muncul submenu dan seterusnya. Untuk selengkapnya struktur menu dapat dilihat dalam tabel berikut : Tabel 3-3 Struktur Menu Menu Persewaan Submenu Data Sewa Data Anggota Data VCD Sewa Anggota VCD About

Search Laporan

Help Exit

Maka hasilnya akan seperti gambar berikut ini

Pengenalan Form SDI dan MDI

3-6

Politeknik Telkom

Pemrograman Visual

Gambar 3-3 - Menu dan Submenu

Tutup dialog Main Menu dan di dalam Form Main akan muncul Menu seperti gambar berikut :

Pengenalan Form SDI dan MDI

3-7

Politeknik Telkom

Pemrograman Visual

Gambar 3-4 - Form Utama dengan Menu

4.

Membuat MDI Children Setiap MDI Container mempunyai paling tidak sebuah MDI Child. MDI Child hanya boleh tampil di dalam form MDI Container, dan jika di minimize maka icon MDI Child berada di dalam MDI Mother. Untuk membuat MDI Child adalah : a. b. Pilih menu File > New > Form, maka akan muncul Form1 Ubah properties Form1 sebagai berikut Tabel 3-4 Pengubahan Properties Form1 Komponen Form Properties Name Caption FormStyle Align BorderStyle Height Width Position Nilai Properties FormAnggota Data Anggota fsMDIChild alCustom bsSizeable 440 580 poMainFormCenter

Pengenalan Form SDI dan MDI

3-8

Politeknik Telkom

Pemrograman Visual

c.

Simpan file unit dengan nama UnitAnggota.pas di dalam folder yang sama dengan file UnitMain.pas dan PrjMDIApplication.dpr.

FormStyle fsMDIChild merupakan setting untuk form yang akan berperan sebagai MDI Child, dan dapat terdiri dari satu atau lebih form. 5. Secara default FormAnggota akan langsung ditampilkan di Form Utama setelah di-Create ketika program dijalankan, seharusnya form ini akan tampil hanya ketika dipilih menu Persewaan > Data Anggota, oleh karena itu FormAnggota harus masuk ke Available Form. Cara membuat suatu form menjadi Available form adalah dengan memilih menu Project > Option sehingga akan muncul dialog sebagai berikut :

Gambar 3-5 - Project Option

Pilih FormAnggota pada Auto-create Forms kemudian klik tanda sehingga FormAnggota akan masuk ke Available Forms. 6. Simpan perubahan dengan memilih menu File > Save All

Pengenalan Form SDI dan MDI

3-9

Politeknik Telkom

Pemrograman Visual

7. 8.

Hubungkan FormMain dengan FormAnggota. Pindah ke FormMain kemudian pilih menu File > Use Unit, pilih UnitAnggota. Ketika form menjadi Available form maka untuk menampilkannya form tersebut harus di-Create terlebih dahulu, yaitu dengan cara : Pindah ke FormMain, klik pada menu Persewaan > Data Anggota yang terdapat di dalam FormMain, sehingga akan muncul procedure TFormMain.DataAnggota.Click. Lengkapilah kode didalamnya sebagai berikut :
procedure TFormMain.DataAnggotaClick(Sender: TObject); begin Application.CreateForm(TFormAnggota,FormAnggota); end;

Kode diatas menyebabkan form Anggota hanya muncul ketika user memilih menu Persewaan > Data Anggota 9. Jika Form Anggota ditutup maka form tersebut tidak tertutup tetapi menjadi minimize dan akan tampil di bagian bawah Form Parent. Hal ini terjadi karena aksi default yang ditimbulkan ketika form Child di close adalah menyembunyikan (hide). Untuk menutup form MDI harus dilakukan membebaskan dan melepaskan memori yang berkaitan dengan form tersebut. Caranya adalah : Pindah ke Form Anggota, klik bagian kosong pada form Anggota, kemudian pilih event OnClose sehingga akan muncul prosedur TFormAnggota.FormClose, lengkapi kode didalamnya sebagai berikut :
procedure TFormAnggota.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end;

10. Buatlah form baru dengan memilih menu File > New > Form, kemudian lakukan langkah 3 8 untuk Menu yang lain. Dengan penamaan Form dan file sebagai berikut :
Pengenalan Form SDI dan MDI 3-10

Politeknik Telkom

Pemrograman Visual

Tabel 3-5 Penamaan Form dan File baru Komponen Form1 (Menu Data Sewa) Save : UnitSewa.pas Form2(Menu Data VCD) Save : UnitVCD.pas Form3 (Menu Search) Save : UnitSearch.pas Form4 (Menu Laporan Sewa) Save : UnitLapSewa.pas Form5 (Menu Laporan Anggota) Save : UnitLapAnggota.pas Form6 (Menu Laporan VCD) Save : UnitLapVCD.pas Form7 (Menu About) Save : UnitAbout.pas Properties Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Nilai Properties FormSewa Data Sewa FormVCD Data VCD FormSearch Search Data FormLapSewa Laporan Sewa FormLapAnggota Laporan Anggota FormLapVCD Laporan VCD FormAbout Laporan About

11. Hasil running adalah sebagai berikut :

Gambar 3-6 - Running Program

Pengenalan Form SDI dan MDI

3-11

Politeknik Telkom

Pemrograman Visual

Rangkuman 1. 2. MDI merupakan kepanjangan dari Multiple Document Interface MDI Application terdiri dari dua bagian yaitu sebuah form induk atau MDI Parent dan satu atau lebih form anak atau disebut sebagai child forms. SDI merupakan kepanjangan dari Single Document Interface. Di dalam suatu aplikasi SDI hanya terdapat sebuah form untuk sebuah file. Membuat form menjadi MDI Container atau MDI Child dapat dilakukan dari properties FormStyle pada komponen Form. Nilai propertis FormStyle fsMDIForm digunakan untuk membuat form menjadi MDI Container dan fsMDIChild untuk membuat form menjadi MDI Child. Penutupan (close) form MDI dilakukan dengan membebaskan dan melepaskan memory yang berkaitan dengan form tersebut

3. 4. 5. 6.

7.

Kuis Benar Salah 1. 2. 3. 4. 5. Aplikasi MDI dipergunakan untuk menampilkan banyak file dalam satu form Pada Aplikasi MDI jumlah form child tidak boleh lebih dari satu form Pada Aplikasi SDI jumlah form child harus lebih dari satu form Jumlah MDI Container pada suatu aplikasi MDI hanya satu sedangkan jumlah MDI Parent boleh lebih dari satu. Untuk membuat suatu form menjadi MDI Parent, maka nilai pada properties FormStyle diubah menjadi fsMDIForm

Pengenalan Form SDI dan MDI

3-12

Politeknik Telkom

Pemrograman Visual

Latihan

Setelah mengerjakan file MDI di bab ini, lengkapi program anda sesuai dengan menu yang telah dibuat. Implementasikan hal-hal yang sudah anda pelajari di bab sebelumnya. Spesifikasi dari program Persewaan VCD adalah sebagai berikut : 1. Menu Persewaan a. Menu Persewaan > Anggota akan menampilkan form untuk memanipulasi Data Anggota yaitu Insert, Update, dan Delete data Anggota b. Menu Persewaan > Sewa akan menampilkan form untuk memanipulasi Data Sewa yaitu Insert, Update, dan Delete data Sewa c. Menu Persewaan > VCD akan menampilkan form Menu Search a. Menu Search akan menampilkan sebuah form untuk searching. Di dalam form ini digunakan untuk searching ke tiga table yaitu Table Anggota, Table Sewa, dan Table VCD. Untuk setiap pilihan Table sediakan pilihan pencarian dengan nilai tertentu. Misal dipilih searching Data Anggota dengan kata kunci pencarian pada Nama Anggota. Menu Laporan a. Menu Laporan > Sewa akan menampilkan form Laporan untuk data sewa b. Menu Laporan > Anggota akan menampilkan form Laporan untuk data anggota c. Menu Laporan > VCD akan menampilkan form Laporan untuk data VCD

2.

3.

Pengenalan Form SDI dan MDI

3-13

Politeknik Telkom

Pemrograman Visual

4.

5.

Menu Help a. Menu Help akan menampilkan sebuah form yang berisi tentang pembuat program Menu Exit a. Menu Exit akan membuat program tertutup

Untuk referensi tampilan dan fungsi, silahkan melihat file Persewaan.exe yang diberikan.

Pengenalan Form SDI dan MDI

3-14

Politeknik Telkom

Pemrograman Visual

4 TIPE DATA, STRUKTUR PROGRAM, FUNGSI DAN PROSEDUR

Overview

Bab ini akan menjelaskan tentang tipe data yang disediakan oleh Delphi. Juga akan dijelaskan tentang struktur program dalam Delphi, Fungsi dan Prosedur. Di dalam bab ini akan diberikan implementasi dari penggunaan tipe data, struktur program dan fungsi built in dengan membuat aplikasi Stop Watch. Juga mengajarkan pengolahan string mengunakan Delphi dan pemakaian komponen Dialog untuk mengimplementasikan pemrosesan File dan stream text menggunakan Delphi.

Tujuan
1 2 3 4 5 6 7 Mengetahui tipe data di Delphi Mengetahui struktur program yang didukung oleh Delphi Mengetahui cara pendeklarasian struktur perulangan dan pencabangan Mengetahui tujuan penggunaan fungsi dan prosedur Mengetahui beberapa fungsi built in dan tujuan penggunaannya Mengetahui cara penggunaan tipe data, struktur pencabangan dan fungsi built ini dengan studi kasus aplikasi Stop Watch Mengerti pemakaian berbagai macam komponen dialog Mengerti pemrosesan File IO menggunakan File Dialog Delphi
4-1

Tipe Data Struktur Program Fungsi dan Prosedur

Politeknik Telkom

Pemrograman Visual

4.1

Tipe Data

Delphi menyediakan tipe data yang cukup banyak sehingga akan memberi keleluasaan pada pemrogram dalam membuat program sesuai permintaan. Penggunaan tipe data seharusnya disesuaikan dengan kebutuhan dan dibisaakan untuk menggunakan tipe data yang tepat sesuai dengan program sehingga tidak muncul permasalahan memori. Tipe data yang disediakan oleh Delphi adalah :

4.1.1

Integer

Digunakan untuk menyatakan bilangan yang tidak mempunyai angka desimal. Tabel 4-1 Tipe Data Integer Tipe Byte Word Longword ShortInt LongInt Integer Cardinal Int64 Rentang Nilai 0255 065535 04294967295 -128127 -21474836482147483647 -21474836482147483647 04294967295 -226263-1 Byte 1 2 4 1 4 4 4 8

4.1.2

Real
Digunakan untuk menyatakan bilangan yang mempunyai angka desimal. Tabel 4-2 Tipe Data Real

Tipe Real48 Single Double Real Extended

Rentang Nilai

Byte 6 4 8 8 10
4-2

Tipe Data Struktur Program Fungsi dan Prosedur

Politeknik Telkom

Pemrograman Visual

Comp Currency

8 8

4.1.3
(salah).

Boolean
Digunakan untuk menyatakan data logika, yaitu True (benar) dan False Tabel 4-3 Tipe Data Boolean Tipe Boolean ByteBool WorldBool LongBool Byte 1 1 2 4

4.1.4

Character
Digunakan untuk menyatakan data berupa sebuah karakter. Tabel 4-4 Tipe Data Character

Tipe Char AnsiChar WideChar

Isi 1 karakter ANSI 1 karakter ANSI 1 karakter Unicode

Byte 1 1 2

4.1.5

String

Digunakan untuk menyatakan sederetan karakter yang membentuk satu kesatuan. Tipe string ini dapat digunakan untuk menyimpan karakter kosong dan juga sebuah karakter. Tabel 4-5 Tipe Data String Tipe ShortString AnsiString WideString Byte 2 sampai dengan 256 4 sampai dengan 2 GB 4 sampai dengan 2 GB Isi Maksimum 256 karakter 231 karakter 230 karakter
4-3

Tipe Data Struktur Program Fungsi dan Prosedur

Politeknik Telkom

Pemrograman Visual

4.1.6

Array

Digunakan untuk menyatakan sebuah variabel tunggal yang dapat menyimpan sekumpulan data yang sejenis. Pendeklarasian array pada Delphi : Nilai : array [1..10] of integer; Pendeklarasian diatas akan membuat sebuah variabel bernama Nilai yang dapat digunakan untuk menyimpan 10 data bertipe integer. Sedangkan untuk pemberian nilai pada array Nilai harus diikuti dengan nomor elemen yang akan diakses. Nilai[1] := 80;

4.1.7

Record

Digunakan untuk menyimpan sekumpulan data yang mungkin berbeda tipe tetapi saling berhubungan. Misal tipe data record untuk menyimpan data pribadi mahasiswa yang berisi Nama, Nim, dan Umur. Cara pendeklarasian tipe data record adalah sebagai berikut : type RecMhs = record NIM : AnsiString[10]; Nama : AnsiString[30]; Umur : integer; end; var Mahasiswa : RecMhs;

4.2

Tipe Terenumerasi dan Subrange

Tipe data terenumerasi dan subrange digunakan untuk menyatakan data berurutan yang mempunyai tipe data yang sama. Contoh deklarasi tipe terenumerasi : type warna = (Merah, Biru, Hijau, Kuning, Orange, Hitam, Putih); var WarnaCrayon : warna;
Tipe Data Struktur Program Fungsi dan Prosedur 4-4

Politeknik Telkom

Pemrograman Visual

Contoh deklarasi tipe subrange Type Huruf = A .. Z; Angka = 1 .. 100; var Nilai : Angka; HurufBesar : Huruf;

4.2.1

Ordinal

Tipe data ini terdiri dari tipe integer, character, Boolean, enumerated, dan subrange. Data bertipe ordinal dioperasikan dengan beberapa fungsi yang dirancang pada tipe ordinal. Misal argumen n adalah suatu bilangan integer. Tabel 4-6 Tipe Data Ordinal Function Ord(n) Pred(n) Succ(n) High(n) Low(n) Hasil n n-1 n+1 Nilai tertinggi tipe data n Nilai terendah tipe data n Keterangan Misal n=3, hasil = 3 Misal n=3, hasil = 2 Misal n=3, hasil = 4 Misal n adalah integer, maka hasil = 2147483647 Misal n adalah integer, maka hasil = -2147483648

4.3

Konstanta

Konstanta merupakan suatu nilai yang bersifat tetap dan digunakan untuk mendeklarasikan suatu ketetapan. Konstanta tidak dapat diubah nilainya di dalam program, jika ingin mengubah nilainya maka harus melalui pendeklarasiannya. const phi = 3.14;

Tipe Data Struktur Program Fungsi dan Prosedur

4-5

Politeknik Telkom

Pemrograman Visual

4.4

Variabel

Variabel merupakan suatu tempat penyimpanan yang dialokasikan ke dalam memori, variabel diberi nama untuk pengenal dan digunakan untuk menyimpan sebuah data dengan nilai tertentu. Setiap variabel pasti mempunyai nama, penulisan nama variabel pada Delphi tidak memperhatikan besar kecilnya huruf. Aturan penulisan nama variabel : 1. Dimulai dengan karakter Alphabet 2. Harus unik pada lingkungan variabel yang sama

4.4.1

Variabel Global

Variabel global adalah variabel yang mempunyai ruang lingkup luas yaitu variabel yang dideklarasikan di dalam ruang lingkup unit atau program.

4.4.2

Variabel Lokal

Variabel Lokal adalah variabel yang mempunyai ruang lingkup kecil yaitu variabel yang di deklarasikan di dalam ruang lingkup function atau procedure.

4.5

Operator

Operator digunakan untuk memanipulasi dan mengolah data. Delphi menyediakan bermacam-macam operator.

4.5.1

Operator Penugasan

Berfungsi untuk memasukkan suatu data ke dalam suatu variabel. <nama_variabel> := <nilai> Judul := Pemrograman Visual; Nilai1 := 50;

4.5.2

Operator Aritmatika
Digunakan untuk melakukan operasi Aritmatika.

Tipe Data Struktur Program Fungsi dan Prosedur

4-6

Politeknik Telkom

Pemrograman Visual

Tabel 4-7 Operator Aritmatika Operator * / Div Mod + Operasi Perkalian Pembagian Pembagian bulat Sisa pembagian Penambahan Pengurangan

4.5.3

Operator Relasi

Digunakan untuk membandingkan suatu nilai dengan nilai yang lain. Hasil dari penggunaan operator ini berupa Boolean TRUE atau FALSE. Tabel 4-8 Operator Relasi Operator = <> < > <= >= Keterangan Sama dengan Tidak sama dengan Lebih Kecil Lebih besar Lebih kecil sama dengan Lebih besar sama dengan

4.5.4

Operator Logika

Digunakan untuk mengekspresikan satu atau lebih data dan menghasilkan data Boolean yang baru. Tabel 4-9 Operator Logika Operator Not And Or Xor Keterangan Tidak Dan Atau Exclusive Or

Tipe Data Struktur Program Fungsi dan Prosedur

4-7

Politeknik Telkom

Pemrograman Visual

4.6

Kontrol Program

Kontrol program digunakan untuk mengatur jalannya program. Dengan adanya kontrol program maka dapat diatur apakah suatu pernyataan perlu dijalankan atau tidak. Jenis kontrol program yang disediakan oleh Delphi adalah :

4.6.1

Pencabangan

4.6.1.1 If then else


If <kondisi> then <pernyataan 1> else <pernyataan 2> If pertama akan menguji kondisi jika bernilai true maka akan menjalankan pernyataan 1, jika bernilai false maka akan menjalankan pernyataan 2. Selain bentuk if then else, juga terdapat bentuk nested if jika kondisi yang akan diuji lebih dari satu.

4.6.1.2 Case of
Digunakan untuk mencabangkan ke pilihan tertentu berdasar pengujian suatu nilai. Pencabangan case ..of digunakan sebagai alternatif jika pencabangan cukup banyak. Case <ekspresi pilihan> of <daftar 1> : <pernyataan 1> <daftar 2> : <pernyataan 2> ... <daftar n> : <pernyataan n> end;

4.6.1.3 Go To
Pernyataan GoTo dipakai untuk melakukan pencabangan tak bersyarat ke suatu label. Label dapat dibuat dengan kata kunci label dan diikuti nama labelnya. Contoh : Begin Label Awal; A:=A*2; If (A<100) then Goto Awal;
Tipe Data Struktur Program Fungsi dan Prosedur 4-8

Politeknik Telkom

Pemrograman Visual

4.6.2

Perulangan

4.6.2.1 For
Digunakan untuk melakukan pengulangan (iterasi) satu blok pernyataan selama beberapa kali yang ditentukan nilai awal dan nilai akhir. Terdapat dua bentuk yaitu For ..To..dan For ..DownTo For <pencacah> :=<awal> to <akhir> do <pernyataan>, awal <=akhir Atau For <pencacah>:=<awal> downto <akhir> do <pernyataan>, awal>=akhir

4.6.2.2 While Do
Digunakan untuk melakukan pengulangan satu blok pernyataan selama suatu kondisi bernilai True. Perulangan akan berhenti jika kondisi bernilai False. While <kondisi> do <pernyataan>

4.6.2.3 Repeat Until


Pengulangan ini hampir sama dengan Whiledo. Perulangan Repeat Until melakukan pengecekan kondisi pada bagian setelah pernyataan, sehingga pernyataan akan dijalankan minimal satu kali. Repeat <pernyataan 1>; <pernyataan 2>; <pernyataan n>; until<kondisi>;

4.7

Function dan Procedure

Function (fungsi) dan Procedure (prosedur) merupakan suatu susunan kode yang biasanya digunakan sebagai alat untuk melakukan tugas tertentu atau mendapatkan nilai tertentu. Pembuatan function dan procedure sama halnya seperti pembuatan function dan procedure di dalam Pascal.
Tipe Data Struktur Program Fungsi dan Prosedur 4-9

Politeknik Telkom

Pemrograman Visual

Ketika membuat program di Delphi, jika ingin melakukan suatu event pada komponen maka akan secara otomatis terbuat deklarasi procedure yang berkaitan dengan event tersebut, pemrogram dapat mendefinisikan isi dari procedure tersebut. Delphi juga menyediakan function dan procedure built in, artinya bisa langsung digunakan.

4.8 4.8.1

Studi Kasus Apikasi Stopwatch

Pada latihan kali ini akan digunakan komponen Timer, Edit, Label, dan Button. Studi kasus kali ini akan mempelajari cara pembuatan suatu aplikasi stop watch, dengan tampilan seperti gambar di bawah :

Gambar 4-1 - Gambar Tampilan Stop Watch Langkah-langkah untuk membuat aplikasi tersebut adalah sebagai berikut : 1. Buat aplikasi baru File > New Application. 2. Pilih object Form1, kemudian ubah properties Caption menjadi Stop Watch. 3. Masukkan 3 TLabel ke Form1 yaitu Label1, Label2, Label3. Atur tata letaknya. Ubah properties Caption pada Label1 menjadi Mulai, Label2 menjadi Selesai, dan Label3 menjadi Lama.

Tipe Data Struktur Program Fungsi dan Prosedur

4-10

Politeknik Telkom

Pemrograman Visual

4.

Masukkan 3 objek TEdit ke Form1 yaitu Edit1, Edit2, Edit3. Atur tata letaknya sehingga Edit1 di samping label Mulai, Edit2 disamping label Selesai dan Edit3 disamping label Lama. Kosongkan properties Text nya. Masukkan 1 object TButton ke Form1, kemudian udabh properties Caption menjadi Start. Dan atur tata letaknya seperti gambar diatas. Untuk memasukkan object Timer, klik kategori System pada tool palette.

5.

6.

Gambar 4-2 - System Tab Component Palette

7. 8.

Pilih TTimer kemudian masukkan ke Form1, TTimer boleh diletakkan dimana saja dalam Form1, karena TTimer tidak akan tampil pada saat aplikasi dijalankan. Tampilkan source editor unit1 untuk menuliskan kode program. Pada deklarasi variabel ketikkan kode sebagai berikut : var Form1: TForm1; awal, akhir : TDateTime; lama : real; Pindah ke form kemudian klik ganda di daerah manapun pada form atau dengan memilih Form1 kemudian pada Object Inspector Event pilih OnCreate, maka akan muncul sebuah prosedur TForm1.FormCreate, kemudian lengkapi prosedur tersebut seperti di bawah :
4-11

9.

Tipe Data Struktur Program Fungsi dan Prosedur

Politeknik Telkom

Pemrograman Visual

proedure TForm1.FormCreate(Sender: TObject); begin Timer1.Interval:=1; end; 10. Pindah ke form kemudian klik ganda pada object Timer1 maka akan muncul procedure TForm1.Timer1Timer kemudian lengkapilah program di dalamnya seperti berikut : procedure TForm1.Timer1Timer(Sender: TObject); var Slama : string; begin if Button1.Caption='Stop' then begin akhir := Time; Edit2.Text:=TimeToStr(akhir); lama := (akhir-awal)*100000; Str(lama:12:2,Slama); Edit3.Text:=Slama; end end; 11. Pindah ke form kemudian klik ganda pada object Button1 maka akan muncul procedure TForm1.Button1Click kemudian lengkapilah program di dalamnya seperti berikut : procedure TForm1.Button1Click(Sender: TObject); begin if Button1.Caption='Start' then begin awal := Time; Edit1.Text:=TimeToStr(Time); Button1.Caption:='Stop'; end else
Tipe Data Struktur Program Fungsi dan Prosedur 4-12

Politeknik Telkom

Pemrograman Visual

if Button1.Caption='Stop' then begin Button1.Caption:='Selesai' end else Application.Terminate; end; 12. Simpan program dengan Save All. Beri nama file untuk untuk .pas file dengan UStopWatch.pas, dan utnuk .prj file dengan PrjStopWatch.prj 13. Jalankan program dengan klik icon Run 4.8.1.1 CARA KERJA APLIKASI STOP WATCH

Sistem kerja stop watch menggunakan timer untuk mengambil waktu atau jam pada komputer. Ketika program dijalankan pada akan tampil sebuah form yang masih kosong pada bagian object Edit, pada waktu ini procedure TForm1.FormCreate sudah dijalankan yaitu memberikan interval Timer menjadi 1 milidetik. Ketika user klik tombol Start maka procedure TForm1.Button1Click akan dijalankan, procedure ini akan melakukan pengambilan waktu mulai kemudian ditampilkan pada Edit1 dan tombol start akan diubah caption nya menjadi stop. Selama user belum mengklik tombol stop, maka caption pada Button1 akan menjadi Stop sehingga procedure TForm1.Timer1Timer dijalankan, sebenarnya procedure ini sudah berjalan ketika program di run, tetapi terdapat pengkondisian didalamnya dimana kode hanya akan dijalankan ketika caption pada Button1 adalah Stop. Karena procedure TForm.Timer1Timer sudah menemui kondisi yang benar maka pada Edit2 akan ditampilkan waktu yang terus bergerak dan pada Edit3 akan ditampilkan lama penggunaan stop watch. Jika user klik tombol Stop maka caption pada Button1 akan berubah menjadi Selesai, karena Caption pada Button1 sudah tidak Stop lagi maka
Tipe Data Struktur Program Fungsi dan Prosedur 4-13

Politeknik Telkom

Pemrograman Visual

procedure TForm1.Timer1Timer tidak menemukan kondisi benar, maka tidak dilakukan penampilan nilai timer ke Edit2, sehingga seakan-akan perhitungan waktu telah berhenti. Jika user klik tombol Selesai maka program akan di terminasi. 4.8.2 Aplikasi Notepad

Untuk dapat lebih memahami penggunaan delphi IDE dan hubungannya dengan penjelasan fungsi dan prosedur di atas maka dalam studi kasus yang kedua ini kita akan membuat sebuah aplikasi notepad. Aplikasi notepad yang dibuat memiliki fungsi sedekat mungkin dengan notepad bawaan Windows dimana aplikasi tersebut memiliki fitur-fitur diantaranya: Dapat mengubah type font dari text yang diketikkan Dapat membuka file text menggunakan open file dialog Dapat melakukan pencetakan Dapat melakukan manipulasi text cut, copy, paste dan select all Dapat melakukan saving (penyimpanan) file yang di edit Adapun komponen-komponen yang digunakan diantaranya: Komponen dialog control: Open File Dialog, Save Dialog, Font Dialog. Main Menu Status Bar Memo Komponen dialog adalah sebuah komponen yang digunakan dimiliki Delphi untuk mempermudah pemrogram membangun aplikasi yang membutuhkan inputan paramater dari user. Buatlah tampilan seperti berikut, dengan menggunakan beberapa komponen yang telah disebutkan di atas :

Tipe Data Struktur Program Fungsi dan Prosedur

4-14

Politeknik Telkom

Pemrograman Visual

Gambar 4-3 - Delphi Notepad Adapun properties dan event yang harus di buat untuk masingmasing komponen adalah sebagai berikut: PrintDialog Name PrintDialog1 OpenFileDialog Name DefaultExt Filter InitialDir Title FontDialog Name SaveDialog Name InitialDir

OpenDialog1 *.txt Text Files|*.txt|All Files|*.* C:\MyDocuments Open File...

FontDialog1

SaveDialog1 C:\
4-15

Tipe Data Struktur Program Fungsi dan Prosedur

Politeknik Telkom

Pemrograman Visual

Filter DefaultExt ofOverwritePrompt Memo Name Scrollbars Align WordWrap StatusBar Name SimplePanel SimpleText MainMenu Name

Text Files|*.txt|All Files|*.* *.txt True

Memo1 ssBoth alClient True

StatusBar1 True Ready

MainMenu1 Tabel 4-10 Struktur Main Menu

Menu File

Sub Menu New Open Save SaveAs

Properties Enabled: True Name: FileNew Enabled: True Name: FileOpen Enabled: True Name: FileSave Enabled: True Name: FileSaveAs Enabled: True Name: FilePrint

Nama Procedure (Event on Click) FileNewClick FileOpenClick FileSaveClick FileSaveAsClick

Print

FilePrintClick

Tipe Data Struktur Program Fungsi dan Prosedur

4-16

Politeknik Telkom

Pemrograman Visual

Edit Undo Cut Copy Paste Select All Format Word Wrap Font Enabled: True Name: WordWrap Enabled: True Name: Font WordWrapClick Enabled: False Name: Undo Enabled: False Name: Cut Enabled: False Name: Copy Enabled: True Name: Paste Enabled: True Name: SelectAll UndoClick CutClick CopyClick PasteClick SelectAllClick

FontClick

Untuk setiap menu yang ada berikan masing-masing kode seperti tabel berikut : Tabel 4-11 Kode Program untuk setiap Menu Nama Procedure (Event on Click) Fungsi Sintaks Program FileNewClick Membuat file baru procedure TForm1.FileNewClick(Sender: TObject); begin if not (Memo1.Modified) then begin Memo1.Clear; Form1.Caption := 'UnNamed - Delphi Notepad';
Tipe Data Struktur Program Fungsi dan Prosedur 4-17

Politeknik Telkom

Pemrograman Visual

OpenDialog1.FileName := ''; SaveDialog1.FileName := ''; end else if (Memo1.Modified) then begin ModalResult := MessageDlg('Save Changes?', mtConfirmation, [mbYes, mbNo, mbCancel], 0); if (ModalResult = mrYes) and (SaveChanges) then begin Memo1.Clear; Form1.Caption := 'UnNamed - Delphi Notepad'; Memo1.Modified := False; OpenDialog1.FileName := ''; SaveDialog1.FileName := ''; end else if ModalResult = mrNo then begin Memo1.Clear; Form1.Caption := 'UnNamed - Delphi Notepad'; OpenDialog1.FileName := ''; SaveDialog1.FileName := ''; Memo1.Modified := False; end; end; end; FileOpenClick Membuka File procedure TForm1.FileOpenClick(Sender: TObject); begin //jika tidak ada modifikasi pada Memo1 maka paggil prosedur OpenTheFile if not (Memo1.Modified) then //untuk bisa melihat detil dari sebuah prosedur maka klik kanan pada nama prosedur tersebut
Tipe Data Struktur Program Fungsi dan Prosedur 4-18

Politeknik Telkom

Pemrograman Visual

OpenTheFile else if (Memo1.Modified) then begin //untuk mendapatkan nilai button yang di pilih maka bisa di tampung di variable ModalResult ModalResult := MessageDlg('Save Changes?', mtConfirmation, [mbYes, mbNo, mbCancel], 0); if ((ModalResult = mrYes) and (SaveChanges)) or (ModalResult = mrNo) then begin OpenTheFile; Memo1.Modified := False; end; end; end; procedure TForm1.FileSaveClick(Sender: TObject); begin if SaveChanges then Memo1.Modified := False; end; FileSaveClick Menyimpan File procedure TForm1.FileSaveClick(Sender: TObject); begin if SaveChanges then Memo1.Modified := False; end; FileSaveAsClick Menyimpan File denga nama lain procedure TForm1.SaveAs1Click(Sender: TObject); begin if SaveDialog1.Execute then begin Memo1.Lines.SaveToFile(SaveDialog1.FileName); Form1.Caption := SaveDialog1.FileName + ' - Delphi Notepad';
Tipe Data Struktur Program Fungsi dan Prosedur 4-19

Politeknik Telkom

Pemrograman Visual

Memo1.Clear; Memo1.Lines.LoadFromFile(SaveDialog1.FileName); end; end; FilePrintClick Mencetak Halaman procedure TForm1.FilePrintClick(Sender: TObject); begin if PrintDialog1.Execute then Print else PrinterSetupDialog1.Execute; end; UndoClick Mengembalikan kondisi procedure TForm1.UndoClick(Sender: TObject); begin if (Memo1.Modified) and (Memo1.CanUndo) then Memo1.Undo; end; CutClick Memotong text dan menyimpannya di memory procedure TForm1.CutClick(Sender: TObject); begin Memo1.CutToClipboard; end; CopyClick Menduplikasi text dan menyimpannya di memory procedure TForm1.CopyClick(Sender: TObject); begin Memo1.CopyToClipboard; end; PasteClick Menyalin text hasil cut/copy pada posisi cursor yang diinginkan procedure TForm1.PasteClick(Sender: TObject); begin
Tipe Data Struktur Program Fungsi dan Prosedur 4-20

Politeknik Telkom

Pemrograman Visual

Memo1.PasteFromClipboard; end; SelectAllClick Memilih semua text yang ada di lembar kerja procedure TForm1.SelectAllClick(Sender: TObject); begin Memo1.SelectAll; end; WordWrapClick Mengatur agar semua text berada di dalam batas kiri-dan kanan dari sebuah memo edit procedure TForm1.WordWrapClick(Sender: TObject); begin if WordWrap.Checked then begin Memo1.WordWrap := True; Memo1.ScrollBars := ssVertical; end else begin Memo1.WordWrap := False; Memo1.ScrollBars := ssBoth; end; end; FontClick Membuka kotak dialog untuk pengaturan font text yang sedang di edit procedure TForm1.FontClick(Sender: TObject); begin if FontDialog1.Execute then begin Memo1.Font := FontDialog1.Font; Memo1.Font.Color := FontDialog1.Font.Color; end; end;
Tipe Data Struktur Program Fungsi dan Prosedur 4-21

Politeknik Telkom

Pemrograman Visual

Rangkuman

1.

2. 3. 4.

5. 6. 7.

Delphi menyediakan cukup banyak tipe data yaitu : Tipe integer, real, boolean, character, string, array, record, terenumerasi, subrange dan ordinal. Variabel merupakan tempat penyimpanan yang digunakan untuk menyimpan sebuah data dengan nilai tertentu. Konstanta digunakan untuk menyimpan suatu nilai yang bersifat tetap, nilai tersebut tidak dapat diubah di dalam program. Operator digunakan untuk memanipulasi dan mengolah data. Operator yang disediakan Delphi antara lain adalah operator penugasan, aritmetika, relasi dan logika. Struktur pencabangan dapat menggunakan struktur Ifthenelse atau caseof Struktur perulangan dapat menggunakan struktur for .. do, while do, atau repeat until. Function (fungsi) dan Procedure (prosedur) merupakan suatu susunan kode yang bisaanya digunakan sebagai alat untuk melakukan tugas tertentu atau mendapatkan nilai tertentu.

Tipe Data Struktur Program Fungsi dan Prosedur

4-22

Politeknik Telkom

Pemrograman Visual

Kuis Benar Salah

1 2

Pada aplikasi Stop Watch, procedure TForm1.Timer1Timer dijalankan ketika button1 di klik Konstanta merupakan suatu penyimpanan yang digunakan untuk menyimpan nilai yang bersifat tetap dan dapat diubah di dalam program Fungsi StrToDate digunakan untuk mendapatkan nilai berupa data bertipe TDateTime dari suatu data string dan untuk mendapatkan nilai bertope String dari data bertipe TDateTime maka digunakan fungsi DateToStr Variabel global adalah variabel yang mempunyai ruang lingkup luas yaitu variabel yang dideklarasikan di dalam ruang lingkup unit atau program Digunakan untuk menyatakan sebuah variabel tunggal yang dapat menyimpan sekumpulan data yang berbeda.

Tipe Data Struktur Program Fungsi dan Prosedur

4-23

Politeknik Telkom

Pemrograman Visual

Pilihan Ganda
1 Di bawah ini yang bukan merupakan tipe data integer adalah a. Longword b. Cardinal c. Extended d. Int64 Perhatikan syntax berikut if Button1.Caption='Stop' then Sintaks diatas menggunakan operator a. penugasan b. aritmetika c. logika d. relasi Manakah struktur pencabangan berikut yang merupakan struktur pencabangan tak bersyarat a. If .. else b. Go to c. Case of d. If .. then else Fungsi built in yang digunakan untuk mendapatkan nilai berupa data bertipe extended dari suatu string a. StrToInt b. StrToFloat c. IntToStr d. FloatToStr Procedure yang dijalankan ketika program mulai dijalankan adalah a. TForm1.Button1Click b. TForm.Timer1Timer c. TForm1.Edit1Click d. TForm1.FormActivate

Tipe Data Struktur Program Fungsi dan Prosedur

4-24

Politeknik Telkom

Pemrograman Visual

5 KONVERSI TIPE DATA

Overview

Bab ini akan menjelaskan macam-macam konversi tipe data yang didukung oleh Delphi. Dengan studi kasus currency converter (Konversi mata uang). Juga mengajarkan pengolahan string mengunakan Delphi dan pemakaian komponen Dialog untuk mengimplementasikan pemrosesan File dan stream text menggunakan Delphi.

Tujuan

1 2

Mahasiswa mengerti berbagai macam konversi tipe data Mahasiswa dapat mengimplementasikan konversi tipe data dengan Borland Delphi
5-1

Konversi Tipe Data

Politeknik Telkom

Pemrograman Visual

5.1

Konversi Tipe Data

Konversi tipe data digunakan untuk mengubah satu tipe data menjadi tipe data lain. Kasus yang paling sering terjadi dimana konversi ini sangat diperlukan adalah ketika membuat suatu aplikasi yang melakukan operasi matematis berdasarkan data yang di-input user kemudian hasil operasi tersebut di-output-kan lagi kepada user. Delphi menerima input dan mengoutput-kan data berupa string, sedangkan untuk melakukan operasi matematis diperlukan data numerik baik integer maupun real sehingga dari input string yang diterima harus dikonversi menjadi data numerik untuk dilakukan operasi matematis, kemudian hasil operasi yang berupa data numerik tersebut dikonversi kembali menjadi string untuk di-output-kan. Seperti pada aplikasi Currency Converter yang akan dibuat pada studi kasus modul ini. Gambaran umum dari kasus tersebut adalah sebagai berikut:
Fungsi konversi Fungsi konversi

Input (String)

Operasi matematis (Numerik)

Output (String)

Gambar 5-1 - gambaran umum fungsi konversi dengan studi kasus converter mata uang

Secara umum fungsi untuk melakukan konversi tipe data adalah:

tipe_data_yang_akan_diubah to tipe_data_yang_diinginkan (data_yang_tipenya_akan_diubah)


Beberapa fungsi konversi tipe data yang terdapat pada Delphi diantaranya: 1. StrToInt(data_string) Untuk mengubah data bertipe string menjadi data bertipe integer. 2. StrToFloat(data_string) Untuk mengubah data bertipe string menjadi data bertipe real/ floating point. 3. IntToStr(data_integer) Untuk mengubah data bertipe integer menjadi data bertipe string.
Konversi Tipe Data 5-2

Politeknik Telkom

Pemrograman Visual

4.

5.

FloatToStr(data_float) Untuk mengubah data bertipe real/ floating point menjadi data bertipe string. Round(data_float) Merupakan fungsi pembulatan untuk mengubah data bertipe real menjadi data bertipe integer.

Selain fungsi konversi di atas, masih banyak lagi fungsi-fungsi konversi tipe data yang lain.

5.1.1

Studi Kasus : Aplikasi Currency Converter

Aplikasi Currency Converter merupakan suatu aplikasi untuk mengkonversi satu nilai mata uang ke mata uang lain berdasarkan nilai tukarnya. Pada aplikasi Currency Converter yang akan kita buat, terdiri dari empat bagian utama yaitu : 1. Change Currency Pada bagian ini user bisa memilih mata uang yang akan dikonversi dengan memilih salah satu item pada RadioGroupChangeCurrency. USD IDR untuk mengkonversi US Dollar ke Rupiah atau sebaliknya. EUR IDR untuk mengkonversi EURO ke Rupiah atau sebaliknya. JPY IDR mengkonversi Yen Jepang ke Rupiah atau sebaliknya.

2. Change Currency Rate


Pada bagian ini user dapat mendefinisikan nilai tukar mata uang yang akan dikonversi dengan menginputnya pada EditChangeCurrencyRate. Pada saat ButtonChange diklik, nilai yang diinput pada EditChangeCurrencyRate akan diambil, disimpan pada variabel currency_rate kemudian dioutputkan pada LabelCurrencyRate4 di bagian Currency Rate.

3. Currency Rate
Bagian ini untuk menampilkan nilai tukar mata uang yang sebelumnya didefinisikan pada Change Currency Rate.
Konversi Tipe Data 5-3

Politeknik Telkom

Pemrograman Visual

4. Currency Converter
Bagian ini untuk mengkonversi nilai mata uang sesuai dengan pilihan mata uang pada Change Currency dan nilai tukar mata uang pada Currency Rate. Untuk melakukan konversi, disediakan dua buah Edit yang nilainya bisa diinput sendiri oleh user yaitu EditCurrencyConverter1 dan EditCurrencyConverter2. Jika nilai di EditCurrencyConverter1 berubah maka nilai di EditCurrencyConverter2 juga akan berubah sesuai dengan hasil konversi, begitu juga sebaliknya. Tampilan aplikasi Currency Converter yang akan kita buat adalah seperti pada gambar di bawah ini :
FormConverter RadioGroupChangeCurrency PanelChange LabelChangeCurrencyRate1 LabelChangeCurrencyRate2 GroupBoxChangeCurrencyRate

LabelChangeCurrencyRate3 EditChangeCurrencyRate ButtonChange GroupBoxCurrencyRate

GroupBoxCurrencyConverter LabelCurrencyRate1 EditCurrencyConverter1 LabelCurrencyRate2 EditCurrencyConverter2

LabelCurrencyRate4 LabelCurrencyRate3 LabelCurrencyConverter2

LabelCurrencyConverter1

PanelConverter

Gambar 5-2 - Rancangan Form Currency Converter

Selain properties Caption dan Name seperti ditunjukkan pada gambar, beberapa objek ada yang memiliki properties tambahan dan event. Berikut objek-objek tersebut :

Konversi Tipe Data

5-4

Politeknik Telkom

Pemrograman Visual

Tabel 5-1 Properties Tambahan pada Beberapa Objek

No
1 2

Object Name
FormConverter RadioGroupChangeCurrency

Properties
BorderIcons > biMaximize : False Items : USD - IDR EUR - IDR JPY - IDR

Event

OnClick

3 4 5

ButtonChange EditCurrencyConverter1 EditCurrencyConverter2

OnClick OnChange OnChange

Adapun langkah langkah untuk pembuatan aplikasi Currency Converter ini adalah: 1. Buat sebuah project baru yang terdiri dari satu form. Pada form tersebut, tambahkan objek-objek dengan tampilan seperti pada gambar. Sesuaikan properties dari objek-objek tersebut seperti pada gambar dan tabel. 2. Pada kode program tambahkan sebuah variabel global bertipe real dengan nama currency_rate. Variabel tersebut digunakan untuk menampung nilai tukar mata uang yang diinput dari EditChangeCurrencyRate. Var FormConverter: TFormConverter; currency_rate: real; 3. Buat sebuah fungsi IsNumber untuk mengecek apakah input nilai pada EditChangeCurrencyRate, EditCurrencyConverter1, atau EditCurrencyConverter2 berupa angka atau bukan. Fungsi ini diperlukan untuk menjamin bahwa nilai yang diinput benar-benar berupa angka karena Edit menerima semua input string baik berupa angka atau bukan, sedangkan aplikasi ini hanya menerima input berupa angka. Input tersebut akan dikonversi menjadi nilai numerik yang digunakan dalam operasi perhitungan matematis untuk konversi nilai mata uang.
5-5

Konversi Tipe Data

Politeknik Telkom

Pemrograman Visual

function IsNumber(number:String):Boolean; var i,sum:byte; result_IsNumber:boolean; begin result_IsNumber:=false; sum:=0; for i:=1 to length(number) do begin case number[i] of '0'..'9':result_IsNumber:=true; '.':sum:=sum+1; else result_IsNumber:=false; break; end; end; if sum>1 then result_IsNumber:=false; IsNumber:=result_IsNumber; end; 4. Beri event OnClick pada RadioGroupChangeCurrency dan ketikan kode program berikut : //memilih mata uang yang akan dikonversi procedure TFormConverter.RadioGroupChangeCurrencyClick(Sender: TObject); begin //memilih item USD-IDR if RadioGroupChangeCurrency.ItemIndex=0 then begin LabelChangeCurrencyRate1.Caption:='USD';
5-6

Konversi Tipe Data

Politeknik Telkom

Pemrograman Visual

LabelCurrencyRate1.Caption:='USD'; LabelCurrencyConverter1.Caption:='USD'; end else //memilih item EUR-IDR if RadioGroupChangeCurrency.ItemIndex=1 then begin LabelChangeCurrencyRate1.Caption:='EUR'; LabelCurrencyRate1.Caption:='EUR'; LabelCurrencyConverter1.Caption:='EUR'; end else //memilih item JPY-IDR if RadioGroupChangeCurrency.ItemIndex=2 then begin LabelChangeCurrencyRate1.Caption:='JPY'; LabelCurrencyRate1.Caption:='JPY'; LabelCurrencyConverter1.Caption:='JPY'; end; //inisialisasi EditChangeCurrencyRate.Text:='0'; LabelCurrencyRate4.Caption:='0'; EditCurrencyConverter1.Text:='0'; EditCurrencyConverter2.Text:='0'; end; 5. Beri event OnClick pada ButtonChange dan ketikan kode program berikut : //mendefinisikan nilai tukar mata uang procedure TFormConverter.ButtonChangeClick(Sender: TObject); begin if (EditChangeCurrencyRate.Text<>'') and (IsNumber(EditChangeCurrencyRate.Text)) then
5-7

Konversi Tipe Data

Politeknik Telkom

Pemrograman Visual

begin //konversi string menjadi real currency_rate:=StrToFloat(EditChangeCurrencyRate.Text); //konversi real menjadi string LabelCurrencyRate4.Caption:=FloatToStr(currency_rate); end else begin currency_rate:=0; LabelCurrencyRate4.Caption:='0'; end; end; 6. Beri event OnChange pada EditCurrencyConverter1 dan ketikan kode program berikut : //mengkonversi nilai mata uang lain ke Rupiah procedure TFormConverter.EditCurrencyConverter1Change(Sender: TObject); var convert_value, result : real; begin if (EditCurrencyConverter1.Text<>'') and (IsNumber(EditCurrencyConverter1.Text)) then begin //konversi string menjadi real convert_value:=StrToFloat(EditCurrencyConverter1.Text); result := convert_value * currency_rate; //konversi real menjadi string EditCurrencyConverter2.Text:=FloatToStr(result); end else EditCurrencyConverter2.Text:='0'; end;

Konversi Tipe Data

5-8

Politeknik Telkom

Pemrograman Visual

7.

Beri event OnChange pada EditCurrencyConverter2 dan ketikan kode program berikut : //mengkonversi nilai Rupiah ke mata uang lain} procedure TFormConverter.EditCurrencyConverter2Change(Sender: TObject); var convert_value, result : real; begin if (EditCurrencyConverter2.Text<>'') and (IsNumber(EditCurrencyConverter2.Text)) then begin //konversi string menjadi real convert_value:=StrToFloat(EditCurrencyConverter2.Text); result := convert_value * (1/currency_rate); //konversi real menjadi string EditCurrencyConverter1.Text:=FloatToStr(result); end else EditCurrencyConverter1.Text:='0'; end; Simpan dan jalankan aplikasi.

8.

Berikut gambar dari tampilan aplikasi Currency Converter saat dijalankan :

Konversi Tipe Data

5-9

Politeknik Telkom

Pemrograman Visual

Gambar 5-3 - Tampilan konversi US Dollar ke Rupiah atau sebaliknya

Gambar 5-4 - Tampilan konversi EURO ke Rupiah atau sebaliknya


Konversi Tipe Data 5-10

Politeknik Telkom

Pemrograman Visual

Gambar 5-5 - Tampilan konversi Yen Jepang ke Rupiah atau sebaliknya

Rangkuman Pada Delphi terdapat berbagai macam tipe data. Agar dapat menggunakan data dengan benar diperlukan pemilihan tipe data yang tepat. Satu tipe data bisa dikonversi menjadi tipe data yang lain dengan menggunakan fungsi konversi tipe data.

Konversi Tipe Data

5-11

Politeknik Telkom

Pemrograman Visual

Pilihan Ganda

1.

Fungsi untuk mengkonversi tipe data Currency menjadi tipe data String adalah . A. CurrencyToString (data_currency) B. CurrencyToStr (data_currency) C. CurrToString (data_currency) D. CurrToStr (data_currency) E. StringToCurrency (data_currency) Perhatikan form dan source code berikut :

2.

procedure TForm1.Button1Click(Sender: TObject); var bil, kuadrat : integer; begin bil := StrToInt(Edit_bilangan.Text); kuadrat := bil * bil; Edit_kuadrat.Text := IntToStr(kuadrat); end;

Konversi Tipe Data

5-12

Politeknik Telkom

Pemrograman Visual

Saat button Hitung di klik, hasil kuadrat yang akan ditampilkan adalah . A. 36 B. 6 C. Error D. kuadrat E. 6*6 3. Perhatikan form dan source code berikut :

Procedure TForm1.Button1Click(Sender: TObject); var a, b : integer; a_per_b : real; begin a := StrToInt(Edit_a.Text); b := StrToInt(Edit_b.Text); a_per_b := a/b; Edit_a_per_b.Text := FloatToStr(a_per_b); end;

Saat button Hitung di klik, hasil a/b yang akan ditampilkan adalah . A. 1 B. 8
Konversi Tipe Data 5-13

Politeknik Telkom

Pemrograman Visual

C. 0.125 D. Error E. 1/8 4. Rentang dan ukuran tipe data Double berturut-turut adalah . A. 1.5 x 10-45 .. 3.4 x 1038 dan 4 Byte B. -263..263-1 dan 64-bit C. 5.0 x 10-324 .. 1.7 x 10308 dan 8 Byte D. -263+1 .. 263 -1 dan 8 Byte E. 3.6 x 10-4951 .. 1.1 x 104932 dan 10 Byte

5. Perhatikan form dan source code berikut :

procedure TForm1.Button1Click(Sender: TObject); begin Edit_a_tambah_b.Text:=Edit_a.Text+Edit_b.Text; end;

Saat button Hitung di klik, hasil a+b yang akan ditampilkan adalah . A. 77 B. 1067 C. Error D. 67 E. 10
Konversi Tipe Data 5-14

Politeknik Telkom

Pemrograman Visual

Kuis Benar Salah

1.

Suatu data tanggal bertipe String bisa diubah menjadi data tanggal bertipe DateTime dengan fungsi konversi StrToDate(string_tanggal). Jika X bertipe Integer dan Y bertipe Real, maka X + Y bertipe Integer. Integer merupakan salah satu tipe data pada Delphi dengan ukuran 16-bit dan rentang nilai -32768..32767 Tipe data String hanya bisa dikonversi menjadi tipe data Integer atau Real. DoubleToComp(nilai_double) merupakan fungsi konversi untuk mengubah nilai bertipe Double menjadi bertipe Comp.

2.

B S

3.

B S

4.

B S

5.

B S

Konversi Tipe Data

5-15

Politeknik Telkom

Pemrograman Visual

6 MICROSOFT ACCESS

Overview

Bab ini akan memperkenalkan pemakaian Microsoft Access untuk pembuatan database relasional.

Tujuan

1 2

Mahasiswa mampu membuat database relational dengan Microsoft Access. Mahasiswa dapat mengimplementasikan konsep database relational menggunakan Delphi.

Microsoft Access

6-1

Politeknik Telkom

Pemrograman Visual

6.1

Relational Database

Database(basis data) merupakan suatu tempat untuk menyimpan data. Pada sebuah database bisa terdapat satu atau lebih tabel yang saling berelasi. Database seperti ini disebut relational database. Relational database mengatur informasi dalam tabel yang berisi baris-baris (record) dan kolom-kolom (field). Tabel-tabel yang dimiliki suatu database dapat direlasikan atau dihubungkan berdasarkan suatu field kunci tertentu. Field yang dapat digunakan sebagai kunci adalah field yang sama yang dimiliki oleh tabel-tabel yang akan direlasikan. Delphi mendukung penggunaan aplikasi relational database tersebut.

6.1.1

Membuat Relational Database dengan Microsoft Access

Pada modul ini akan diberikan sebuah contoh kasus sederhana dalam membuat relational database yaitu membuat database untuk Penyewaan VCD dengan menggunakan Microsoft Access 2003 dan Microsoft Access 2007. Berikut rincian database Penyewaan VCD yang akan dibuat: Nama database: dbSewaVCD.mdb Tabel 6-1 Deskripsi Tabel Anggota 1 Nama Tabel : Anggota FieldName FieldType NoAnggota Text NamaAnggota AlamatAnggota TelpAnggota Text Text Text Field Properties Field Size = 6 Field Size = 50 Field Size = 50 Field Size = 20 Ket Primary Key

Microsoft Access

6-2

Politeknik Telkom

Pemrograman Visual

Tabel 6-2 Deskripsi Tabel VCD 2 Nama Tabel : VCD FieldName FieldType KodeVCD Text JudulVCD Text KategoriVCD Text TahunVCD Text BesarSewaVCD Currency BatasSewaVCD Number BesarDendaVCD Currency Field Properties Field Size = 6 Field Size = 50 Field Size = 20 Field Size = 4 Field Size = Byte Ket Primary Key

Tabel 6-3 Deskripsi Tabel Sewa 3 Nama Tabel : Sewa FieldName FieldType KodeSewa Text NoAnggota Text KodeVCD TglSewa TglKembali Text Date/Time Date/Time Field Properties Field Size = 6 Field Size = 6 Field Size = 6 Format = Medium Date Format = Medium Date Format = Medium Date Field Size = Byte Ket PrimaryKey Foreign Key dari Tabel Anggota Foreign Key dari Tabel VCD

TglPengembalian

Date/Time

Tanggal seharusnya VCD dikembalikan Tanggal VCD dikembalikan penyewa

LamaSewa BesarSewa DendaSewa TotalSewa

Number Currency Currency Currency

Microsoft Access

6-3

Politeknik Telkom

Pemrograman Visual

6.1.2

Membuat Relational Database dengan Microsoft Access 2003

6.1.2.1 Membuat Database


Hal pertama yang dilakukan untuk membuat relational database adalah membuat sebuah database. Untuk membuat sebuah database baru pada Microsoft Access 2003 lakukan langkah-langkah sebagai berikut : 1. Dari Windows jalankan program Microsoft Access 2003. Setelah program Microsoft Access dijalankan, akan keluar kotak dialog Microsoft Access 2003.

Gambar 6-1 - Microsoft Access 2007

2.

Klik menu BlankDatabase pada bagian New, akan muncul kotak dialog File New Database.

Microsoft Access

6-4

Politeknik Telkom

Pemrograman Visual

Gambar 6-2 - Microsoft Access New File Dialog

3.

Pada kotak dialog File New Database, pilih folder untuk menyimpan file database dan isi nama database pada field File name. Pada contoh kasus ini database yang dibuat diberi nama dbSewaVCD. Tips : Untuk mempermudah pembangunan aplikasi database Delphi, pastikan file database dan file project Delphi berada dalam folder yang sama. Klik tombol Create, akan muncul editor Microsoft Access 2003. Database dbSewaVCD.mdb telah dibuat.

4. 5.

6.1.2.2 Membuat Tabel


Setelah dbSewaVCD.mdb dibuat, langkah selanjutnya adalah membuat tabel Anggota, VCD, dan Sewa berdasarkan rincian database Penyewaan VCD. Untuk membuat tabel Anggota pada Microsoft Access 2003, dapat dilakukan dengan cara sebagai berikut : 1. Buka database yang telah dibuat, pada kasus ini buka database dbSewaVCD.mdb, akan muncul kotak dialog Database.

Microsoft Access

6-5

Politeknik Telkom

Pemrograman Visual

Gambar 6-3 - Microsoft Access Create Table

2.

Klik ganda pada Create table in Design View, akan muncul kotak dialog Table untuk membuat sebuah tabel.

Gambar 6-4 - Microsoft Access - Table Designer

Microsoft Access

6-6

Politeknik Telkom

Pemrograman Visual

3.

4.

Isi Field Name dengan nama field untuk record-record dari tabel Anggota, Data Type dengan tipe data record dan Description untuk menuliskan keterangan jika diperlukan. Untuk membuat Primary Key, pilih field yang akan dibuat menjadi Primary Key, pilih icon

5.

Simpan tabel yang telah dibuat dengan memilih icon menu File >> Save, akan muncul kotak dialog Save As.

atau memilih

Gambar 6-5 - Microsoft Access Save Table Dialog

6.

Isi Table Name dengan nama tabel Anggota. Klik OK. Tabel Anggota berhasil dibuat.

Untuk membuat tabel VCD dan Sewa, lakukan cara yang sama dengan pembuatan tabel Anggota. Jika tabel Anggota, VCD, dan Sewa berhasil dibuat, pada kotak dialog Database dbSewaVCD.mdb akan muncul nama-nama tabel tersebut.

Microsoft Access

6-7

Politeknik Telkom

Pemrograman Visual

Gambar 6-6 - Microsoft Access Console

6.1.2.3 Membuat Relasi Antar Tabel


Setelah tabel Anggota, VCD, dan Sewa berhasil dibuat, langkah selanjutnya adalah membuat relasi antar tabel. Berdasarkan rincian database Penyewaan VCD, terdapat relasi antara tabel Sewa dengan tabel Anggota dan tabel VCD. Hal ini terlihat dari adanya field yang sama antara tabel Sewa dengan tabel Anggota dan tabel VCD yaitu pada tabel Sewa terdapat field NoAnggota yang berasal dari tabel Anggota dan KodeVCD yang berasal dari tabel VCD. Dengan adanya relasi tersebut, NoAnggota yang pada tabel Sewa harus terdaftar di tabel Anggota, begitu juga KodeVCD pada tabel Sewa harus terdaftar di tabel VCD. Untuk membuat relasi antara tabel-tabel tersebut, langkah-langkahnya adalah sebagai berikut : 1. Pilih menu Tools >> Relationships, akan muncul kotak dialog Show Table.

Microsoft Access

6-8

Politeknik Telkom

Pemrograman Visual

Gambar 6-7 - Microsoft Access Show Table

2.

Pilih tabel-tabel yang akan diberi relasi, lalu klik button Add. Jika sudah selesai memilih tabel, tutup kotak dialog. Akan muncul kotak dialog Relationships.

Gambar 6-8 - Microsoft Access Relationship Dialog

Microsoft Access

6-9

Politeknik Telkom

Pemrograman Visual

3.

Klik dan drag NoAnggota pada tabel Anggota menuju NoAnggota pada tabel Sewa, akan muncul kotak dialog Edit Relationship. Centang Enforce Referential Integrity.

Gambar 6-9 - Edit Relationship

4. 5. 6.

Klik button Create. Simpan relasi yang telah dibuat dengan memilih icon menu File >> Save. Relasi antara tabel Sewa dan Anggota telah dibuat. atau memilih

Lakukan langkah yang sama untuk membuat relasi antara tabel Sewa dan VCD. Jika relasi antara tabel Sewa dengan tabel Anggota dan tabel VCD berhasil dibuat, pada kotak dialog Relationships akan muncul relasi antar tabel tersebut.

Microsoft Access

6-10

Politeknik Telkom

Pemrograman Visual

Gambar 6-10 - Microsoft Access Relationship

6.2.1. Membuat Relational Access 2007

Database dengan

Microsoft

Pada dasarnya untuk membuat relationship database dengan Microsoft Access 2007, langkah-langkahnya sama dengan membuat relationship database dengan Microsoft Access 2003 pada subbab sebelumnya. Yang membedakan hanya tampilannya saja, tapi mungkin tampilan itulah yang kadang membuat bingung, sehingga disini perlu dijelaskan lagi mengenai pembuatan relationship database dengan Microsoft Access 2007.

6.2.2.1 Membuat Database dalam Microsoft Access 2007


Untuk membuat sebuah database baru pada Microsoft Access 2007 lakukan langkah-langkah sebagai berikut: 1. Dari Windows jalankan program Microsoft Access 2007. Setelah program Microsoft Access dijalankan, akan keluar kotak dialog Microsoft Access 2007.

Microsoft Access

6-11

Politeknik Telkom

Pemrograman Visual

Gambar 6-11 - Microsoft Access 2007

2.

Klik Blank Database pada bagian New Blank Database. Di sebelah kanan kotak dialog akan muncul Jendela Task Pane - Blank Database.

Gambar 6-12 - Microsoft Access New Database Pane


Microsoft Access 6-12

Politeknik Telkom

Pemrograman Visual

3.

Isi File Name dengan nama database yang ingin dibuat. Pada contoh kasus ini database yang dibuat diberi nama dbSewaVCD. Secara default database tersebut akan disimpan di My Documents. Untuk mengubah lokasi penyimpanan database dan mengubah tipe file database klik ikon , akan muncul kotak dialog File New Database. Karena Delphi 7 belum mendukung penggunaan file Microsoft Office Access 2007 Databases (berekstensi .accdb), maka pada Save as type, ubah menjadi Microsoft Office Access Databases (2002-2003 format) (berekstensi .mdb).

Gambar 6-13 - Microsoft Access 2007 New File Dialog

4.

Klik button OK. Maka kita akan kembali ke kotak dialog sebelumnya.

Microsoft Access

6-13

Politeknik Telkom

Pemrograman Visual

5. Klik button Create, akan muncul editor Microsoft Access 2007.

Gambar 6-14 - Microsoft Access 2007 Database console

Database dbSewaVCD.mdb telah dibuat.

6.1.2.4 Membuat Tabel


Setelah dbSewaVCD.mdb dibuat, langkah selanjutnya adalah membuat tabel Anggota, VCD, dan Sewa. Untuk membuat tabel Anggota pada Microsoft Access 2007, dapat dilakukan dengan cara sebagai berikut : 1. Pada editor Microsoft Access 2007, pilih tab Create >> Table . 2. Pada bagian All Tables akan didesain. Misal Table1 : Table. Pilih Tabs Datasheet >> View , pilih tabel yang

3.

>> Design View

. Akan muncul kotak dialog Save As.


Microsoft Access 6-14

Politeknik Telkom

Pemrograman Visual

Gambar 6-15 - Microsoft Access 2007 Table Save Dialog

4. Isi Table Name dengan nama tabel Anggota. Klik OK. Akan muncul kotak dialog untuk mendesain tabel.

Gambar 6-16 - Microsoft Access 2007 Console

Isi Field Name dengan nama field untuk record-record dari tabel Anggota, Data Type dengan tipe data record dan Description untuk menuliskan keterangan jika diperlukan.

Microsoft Access

6-15

Politeknik Telkom

Pemrograman Visual

5.

Untuk membuat Primary Key, pilih field yang akan dibuat menjadi Primary Key, pilih icon . .

6. 7.

Simpan tabel yang telah dibuat dengan memilih icon Tabel Anggota berhasil dibuat.

Untuk membuat tabel VCD dan Sewa, lakukan cara yang sama dengan pembuatan tabel Anggota. Jika tabel Anggota, VCD, dan Sewa berhasil dibuat, pada bagian All Tables akan muncul nama-nama tabel tersebut.

6.1.2.5 Membuat Relasi


Untuk membuat relasi antar tabel pada Microsoft Access 2007, langkah-langkahnya sama seperti membuat relasi pada Microsoft Access 2003 yaitu : 1. Pilih tab Database Tools >> Relationships kotak dialog Show Table. , akan muncul

Gambar 6-17 - Microsoft Access 2007 Show Table Dialog

2.

Pilih tabel-tabel yang akan diberi relasi, lalu klik button Add. Jika sudah selesai memilih tabel, tutup kotak dialog. Akan muncul kotak dialog Relationships.
6-16

Microsoft Access

Politeknik Telkom

Pemrograman Visual

Gambar 6-18 - Microsoft Access 2007 Relationship

3.

Klik dan drag NoAnggota pada tabel Anggota menuju NoAnggota pada tabel Sewa, akan muncul kotak dalog Edit Relationship. Centang Enforce Referential Integrity.

Gambar 6-19 - Microsoft Access 2007 Edit Relationship Dialog

Microsoft Access

6-17

Politeknik Telkom

Pemrograman Visual

4. 5. 6.

Klik button Create. Simpan relasi yang telah dibuat dengan memilih icon Relasi antara tabel Sewa dan Anggota telah dibuat. .

Lakukan-langkah yang sama untuk membuat relasi antara tabel Sewa dan VCD. Jika relasi antara tabel Sewa dengan tabel Anggota dan tabel VCD berhasil dibuat, pada kotak dialog Relationships akan muncul relasi antar tabel tersebut.

Gambar 6-20 - Access 2007 Relationship

Microsoft Access

6-18

Politeknik Telkom

Pemrograman Visual

Rangkuman

1. 2.

Database yang terdiri dari satu atau lebih tabel yang saling berelasi disebut relational database. Untuk membuat relational database pada Microsoft Access, langkahlangkah yang harus dilakukan adalah : 1) membuat database 2) membuat tabel 3) membuat relasi.

Pilihan Ganda
1. Format tipe data Date/Time untuk membuat penulisan tanggal berikut Wednesday, April 29, 2009 adalah . A. General Date B. Long Date C. Medium Date D. Short Date E. Long Time Perhatikan record pada tabel Partai dan tabel Caleg serta kotak dialog Edit Relationship berikut :

2.

Partai NoPartai NamaPartai 1 Partai A

Microsoft Access

6-19

Politeknik Telkom

Pemrograman Visual

Caleg NoCaleg NoPartai NamaCaleg 2 1 BBB

Jika dibuat relasi antara tabel Partai dan tabel Caleg dengan mencentang Cascade Update Related Fields pada kotak dialog Edit Relationship, apa yang akan terjadi pada tabel Caleg jika record pada tabel Partai diubah menjadi : Partai NoPartai NamaPartai 2 A. B. C. D. E. Partai A

Record dengan NoPartai 1 tidak berubah Error Record dengan NoPartai 1 ikut berubah menjadi NoPartai 2 Record yang mengandung NoPartai 1 akan dihapus Record yang mengandung NoPartai 2 akan dihapus
6-20

Microsoft Access

Politeknik Telkom

Pemrograman Visual

3.

Berikut Field Size yang terdapat pada tipe data Number, kecuali . A. Byte B. Integer C. Long Integer D. Single E. Real Atribut kunci yang menjamin keunikan sebuah tabel disebut . A. Primary Key B. Foreign Key C. Super Key D. Unique Key E. Candidate Key Berikut Input Mask yang dapat digunakan untuk tipe data Text, kecuali . A. Phone Number B. Zip Code C. Extension D. Password E. Postal Code

4.

5.

Microsoft Access

6-21

Politeknik Telkom

Pemrograman Visual

Kuis Benar Salah

1.

2. 3. 4. 5.

Tipe data AutoNumber dapat berupa angka increment atau random yang diberikan oleh Microsoft Access dan nilainya tidak dapat diubah. Satu tabel boleh memiliki lebih dari satu Primary Key. Untuk membuat sebuah relasi antar tabel maka diperlukan satu field kunci dengan nama dan tipe data yang sama. Sebuah objek gambar JPEG dapat diletakkan pada tabel Microsoft Access dengan menggunakan tipe data OLE Object. Ukuran maksimum tipe data Text adalah 255.

B B B B

S S S S

Microsoft Access

6-22

Politeknik Telkom

Pemrograman Visual

7 PENGANTAR APLIKASI DATABASE MENGGUNAKAN DELPHI

Overview
Bab ini akan menjelaskan penggunaan database pada Delphi yaitu tentang Database Desktop dan cara pembuatan database desktop. Untuk menggunakan database melalui aplikasi Delphi maka akan dijelaskan cara menghubungkan aplikasi Delphi dengan aplikasi database, dimana database yang digunakan adalah database Ms. Access yang telah dibahas di bab sebelumnya. Dalam menghubungkan database, Delphi menyediakan komponen-komponen pendukung yang akan dijelaskan pada bab ini beserta contoh penggunaannya melalui latihan implementasi menghubungkan aplikasi delphi dengan database dbSewaVCD.mdb.

Tujuan

1 2 3 4 5 6

Mengetahui aplikasi database yang didukung oleh Delphi Mengetahui mekanisme akses data dengan menggunakan Delphi Mengetahui cara pembuatan database desktop. Mengetahui komponen-komponen yang dibutuhkan untuk mengkoneksikan aplikasi Delphi dengan database Mengetahui cara menghubungkan aplikasi Delphi dengan database Ms. Access Mampu menampilkan database ke aplikasi Delphi
7-1

Pengantar Aplikasi Database Menggunakan Delphi

Politeknik Telkom

Pemrograman Visual

7.1

Aplikasi Database

Aplikasi database memungkinkan user berinteraksi dengan informasi yang tersimpan didalam suatu database. Delphi menyediakan dukungan terhadap dua jenis server database relasional: 1. Remote Database Server (RDS) dimana DBMS memiliki sistem yang terpisah dari aplikasinya, bisa dalam satu mesin atau beda mesin dengan aplikasi interfacenya. Remote Database Server menyediakan interface yang seragam bagi user untuk mengakses informasi yang tersimpan di dalamnya yaitu Structured Query Language (SQL). Contoh RDS yang ada saat ini : FireBird, Oracle, MS SQL Server, InterBase, Sybase, Informix, PostgreSQL, dan lain-lain. Database Local dimana DBMS yang berada pada sistem yang sama dengan aplikasinya. Biasanya memiliki proprietary API untuk mengakses data dan hanya optimal untuk single user. Contoh database local : Paradox, dBase, FoxPro, MS Access, dan lain-lain.

2.

Delphi menyediakan fasilitas yang lengkap untuk mengolah database. Berbagai format database dapat diolah dengan Delphi, baik database local atau database server.

7.2

Mekanisme Akses Data Dengan Delphi

Untuk mengakses database, Delphi menyediakan banyak pilihan mekanisme mengakses data. Di antaranya adalah: 1. BDE (Borland Database Engine) BDE merupakan teknologi database standar yang diperkenalkan pada versi awal Delphi dan pada saat itu merupakan satu-satunya teknologi akses database yang ditawarkan oleh Delphi. BDE awalnya merupakan Paradox Engine untuk mengakses database Paradox yang kemudian dikembangkan agar dapat mengakses database lokal yang lain seperti dBase, Foxpro, Access, dan teks file.

Pengantar Aplikasi Database Menggunakan Delphi

7-2

Politeknik Telkom

Pemrograman Visual

BDE mempunyai kelemahan dimana BDE merupakan engine yang besar dengan banyak file yang dibutuhkan ketika instalasi dan membutuhkan banyak memori. 2. IBExpress IBExpress merupakan teknologi khusus untuk mengakses InterBase Server. IBExpress tidak dapat digunakan untuk mengakses Remote Database Server lain. 3. dbGO dbGO adalah implementasi ADO (ActiveX Data Objects) di Delphi yang merupakan standard Microsoft untuk akses data, digunakan untuk mengakses database melalui OLEDB. 4. dbExpress dbExpress adalah library pengaksesan database yang bersifat cross platform, merupakan standard pengaksesan data terbaru dari Delphi untuk platform Win32. dbExpress merupakan library yang sangat ringan dan cepat untuk mengakses SQL Server.

7.3

Arsitektur Dasar Aplikasi Database dalam Delphi

Delphi menyediakan berbagai macam komponen dataset untuk mengakses data. Dataset merupakan representasi data dalam aplikasi yang kita buat. Ketika akan mengakses suatu data dari sebuah sumber data maka kita membutuhkan komponen dataset agar dapat berinteraksi dengan data tersebut. Untuk menampilkan data di dataset pada User Interface aplikasi yang kita buat, maka dibutuhkan komponen-komponen yang disebut sebagai Data Control. Dataset tidak dapat berhubungan secara langsung dengan Data Control, keduanya dihubungkan oleh suatu komponen yaitu DataSource. Dataset dapat memperoleh data dari sumber data dengan berbagai cara. Arsitektur aplikasi database pada Delphi digambarkan sebagai berikut:

Pengantar Aplikasi Database Menggunakan Delphi

7-3

Politeknik Telkom

Pemrograman Visual

Gambar 7-1- Arsitektur Aplikasi Database pada Delphi

7.4

User Interface (UI)

User Interface berisi berbagai data control yang menampilkan data dari database yang direpresentasikan oleh dataset.

7.4.1

DataSource

DataSource adalah penghubung antara user interface dengan komponen dataset. Beberapa komponen data control pada sebuah form dapat berbagi sebuah data source

7.4.2

DataSet

Inti dari aplikasi database adalah dataset. Dataset merupakan representasi data yang ada di dalam database, data dapat berupa record-record dari suatu database.

7.4.3

Connection

Dataset menghubungkan diri ke database dengan berbagai macam cara tergantung dari tipe dataset yang digunakan.

Pengantar Aplikasi Database Menggunakan Delphi

7-4

Politeknik Telkom

Pemrograman Visual

7.4.4

DataModule

Data Module merupakan container tempat semua komponen data akses diletakkan.

7.5

Menggunakan Database Desktop

Biasanya jika kita ingin membuat suatu program aplikasi untuk manajemen database, akan diperlukan suatu file database yang akan diproses. Database desktop adalah suatu program Add Ins yaitu program terpisah yang ditempelkan dalam Delphi sehingga bisa dipakai sebagai bagian dari program Delphi. Database Desktop akan dipelajari secara terbatas pada membuat dan mengedit struktur database. Cara memanggil database desktop adalah melalui menu Tool > Database Desktop

Gambar 7-2 - Database Desktop

Pengantar Aplikasi Database Menggunakan Delphi

7-5

Politeknik Telkom

Pemrograman Visual

7.5.1

Membuat file Database Desktop

Dalam format Paradox, satu file database hanya berisi satu tabel, jadi agak berbeda dengan format MS Access yang memungkinkan kita untuk membuat beberapa tabel dalam satu file database. Untuk membuat database dengan format database Paradox, lakukan langkah berikut : 1. Pilih menu File > New > Table sehingga tampilan seperti gambar 7.3 muncul

Gambar 7-3 - Format database

2.

Pilih tipe atau format table yang diinginkan, misalkan Paradox 7, lalu klik OK sehingga tampilan pada gambar 7.4 muncul

Pengantar Aplikasi Database Menggunakan Delphi

7-6

Politeknik Telkom

Pemrograman Visual

Gambar 7-4 - struktur table database

3.

Pada kolom field name, tentukan nama field yang diinginkan. Nama field akan menjadi header atau pengenal kolom. Tentukan tipe tiap field sesuai dengan data yang nanti akan dimasukkan ke dalam field tersebut dengan cara klik kanan pada kolom type. Tentukan lebar field pada kolom Size (jika diperlukan) Pada kolom Key, dapat diberikan tanda * dengan menekan sembarang tombol. Field yang diberi tanda key harus merupakan urutan field yang paling atas. Field yang diberik tanda key akan digunakan sebagai kunci pengurutan index primer.

4.

5. 6.

Pengantar Aplikasi Database Menggunakan Delphi

7-7

Politeknik Telkom

Pemrograman Visual

Gambar 7-5 - pengisian Nama Field pada table

7.

Klik tombol Save As, hingga muncul dialog Save Table As. Pilih lokasi tempat penyimpanan database, dan beri nama pada database tersebut. Misal disimpan di C:\LatDelphi dengan nama Karyawan. Klik tombol Save

8.

Gambar 7-6 - menyimpan table


Pengantar Aplikasi Database Menggunakan Delphi 7-8

Politeknik Telkom

Pemrograman Visual

Untuk keluar dari database desktop dengan memilih menu File > Exit.

7.6

Mengolah Database MS Access

Pada kuliah ini akan digunakan pengolahan database dengan menggunakan database MS.Access yang telah dipelajari pada Bab sebelumnya. Database yang akan digunakan adalah database dbSewaVCD.mdb Kumpulan object untuk mengolah file database tersebut terdapat pada kategori Data Control dalam Tool Pallete. Sebelum mengolah suatu file databse menggunakan object yang terdapat dalam Data Control, maka terlebih dahulu harus menghubungkan database ke dalam form. Ada beberapa cara yang dapat digunakan untuk mengaitkan file database ke dalam form antara lain menggunakan object-object yang ada dalam kategori Data Access, ADO, InterBase, BDE (Borland Database Engine), dan lain lain tergantung dari system database yang dirancang. Untuk mengakses database Access maka akan digunakan fasilitas pengolahan file database menggunakan Data Access, Data Control, dan ADO.

7.7
1.

Menghubungkan Database ke dalam Form


Buat aplikasi baru dengan memilih menu File > New Application

2.

Masukkan object TADOTable di dalam Tool Pallete

yang berada pada tab ADO

Pengantar Aplikasi Database Menggunakan Delphi

7-9

Politeknik Telkom

Pemrograman Visual

Gambar 7-7 - Form View TAdoTable Component

Ubah property name TADOTable1 menjadi ADOTSewaVCD 3. Klik tanda pada property ConnectionString maka akan muncul dialog AdoTable1.ConnectionString

Gambar 7-8 - Form View ConnectionString Properties

Pengantar Aplikasi Database Menggunakan Delphi

7-10

Politeknik Telkom

Pemrograman Visual

4. 5. 6.

Pilih pada option Use Connection String Klik tombol Build Klik ganda pada opsi Microsoft Jet 4.0 OLE DB Provider maka akan muncul Dialog Data Link Properties

Gambar 7-9 - Form View Data Link Dialog

7. 8.

Pada Select or Enter a database name klik pada tanda Kemudian pilih database yang akan digunakan pada aplikasi, misal database Global Inc yang berada pada D:\Delphi\ dbSewaVCD.mdb 9. Pada Enter information to log on to the database, kosongkan UserName, dan pilih opsi Blank Password 10. Kemudian klik Test Connection jika telah terhubung dengan database maka akan muncul Test Connection Succeeded.

Pengantar Aplikasi Database Menggunakan Delphi

7-11

Politeknik Telkom

Pemrograman Visual

Gambar 7-10 Form View Connection Success

11. Klik Ok pada Data Link Properties 12. Klik Ok pada Connection String 13. Klik drop down menu pada properties TableName, pilih salah satu table yang akan ditampilkan, misal Anggota 14. Ubah properties Active menjadi True 15. Masukkan TDataSource dalam form pada DataAccess Tool Pallete ke

Pengantar Aplikasi Database Menggunakan Delphi

7-12

Politeknik Telkom

Pemrograman Visual

Gambar 7-11 - Form View TDataSource

Ubah properties Name pada TDataSource1 menjadi DSsewaVCD 16. Klik drop down pada properties DataSet, pilih ADOTSewaVCD. Hal ini untuk menyambungkan DataSource ke ADO table yg telah di buat. 17. Sampai disini koneksi database ke form telah selesai, database dbSewaVCD telah terhubung ke form 18. Save aplikasi dengan nama UKoneksiDB.pas dan PrjKoneksiDB.dpr Menampilkan Data dalam Bentuk Tabel Ada banyak cara untuk menampilkan isi database ke form. Salah satunya TDBGrid yang tampilannya akan berbentuk table. Tampilan dalam bentuk table akan sangat bermanfaat karena dapat menampilkan beberapa record sekaligus. 1. Buka project PrjKoneksiDB lewat menu File > Open Project 2. Masukkan TDBGrid kemudian atur tata letaknya. pada DataControls Tool Pallete,
7-13

Pengantar Aplikasi Database Menggunakan Delphi

Politeknik Telkom

Pemrograman Visual

Gambar 7-12 Form View TDBGrid

Ubah property name nya menjadi DBGridAnggota 3. Klik drop down pada properties DataSource pilih DSsewaVCD 4. Maka pada DBGrid akan menampilkan data pada table Anggota 5. Untuk mengatur tampilan kolom maka klik tanda pada properties Columns, akan muncul dialog seperti gambar berikut

Gambar 7-13 DbGrid Properties

Untuk mengatur lebar kolom, maka terlebih dahulu kita masukkan field-field dari table, dengan cara klik tanda maka field- field dalam table akan
7-14

Pengantar Aplikasi Database Menggunakan Delphi

Politeknik Telkom

Pemrograman Visual

muncul. Klik pada salah satu field, maka pada Object Inspector akan muncul properties untuk field tersebut. Ubah ukuran lebar kolom pada properties width 6. Untuk menghilangkan field tertentu pada tampilan DBGrid maka pilih field yang akan dihilangkan, kemudian klik tanda Untuk menambahkan sebuah field kosong pada tampilan DBGrid, maka klik tanda

7.

Pengantar Aplikasi Database Menggunakan Delphi

7-15

Politeknik Telkom

Pemrograman Visual

Rangkuman

1. Delphi menyediakan dukungan terhadap dua jenis server database


yaitu Remote Database Server dan Database Lokal

2. Delphi menyediakan banyak pilihan mekanis mengakses data antara


lain yaitu BDE, IBExpress, dbGO (ADO), dan dbExpress

3. Arsitektur dasar aplikasi database terdiri dari


a. User Interface (UI) untuk menampilkan data dari database yang direpresentasikan oleh dataset. DataSource sebagai penghubung antara user interface dengan komponen dataset. DataSet merupakan representasi data yang ada di dalam database, data dapat berupa record-record dari suatu database Connection untuk mengkoneksikan diri ke database dengan berbagai macam cara tergantung dari tipe dataset yang digunakan

b.

c.

d.

4. Database desktop adalah suatu program Add Ins yaitu program


terpisah yang ditempelkan dalam Delphi sehingga bisa dipakai sebagai bagian dari program Delphi

Pengantar Aplikasi Database Menggunakan Delphi

7-16

Politeknik Telkom

Pemrograman Visual

Kuis Benar Salah

1. 2.

Paradox merupakan salah satu aplikasi database lokal Jenis koneksikan tergantung dari tipe datasource yang digunakan dalam aplikasi Dataset tidak dapat berhubungan secara langsung dengan DataControl, keduanya dihubungkan oleh suatu komponen yaitu Module Untuk menentukan bahwa suatu field merupakan key maka pada database desktop field tersebut akan diberi tanda Komponen TDBGrid dapat ditemukan di dalam tool pallete Data Control

3.

4. 5.

Pilihan Ganda

1.

2.

Aplikasi akses data yang merupakan implementasi ADO (ActiveX Data Objects) dan merupakan standard Microsoft untuk akses data adalah a. BDE b. dbGo c. IBExpress d. dbExpress Perhatikan gambar di bawah ini, pada bagian bertanda B merupakan bagian..

Pengantar Aplikasi Database Menggunakan Delphi

7-17

Politeknik Telkom

Pemrograman Visual

3.

4.

5.

a. Database Server b. Data Source c. DataSet d. Connection Komponen yang digunakan sebagai penghubung antara user interface dengan komponen dataset adalah a. Database Server b. Data Source c. DataSet d. Connection Komponen TDataSource terdapat pada tool pallete bagian a. Data Access b. Data Control c. ADO d. Standard Jumlah table pada Database Desktop yang dapat dibuat dalam 1 database adalah a. 1 b. c. d. 64 <=255 tak terhingga

Pengantar Aplikasi Database Menggunakan Delphi

7-18

Politeknik Telkom

Pemrograman Visual

8 PEMAKAIAN KOMPONEN DATA CONTROL DAN IMPLEMENTASI SINTAKS QUERY PADA DELPHI

Overview

Bab ini akan menjelaskan pembuatan aplikasi database yang lebih lengkap, dimana aplikasi database yang akan dipraktekkan akan digunakan untuk menampilkan, mengubah, dan menghapus data pada suatu tabel. Selain itu juga akan diperkenalkan pencarian (searching) data pada suatu table. Aplikasi yang akan dibuat akan menggunakan komponen yang terdapat pada Data Control seperti yang telah dijelaskan pada bab sebelumnya.

Tujuan

1. 2. 3. 4. 5.

Mengetahui cara pembuatan aplikasi untuk insert, update, dan delete data Mengetahui cara pembuatan aplikasi untuk searching Mengetahui cara penggunaan ADOConnection Mengetahui cara penggunaan DBNavigator Mengetahui lebih lanjut cara pengimplementasian komponen Data Control
8-1

Pemakaian Komponen Data Control

Politeknik Telkom

Pemrograman Visual

Selain untuk menampilkan data, aplikasi database pada Delphi juga dapat digunakan untuk memasukkan data (insert), mengubah data (update), mengapus data (delete), dan mencari data (searching). Hal ini akan mempermudah pengguna (user) yang tidak paham tentang database, karena dengan adanya aplikasi Delphi maka dapat dibuat tampilan yang lebih mudah untuk dimengerti. Untuk membuat fungsi diatas akan digunakan syntax sql yang sederhana.

8.1

Insert Data

Insert data digunakan untuk memasukkan data baru ke suatu table pada database. Pemasukan data dilakukan satu persatu. Aplikasi Delphi digunakan untuk membuat tampilan yang akan memberikan keterangan lengkap sehingga penggguna tidak salah dalam memasukkan data dan akan mengirimkannya ke database. Pembuatan syntax insert dapat dilakukan melalui klik button atau dengan menggunakan DBNavigator. Sintax sql untuk insert adalah sebagai berikut insert into <nama_table> values(<nilai1>,<nilai2>, ,<nilai_n>) contoh akan dimasukkan nilai pada table Anggota pada database dbSewaVCD insert into Anggota values(A00022,Michael,Bandung,0227561234) Sintax diatas akan memasukkan A00022 pada field NoAnggota, Michael pada field NamaAnggota, Bandung pada field AlamatAnggota, dan 0227561234 pada field TelpAnggota. Tanda digunakan jika field yang akan diisi bertipe Text. Pemasukan nilai harus sesuai dengan field pada tabelnya.

8.2

Select Data

Syntax update dan delete digunakan untuk data yang telah disimpan sebelumnya, oleh karena itu data yang akan di update maupun di delete akan dicari terlebih dahulu untuk mempermudah proses update dan delete. Setelah nilai ditemukan maka dapat dilakukan langkah update atau delete. Proses pencarian ini lebih tepatnya adalah menampilkan data berdasarkan nilai tertentu. Sintax untuk menampilkan data adalah Select
Pemakaian Komponen Data Control 8-2

Politeknik Telkom

Pemrograman Visual

tetapi syntax ini akan diberi tambahan kriteria sehingga akan menghasilkan data yang lebih spesifik. Sintax sql untuk select adalah sebagai berikut : Select <field1>, <field2>, , <field n> from <nama_table> Contoh akan ditampilkan keseluruhan isi table Anggota : Select * from Anggota Tanda * menunjukkan akan menampilkan data yang berada di keseluruhan field yaitu NoAnggota, NamaAnggota, AlamatAnggota, dan TelpAnggota. Jika ingin menampilkan n field, misal hanya NamaAnggota dan TelpAnggota maka : Select NamaAnggota, TelpAnggota from Anggota Sedangkan jika ingin menampilkan data berdasarkan nilai tertentu maka digunakan syntax WHERE. Select <field 1>, <field 2>, , <field n> from <nama_table> where <field m> = <kriteria> Misal akan ditampilkan NamaAnggota dan AlamatAnggota NoAnggotanya = A00022, maka sintaxnya : Select NamaAnggota, AlamatAnggota from Anggota where NoAnggota= A00022 yang

Jika criteria lebih dari satu maka menggunakan syntax AND jika diharapkan nilai yang dihasilkan harus memenuhi semua criteria, dan syntax OR jika diharapkan nilai yang dihasilkan memenuhi salah satu dari criteria. Select NamaAnggota, AlamatAnggota from Anggota where NoAnggota= A00022 AND AlamatAnggota=Bandung Maka hasil pencarian akan menampilkan NamaAnggota dan AlamatAnggota yang bernomor A00022 dan tinggal di Bandung.

Pemakaian Komponen Data Control

8-3

Politeknik Telkom

Pemrograman Visual

Select NamaAnggota, AlamatAnggota from Anggota where NoAnggota= A00022 OR AlamatAnggota=Bandung Maka hasil pencarian akan menampilkan NamaAnggota dan AlamatAnggota yang bernomor A00022 atau yang tinggal di Bandung.

8.3

Update Data

Update data digunakan untuk mengubah nilai data yang sudah disimpan sebelumnya. Karena update dilakukan untuk data yang telah ada maka terlebih dahulu akan dilakukan pencarian data yang akan diubah tersebut. Pencarian dapat menggunakan field manapun. Setelah data ditemukan maka pengguna dapat mengubah nilai-nilainya. Pengubahan nilai dapat dilakukan pada 1 atau banyak field pada satu record. Sintax update adalah sebagai berikut update <nama_table> set <field 1>=<nilai>,<field 2>=<nilai>, , <field n>=<nilai> where <field acuan> = <nilai> Field acuan merupakan field yang tidak akan mengalami perubahan seperti field primary key. Contoh : Akan diubah nilai NamaAnggota : Michael menjadi Michelle, dimana NamaAnggota : Michael mempunyai NoAnggota : A00022, maka sintaksnya : Update Anggota set NamaAnggota=Michelle where NoAnggota=A00022

8.4

Delete Data

Delete data digunakan untuk menghapus suatu record yang telah disimpan sebelumnya. Delete dilakukan terhadap data yang sudah ada maka terlebih dahulu akan dilakukan pencarian data sehingga akan menampilkan data yang lebih spesifik. Setelah record ditemukan maka dapat dilakukan penghapusan data. Delete dapat dilakukan per record atau beberapa record sekaligus dengan menggunakan criteria. Sintaks delete adalah sebagai berikut : delete from <nama_table> where <field criteria>=<nilai>

Pemakaian Komponen Data Control

8-4

Politeknik Telkom

Pemrograman Visual

Field criteria merupakan field yang akan digunakan acuan data yang akan dihapus. Misal akan dilakukan penghapusan data terhadap Anggota yang mempunyai NoAnggota :A00022, maka sintaksnya adalah : delete from Anggota where NoAnggota = A00022 Jika ingin dilakukan penghapusan beberapa data, misal ingin menghapus semua Anggota yang beralamat di Bandung dan bernama Budi maka sintaksnya : Delete from Anggota where NamaAnggota = Budi AND AlamatAnggota =Bandung

8.5

Karakter Spesial

Dalam pencarian data atau pemberian criteria, kemungkinan hanya diketahui sebagian dari nilai. Misal ingin mencari seseorang yang mempunyai nama yang berawalan huruf M. Jika menggunakan sintaks : Select * from Anggota where NamaAnggota=M Maka sintaks diatas akan menampilkan anggota yang mempunyai nama : M, padahal yang dinginkan adalah menampilkan semua nama yang berawalan M. Hal ini dapat dilakukan dengan bantuan karakter spesial, karakter special tersebut adalah Tabel 8-1 Karakter Special Karakter Fungsi % Mewakili 0 atau banyak karakter, untuk karakter angka [0..9] atau huruf [a..z][A..Z] Penggunaan karakter spesial harus diawali dengan klausa Like. Maka sintaks untuk menampilkan anggota yang mempunyai nama berawalan M adalah : Select * from Anggota where NamaAnggota like M% Tanda M% menandakan bahwa dibelakang huruf M terdapat 1 atau banyak karakter. Contoh penggunaan selengkapnya adalah sebagai berikut :

Pemakaian Komponen Data Control

8-5

Politeknik Telkom

Pemrograman Visual

Pola a%a %Z% %a A%

Tabel 8-2 Contoh Penggunaan Karakter Special Cocok (pola yang benar) Tidak Cocok (pola yang salah) aa, aBa, aCCCCCa aBC Z, aaabbbZ, aZbbxaaa, abZ aba Aaaavvvvz, z, az aza Abbbcccc, A, Ab bA

8.6

ADOConnection

Pada bab ini akan mengimplementasikan penggunaan ADOConnection. Dalam pembuatan aplikasi ADOConnection tidak selalu harus digunakan, tetapi ADOConnection akan membuat program lebih efisien. Komponen ADOConnection terdapat pada Tool Pallete ADO. Jika akan menampilkan beberapa table dalam satu database dengan menggunakan ADOTable maka setiap kita menambahkan komponen ADOTable, terlebih dahulu harus mensetting ConnectionString, padahal isi dari ConnectionString pada tiap komponen ADOTable sama. Maka agar lebih efisien digunakan ADOConnection dimana didalam ADOConnection ini dilakukan setting ConectionString sehingga komponen ADOTable atau ADOQuery hanya perlu terhubung dengan ADOConnection dan tidak perlu setting ConnectionString lagi.

8.7

Aplikasi Insert, Update, Delete Anggota

Pada aplikasi ini akan digunakan database dbSewaVCD.mdb. Table yang akan digunakan adalah table Anggota. 1. Buat aplikasi baru dengan memilih menu File > New > Application 2. Rancang tampilan form seperti gambar berikut dengan memasukkan komponen sebagai berikut dan ubah properties seperti table di bawah

Pemakaian Komponen Data Control

8-6

Politeknik Telkom

Pemrograman Visual

Gambar 8-1- Tampilan Form Anggota

Komponen Form GroupBox1 GroupBox2 Label1 Label2 Label3

Tabel 8-3 Properties FormDBAnggota Properties Nilai Properties Name FormDBAnggota Caption Form Anggota Name GBInputBarang Caption Input Barang Name GBTampilanBarang Caption Tampilan Barang Name LblNoAnggota Caption No Anggota Name LblNamaAnggota Caption Nama Anggota Name LblAlamatAnggota Caption Alamat Anggota
8-7

Pemakaian Komponen Data Control

Politeknik Telkom

Pemrograman Visual

Label4 Edit1 Edit2 Edit3 Edit4 Button1 Button2 Button3 Button4 DBGrid 3.

Name Caption Name Text Name Text Name Text Name Text Name Caption Name Caption Name Caption Name Caption Name

LblTelpAnggota Telp Anggota ENoAnggota EnamaAnggota EalamatAnggota EtelpAnggota BtnSimpan Simpan BtnUbah Ubah BtnHapus Hapus BtnKeluar Keluar DBGridAnggota

Komponen Label dan Edit diletakkan di dalam GroupBox1, sedangkan DBGrid diletakkan di dalam GroupBox2. 4. Simpan file dengan nama unit UnitDBAnggota.pas dan project dengan nama PrjDBAnggota.dpr. 5. Masukkan komponen yang dibutuhkan untuk koneksi ke database MS. Access yaitu ADOConnection, dan komponen untuk mengolah databse yaitu ADOQuery dan DataSource kedalam DataModule 6. Untuk membuat data module pilih File > New > Data Module, ubah properties Name menjadi DataModuleVCD. 7. Kemudian masukkan komponen kedalam DataModuleVCD seperti gambar berikut :

Pemakaian Komponen Data Control

8-8

Politeknik Telkom

Pemrograman Visual

Gambar 8-2 - Data Module

Tabel 8-4 Properties ADOConnVCD Komponen Properties Nilai Properties ADOConnection Name ADOConnVCD ConnectionString dbSewaVCD.mdb ADOQuery Name ADOQueryVCD Connection ADOConnVCD DataSource Name DSAnggotaVCD Dataset ADOQueryVCD 19. Untuk setting properties ADOConnVCD, a. Pada properties Connection String klik tanda muncul tampilan sebagai berikut sehingga akan

Gambar 8-3 - Connection String

Pemakaian Komponen Data Control

8-9

Politeknik Telkom

Pemrograman Visual

b.

Klik tombol build sehingga akan muncul pilihan OLE DB Provider, pilih yg Microsoft Jet 4.0 OLE DB Provider

Gambar 8-4 - Data Link Properties Provider

c.

Kemudian klik tombol Next, sehingga muncul tampilan sebagai berikut

Pemakaian Komponen Data Control

8-10

Politeknik Telkom

Pemrograman Visual

Gambar 8-5 - Data Link Properties Connection

Pada option Select or enter a database name, klik tanda kemudian cari dbSewaVCD.mdb e. Cek koneksi dengan menekan tombol Test Connection 20. Untuk setting properties ADOQueryVCD a. Pada properties Connection klik menu drop down kemudian pilih ADOConnVCD b. Pada properties SQL klik tanda tampilan sebagai berikut : sehingga akan muncul

d.

Gambar 8-6 - SQL String List Editor


Pemakaian Komponen Data Control 8-11

Politeknik Telkom

Pemrograman Visual

21.

22.

23.

24.

Tuliskan sintaks berikut di dalamnya Select * from Anggota Untuk setting properties DSAnggotaVCD a. Pada properties DataSet klik menu drop down kemudian pilih ADOQueryVCD Simpan DataModuleVCD dengan nama UnitDataModuleVCD.pas Agar komponen yang ada pada DataModuleVCD dapat diakses dan digunakan oleh form utama yaitu FormDBAnggota, maka anda harus me-use unit UnitDataModule dengan cara, aktifkan FormDBAnggota, lalu pilih File > Use Unit (Alt + F11), lalu pilih UnitDataModuleVCD. Ubah properties DataSource pada DBGridAnggota yang terdapat pada FormDBAnggota dengan klik drop down kemudian pilih DataModuleVCD.DSAnggotaVCD. Pada DBGridAnggota kita setting tampilan kolom seperti gambar di bawah

Gambar 8-7 - Tampilan Form Anggota Lengkap


Pemakaian Komponen Data Control 8-12

Politeknik Telkom

Pemrograman Visual

a.

Klik DBGridAnggota kemudian pilih properties sehingga akan muncul dialog seperti dibawah

Columns,

Gambar 8-8 - Setting Column DBGrid

b. c.

Klik gambar sebanyak 4 kali, sehingga akan muncul tulisan 0TColumn, 1-TColumn, 2-TColumn, 3-TColumn. Klik pada tulisan tersebut sehingga akan muncul properties pada ObjectInspector. Ubah properties sebagai berikut Tabel 8-5 Properties Komponen ObjectInspector Komponen Properties Nilai properties 0-TColumn Title > Caption No Anggota FieldName NoAnggota Width 60 1-TColumn Title > Caption Nama Anggota FieldName NamaAnggota Width 100 2-TColumn Title > Caption Alamat Anggota FieldName AlamatAnggota Width 125 3-TColumn Title > Caption No Telp FieldName TelpAnggota Width 60

25. Buat Prosedure Clear, prosedur ini berguna untuk mengosongkan Text pada komponen Edit. Caranya adalah :
Pemakaian Komponen Data Control 8-13

Politeknik Telkom

Pemrograman Visual

a.

Pindah ke UnitDBAnggota, masukkan kode berikut didalam bagian interface > public
public { Public declarations } procedure Clear();

b.

Kemudian tuliskan kode berikut di dalam bagian implementation


procedure TFormDBAnggota.Clear(); begin ENoAnggota.Enabled:= true; ENoAnggota.Clear; ENamaAnggota.Clear; EAlamatAnggota.Clear; ETelpAnggota.Clear; end;

26. Buat Procedure Refresh, prosedur ini untuk menampilkan isi table Anggota yang baru setelah dilakukan suatu proses baik Insert, Update, maupun Delete. Caranya adalah : a. Pindah ke UnitDBAnggota, tambahkan kode berikut didalam bagian interface > public, sehingga kodenya akan menjadi seperti berikut :
public { Public declarations } procedure Clear(); procedure Refresh();

b.

Kemudian tambahkan kode berikut di dalam bagian implementation


procedure TFormDBAnggota.Refresh(); begin with DataModuleVCD.ADOQueryVCD do begin Close; SQL.Clear; SQL.Text:= 'Select * from Anggota'; Open; end; end;

27. Pindah ke FormDBAnggota kemudian klik di daerah manapun pada form atau dengan memilih FormDBAnggota pada Object Inspector, kemudian
Pemakaian Komponen Data Control 8-14

Politeknik Telkom

Pemrograman Visual

pada Object Inspector Event klik ganda pada Event OnShow, maka akan muncul sebuah prosedur TFormDBAnggota.FormShow, kemudian lengkapi prosedur tersebut seperti di bawah
procedure TFormDBAnggota.FormShow(Sender: TObject); begin DataModuleVCD.ADOQueryVCD.Active:=True; DataModuleVCD.ADOQueryVCD.Refresh; BtnSimpan.Enabled:= True; BtnUbah.Enabled := False; BtnHapus.Enabled :=False; end;

28. Pindah ke FormDBAnggota, klik ganda pada Button Simpan sehingga akan memunculkan procedure TFormDBAnggota.BtnSimpanClick, kemudian lengkapilah programnya seperti berikut
procedure TFormDBAnggota.BtnSimpanClick(Sender: TObject); begin with DataModuleVCD.ADOQueryVCD do begin Close; SQL.Text:='Insert into Anggota values('+QuotedStr(ENoAnggota.Text)+','+QuotedStr(ENamaAnggota.Text)+',' +QuotedStr(EAlamatAnggota.Text)+','+QuotedStr(ETelpAnggota.Text)+')'; ExecSQL; end; Clear(); {memanggil procedure Clear} Refresh(); {memanggil procedure Refresh} end;

29. Pindah ke FormDBAnggota, klik ganda pada Button Ubah sehingga akan memunculkan procedure TFormDBAnggota.BtnUbahClick, kemudian lengkapilah programnya seperti berikut
procedure TFormDBAnggota.BtnUbahClick(Sender: TObject); begin with DataModuleVCD.ADOQueryVCD do Pemakaian Komponen Data Control 8-15

Politeknik Telkom

Pemrograman Visual

begin Close; SQL.Text:='Update Anggota set NamaAnggota='+QuotedStr(ENamaAnggota.Text)+',AlamatAnggota=' +QuotedStr(EAlamatAnggota.Text)+',TelpAnggota='+ QuotedStr(ETelpAnggota.Text)+'where NoAnggota='+QuotedStr(ENoAnggota.Text); ExecSQL; end; Refresh(); Clear(); BtnSimpan.Enabled:=True; BtnUbah.Enabled:=False; BtnHapus.Enabled:=False; end;

30. Pindah ke FormDBAnggota, klik ganda pada Button Hapus sehingga akan memunculkan procedure TFormDBAnggota.BtnHapusClick, kemudian lengkapilah programnya seperti berikut
procedure TFormDBAnggota.BtnHapusClick(Sender: TObject); begin with DataModuleVCD.ADOQueryVCD do begin Close; SQL.Text:='Delete from Anggota where NoAnggota='+QuotedStr(ENoAnggota.Text); ExecSQL; end; Refresh(); Clear(); BtnSimpan.Enabled:=True; BtnUbah.Enabled:=False; BtnHapus.Enabled:=False; end;

31. Pindah ke FormDBAnggota, klik pada DBGridAnggota atau pilih DBGridAnggota pada ObjectInspector kemudian pada Object Inspector Event klik ganda pada Event OnCellClick, maka akan muncul sebuah prosedur TFormDBAnggota.DBGridAnggotaCellClick, kemudian lengkapi prosedur tersebut seperti di bawah
Pemakaian Komponen Data Control 8-16

Politeknik Telkom

Pemrograman Visual

procedure TFormDBAnggota.DBGridAnggotaCellClick(Column: TColumn); begin BtnSimpan.Enabled:= false; BtnUbah.Enabled:= true; BtnHapus.Enabled:= true; ENoAnggota.Text:= DataModuleVCD.ADOQueryVCD.fieldByName('NoAnggota').AsString; ENoAnggota.Enabled:= false; ENamaAnggota.Text:= DataModuleVCD.ADOQueryVCD.fieldByName('NamaAnggota').AsString; EAlamatAnggota.Text:= DataModuleVCD.ADOQueryVCD.fieldByName('AlamatAnggota').AsString;ETelpA nggota.Text:= DataModuleVCD.ADOQueryVCD.fieldByName('TelpAnggota').AsString; end;

32. Pindah ke FormDBAnggota, klik ganda pada Button Keluar sehingga akan memunculkan procedure TFormDBAnggota.BtnKeluarClick, kemudian lengkapilah programnya seperti berikut
procedure TFormDBAnggota.BtnKeluarClick(Sender: TObject); begin Application.Terminate; end;

33. Pilih File > Save All, untuk menyimpan semua perubahan 34. Jika ingin menghilangkan Dialog Login maka klik pada ADOConnVCD kemudian ubah properties LoginPrompt menjadi False.

8.8

Aplikasi Insert, Update, Delete dengan menggunakan DBNavigator

Aplikasi yang akan dibuat akan mengimplementasikan penggunaan DBNavigator untuk melakukan Insert, Update, dan Delete. Komponen DBNavigator terdapat pada Tool Pallete Data Controls, klik tanda . 1. Buat aplikasi baru dengan memilih menu File > New > Application

Pemakaian Komponen Data Control

8-17

Politeknik Telkom

Pemrograman Visual

2.

Rancang tampilan form seperti gambar berikut dengan memasukkan komponen sebagai berikut dan ubah properties seperti table di bawah:

Gambar 8-9 - Tampilan Form Anggota

Tabel 8-6 Properties FormDBAnggota Komponen Properties Nilai Properties Form Name FormDBAnggota Caption Form Anggota GroupBox1 Name GroupBoxAnggota Caption Data Anggota DBGrid Name DBGridAnggota DBNavigator Name DBNavAnggota 3. 4. Simpan file dengan nama unit UnitDBAnggotaVCD.pas dan nama project PrjDBAnggotaVCD.dpr Masukkan komponen yang dibutuhkan untuk koneksi ke database MS.Access yaitu ADOConnection, dan komponen untuk mengolah databse yaitu ADOTable dan DataSource kedalam DataModule Untuk membuat data module pilih File > New > Data Module, ubah properties Name menjadi DataModuleVCD. Kemudian masukkan komponen kedalam DataModuleVCD seperti gambar berikut :

5. 6.

Pemakaian Komponen Data Control

8-18

Politeknik Telkom

Pemrograman Visual

Gambar 8-10 - Data Module

Tabel 8-7 Properties ADOConnVCD Komponen Properties Nilai Properties ADOConnection Name ADOConnVCD ConnectionString dbSewaVCD.mdb ADOTable Name ADOTableAnggota Connection ADOConnVCD TableName Anggota Active True DataSource Name DSAnggotaVCD Dataset ADOTableAnggota 7. 8. Simpan DataModuleVCD dengan nama UnitDataModule.pas Agar komponen yang ada pada DataModuleVCD dapat diakses dan digunakan oleh form utama yaitu FormDBAnggota, maka anda harus me-use unit UnitDataModule dengan cara, aktifkan FormDBAnggota, lalu pilih File > Use Unit (Alt + F11), lalu pilih UnitDataModule. 9. Ubah properties DataSource pada DBGridAnggota yang terdapat pada FormDBAnggota dengan klik drop down kemudian pilih DataModuleVCD.DSAnggotaVCD. 10. Ubah properties DataSource pada DBNavAnggota yang terdapat pada FormDBAnggota dengan klik drop down kemudian pilih DataModuleVCD.DSAnggotaVCD. 11. Pada DBGridAnggota kita setting tampilan kolom seperti gambar di bawah

Pemakaian Komponen Data Control

8-19

Politeknik Telkom

Pemrograman Visual

a.

Klik DBGridAnggota, kemudian pilih properties Column, maka akan muncul tampilan seperti berikut

Gambar 8-11 - Setting column DBGrid

b. c.

Klik gambar sebanyak 4 kali, sehingga akan muncul tulisan 0TColumn, 1-TColumn, 2-TColumn, 3-TColumn. Klik pada tulisan tersebut sehingga akan muncul properties pada ObjectInspector. Ubah properties sebagai berikut :

Tabel 8-8 Properties Komponen ObjectInspector pada DBNavigator Komponen 0-TColumn Properties Title > Caption FieldName Width Title > Caption FieldName Width Title > Caption FieldName Width Title > Caption FieldName Width Nilai properties No Anggota NoAnggota 60 Nama Anggota NamaAnggota 100 Alamat Anggota AlamatAnggota 125 No Telp TelpAnggota 100

1-TColumn

2-TColumn

3-TColumn

12. Klik File > Save All, untuk menyimpan perubahan


Pemakaian Komponen Data Control 8-20

Politeknik Telkom

Pemrograman Visual

13. Run program, sehingga akan muncul tampilan sebagai berikut :

Gambar 8-12 - Running PrjDBAnggotaVCD

8.9

Aplikasi Searching

Pada bab ini akan diberikan contoh pembuatan program untuk searching data. 1. Buatlah aplikasi baru dengan cara memilih menu File > New >Application 2. Masukkan komponen seperti gambar di bawah

Gambar 8-13 - Gbr 10.18 Form Search

Pemakaian Komponen Data Control

8-21

Politeknik Telkom

Pemrograman Visual

Komponen Form GroupBox1 GroupBox2 Label1 Label2 ComboBox Edit ADOQuery

DataSource DBGrid

Tabel 8-9 Properties FormSearch Properties Nilai Properties Name FormSearch Caption Search Anggota Name GroupBox1 Caption Search Anggota Name GroupBox2 Caption Data Anggota Name Label1 Caption Search By Name Label2 Caption Data Name ComboBox1 Text Name Edit1 Text Name ADOQuery1 ConnectionString dbSewaVCD.mdb SQL Select * from Anggota Active True Name DataSource1 DataSet ADOQuery1 Name DBGRid1 DataSource DataSource1

3.

Klik pada ComboBox1, pilih properties Items kemudian klik tanda sehingga akan muncul dialog sebagai berikut

Pemakaian Komponen Data Control

8-22

Politeknik Telkom

Pemrograman Visual

Gambar 8-14 - String List Editor

4. 5. 6. 7. 8.

Kemudian tuliskan Item seperti diatas yaitu : No Anggota, Nama Anggota, Alamat Anggota, kemudian klik OK Klik properties ItemIndex dan ubah isinya menjadi 0 Simpan Aplikasi dengan nama file unit USearchAnggota.pas dan file project dengan nama PrjSearchAnggota.dpr Untuk dapat menjalankan fungsi search maka tambahkan kode berikut ke dalam Unit USearchAnggota Tambahkan kode berikut di dalam bagian deklarasi variabel global
var FormSearch: TFormSearch; selection : string; pil : integer;

9.

Klik pada bagian kosong di FormSearch atau pilih FormSearch pada object Inspector kemudian pilih event OnActivate sehingga akan muncul procedure TFormSearch.FormActivate, kemudian tambahkan kode berikut
procedure TFormSearch.FormActivate(Sender: TObject); begin pil :=0; end;

Pemakaian Komponen Data Control

8-23

Politeknik Telkom

Pemrograman Visual

10. Klik pada komponen ComboBox1, kemudian pilih Event OnChange sehingga muncul procedure TFormSearch.ComboBox1Change, tambahkan kode berikut
procedure TForm1.ComboBox1Change(Sender: TObject); begin pil:= ComboBox1.ItemIndex; end;

11. Klik pada Edit1, kemudian pilih Event OnChange sehingga muncul procedure TFormSearch.Edit1Change, tambahkan kode berikut
procedure TForm1.Edit1Change(Sender: TObject); var dataquery : string; begin dataquery := QuotedStr('%'+Edit1.Text+'%'); with ADOQuery1 do begin Close; SQL.Clear; SQL.Text:= 'Select * from Anggota where'; if (pil = 0 )then sql.Add('NoAnggota like'+dataquery) else if (pil = 1) then sql.Add('NamaAnggota like'+dataquery) else sql.Add('AlamatAnggota like'+dataquery); ExecSQL; Open; end; end;

12. Simpan perubahan aplikasi dengan pilih File > SaveAll 13. Jika dirunning maka hasilnya adalah sebagai berikut

Pemakaian Komponen Data Control

8-24

Politeknik Telkom

Pemrograman Visual

Gambar 8-15 - Running Program Search

Pemakaian Komponen Data Control

8-25

Politeknik Telkom

Pemrograman Visual

Rangkuman 1. 2. 3. 4. 5. Insert data digunakan untuk memasukkan data baru ke suatu table Sintax sql untuk insert adalah sebagai berikut
insert into <nama_table> values(<nilai1>,<nilai2>, ,<nilai_n>)

Select data digunakan menampilkan data berdasarkan nilai tertentu Sintax sql untuk select dari suatu table adalah sebagai berikut
Select <field1>, <field2>, , <field n> from <nama_table>

Sintax sql untuk select dari suatu table dengan syarat nilai tertentu adalah sebagai berikut
Select <field 1>, <field 2>, , <field n> from <nama_table> where <field m> = <kriteria>

6. 7.

Update data digunakan untuk mengubah nilai data yang sudah disimpan sebelumnya Sintax sql untuk update adalah sebagai berikut
update <nama_table> set <field 1>=<nilai>,<field 2>=<nilai>, , <field n>=<nilai> where <field acuan> = <nilai>

8. 9.

Delete data digunakan untuk menghapus suatu record yang telah disimpan sebelumnya Sintax sql untuk delete adalah sebagai berikut
delete from <nama_table> where <field criteria>=<nilai>

Kuis Benar Salah 1. 2. Tanda * menunjukkan bahwa hasil query akan menampilkan data yang berada di keseluruhan field pada suatu table. Sintaks yang digunakan untuk menampilkan data Anggota yang mempunyai nama berawalan M adalah
Select * from Anggota where NamaAnggota = M%

3. 4.

Untuk mengimplementasikan Query maka dapat digunakan komponen ADOQuery dan sintaks SQL ditulis pada properties SQL. Tanda pada DBNavigator digunakan untuk mengupdate data

Pemakaian Komponen Data Control

8-26

Politeknik Telkom

Pemrograman Visual

5.

Sintaks delete * from Anggota akan menghapus semua record yang terdapat pada table Anggota

Pilihan Ganda

1.

Tanda yang harus diakses pada DBNavigator untuk menghapus record adalah a.
b.

2.

3.

4.

c. d. Komponen dataset yang dapat digunakan untuk mengimplementasikan sintaks sql adalah a. ADOConnection b. ADOTable c. ADOQuery d. ADOSQL Sintaks select NamaAnggota from Anggota where NamaAnggota like %m%i , akan menampilkan hasil sebagai berikut, kecuali a. Michael b. Remi c. Merci d. Miami Sintaks SQL.Clear digunakan untuk a. Mengosongkan isi DBGrid b. Menghapus data pada Table c. Menghapus isi property SQL d. Mengosongkan text pada komponen Edit

Pemakaian Komponen Data Control

8-27

Politeknik Telkom

Pemrograman Visual

9 APLIKASI DATABASE MASTER DETAIL

Overview

Dalam bab ini juga akan dijelaskan pembuatan master detail dimana data yang diperlukan akan ditampilkan secara lengkap.

Tujuan

1.

Mengetahui cara pembuatan Master Detail


9-1

Aplikasi Database Master Detail

Politeknik Telkom

Pemrograman Visual

9.1

Aplikasi Database Master Detail

Aplikasi Database Master Detail merupakan aplikasi yang menampilkan relasi master-detail (parent-child) di antara data yang terdapat di sebuah table Master dan di table Detail dalam database relasional. Dalam aplikasi ini terdapat dua buah blok data yang keduanya direlasikan dalam hubungan Master dan Detail. Aplikasi Master Detail digunakan untuk menampilkan keterhubungan one to many dari dua tabel artinya pada database secara fisik, satu record tunggal dalam tabel Master memiliki referensi satu atau lebih record yang ada di dalam tabel Detail. Dengan membuat aplikasi Master Detail maka kita dapat melihat rincian data yang berhubungan dengan suatu tabel. Pada studi kasus ini akan dibuat aplikasi master detail antara data Anggota dengan data VCD yang sedang disewa oleh Anggota tersebut. Data Anggota terdapat pada tabel Anggota dan data VCD yang disewa terdapat pada tabel Sewa. Langkah untuk membuat aplikasi Master Detail adalah sebagai berikut :
1. 2. Buat aplikasi baru dengan memilih menu File > New> Application Rancang tampilan form seperti gambar berikut dengan memasukkan komponen dan properties seperti tabel di bawah:

Gambar 9-1 - Form Master-Detail Anggota

Aplikasi Database Master Detail

9-2

Politeknik Telkom

Pemrograman Visual

Tabel 9-1 Properties FormMasterDetail


Komponen Form GroupBox1 GroupBox2 DBGrid1 DBGrid2 3. 4. 5. Properties Name Caption Name Caption Name Caption Name Name Nilai Properties FormMasterDetail Master Detail Anggota GroupBoxMaster Data Anggota GroupBoxDetail Data Sewa DBGridAnggota DBGridSewa

Simpan file unit dengan nama UnitMasterDetail.pas dan file project dengan nama PrjMasterDetail.dpr. Tambahkan sebuah data module dengan cara pilih File > New > Data Module, ubah properties Name menjadi DataModuleMasterDetail. Masukkan komponen kedalam DataModuleMasterDetail seperti gambar berikut :

Gambar 9-2 - Data Module

Tabel 9-2 Properties ADOConnVCD


Komponen ADOConnection ADOTable1 Properties Name ConnectionString Name Connection TableName Active Name Nilai Properties ADOConnVCD dbSewaVCD.mdb ADOTableAnggota ADOConnVCD Anggota True ADOTableSewa
9-3

ADOTable2

Aplikasi Database Master Detail

Politeknik Telkom

Pemrograman Visual

DataSource1 DataSource2

Connection TableName Active Name Dataset Name Dataset

ADOConnVCD Sewa True DSAnggotaVCD ADOTableAnggota DSSewaVCD ADOTableSewa

ADOTableAnggota dan DSAnggotaVCD digunakan untuk menghubungkan DBGridAnggota ke tabel Anggota yang berperan sebagai Master Table. ADOTableSewa dan DSSewaVCD digunakan untuk menghubungkan DBGridSewa ke tabel Sewa yang berperan sebagai Detail Table. 6. 7. 8. Simpan DataModuleMasterDetail dengan nama UnitDataModule.pas Kembali ke FormMasterDetail. Agar komponen yang ada pada DataModuleMasterDetail dapat diakses dan digunakan oleh form utama yaitu FormMasterDetail, maka harus use unit UnitDataModule dengan cara: aktifkan FormMasterDetail, pilih File > Use Unit (Alt + F11), lalu pilih UnitDataModule. Ubah properties DataSource pada DBGridAnggota dengan klik drop down kemudian pilih DataModuleMasterDetail.DSAnggotaVCD. Ubah properties DataSource pada DBGridSewa yang dengan klik drop down kemudian pilih DataModuleMasterDetail.DSSewaVCD. Sampai disini kita baru menampilkan data per tabel, untuk mengimplementasikan Master Detail maka tabel Anggota harus dihubungkan dengan tabel Sewa, langkah menghubungkan kedua tabel tersebut adalah sebagai berikut : Kembali ke DataModuleMasterDetail. Klik pada ADOTableSewa. a. Ubah properties MasterSource menjadi DSAnggotaVCD. b. Ubah properties IndexFieldName menjadi NoAnggota. c. Ubah properties MasterFields dengan cara klik tanda sehingga akan muncul kotak dialog Field Link Designer seperti berikut :

9. 10. 11.

12. 13.

Aplikasi Database Master Detail

9-4

Politeknik Telkom

Pemrograman Visual

Gambar 9-3 - Field Link Designer Klik NoAnggota pada Master Fields. Klik NoAnggota pada Detail Fields. Klik tombol Add, sehingga pada kotak dialog Field Link Designer akan muncul tampilan sebagai berikut, kemudian klik button OK. 14. Simpan perubahan pada aplikasi dengan memilih File > Save All 15. Run aplikasi. Jika pada field anggota diklik maka pada detail akan menampilkan data sewa yang berkaitan dengan anggota tersebut. d. e. f.

Contoh tampilan saat aplikasi master detail dijalankan :

Gambar 9-4 - Aplikasi Running

Aplikasi Database Master Detail

9-5

Politeknik Telkom

Pemrograman Visual

Kesimpulan Dengan membuat aplikasi Master Detail maka dari satu record dalam tabel Master dapat ditampilkan satu atau lebih record dari tabel Detail yang berhubungan dengan record tabel Master tersebut.

Rangkuman
1. 2. Aplikasi Master Detail digunakan untuk menampilkan keterhubungan one to many dari dua table Satu record tunggal dalam table Master memiliki referensi satu atau lebih record yang ada di dalam table Detail

Kuis Benar Salah


1. Untuk menghubungkan data antara table Master dan Detail maka properties yang harus disetting adalah properties DetailFields pada DataSet

Pilihan Ganda
1. Untuk menghubungkan table Master dengan table Detail maka properties yang harus disetting pada komponen ADOTable adalah a. MasterSource b. MasterFields c. ConnectionString d. IndexFieldName
9-6

Aplikasi Database Master Detail

Politeknik Telkom

Pemrograman Visual

Latihan Buatlah sebuah aplikasi master detail dimana jika pada field VCD diklik maka pada detail akan menampilkan data sewa yang berkaitan dengan VCD tersebut. Contoh tampilan aplikasi master detail pada saat dijalankan adalah seperti pada gambar berikut:

Aplikasi Database Master Detail

9-7

Politeknik Telkom

Pemrograman Visual

10 DELPHI REPORTING MENGGUNAKAN QUICK REPORT

Overview

Dalam Bab ini akan dijelaskan pemakaian quick report untuk membuat dan menampilkan laporan dari Borland Delphi menggunakan Quick Report yang sudah tersedia sebagai komponen Delphi.

Tujuan

1. 2.

Mengetahui cara instalasi dan konfigurasi quick report pada Delphi Mengetahui cara mendesign laporan dengan quickreport
10-1

Delphi Reporting menggunakan Quick Report

Politeknik Telkom

Pemrograman Visual

10.1 Installasi Quick Report


Borland Delphi 7 sebagai versi terbaru memang telah menyertakan Rave Report sebagai pengganti dari Quick Report dalam proses pembuatan laporan. Sehingga pada Component Palette Delphi 7 tidak terdapat tab untuk fasilitas Quick Report. Namun demikian, Quick Report masih tetap bisa digunakan untuk membuat sebuah report/ laporan dengan menambahkan komponennya terlebih dahulu pada Component Palette. Langkah-langkah untuk menambahkan komponen Quick Report pada Component Palette adalah: 1. Pilih menu Component >> Install Packages sehingga muncul kotak dialog Project Options.

Gambar 10-1 - Project Options

2.

Klik button Add sehingga akan tampil kotak dialog Add Design Package.

Delphi Reporting menggunakan Quick Report

10-2

Politeknik Telkom

Pemrograman Visual

Gambar 10-2 - Browse - pencarian library quickreport

3. 4. 5.

Pilih file bernama dclqrt70.bpl yang terdapat pada direktori C:\Program Files\Borland\Delphi7\Bin. Klik button Open untuk mengaktifkannya, maka akan kembali ke kotak dialog sebelumnya. Klik button OK. Komponen QReport akan ditambahkan pada Component Palette seperti pada gambar berikut :

Gambar 10-3 - Component Pallete QReport

Delphi Reporting menggunakan Quick Report

10-3

Politeknik Telkom

Pemrograman Visual

10.2 Komponen Quick Report


QRBand QRSubDetail QRDBText QRExprMemo QRImage QRTextFilter QRGroup QRSysData QRDBRichText QRCompositeReport QRHTMLFilter

QuickRep

QRChildBand QRLabel

QRExpr

QRRichText QRMemo

QRDBImage

QRCSVFilter

QRStringBand

QRShape

QRPreview

Gambar 10-4 - Component Pallete QReport - Detail

Berikut penjelasan mengenai beberapa komponen yang terdapat pada Quick Report : Tabel 10-1 Komponen pada Quick Report Nama No Keterangan Komponen Area untuk menempatkan komponen1 QuickRep komponen laporan. Membagi area besar pada QuickRep menjadi 2 QRBand beberapa area yang lebih kecil. Untuk menampilkan teks statis yang tidak akan 3 QRLabel berubah pada saat laporan dijalankan. QRDBText terhubung ke database untuk 4 QRDBText menampilkan data yang ada pada tabel. 5 QRExpr Untuk menangani operasi kalkulasi. Untuk menampilkan data yang berasal dari 6 QRSysData sistem komputer seperti nomor halaman atau tanggal. Sebuah komponen yang memungkinkan satu 7 QRMemo komponen untuk memiliki banyak baris teks pada form laporan. Mirip dengan QRMemo tapi memungkinkan teks 8 QRRichText untuk diformat.
Delphi Reporting menggunakan Quick Report 10-4

Politeknik Telkom

Pemrograman Visual

9 10 11 12

QRDBRichText QRShape QRImage QRDBImage

Untuk menangani field memo dalam database. Untuk membuat bentuk geometri garis atau bentuk geometri lainnya. Untuk menambahkan suatu image bitmap atau image grafis lainnya pada laporan, seperti logo. Versi Dataware dari QRImage dan digunakan untuk menampilkan image grafis dari file.

10.3 Membuat Laporan dengan Quick Report 10.3.1 Membuat Form Aplikasi Laporan
Komponen-komponen dalam QReport dapat digunakan untuk membangun sebuah laporan yang datanya diambil dari database. Berikut sebuah contoh kasus sederhana untuk membuat laporan dari tabel-tabel yang terdapat pada database Penyewaan VCD yang telah dibuat pada modul sebelumnya. Tapi sebelum memulai pembuatan laporan, isilah tabel-tabel pada database tersebut dengan beberapa data. Langkah-langkah yang harus dilakukan untuk membuat laporan dengan Quick Report : 1. Buat aplikasi baru. 2. Desain form untuk menampilkan dan mencetak laporan seperti pada gambar berikut:

Delphi Reporting menggunakan Quick Report

10-5

Politeknik Telkom

Pemrograman Visual

Gambar 10-5 - Form Navigasi Laporan

Komponen Form Label1 Label2 Label3 Button1 Button2 Button3 Button4 Button5 Button6

Tabel 10-2 Properties FormLaporan Properti Nilai Caption .: Form Laporan Name FormLaporan Caption Laporan Anggota Caption Laporan VCD Caption Laporan Penyewaan Caption Tampil Name ButtonTampilAnggota Caption Cetak Name ButtonCetakAnggota Caption Tampil Name ButtonTampilVCD Caption Cetak Name ButtonCetakVCD Caption Tampil Name ButtonTampilSewa Caption Cetak Name ButtonCetakSewa

3.

Simpan unit form dengan nama UnitLaporan.pas dan project dengan nama ProjectLaporan.dpr.
10-6

Delphi Reporting menggunakan Quick Report

Politeknik Telkom

Pemrograman Visual

4. 5.

6. 7.

Buat sebuah form baru dan simpan dengan nama UnitLaporanAnggota.pas. Atur properti form baru dengan ketentuan sebagai berikut : Name diisi dengan FormLapAnggota Caption diisi dengan .: Form Laporan Anggota Tambahkan komponen ADOQuery dan QuickRep pada FormLapAnggota. Pilih komponen ADOQuery, atur propertinya dengan ketentuan sebagai berikut : Tabel 10-3 Properties ADOQueryLapAnggota Keterangan ADOQueryLapAnggota Koneksikan form dengan database dbSewaVCD.mdb Klik tombol builder () sehingga akan muncul kotak dialog String List Editor, isi dengan sintaks SQL select * from anggota; untuk menampilkan semua data di tabel anggota dan klik button OK. True

Properti Name Connection String SQL

Active 8.

Pilih komponen QuickRep, atur propertinya dengan ketentuan sebagai berikut : Tabel 10-4 Properties QuickRepLapAnggota Properti Keterangan Name QuickRepLapAnggota DataSet ADOQueryLapAnggota Untuk mengkoneksikan QuickRepLapAnggota dengan database melalui ADOQueryLapAnggota. Bands Klik tanda + untuk menampilkan pilihan pengaturan band. HasTitle = True HasDetail = True HasSummary = True

Delphi Reporting menggunakan Quick Report

10-7

Politeknik Telkom

Pemrograman Visual

9.

Pilih komponen TitleBand pada QuickRepLapAnggota, atur propertinya dengan ketentuan sebagai berikut : Tabel 10-5 Properties TitleBandLapAnggota Properti Keterangan Name TitleBandLapAnggota ForceNewPage True Untuk mencetak bagian judul laporan hanya pada halaman pertama. HasChild True Untuk menampilkan band Child (anak) dan menghubungkannya dengan band tersebut. 10. Pilih komponen DetailBand pada QuickRepLapAnggota, atur propertinya dengan ketentuan sebagai berikut : Tabel 10-6 Properties DetailBandLapAnggota Properti Keterangan Name DetailBandLapAnggota 11. Pilih komponen SummaryBand pada QuickRepLapAnggota, atur propertinya dengan ketentuan sebagai berikut : Tabel 10-7 Properties SummaryBandLapAnggota Properti Keterangan Name SummaryBandLapAnggota ForceNewPage True HasChild True Frame Klik tanda +, isi properti DrawTop = True untuk menampilkan garis pada bagian atas dan DrawBottom = True untuk garis bagian bawah. Gunakan properti lain untuk mengatur format garis-garis bingkai. 12. Pilih komponen ChildBand di bawah TitleBand, atur propertinya dengan ketentuan sebagai berikut :

Delphi Reporting menggunakan Quick Report

10-8

Politeknik Telkom

Pemrograman Visual

Properti Name Frame LinkBand

Tabel 10-8 Properties ChildBandLapAnggota Keterangan ChildBandLapAnggota DrawTop = True DrawBottom = True TitleBandLapAnggota Agar band TitleBandLapAnggota dan ChildBandLapAnggota selalu dicetak bersama-sama.

13. Pilih komponen ChildBand di bawah SummaryBand, atur propertinya dengan ketentuan sebagai berikut : Tabel 10-9 Properties ChildBandLapAnggota2 Properti Keterangan Name ChildBandLapAnggota2 LinkBand SummaryBandLapAnggota

Gambar 10-6 Lembar Kerja Laporan

Delphi Reporting menggunakan Quick Report

10-9

Politeknik Telkom

Pemrograman Visual

10.3.2 Mendesain Laporan


Setelah semua komponen yang dibutuhkan dalam pembuatan laporan dimasukkan ke dalam form, langkah selanjutnya adalah mendesain laporan sesuai dengan kebutuhan. Sebagi contoh kasus, buat desain untuk laporan anggota rental VCD ABCD seperti pada gambar berikut :

Gambar 10-7 - Design Laporan

1.

Pilih TitleBand dan isi dengan beberapa komponen dengan properti berikut : Tabel 10-10 Properties TitleBand Komponen Properti Nilai QRLabel Caption LAPORAN ANGGOTA QRLabel Caption RENTAL VCD "ABCD" QRLabel Caption Tanggal : QRSysData Data qrsDate (menampilkan tanggal pencetakan laporan) Pilih ChildBand di bawah TitleBand, isi dengan beberapa komponen dengan properti berikut :

2.

Delphi Reporting menggunakan Quick Report

10-10

Politeknik Telkom

Pemrograman Visual

Komponen QRLabel QRLabel QRLabel QRLabel

Tabel 10-11 Properties ChildBand Properti Nilai Caption No Anggota Caption Nama Anggota Caption Alamat Caption Telepon

Bila perlu ubah nilai properti WordWrap menjadi True dan properti AutoSize menjadi False pada masing-masing komponen di atas untuk mengaktifkan fungsi pelipatan teks. 3. Pilih DetailBand dan isi dengan beberapa komponen dengan properti berikut : Tabel 10-12 Properties DetailBand Komponen Properti Nilai QRDBText DataSet ADOQueryLapAnggota DataField NoAnggota QRDBText DataSet ADOQueryLapAnggota DataField NamaAnggota QRDBText DataSet ADOQueryLapAnggota DataField AlamatAnggota QRDBText DataSet ADOQueryLapAnggota DataField TelpAnggota Pilih SummaryBand dan isi dengan beberapa komponen dengan properti berikut : Tabel 10-13 Properties SummaryBand Komponen Properti Nilai QRLabel Caption Jumlah Anggota QRLabel Name QRLabelJumlahAnggota Pilih ChildBand di bawah SummaryBand, isi dengan beberapa komponen dengan properti berikut :
10-11

4.

5.

Delphi Reporting menggunakan Quick Report

Politeknik Telkom

Pemrograman Visual

Tabel 10-14 Properties ChildBand di bawah SummaryBand Komponen Properti Nilai QRLabel Caption Halaman : QRSysData Data qrsPageNumber (menampilkan nomor halaman) Langkah selanjutnya adalah menata komponen-komponen tersebut sehingga tampak lebih rapi dan menarik. Jika ingin mengubah ukuran kertas dan batas-batas pencetakan, maka double klik komponen QuickRepLapAnggota pada daerah kosong sehingga tampil kotak dialog Report Setting seperti berikut ini :

Delphi Reporting menggunakan Quick Report

10-12

Politeknik Telkom

Pemrograman Visual

Gambar 10-8 - Report Setting

10.3.3 Menulis Kode Program Laporan


Setelah desain laporan terbentuk, langkah berikutnya adalah menuliskan kode program.

10.3.3.1 Kode Program pada FormLapAnggota


1. Pilih objek QuickRepLapAnggota, pilih event BeforePrint dan tuliskan kode program berikut :

Delphi Reporting menggunakan Quick Report

10-13

Politeknik Telkom

Pemrograman Visual

procedure TFormLaporanSewa.QuickRepSewaBeforePrint(Sender: TCustomQuickRep; var PrintReport: Boolean); begin halaman:=0; jumlahAnggota:=0; end; Kode progam di atas berfungsi untuk inisialisasi awal variabel sebelum memulai pencetakan laporan. Kedua variabel tersebut bersifat global, oleh karena itu variabel tersebut harus dideklarasikan terlebih dulu pada bagian Var : var FormLaporanSewa: TFormLaporanSewa; Halaman, jumlahAnggota : integer; 2. Pilih objek DetailBandLapAnggota, pilih event BeforePrint dan tuliskan kode program berikut : procedure TFormLapAnggota.DetailBandLapAnggotaBeforePrint( Sender: TQRCustomBand; var PrintBand: Boolean); begin jumlahAnggota:=jumlahAnggota+1; end; Kode progam jumlahAnggota:=jumlahAnggota+1; menyatakan proses menghitung jumlah anggota melalui penambahan nilai pada variabel jumlahAnggota dengan 1 sebelum mencetak laporan. 3. Pilih objek SummaryBandLapAnggota, pilih event BeforePrint dan tuliskan kode program berikut: procedure TFormLapAnggota.SummaryBandLapAnggotaBeforePrint( Sender: TQRCustomBand; var PrintBand: Boolean); begin QRLabelJumlahAnggota.Caption:=IntToStr(jumlahAnggota); end;
10-14

Delphi Reporting menggunakan Quick Report

Politeknik Telkom

Pemrograman Visual

Kode program QRLabelJumlahAnggota.Caption:=IntToStr(jumlahAnggota); menyatakan pengisian nilai pada komponen QRLabelJumlahAnggota dengan nilai dari variabel jumlahAnggota.

10.3.3.2 Kode Program pada FormLaporan


1. Pilih menu File >> Use Unit lalu pilih UnitLaporanAnggota sehingga muncul kode program seperti di bawah ini : implementation uses UnitLaporanAnggota; Kode program di atas berfungsi untuk menghubungkan UnitLaporan dengan UnitLaporanAnggota. 2. Pilih objek ButtonTampilAnggota, pilih event OnClick dan tuliskan kode program berikut : procedure TFormLaporan.ButtonTampilAnggotaClick(Sender: TObject); begin FormLapAnggota.ADOQueryLapAnggota.SQL.Clear; FormLapAnggota.ADOQueryLapAnggota.SQL.Add('select * from anggota'); FormLapAnggota.ADOQueryLapAnggota.Prepared:=true; FormLapAnggota.ADOQueryLapAnggota.Open; FormLapAnggota.QuickRepLapAnggota.Preview; end; Berikut penjelasan mengenai kode program di atas : FormLaporanSewa.ADOQueryLapAnggota.SQL.Clear; Untuk mengosongkan sintaks SQL yang terdapat pada ADOQueryLapAnggota sebelumnya. FormLapAnggota.ADOQueryLapAnggota.SQL.Add('select * from anggota'); Menulis sintaks SQL baru pada ADOQueryLapAnggota untuk menampilkan semua data di tabel anggota.
Delphi Reporting menggunakan Quick Report 10-15

Politeknik Telkom

Pemrograman Visual

FormLaporanSewa.ADOQueryLapAnggota.Prepared:=true; FormLaporanSewa.ADOQueryLapAnggota.Open; Mempersiapkan dan membuka query ADOQueryLapAnggota. FormLaporanSewa.QuickRepSewa.Preview; Menampilkan hasil laporan 3. Pilih objek ButtonCetakAnggota, pilih event OnClick dan tuliskan kode program berikut : procedure TFormLaporan.ButtonCetakAnggotaClick(Sender: TObject); begin FormLapAnggota.QuickRepLapAnggota.Print; end; Kode program FormLapAnggota.QuickRepLapAnggota.Print; berfungsi untuk mencetak laporan. Lakukan langkah yang sama untuk membuat laporan dari tabel VCD dan Sewa. Simpan project laporan yang telah dibuat dan jalankan. Tampilan saat aplikasi dijalankan :

Gambar 10-9 - Form Navigasi Laporan Running

Contoh tampilan laporan anggota ketika button Tampil diklik :

Delphi Reporting menggunakan Quick Report

10-16

Politeknik Telkom

Pemrograman Visual

Gambar 10-10 - Display Report

Delphi Reporting menggunakan Quick Report

10-17

Politeknik Telkom

Pemrograman Visual

Rangkuman
1. 2. Untuk membuat sebuah laporan dengan Quick Report, maka terlebih dahulu harus menambahkan komponennya pada Component Palette. Langkah-langkah yang dapat dilakukan untuk membuat laporan dengan Quick Report adalah membuat form aplikasi, mendesain laporan, dan menuliskan kode program.

Latihan
Buatlah sebuah aplikasi untuk menampilkan laporan seperti pada gambar berikut :

a.

Jika button Tampil diklik maka akan menampilkan laporan penyewaan VCD. Contoh tampilan laporan penyewaan VCD seperti pada gambar berikut :

Delphi Reporting menggunakan Quick Report

10-18

Politeknik Telkom

Pemrograman Visual

b. c.

Jika button Cetak diklik maka secara otomatis laporan akan di-print. Jika button Tutup diklik maka akan keluar dari aplikasi.

Delphi Reporting menggunakan Quick Report

10-19

Politeknik Telkom

Pemrograman Visual

11 TUTORIAL PEMBUATAN APLIKASI RENTAL VCD

Overview

Dalam Bab ini akan dijelaskan langkah demi langkah pembuatan sebuah aplikasi system informasi Rental VCD dari mulai perancangan database mengunakan Access, perancangan form, perancangan report menggunakan Quick Report, dan implementasi object Pascal melalui kode-kode program di dalam Dephi.

Tujuan

1.

Mahasiswa mampu mempraktekan pembuatan aplikasi yang lengkap menggunakan Delphi.


11-1

Tutorial Pembuatan Aplikasi Rental VCD

Politeknik Telkom

Pemrograman Visual

11.1 Pengantar Aplikasi Rental VCD


Aplikasi rental VCD ini memiliki fitur-fitur sebagai berikut: a. Memiliki Form Manajemen Anggota b. Memiliki Form Manajemen VCD c. Memiliki Form Transaksi Peminjaman d. Report Transaksi Peminjaman Pembuatan aplikasi ini akan diberikan dalam langkah demi langkah tutorial yang dimulai dengan perancangan dan pembuatan database rental vcd dengan menggunakan MS Access. Dilanjutkan dengan perancangan dan pembuatan Form di Delphi dan terkahir perancangan dan pembuatan report di Delphi.

11.2 Perancangan dan Pembuatan Database Rental VCD

Gambar 11-1 Tampilan Awal MS Access 2007

Langkah-langkah pembuatan database: 1. Buatlah sebuah database menggunakan MS Access 2007

Tutorial Pembuatan Aplikasi Rental VCD

11-2

Politeknik Telkom

Pemrograman Visual

Gambar 11-2 Membuat Database Baru 2. 3. Klik tanda orb (start) lalu klik New Pada bagian Blank Database sebelah klik tombol folder di sebelah kanan

Gambar 11-3 Membuat Database Baru 4. Beri nama database tersebut DBRentalVCD.mdb

Gambar 11-4 Memilih Format Access 2003 dan memasukkan nama


Tutorial Pembuatan Aplikasi Rental VCD 11-3

Politeknik Telkom

Pemrograman Visual

5. 6. 7.

Pilih format Microsoft Access 2003 pada dialog box tersebut. Tambahkan 4 table yaitu Anggota, VCD, PenyewaanDetil, dan PenyewaanMaster Tambahkan Field-field ke dalam field tersebut Tabel 11-1 Deskripsi Tabel Anggota Tabel Anggota ID Nama Alamat Telepon NoKTP Type Data AutoNumber Text Text Text Text Tabel 11-2 Deskripsi Tabel VCD Tabel VCD ID Judul Tahun Kategori Sewa BatasSewa Denda Type Data AutoNumber Text Date/Time Text Currency Number Currency

Tabel 11-3 Deskripsi Tabel Penyewaan Master Tabel Penyewaan Master ID TanggalPenyewaan IDAnggota TotalSewa TotalDenda
Tutorial Pembuatan Aplikasi Rental VCD

Type Data AutoNumber Date/Time Number Currency Currency


11-4

Politeknik Telkom

Pemrograman Visual

Tabel 11-4 Deskripsi Tabel PenyewaanDetil Tabel PenyewaanDetil ID TransaksiID IDVCD TanggalPengembalian Type Data AutoNumber Number Number Date/Time

Gambar 11-5 Create new table

Gambar 11-6 Memberi nama pada table baru

Tutorial Pembuatan Aplikasi Rental VCD

11-5

Politeknik Telkom

Pemrograman Visual

Gambar 11-7 Detil Table Anggota

Gambar 11-8 Detil Tabel VCD

Gambar 11-9 Detil Tabel PenyewaanDetil

Tutorial Pembuatan Aplikasi Rental VCD

11-6

Politeknik Telkom

Pemrograman Visual

Gambar 11-10 - Detil Tabel PenyewaanDetil 8. Buatlah relationship untuk semua table tersebut

Gambar 11-11 Membuat Relationship

Tutorial Pembuatan Aplikasi Rental VCD

11-7

Politeknik Telkom

Pemrograman Visual

Gambar 11-12 Memilih table yang akan digunakan di relationship

Gambar 11-13 - Relationship Anggota - PenyewaanMaster

Tutorial Pembuatan Aplikasi Rental VCD

11-8

Politeknik Telkom

Pemrograman Visual

Gambar 11-14 Relationship PenyewaanDetil - PenyewaanMaster

Gambar 11-15 - Relationship VCD - PenyewaanDetil

Tutorial Pembuatan Aplikasi Rental VCD

11-9

Politeknik Telkom

Pemrograman Visual

Gambar 11-16 - Menghubungkan dua field dalam sebuah relasi

Gambar 11-17 - Relationship Complete

Tutorial Pembuatan Aplikasi Rental VCD

11-10

Politeknik Telkom

Pemrograman Visual

Gambar 11-18 - Database yang saling terhubung dan detil

Tutorial Pembuatan Aplikasi Rental VCD

11-11

Politeknik Telkom

Pemrograman Visual

11.3 Merancang dan Membuat Form menggunakan Borland Delphi

Gambar 11-19 - Membuat aplikasi baru

Gambar 11-20 - Menambahkan beberapa form baru

Tutorial Pembuatan Aplikasi Rental VCD

11-12

Politeknik Telkom

Pemrograman Visual

Gambar 11-21 - Form Utama Komponen Form Tabel 11-5 Komponen frmUtama Properti Nilai Caption .: Form Utama Name frmUtama FormStyle fsMDIForm Caption RENTAL VCD MERAH Name MainMenu1

Label1 MainMenu1

Tutorial Pembuatan Aplikasi Rental VCD

11-13

Politeknik Telkom

Pemrograman Visual

Gambar 11-22 - Edit Main Menu Komponen Menu MainMenu1 TMenuItem Tabel 11-6 Properties MainMenu1 Properti Nilai Name Caption Name Parent Caption Name Parent Caption Name Parent Caption Name Parent ShortCut Caption Name MainMenu1 Program Program1 MainMenu1 Exit Exit1 Program1 Master Master1 MainMenu1 VCD VCD1 Master1 F3 Anggota Anggota1
11-14

TMenuItem

TMenuItem

TMenuItem

TMenuItem

Tutorial Pembuatan Aplikasi Rental VCD

Politeknik Telkom

Pemrograman Visual

TMenuItem

TMenuItem

TMenuItem

TMenuItem

TMenuItem

TMenuItem

Parent ShortCut Caption Name Parent Caption Name Parent ShortCut Caption Name Parent ShortCut Caption Name Parent Caption Name Parent Caption Name Parent

Master1 F4 Transaksi Transaksi1 MainMenu1 Peminjaman Peminjaman1 Transaksi1 F5 Laporan Laporan1 MainMenu1 F6 PeminjamanVCD PeminjamanVCD1 Laporan1 Bantuan Bantuan1 MainMenu1 Tentang Tentang1 MainMenu1

Tutorial Pembuatan Aplikasi Rental VCD

11-15

Politeknik Telkom

Pemrograman Visual

Gambar 11-23 - Properties Windows Form Utama

Tutorial Pembuatan Aplikasi Rental VCD

11-16

Politeknik Telkom

Pemrograman Visual

Gambar 11-24 - Form VCD Komponen TForm Tabel 11-7 Properties frmVCD Properti Caption Form VCD Name frmVCD FormStyle fsMDIChild Caption Judul Caption ID VCD Caption Name lblIDVCD Caption Kategori Caption Tahun Caption Sewa Rp Caption Batas Sewa Nilai

TLabel TLabel TLabel TLabel TLabel TLabel TLabel

Tutorial Pembuatan Aplikasi Rental VCD

11-17

Politeknik Telkom

Pemrograman Visual

TLabel TEdit TEdit TEdit TEdit TEdit TComboBox

Caption Name Name Name Name Name Name Items [list]

TButton TButton TButton TButton TButton TDBGrid

Caption Name Caption Name Caption Name Caption Name Caption Name Name

Denda Rp EditJudulVCD EditTahunVCD EditSewa EditBatasSewa EditDenda cmbKategori [ Action Animasi Drama Fiksi Horor Komedi Thriller ] Tambah btnTambah Edit btnEdit Hapus btnHapus Simpan btnSimpan Batal btnBatal DBGrid1

Tutorial Pembuatan Aplikasi Rental VCD

11-18

Politeknik Telkom

Pemrograman Visual

Gambar 11-25 - Form Anggota Tabel 11-8 Properties Form Anggota Properti Nilai Komponen TForm Caption Name FormStyle Caption Caption Caption Caption Caption Form VCD frmVCD fsMDIChild NoAnggota Nama Alamat Telepon KTP
11-19

TLabel TLabel TLabel TLabel TLabel

Tutorial Pembuatan Aplikasi Rental VCD

Politeknik Telkom

Pemrograman Visual

TEdit TEdit TEdit TEdit TButton TButton TButton TButton TButton TDBGrid

Name Name Name Name Caption Name Caption Name Caption Name Caption Name Caption Name Name

EditNamaAnggota EditAlamatAnggota EditTelepon EditKTP Tambah btnTambah Edit btnEdit Hapus btnHapus Simpan btnSimpan Batal btnBatal DBGrid1

Tutorial Pembuatan Aplikasi Rental VCD

11-20

Politeknik Telkom

Pemrograman Visual

Gambar 11-26 - Properties Windows Form Anggota

Tutorial Pembuatan Aplikasi Rental VCD

11-21

Politeknik Telkom

Pemrograman Visual

Gambar 11-27 Form Transaksi Penyewaan Tabel 11-9 Properties Form Penyewaan Properti Nilai Caption Form VCD Name frmVCD FormStyle fsMDIChild Caption Data Peminjam Caption Data VCD Caption Tanggal Sewa Caption Kembali Tanggal Caption Cari Anggota Caption Filter VCD
11-22

Komponen TForm

TGroupBox TGroupBox TLabel TLabel TLabel TLabel

Tutorial Pembuatan Aplikasi Rental VCD

Politeknik Telkom

Pemrograman Visual

TLabel TLabel TLabel TLabel TLabel TLabel TLabel TRadioButton TRadioButton TRadioButton TRadioButton TRadioButton TRadioButton TDBGrid TListBox TEdit TEdit TEdit TButton TButton

Caption Caption Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Name Name Name Name Name Caption Name Caption Name

Harga Sewa Rp. Transaksi Penyewaan 00/00/00 lblTanggalSewa 00/00/00 lblTanggalSewa lblIDAnggota lblNamaAnggota 0 lblHargaSewa ID rbNoAnggota Nama rbNamaAnggota KTP rbKTPAnggota ID rbIDVCD Judul rbJudul Kategori rbKategori DBGridDaftarVCD ListBoxPinjam EditAlamatAnggota EditTelepon EditKTP btnPilih btnHapus Simpan btnSimpan
11-23

Tutorial Pembuatan Aplikasi Rental VCD

Politeknik Telkom

Pemrograman Visual

TButton TDBGrid

Caption Name Name

Batal btnBatal DBGrid1

Gambar 11-28 Form Laporan Transaksi Peminjaman Tabel 11-10 Properties Form Laporan Transaksi Peminjaman Komponen Properti Nilai TForm Caption Form Laporan Peminjaman Name frmLaporanPeminjaman FormStyle fsMDIChild TQuickReport Name QRPeminjaman HasDetail True HasTitle True QRLabel Caption Tanggal
Tutorial Pembuatan Aplikasi Rental VCD 11-24

Politeknik Telkom

Pemrograman Visual

QRLabel QRLabel QRLabel QRLabel QRLabel QRLabel QRLabel QRLabel QRLabel QRLabel QRLabel QRLabel TQRSysData TQRDBText

Caption Caption Caption Caption Caption Caption Caption Caption Caption Caption Caption Caption Data Name DataSet Data Field Name DataSet Data Field Name DataSet Data Field Name DataSet Data Field Name DataSet Data Field Name DataSet Data Field Name

TQRDBText

TQRDBText

TQRDBText

TQRDBText

TQRDBText

TQRDBText

LAPORAN DETIL TRANSAKSI PEMINJAMAN RENTAL VCD MERIAH ID Transaksi ID Anggota Nama Anggota Judul Film Harga Sewa Tanggal Kembali Denda Rp. Rp. Total Pendapatan Sewa Rp. qrsDateTime QRDBIDTransaksi DM.ADOQueryLaporanPeminjaman ID Transaksi QRDBAnggota DM.ADOQueryLaporanPeminjaman ID Anggota QRDBNamaAnggota DM.ADOQueryLaporanPeminjaman Nama Anggota QRDBJudulFilm DM.ADOQueryLaporanPeminjaman ID Judul Film QRDBHargaSewa DM.ADOQueryLaporanPeminjaman Harga Sewa QRDBTanggalKembali DM.ADOQueryLaporanPeminjaman Tanggal Kembali QRDBDenda
11-25

Tutorial Pembuatan Aplikasi Rental VCD

Politeknik Telkom

Pemrograman Visual

DataSet Data Field

DM.ADOQueryLaporanPeminjaman Denda

Gambar 11-29 Install Quickreport

Gambar 11-30 Menambah Package dari file bpl (Borland Package Library)

Tutorial Pembuatan Aplikasi Rental VCD

11-26

Politeknik Telkom

Pemrograman Visual

Gambar 11-31 Memilih file dclqrt70.bpl

Tutorial Pembuatan Aplikasi Rental VCD

11-27

Politeknik Telkom

Pemrograman Visual

Gambar 11-32 Menu Use Unit untuk menggunakan Unit pada form utama

Gambar 11-33 Daftar Unit yang akan digunakan

Tutorial Pembuatan Aplikasi Rental VCD

11-28

Politeknik Telkom

Pemrograman Visual

Gambar 11-34 Representasi Sintaksis Uses pada Unit

Gambar 11-35 Click Project Options untuk menambahkan form child MDI sehingga ditampilkan hanya ketika di akses melalui form utama

Tutorial Pembuatan Aplikasi Rental VCD

11-29

Politeknik Telkom

Pemrograman Visual

Gambar 11-36 Daftar Form-Form yang Tersedia dalam Project

Gambar 11-37 Daftar Form-Form yang telah dipilih

Tutorial Pembuatan Aplikasi Rental VCD

11-30

Politeknik Telkom

Pemrograman Visual

Gambar 11-38 Menu create new Data Module

Gambar 11-39 Data Access component: ADOConnection, ADOQuery, dan ADODataSet

Tutorial Pembuatan Aplikasi Rental VCD

11-31

Politeknik Telkom

Pemrograman Visual

Tabel 11-11 Properties ADOConnRentalVCD Properti Keterangan Name ADOConnRentalVCD ConnectionString Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=C:\DBRentalVCD.mdb;Mode=Share Deny None;Extended Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False Connected True LoginPrompt False Mode cmShareDenyNone Provider Microsoft.Jet.OLEDB.4.0 Tabel 11-12 Properties ADOQueryVCD Properti Keterangan Name ADOQueryVCD Connection ADOConnRentalVCD CursorType ctStatic Active True SQL select * from vcd Tabel 11-13 Properties DSVCD Properti Name Dataset Keterangan DSVCD ADOQueryVCD
11-32

Tutorial Pembuatan Aplikasi Rental VCD

Politeknik Telkom

Pemrograman Visual

Tabel 11-14 Properties DSAnggota Properti Keterangan Name DSAnggota Dataset ADOQueryAnggota Tabel 11-15 Properties DSPenyewaan Properti Keterangan Name DSPenyewaan Dataset ADOQueryPenyewaan Tabel 11-16 Properties ADOQueryAnggota Properti Keterangan Name ADOQueryAnggota Connection ADOConnRentalVCD CursorType ctStatic Active True SQL select * from anggota Tabel 11-17 Properties ADOQueryPenyewaan Properti Keterangan Name ADOQueryPenyewaan Connection ADOConnRentalVCD CursorType ctStatic Active True SQL select * from penyewaanmaster

Tutorial Pembuatan Aplikasi Rental VCD

11-33

Politeknik Telkom

Pemrograman Visual

Gambar 11-40 Properties Window ADOConnRentalVCD

Tutorial Pembuatan Aplikasi Rental VCD

11-34

Politeknik Telkom

Pemrograman Visual

Gambar 11-41 ConnectionString Dialog

Gambar 11-42 Data Link Properties - ConnectionString Builder Dialog

Tutorial Pembuatan Aplikasi Rental VCD

11-35

Politeknik Telkom

Pemrograman Visual

Gambar 11-43 Data Link Properties Test Connection Success

Gambar 11-44 Memasukkan string SQL pada property SQL ADOQueryLaporanPeminjaman

Tutorial Pembuatan Aplikasi Rental VCD

11-36

Politeknik Telkom

Pemrograman Visual

11.4 Menulis Kode Program VCD Rental

Gambar 11-45 Cara 1 Mengakses object untuk memasukkan code

Gambar 11-46 Cara 2 Men-generate procedure baru dengan menggunakan event OnClick pada properties

Tutorial Pembuatan Aplikasi Rental VCD

11-37

Politeknik Telkom

Pemrograman Visual

Gambar 11-47 Membuat procedure baru dengan meng-klik ganda pada button 11.4.1.1 Kode Program pada Form Utama unit UnitUtama; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, StdCtrls; type TfrmUtama = class(TForm) MainMenu1: TMainMenu; Program1: TMenuItem; Keluar1: TMenuItem; Master1: TMenuItem;
Tutorial Pembuatan Aplikasi Rental VCD 11-38

Politeknik Telkom

Pemrograman Visual

Anggota1: TMenuItem; VCD1: TMenuItem; ransaksi1: TMenuItem; Penyewaan1: TMenuItem; Laporan1: TMenuItem; LaporanPeminjamanVCD1: TMenuItem; LaporanPengembalianVCD: TMenuItem; Bantuan1: TMenuItem; About: TMenuItem; LaporanPendapatan: TMenuItem; Label1: TLabel; procedure Keluar1Click(Sender: TObject); procedure Anggota1Click(Sender: TObject); procedure VCD1Click(Sender: TObject); procedure Penyewaan1Click(Sender: TObject); procedure LaporanPeminjamanVCD1Click(Sender: TObject); procedure LaporanPendapatanClick(Sender: TObject); procedure LaporanPengembalianVCDClick(Sender: TObject); procedure AboutClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var frmUtama: TfrmUtama; implementation uses DataModule, UnitAnggota, UnitTransaksi, UnitVCD, UnitAbout, UnitLaporanPeminjaman, UnitLaporanPendapatan, UnitLaporanPengembalian, Math, UnitKategori;

Tutorial Pembuatan Aplikasi Rental VCD

11-39

Politeknik Telkom

Pemrograman Visual

{$R *.dfm} procedure TfrmUtama.Keluar1Click(Sender: TObject); begin Close; end; procedure TfrmUtama.Anggota1Click(Sender: TObject); begin Application.CreateForm(TfrmAnggota,frmAnggota); Anggota1.Enabled := false; end; procedure TfrmUtama.VCD1Click(Sender: TObject); begin Application.CreateForm(TfrmVCD,frmVCD); VCD1.Enabled := false; end; procedure TfrmUtama.Penyewaan1Click(Sender: TObject); begin Application.CreateForm(TfrmTransaksi,frmTransaksi); Penyewaan1.Enabled := false; end; procedure TfrmUtama.LaporanPeminjamanVCD1Click(Sender: TObject); begin frmLaporanPeminjaman.QRPeminjaman.Prepare; frmLaporanPeminjaman.QuickRep1.Preview; LaporanPeminjamanVCD1.Enabled := false; end; procedure TfrmUtama.LaporanPendapatanClick(Sender: TObject); begin
Tutorial Pembuatan Aplikasi Rental VCD 11-40

Politeknik Telkom

Pemrograman Visual

Application.CreateForm(TfrmLaporanPendapatan,frmLaporanPendapatan); LaporanPendapatan.Enabled := false; end; procedure TfrmUtama.LaporanPengembalianVCDClick(Sender: TObject); begin Application.CreateForm(TfrmLaporanPengembalian,frmLaporanPengembalian ); LaporanPengembalianVCD.Enabled := false; end; procedure TfrmUtama.AboutClick(Sender: TObject); begin Application.CreateForm(TAboutBox,AboutBox); About.Enabled := false; end; end. 11.4.1.2 Kode Program pada Form Anggota unit UnitAnggota; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids, DBGrids; type TfrmAnggota = class(TForm) DBGrid1: TDBGrid; btnTambah: TButton; btnEdit: TButton; btnHapus: TButton; btnSimpan: TButton; EditNamaAnggota: TEdit;
Tutorial Pembuatan Aplikasi Rental VCD 11-41

Politeknik Telkom

Pemrograman Visual

EditAlamatAnggota: TEdit; EditTeleponAnggota: TEdit; Label1: TLabel; Nama: TLabel; EditKTPAnggota: TEdit; Alamat: TLabel; Label4: TLabel; Label5: TLabel; lblNoAnggota: TLabel; btnBatal: TButton; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormShow(Sender: TObject); procedure DBGrid1CellClick(Column: TColumn); procedure btnTambahClick(Sender: TObject); procedure btnEditClick(Sender: TObject); procedure btnBatalClick(Sender: TObject); procedure btnSimpanClick(Sender: TObject); procedure btnHapusClick(Sender: TObject); private { Private declarations } sqlstring : string; db_manipulation_mode : string; public { Public declarations } procedure refresh_table_anggota(); procedure tampil_data_anggota(); procedure clear_all(); end; var frmAnggota: TfrmAnggota; implementation uses UnitUtama, DataModule, ADODB, DB; {$R *.dfm} procedure TfrmAnggota.refresh_table_anggota(); begin
Tutorial Pembuatan Aplikasi Rental VCD 11-42

Politeknik Telkom

Pemrograman Visual

sqlstring := 'select * from anggota'; with DM.ADOQueryAnggota do begin Close; SQL.Clear; SQL.Add(sqlstring); Open; end; end; procedure TfrmAnggota.tampil_data_anggota(); begin refresh_table_anggota; with DM.ADOQueryAnggota do begin if (IsEmpty = True) then begin ShowMessage('Belum ada anggota yang terdaftar dalam system'); end else begin lblNoAnggota.Caption := FieldByName('ID').AsString; EditNamaAnggota.Text := FieldByName('nama').AsString; EditAlamatAnggota.Text := FieldByName('alamat').AsString; EditTeleponAnggota.Text := FieldByName('telepon').AsString; EditKTPAnggota.Text := FieldByName('noktp').AsString; end; end; end; procedure TfrmAnggota.clear_all(); begin lblNoAnggota.Caption := ''; EditNamaAnggota.Clear; EditAlamatAnggota.Clear; EditTeleponAnggota.Clear; EditKTPAnggota.Clear; end;

Tutorial Pembuatan Aplikasi Rental VCD

11-43

Politeknik Telkom

Pemrograman Visual

procedure TfrmAnggota.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; frmUtama.Anggota1.Enabled := True; end; procedure TfrmAnggota.FormShow(Sender: TObject); begin tampil_data_anggota; end; procedure TfrmAnggota.DBGrid1CellClick(Column: TColumn); begin tampil_data_anggota; end; procedure TfrmAnggota.btnTambahClick(Sender: TObject); begin clear_all; btnEdit.Enabled := false; btnHapus.Enabled := false; btnTambah.Enabled := false; EditNamaAnggota.SetFocus; db_manipulation_mode := 'insert'; end; procedure TfrmAnggota.btnEditClick(Sender: TObject); begin if (DM.ADOQueryAnggota.IsEmpty = False) and (lblNoAnggota.Caption <> '') then begin btnTambah.Enabled := false; btnHapus.Enabled := false; btnEdit.Enabled := false; EditNamaAnggota.SetFocus; db_manipulation_mode := 'update'; end else
Tutorial Pembuatan Aplikasi Rental VCD 11-44

Politeknik Telkom

Pemrograman Visual

begin ShowMessage('Tidak ada data yang diedit!'); end; end; procedure TfrmAnggota.btnBatalClick(Sender: TObject); begin clear_all; btnTambah.Enabled := true; btnEdit.Enabled := true; btnHapus.Enabled := true; refresh_table_anggota; end; procedure TfrmAnggota.btnSimpanClick(Sender: TObject); begin if (db_manipulation_mode = 'insert') then begin sqlstring := 'insert into anggota(nama, alamat, telepon, noktp)' + ' values( '+QuotedStr(EditNamaAnggota.Text)+', '+QuotedStr(EditAlamatAnggota.Text)+', '+QuotedStr(EditTeleponAnggota.Text)+', '+QuotedStr(EditKTPAnggota.Text)+')'; end else if (db_manipulation_mode = 'update') then begin sqlstring := 'update anggota set nama = '+ QuotedStr(EditNamaAnggota.Text)+', '+ ' alamat = '+ QuotedStr(EditAlamatAnggota.Text)+', '+ ' telepon = '+ QuotedStr(EditTeleponAnggota.Text)+', '+ ' noktp '+ QuotedStr(EditKTPAnggota.Text) + ' where ID = '+QuotedStr(lblNoAnggota.Caption); end; with DM.ADOQueryAnggota do begin Close; SQL.Clear;
Tutorial Pembuatan Aplikasi Rental VCD 11-45

Politeknik Telkom

Pemrograman Visual

SQL.Add(sqlstring); ExecSQL; end; refresh_table_anggota; end; procedure TfrmAnggota.btnHapusClick(Sender: TObject); begin if (lblNoAnggota.Caption <> '') then begin if (MessageDlg('Yakin akan menghapus data ini?', mtConfirmation, mbOKCancel, 0) = mrOk) then begin with (DM.ADOQueryAnggota) do begin sqlstring := 'delete from anggota where ID = '+lblNoAnggota.Caption; Close; SQL.Clear; SQL.Add(sqlstring); ExecSQL; end; refresh_table_anggota; end; end; end; end. 11.4.1.3 Kode Program pada Form VCD unit UnitVCD; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids, DBGrids; type
Tutorial Pembuatan Aplikasi Rental VCD 11-46

Politeknik Telkom

Pemrograman Visual

TfrmVCD = class(TForm) EditJudulVCD: TEdit; editTahunVCD: TEdit; Label1: TLabel; Nama: TLabel; editSewa: TEdit; Alamat: TLabel; Label4: TLabel; Label5: TLabel; lblIDVCD: TLabel; DBGrid1: TDBGrid; btnTambah: TButton; btnEdit: TButton; btnHapus: TButton; btnSimpan: TButton; btnBatal: TButton; cmbKategori: TComboBox; Label2: TLabel; editBatasSewa: TEdit; Label3: TLabel; editDenda: TEdit; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure btnBatalClick(Sender: TObject); procedure btnSimpanClick(Sender: TObject); procedure btnHapusClick(Sender: TObject); procedure btnEditClick(Sender: TObject); procedure btnTambahClick(Sender: TObject); procedure DBGrid1CellClick(Column: TColumn); procedure FormShow(Sender: TObject); procedure editTahunVCDKeyPress(Sender: TObject; var Key: Char); procedure editSewaKeyPress(Sender: TObject; var Key: Char); procedure editBatasSewaKeyPress(Sender: TObject; var Key: Char); procedure editDendaKeyPress(Sender: TObject; var Key: Char); private
Tutorial Pembuatan Aplikasi Rental VCD 11-47

Politeknik Telkom

Pemrograman Visual

{ Private declarations } sqlstring : string; db_manipulation_mode : string; public { Public declarations } procedure refresh_table_vcd(); procedure tampil_data_vcd(); procedure clear_all(); end; var frmVCD: TfrmVCD; implementation uses UnitUtama, DataModule; {$R *.dfm} procedure TfrmVCD.refresh_table_vcd(); begin sqlstring := 'select * from vcd'; with DM.ADOQueryVCD do begin Close; SQL.Clear; SQL.Add(sqlstring); Open; end; end; procedure TfrmVCD.tampil_data_vcd(); begin refresh_table_vcd; with DM.ADOQueryVCD do
Tutorial Pembuatan Aplikasi Rental VCD 11-48

Politeknik Telkom

Pemrograman Visual

begin if (IsEmpty = True) then begin ShowMessage('Belum ada VCD yang terdaftar dalam system'); end else begin lblIDVCD.Caption := FieldByName('ID').AsString; EditJudulVCD.Text := FieldByName('judul').AsString; cmbKategori.Text := FieldByName('kategori').AsString; EditTahunVCD.Text := FieldByName('tahun').AsString; EditSewa.Text := FieldByName('sewa').AsString; EditBatasSewa.Text := FieldByName('batassewa').AsString; EditDenda.Text := FieldByName('denda').AsString; end; end; end; procedure TfrmVCD.clear_all(); begin lblIDVCD.Caption := ''; EditJudulVCD.Clear; EditTahunVCD.Clear; EditSewa.Clear; EditBatasSewa.Clear; EditDenda.Clear; end; procedure TfrmVCD.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; frmUtama.VCD1.Enabled := True; end;
Tutorial Pembuatan Aplikasi Rental VCD 11-49

Politeknik Telkom

Pemrograman Visual

procedure TfrmVCD.btnBatalClick(Sender: TObject); begin clear_all; btnTambah.Enabled := true; btnEdit.Enabled := true; btnHapus.Enabled := true; refresh_table_VCD; end; procedure TfrmVCD.btnSimpanClick(Sender: TObject); begin if (db_manipulation_mode = 'insert') then begin sqlstring := 'insert into VCD(judul, Kategori, tahun, sewa, batassewa, denda)' + ' values( '+QuotedStr(EditJudulVCD.Text)+' ,'+ QuotedStr(cmbKategori.Text)+' ,'+ EditTahunVCD.Text+' ,'+ EditSewa.Text+' ,'+ EditBatasSewa.Text+' ,'+ EditDenda.Text+' )'; end else if (db_manipulation_mode = 'update') then begin sqlstring := 'update VCD set judul = '+ QuotedStr(EditJudulVCD.Text)+', '+ ' Kategori = '+ QuotedStr(cmbKategori.Text)+' ,'+ ' tahun = '+ EditTahunVCD.Text+', '+ ' sewa = '+ EditSewa.Text+', '+ ' batassewa = '+ EditBatasSewa.Text+', '+ ' denda = '+ EditDenda.Text+', '+ ' where ID = '+QuotedStr(lblIDVCD.Caption); end;

Tutorial Pembuatan Aplikasi Rental VCD

11-50

Politeknik Telkom

Pemrograman Visual

with DM.ADOQueryVCD do begin Close; SQL.Clear; SQL.Add(sqlstring); ExecSQL; end; refresh_table_VCD; end; procedure TfrmVCD.btnHapusClick(Sender: TObject); begin if (lblIDVCD.Caption <> '') then begin if (MessageDlg('Yakin akan menghapus data ini?', mtConfirmation, mbOKCancel, 0) = mrOk) then begin with (DM.ADOQueryVCD) do begin sqlstring := 'delete from VCD where ID = '+lblIDVCD.Caption; Close; SQL.Clear; SQL.Add(sqlstring); ExecSQL; end; refresh_table_VCD; end; end; end; procedure TfrmVCD.btnEditClick(Sender: TObject); begin if (DM.ADOQueryVCD.IsEmpty = False) and (lblIDVCD.Caption <> '') then begin
Tutorial Pembuatan Aplikasi Rental VCD 11-51

Politeknik Telkom

Pemrograman Visual

btnTambah.Enabled := false; btnHapus.Enabled := false; btnEdit.Enabled := false; EditJudulVCD.SetFocus; db_manipulation_mode := 'update'; end else begin ShowMessage('Tidak ada data yang diedit!'); end; end; procedure TfrmVCD.btnTambahClick(Sender: TObject); begin clear_all; btnEdit.Enabled := false; btnHapus.Enabled := false; btnTambah.Enabled := false; EditJudulVCD.SetFocus; db_manipulation_mode := 'insert'; end; procedure TfrmVCD.DBGrid1CellClick(Column: TColumn); begin tampil_data_vcd; end; procedure TfrmVCD.FormShow(Sender: TObject); begin tampil_data_vcd; end; procedure TfrmVCD.editTahunVCDKeyPress(Sender: TObject; var Key: Char);
Tutorial Pembuatan Aplikasi Rental VCD 11-52

Politeknik Telkom

Pemrograman Visual

begin if (key <> #8) then if (key < '0' ) or (key > '9') then key := #0; end; procedure TfrmVCD.editSewaKeyPress(Sender: TObject; var Key: Char); begin if (key <> #8) then if (key < '0' ) or (key > '9') then key := #0; end; procedure TfrmVCD.editBatasSewaKeyPress(Sender: TObject; var Key: Char); begin if (key <> #8) then if (key < '0' ) or (key > '9') then key := #0; end; procedure TfrmVCD.editDendaKeyPress(Sender: TObject; var Key: Char); begin if (key <> #8) then if (key < '0' ) or (key > '9') then key := #0; end; end. 11.4.1.4 Kode Program pada Form Transaksi unit UnitTransaksi; interface
Tutorial Pembuatan Aplikasi Rental VCD 11-53

Politeknik Telkom

Pemrograman Visual

uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids, DBGrids, DBCtrls; type TfrmTransaksi = class(TForm) Tambah: TButton; Label1: TLabel; lblTanggalSewa: TLabel; Label2: TLabel; lblTanggalKembali: TLabel; GroupPerminjam: TGroupBox; Label4: TLabel; EditCariAnggota: TEdit; rbNoAnggota: TRadioButton; rbNamaAnggota: TRadioButton; rbKTPAnggota: TRadioButton; GroupBox2: TGroupBox; Label6: TLabel; EditCariVCD: TEdit; rbIDVCD: TRadioButton; rbJudul: TRadioButton; rbKategori: TRadioButton; btnBatal: TButton; lblNamaAnggota: TLabel; btnPilih: TButton; DBGridDaftarVCD: TDBGrid; ListBoxPinjam: TListBox; Label3: TLabel; lblIDAnggota: TLabel; Label5: TLabel; lblHargaSewa: TLabel; procedure FormClose(Sender: TObject; var Action: TCloseAction);
Tutorial Pembuatan Aplikasi Rental VCD 11-54

Politeknik Telkom

Pemrograman Visual

procedure btnPilihClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure EditCariAnggotaChange(Sender: TObject); procedure EditCariVCDChange(Sender: TObject); procedure TambahClick(Sender: TObject); procedure btnBatalClick(Sender: TObject); private { Private declarations } sqlstring : string; harga_sewa : integer; ListPinjamVCD : array[1..2,1..10] of String; public { Public declarations } procedure hitung_harga_sewa(); end; var frmTransaksi: TfrmTransaksi; implementation uses UnitUtama, DataModule, DB, ADODB; {$R *.dfm} procedure TfrmTransaksi.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; frmUtama.Penyewaan1.Enabled := True; end; procedure TfrmTransaksi.btnPilihClick(Sender: TObject); var i : integer;
Tutorial Pembuatan Aplikasi Rental VCD 11-55

Politeknik Telkom

Pemrograman Visual

idvcd : string; begin i := 1; idvcd := DBGridDaftarVCD.SelectedField.DataSet.FieldByName('ID').AsString; while i <= 10 do begin if (ListPinjamVCD[1,i] = idvcd) then Begin ShowMessage('Judul sudah ada!'); Exit; End else if (ListPinjamVCD[1,i] = '') or (ListPinjamVCD[1,i] = ' ') then begin ListPinjamVCD[1,i] := DBGridDaftarVCD.SelectedField.DataSet.FieldByName('ID').AsString; ListPinjamVCD[2,i] := DBGridDaftarVCD.SelectedField.DataSet.FieldByName('Judul').AsString; ListBoxPinjam.Items.Add(ListPinjamVCD[2,i]); with (DM.ADOQueryPenyewaan) do begin Close; SQL.Clear; SQL.Add('select * from vcd where ID = '+ string(ListPinjamVCD[1,i])); Open; harga_sewa := harga_sewa + FieldByName('sewa').AsVariant; lblHargaSewa.Caption := IntToStr(harga_sewa); end; Exit; end else i := i + 1; end;
Tutorial Pembuatan Aplikasi Rental VCD 11-56

Politeknik Telkom

Pemrograman Visual

end; procedure TfrmTransaksi.FormShow(Sender: TObject); begin lblTanggalSewa.Caption := DateToStr(Now); lblTanggalKembali.Caption := DateToStr(Now+3); end; procedure TfrmTransaksi.hitung_harga_sewa(); var i : integer; id_vcd : string; hargasewa : integer; begin for i := 1 to ListBoxPinjam.Count do begin id_vcd := string(ListPinjamVCD[1,i]); with (DM.ADOQueryPenyewaan) do begin Close; SQL.Clear; SQL.Add('select * from vcd where ID = '+ id_vcd); Open; hargasewa := hargasewa + FieldByName('sewa').AsInteger; end; end; end; procedure TfrmTransaksi.EditCariAnggotaChange(Sender: TObject); var sqlparam : string; begin with DM.ADOQueryPenyewaan do begin
Tutorial Pembuatan Aplikasi Rental VCD 11-57

Politeknik Telkom

Pemrograman Visual

Close; SQL.Clear; if (rbNoAnggota.Checked) then sqlparam := ' NoAnggota like '+ QuotedStr('%'+EditCariAnggota.Text+'%') else if (rbNamaAnggota.Checked) then sqlparam := ' Nama like '+ QuotedStr('%'+EditCariAnggota.Text+'%') else if (rbKTPAnggota.Checked) then sqlparam := ' noKTP like '+ QuotedStr('%'+EditCariAnggota.Text+'%'); sqlstring := 'Select top 1 * from anggota where '+sqlparam; SQL.Add(sqlstring); Open; if (not IsEmpty) then begin lblNamaAnggota.Caption := FieldByName('Nama').AsString; lblIDAnggota.Caption := FieldByName('ID').AsString; end else begin lblNamaAnggota.Caption := 'Tidak ditemukan!'; lblIDAnggota.Caption := '-'; end; end; end; procedure TfrmTransaksi.EditCariVCDChange(Sender: TObject); var sqlparam : string; begin with DM.ADOQueryVCD do begin Close;
Tutorial Pembuatan Aplikasi Rental VCD 11-58

Politeknik Telkom

Pemrograman Visual

SQL.Clear; if (rbIDVCD.Checked) then sqlparam := ' ID like '+ QuotedStr('%'+ EditCariVCD.Text +'%') else if (rbJudul.Checked) then sqlparam := ' Judul like '+ QuotedStr('%'+ EditCariVCD.Text +'%') else if (rbKategori.Checked) then sqlparam := ' kategori like '+ QuotedStr('%'+ EditCariVCD.Text +'%'); sqlstring := 'Select * from vcd where '+sqlparam; SQL.Add(sqlstring); Open; Refresh; end; end; procedure TfrmTransaksi.TambahClick(Sender: TObject); var i : integer; last_id : string; BatasSewa : integer; begin if (lblIDAnggota.Caption = '-') then ShowMessage('ID Peminjam tidak ditemukan!') else begin if (ListBoxPinjam.Count = 0) then ShowMessage('Tidak ada Judul yang dipilih!') else begin hitung_harga_sewa; with (DM.ADOQueryPenyewaan) do begin //insert master transaksi
Tutorial Pembuatan Aplikasi Rental VCD 11-59

Politeknik Telkom

Pemrograman Visual

try sqlstring := 'insert into penyewaanmaster(TanggalPenyewaan, IDAnggota, TotalSewa) values('+ QuotedStr(lblTanggalSewa.Caption)+', '+ QuotedStr(lblIDAnggota.Caption)+', '+ lblHargaSewa.Caption+')'; Close; SQL.Clear; sql.Add(sqlstring); ExecSQL; SQL.Clear; SQL.Add('select @@identity as last_id from penyewaanmaster'); Open; last_id := DM.ADOQueryPenyewaan.FieldByName('last_id').AsString; //insert detil transaksi for i := 1 to ListBoxPinjam.Count do begin DM.ADOQueryVCD.Close; DM.ADOQueryVCD.SQL.Clear; DM.ADOQueryVCD.SQL.Add('Select top 1 * from vcd where ID ='+ String(ListPinjamVCD[1,i])); DM.ADOQueryVCD.Open; if (not DM.ADOQueryVCD.IsEmpty) then BatasSewa := DM.ADOQueryVCD.FieldByName('BatasSewa').AsInteger; sqlstring := 'insert into penyewaandetil(TransaksiID, IDVCD, TanggalPengembalian) values('+ last_id+', '+ String(ListPinjamVCD[1,i])+', '+ QuotedStr(DateToStr(Now + BatasSewa))+')'; Close; SQL.Clear;
Tutorial Pembuatan Aplikasi Rental VCD 11-60

Politeknik Telkom

Pemrograman Visual

sql.Add(sqlstring); ExecSQL; end; except ShowMessage('Ada Kesalahan dalam input data detil, transaksi di batalkan'); end; end; ShowMessage('Data Peminjaman VCD berhasil disimpan'); Close; end; end; end; procedure TfrmTransaksi.btnBatalClick(Sender: TObject); begin Close; end; end. 11.4.1.5 Kode Program pada Form Laporan Peminjaman unit UnitLaporanPeminjaman; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, QuickRpt, QRCtrls; type TfrmLaporanPeminjaman = class(TForm) QRPeminjaman: TQuickRep; TitleBand1: TQRBand; QRLabel10: TQRLabel; QRLabel11: TQRLabel;
Tutorial Pembuatan Aplikasi Rental VCD 11-61

Politeknik Telkom

Pemrograman Visual

QRLabel12: TQRLabel; QRSysData1: TQRSysData; DetailBand1: TQRBand; QRDBText1: TQRDBText; QRDBText2: TQRDBText; QRDBText3: TQRDBText; QRDBText4: TQRDBText; QRDBText5: TQRDBText; QRDBText7: TQRDBText; QRDBText8: TQRDBText; QRLabel1: TQRLabel; QRLabel2: TQRLabel; SummaryBand1: TQRBand; QRLabel13: TQRLabel; ChildBand1: TQRChildBand; QRLabel3: TQRLabel; QRLabel4: TQRLabel; QRLabel5: TQRLabel; QRLabel6: TQRLabel; QRLabel7: TQRLabel; QRLabel8: TQRLabel; QRLabel9: TQRLabel; QuickRep1: TQuickRep; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure QRPeminjamanBeforePrint(Sender: TCustomQuickRep; var PrintReport: Boolean); procedure SummaryBand1BeforePrint(Sender: TQRCustomBand; var PrintBand: Boolean); private { Private declarations } public { Public declarations } totalsewa : integer; end; var frmLaporanPeminjaman: TfrmLaporanPeminjaman; implementation
Tutorial Pembuatan Aplikasi Rental VCD 11-62

Politeknik Telkom

Pemrograman Visual

uses UnitUtama, DataModule; {$R *.dfm} procedure TfrmLaporanPeminjaman.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; frmUtama.LaporanPeminjamanVCD1.Enabled := True; end; procedure TfrmLaporanPeminjaman.QRPeminjamanBeforePrint( Sender: TCustomQuickRep; var PrintReport: Boolean); begin with (DM.ADOQueryLaporanPeminjaman) do begin totalsewa := totalsewa + (FieldByName('Harga Sewa').AsInteger); end; end; procedure TfrmLaporanPeminjaman.SummaryBand1BeforePrint( Sender: TQRCustomBand; var PrintBand: Boolean); begin QRLabel14.Caption := IntToStr(totalsewa); end; end. 11.5 Menjalankan Program VCD Rental

Tutorial Pembuatan Aplikasi Rental VCD

11-63

Politeknik Telkom

Pemrograman Visual

Gambar 11-48 - Aplikasi Rental VCD Running - Form Utama

Tutorial Pembuatan Aplikasi Rental VCD

11-64

Politeknik Telkom

Pemrograman Visual

Gambar 11-49 - Aplikasi Rental VCD Running - Form Anggota

Tutorial Pembuatan Aplikasi Rental VCD

11-65

Politeknik Telkom

Pemrograman Visual

Gambar 11-50 - - Aplikasi Rental VCD Running - Form VCD

Tutorial Pembuatan Aplikasi Rental VCD

11-66

Politeknik Telkom

Pemrograman Visual

Gambar 11-51 - Aplikasi Rental VCD Running Penyewaan Running

Tutorial Pembuatan Aplikasi Rental VCD

11-67

Politeknik Telkom

Pemrograman Visual

Gambar 11-52 - Aplikasi Rental VCD Running Nama dan No Anggota

Gambar 11-53 Error Message ID Peminjam

Tutorial Pembuatan Aplikasi Rental VCD

11-68

Politeknik Telkom

Pemrograman Visual

Gambar 11-54 Aplikasi Rental VCD Running Judul VCD

Tutorial Pembuatan Aplikasi Rental VCD

11-69

Politeknik Telkom

Pemrograman Visual

Gambar 11-55 Aplikasi Rental VCD Running Harga sewa otomatis

Gambar 11-56 Error Message Judul VCD

Tutorial Pembuatan Aplikasi Rental VCD

11-70

Politeknik Telkom

Pemrograman Visual

Gambar 11-57 Aplikasi Rental VCD Running Data Peminjaman Sukses disimpan

Tutorial Pembuatan Aplikasi Rental VCD

11-71

Politeknik Telkom

Pemrograman Visual

Gambar 11-58 - Aplikasi Rental VCD Running Tampilan Report

Tutorial Pembuatan Aplikasi Rental VCD

11-72

Politeknik Telkom

Pemrograman Visual

DAFTAR PUSTAKA 1. 2. 3. 4. Cant, Marco., Mastering Delphi 7, Sybex, New York, 2003 Gajic, Zarko., Delphi Programming, About.com,1998 Madcoms, Pemrograman Borland Delphi 7, Penerbit Andi, Yogyakarta, 2003 Marcus, Teddy, Delphi Developer dan SQL Server 2000, Penerbit Informatika, Bandung, 2004 5. Saiful, Kusnassriyanto, et.al., Pemrograman Delphi, Penerbit Informatika, Jakarta, 2005

Daftar Pustaka

xii

Anda mungkin juga menyukai