Identitas
Identitas
dosen
dosen
SuhermanSuherman, ST, ST Address
Address : : CilegonCilegon Mobile
Mobile : 087 877 486 821: 087 877 486 821 Email
Email : : leeput@yahoo.comleeput@yahoo.com Ym
Ym : : leeputleeput Blog
Blog : : http://leeput.wordpress.comhttp://leeput.wordpress.com
http://suherman628.wordpress.com
http://suherman628.wordpress.com
POKOK BAHASAN
POKOK BAHASAN
PEMROGRAMAN DATABASE DELPHI
PEMROGRAMAN DATABASE DELPHI
Tujuan
Tujuan PembelajaranPembelajaran KhususKhusus (TPK):(TPK):
Setelah
Setelah
mempelajari
mempelajari
pokok
pokok
bahasan
bahasan
DataBase
DataBase,
, maka
maka
mahasiswa
mahasiswa
dapat
dapat
mendemonstrasikan
mendemonstrasikan
tentang
tentang
membuat
membuat
project
Report
Report
AdalahAdalah prosesproses pembuatanpembuatan laporanlaporan yang
yang akanakan dijadikandijadikan sebagaisebagai informasiinformasi dalam
dalam bentukbentuk cetakancetakan baikbaik dalamdalam bentuk
bentuk view (view (layarlayar) ) maupunmaupun cetakcetak printer
printer
DalamDalammembuatmembuat report report didi Delphi 7 Delphi 7 yaituyaitu dengan
dengan menggunakanmenggunakan fasilitasfasilitas Tab Report Tab Report yang
yang biasabiasa diletakandiletakanpadapada akhirakhirTabTab
NamunNamun dalamdalam Delphi 7 Delphi 7 fasilitasfasilitas iniini belumbelum terdaftar
terdaftar padapada Tab. Tab. TapiTapi harusharus kitakita install install
terlebih
terlebih dahuludahulu
AdapunAdapun langkahlangkah--langkahlangkah penginstalanpenginstalan adalah
KlikKlik menu Component menu Component pilihpilih Install Install Packagest
Packagest…… KlikKlik tomboltombol Add Add Masuk
Masuk keke Drive C Drive C MasukMasuk keke Program Files
Program Files MasukMasuk keke Borland Borland Delphi 7
Delphi 7 Bin Bin PilihPilih file file dclqrt
dclqrt 70.bpl 70.bpl KlikKlik Open Open KlikKlik OKOK
Dari Dari langkahlangkah didi atasatas, , makamaka akanakan terbentuk
terbentuk Tab Report Tab Report didi akhirakhir TabTab
Mulai
Mulai
Praktek
Praktek
BuatBuat Database Database simpansimpan dengandengan namanama : : Report.mdb
Report.mdb
BuatBuat tabeltabel simpansimpan dengandengan namanama : : Pelanggan
Pelanggan, , dengandengan strukturstruktur ::
FieldName
FieldName DataTypeDataType FieldSizeFieldSize
No_plg
No_plg TextText 5 (PK)5 (PK)
Nama_plg
BuatBuat tabeltabel simpansimpan dengandengan namanama : : Barang
Barang, , dengandengan strukturstruktur ::
FieldName
FieldName DataTypeDataType FieldSizeFieldSize
Kd_Brg
Kd_Brg TextText 5 (PK)5 (PK) Nama_brg
Nama_brg TextText 2525
Harga
Harga CurrencyCurrency
BuatBuat tabeltabel simpansimpan dengandengan namanama : : Transaksi
Transaksi, , dengandengan strukturstruktur ::
FieldName
FieldName DataTypeDataType FieldSizeFieldSize
No_faktur
No_faktur TextText 10 (PK)10 (PK) No_Plg
No_Plg TextText 55
Kd_Brg
Kd_Brg TextText 55
Tgl_Jual
Tgl_Jual Date/TimeDate/Time Banyak
BuatBuat project project barubaru, , simpansimpan dengandengan nama
nama unit : unit : UReportUReport dandan project : project : PReport
PReport
Membuat
Membuat
Report Data
Report Data
Pelanggan
Pelanggan
TempatkanTempatkan Adoconnection1 Adoconnection1 koneksikan
koneksikan dengandengan database Reportdatabase Report
TambahkanTambahkan form form barubaru (form2) (form2) simpansimpan dengan
dengan namanama unit : unit : URPlgURPlg
PerhatikanPerhatikan gambargambar terlebihterlebih dahuludahulu
Adoquery
QuickRep QrLabel QRShape
QRDBText qrSysData
qrSysData
Blok Page Header
Blok Title Blok Detail
Ikuti
Ikuti langkahlangkah--langkahlangkah berikutberikut ::
LetakanLetakanAdoquery1 Adoquery1 ubahubah name : QPLGname : QPLG
-- isiisi property Connection property Connection dengandengan : : Form1.Adoconnection1
Form1.Adoconnection1
-- isiisi property SQL property SQL dengandengan perintahperintah :: SELECT * FROM PELANGGAN
SELECT * FROM PELANGGAN
-- UbahUbah Active : TrueActive : True
LetakanLetakankomponenkomponen QuickRepQuickRep (Tab Report), (Tab Report), ubah
ubah Name : Name : QRPelangganQRPelanggan isiisiproperty property DataSet
DataSet : QPLG : QPLG pilihpilihproperty [+] Bands property [+] Bands klik
klik TandaTanda[+], [+], ubahubah::
HasPageHeader
HasPageHeader : True: True
HasTitle
HasTitle : True: True HasDetail
HasDetail : True: True
dari
dari perintahperintah didi atasatas, , makamaka akanakan terbentuk
terbentuk blokblok--blokblok : Blok Page : Blok Page Header, Blok Title, Blok Detail
Page Header Page Header digunakandigunakan untukuntuk menampilkan
menampilkan juduljudul halamanhalaman atasatas
Title Title biasanyabiasanya digunakandigunakan untukuntuk menampilkan
menampilkan juduljudul--juduljudul kolomkolom padapada data yang
data yang akanakan didi cetakcetak
Detail Detail digunakandigunakan untukuntuk menampilkanmenampilkan data yang
data yang daridari tabeltabel
LebarkanLebarkan ukuranukuran Page Header Page Header dengandengan cara
cara klikklik blokblok page header, page header, kemudiankemudian
pada
pada bagianbagian titiktitik hitamhitam bawahbawah drag drag dan
dan tariktarik kebawahkebawah ((sesuaikansesuaikan ukurannya
ukurannya))
LetakanLetakan QRShapeQRShape padapada blokblok Page Page Header,
Header, aturatur lebarlebar dandan panjangnyapanjangnya seperti
seperti padapada gambargambar
LetakanLetakan QrLabelQrLabel ubahubah caption : caption : Halaman
Halaman ::
LetakanLetakan QrLabelQrLabel ubahubah caption : caption : Tanggal
LetakanLetakan dalamdalam kotakkotak QrSysDataQrSysData ubahubah property Data :
property Data : qrsPageNumberqrsPageNumber simpan
simpan didi sampingsamping kanankanan HalamanHalaman ::
LetakanLetakan dalamdalam kotakkotak QrSysDataQrSysData ubahubah property Data :
property Data : qrsDateqrsDate simpansimpan didi samping
samping kanankanan TanggalTanggal CetakCetak
LetakanLetakan padapada blokblok Title Title QrLabelQrLabel ubahubah Caption : NO
Caption : NO
LakukanLakukan halhal yang yang samasama untukuntuk KODE, KODE, NAMA PELANGGAN,
NAMA PELANGGAN, dandan ALAMATALAMAT
KlikKlik blokblok Title Title pilihpilih property property [+]Frame
[+]Frame klikklik tandatanda [+] [+] ubahubah DrawBottom
LetakanLetakan padapada blokblok Detail Detail didi bawahbawah NO NO komponen
komponen QrSysDataQrSysData ubahubah property property data :
data : qrsDetailNoqrsDetailNo
PadaPada blokblok Detail, Detail, LetakanLetakan komponenkomponen QrDBText
QrDBText didi bawahbawah KODE, KODE, isiisi
property:
property:
-- DataSetDataSet : QPLG: QPLG
-- DataFieldDataField : : No_PlgNo_Plg
LakukanLakukanhalhal yang yang samasama untukuntuk Nama_plgNama_plg dan
dan AlamatAlamat
BilaBila telahtelah selesaiselesai……..
AktifkanAktifkanform1 form1 pilihpilihmenu menu LaporanLaporan Pilih
Pilih Data Data PelangganPelanggan, , isiisi dengandengan kodekode berikut berikut :: form2.QRPelanggan.Preview; form2.QRPelanggan.Preview; RUN..RUN..
BilaBila adaada pertanyaanpertanyaan pilihpilihYesYes
RUN, RUN, kembalikembali……bilabila tidaktidak adaadakesalahankesalahan
Membuat
Membuat
Report Data
Report Data
Barang
Barang
BuatBuat form form barubaru (form3) (form3) simpansimpan unit unit dengan
dengan namanama : : URBrgURBrg
BuatBuat desaindesain dandan aturanaturan yang yang samasama dengan
dengan Report Data Report Data PelangganPelanggan dandan
sesuaikan
sesuaikan dengandengan data data barangbarang
Membuat
Membuat
Report Data
Report Data
Transaksi
Transaksi
BuatBuat form form barubaru (form4) (form4) simpansimpan dengan
dengan namanama unit : unit : URTransURTrans
LetakanLetakan Adoquery1, Adoquery1, ubahubah property :property :
-- Name : QPLGName : QPLG
-- Connection : form1.AdoConnection1Connection : form1.AdoConnection1
-- SQL : SELECT * FROM PELANGGANSQL : SELECT * FROM PELANGGAN
LetakanLetakan Adoquery1, Adoquery1, ubahubah property :property :
-- Name : QBRGName : QBRG
-- Connection : form1.AdoConnection1Connection : form1.AdoConnection1
-- SQL : SELECT * FROM BARANGSQL : SELECT * FROM BARANG
-- Active : TrueActive : True
LetakanLetakan Adoquery1, Adoquery1, isiisi property :property :
-- Name : Name : QTransQTrans
-- Connection : form1.Adoconnection1Connection : form1.Adoconnection1
-- SQL : SELECT * FROM TRANSAKSI T,SQL : SELECT * FROM TRANSAKSI T, PELANGGAN P, BARANG B
PELANGGAN P, BARANG B
WHERE (T.NO_PLG=P.NO_PLG) AND
WHERE (T.NO_PLG=P.NO_PLG) AND
(T.KD_BRG=B.KD_BRG)
(T.KD_BRG=B.KD_BRG)
KlikKlik 2x 2x QTransQTrans KlikKlik kanankanan padapada kotak
kotak pilihpilih Add All FieldsAdd All Fields
PerhatikanPerhatikan Field yang Field yang munculmuncul, , BilaBila yang
yang berawalanberawalan B. B. makamaka milikmilik tabeltabel Barang
Barang, P. , P. milikmilik TabelTabel pelangganpelanggan dandan T.
T. atauatau yang yang tidaktidak adaada awalanawalan, , makamaka itu
itu milikmilik tabeltabel TransaksiTransaksi
LetakanLetakan QuickRepQuickRep, , ubahubah property :property :
-- Name : Name : RTransRTrans
-- DataSetDataSet : : QTransQTrans
-- [+]Bands [+]Bands ubahubah HasPageDetailHasPageDetail dandan HasPageHeader
HasPageHeader
menjadi
menjadi
TrueTrueLetakanLetakan komponenkomponen QrGroupQrGroup pilihpilih property Expression
property Expression klikklik [[……]]
-- KlikKlik tomboltombol [Database Field] [Database Field]
-- PilihPilih tabeltabel QTRansQTRans
PerintahPerintah taditadi dimaksudkandimaksudkan untukuntuk menampilkan
menampilkan cetakancetakan per Group per Group berdasarkan
berdasarkan No_PlgNo_Plg
QRGroupQRGroup merupakanmerupakan komponenkomponen yang yang akan
akan menjadikanmenjadikan hasilhasil cetakancetakan didi tampilkan
tampilkan dalamdalam bentukbentuk groupgroup
LetakanLetakan komponenkomponen QRBandQRBand
AktifkanAktifkan QRGroupQRGroup pilihpilih property property [+]Footer Band
[+]Footer Band dandan isiisi dengandengan QRBand1
QRBand1
Dari Dari hasilhasil didi atasatas, , makamaka akanakan terbentuk
terbentuk footer footer QgroupQgroup yang yang nantinanti akan
akan digunakandigunakan untukuntuk menampilkanmenampilkan
Summary
SupayaSupaya hasilhasil cetakancetakan ditampilkanditampilkan dalam
dalam bentukbentuk LandScapeLandScape……
-- KlikKlik kanankanan padapada QuickRepQuickRep ((RTransRTrans))
-- PilihPilih Report SettingReport Setting
-- PadaPada kotakkotak Paper Size Paper Size daridari Portrait Portrait
ubah
ubah menjadimenjadi LandScapeLandScape
MulaiMulai daridari blokblok QRGroupQRGroup Letakan
Letakan komponenkomponen QRLabelQRLabel dandan ubahubah masing
masing--masingmasing captionnyacaptionnya (yang (yang tercetak
tercetak tebaltebal) ) sepertiseperti padapada gambargambar berikut
Letakan
Letakan QRDBTextQRDBText didi sampingsamping KODE KODE PELANGGAN,
PELANGGAN, isiisi property :property :
-- Dataset : Dataset : QTransQTrans
-- DatafieldDatafield : : T.No_PlgT.No_Plg
Lakukan
Lakukan halhal yang yang samasama untukuntuk NamaNama dan
BeralihBeralih keke blokblok DetailDetail Letakan
Letakan komponenkomponen QRDBTextQRDBText dandan
atur
atur masingmasing--masingmasing koneksinyakoneksinya daridari Tabel
Tabel QTransQTrans untukuntuk : : FakturFaktur, , TglTgl--JualJual, , KD
KD--BRG, BRG, NamaNama barangbarang, , HargaHarga, , dandan
Banyak
Banyak
Sedangkan
Sedangkan untukuntuk JumlahJumlah, , ikutiikuti perintah
perintah iniini ::
-- LetakanLetakan komponenkomponen QRExprQRExpr
-- PilihPilih property Expression, property Expression, klikklik [[……]]
-- PadaPada kotakkotak Enter Expression, Enter Expression, isiisi dg:dg: QTRANS.Harga
QTRANS.Harga**QTRANS.banyakQTRANS.banyak
BeralihBeralih keke Group FooterGroup Footer
-- LetakanLetakan komponenkomponen QRExprQRExpr, , pilihpilih property Expression
property Expression klikklik [[……], ], padapada kotak
kotak Enter Expression Enter Expression isiisi dengandengan perintah
perintah berikutberikut ::
SUM(QTRANS.Harga
SUM(QTRANS.Harga**QTRANS.banyakQTRANS.banyak))
-- PilihPilih property Reset After Print property Reset After Print ubahubah menjadi
menjadi TrueTrue
Property Reset After Print Property Reset After Print adalahadalah untuk
untuk me reset me reset ulangulang penjumlahanpenjumlahan dari
dari perhitunganperhitungan yang yang telahtelah dilakukandilakukan oleh
oleh GroupGroup
AktifkanAktifkan form1 form1 pilihpilih menu menu LaporanLaporan
Data Data TransaksiTransaksi, , isiisi dengandengan kodekode berikut
berikut ::
form4.RTrans.Preview;
form4.RTrans.Preview;
RUNRUN…… bilabila tidaktidak adaada kesalahankesalahan
LihatLihat hasilnyahasilnya