• Tidak ada hasil yang ditemukan

Materi : Pengelolaan Satu File Data Oleh : Abd.Rohim. ARSys Software Developed 1. Seri Belajar Pemrograman Delphi

N/A
N/A
Protected

Academic year: 2021

Membagikan "Materi : Pengelolaan Satu File Data Oleh : Abd.Rohim. ARSys Software Developed 1. Seri Belajar Pemrograman Delphi"

Copied!
7
0
0

Teks penuh

(1)

ARSys Software Developed

1

Materi : Pengelolaan Satu File Data

Oleh

: Abd.Rohim

Sebuah perusahaan meminta sebuah program aplikasi untuk mengelola persediaan barang. Perusahaan tersebut bergerak dibidang penjualan komputer dan aksesoriesnya. Data barang yang ingin disimpan dalam betuk file adalah : Kode barang, Nama barang, Katagori (Unit, Aksesories, Periperal) satuan, dan jumlah barang yang tersedia.

Sebagai tahap awal buatlah program untuk menginput, edit dan delete dan cetak data barang. Langkah penyelesaian:

A. Buatlah sebuah File/tabel untuk data barang dengan menggunakan Database Desktop

B. Rancanglah bentuk tampilan program sehingga user atau operator merasa mudah untuk menggunakannya.

C. Implementasikan bentuk rancangan tersebut pada Delphi. A. Langkah membuat File barang

1. Bukalah Database Desktop dengan cara mengklik tombol Start kemudian pilih Program, Delphi 3 dan Database Desktop. Atau jika sedang berada pada IDE Delphi klick menu Tools dan pilih Database Desktop

2. Pada lingkungan database desktop klick menu File kemudian pilih New dan Table. 3. Tentukan tipe tabel. misalkan paradox 7

4. Isikan data ini sbb:

Field Name Type Size

Kode A 5

Nama A 25

Katagori S

Satuan A 5

Jumlah S

5. Tentukan Frimarykey dari file tersebut. Double klick pada kolom Key & baris Kode sampai terlihat ‘*’

6. Simpanlah file tesebut. Click Save As. Tunjukan tempat penyimpanan datanya dan beri nama filenya.

7. Pembuatan file telah selesai tutuplah Database Desktop dengan mengklik menu file dan pilih exit. 8. Bukalah aplikasi Database Explorer dengan cara mengklik tombol Star pilih Program, Delphi 3

dan Database Explorer. Atau jika sedang dalam IDE Delphi klik menu DataBase kemudian pilih Explorer

9. Klik menu object pilih New dan pada form new database alias klik OK 10. Tuliskan nama aliasnya “Stock” dan tekan Enter

11. Pindahkan kursor mouse ke jendela Definition klik pada baris ke empat pada tabel tersebut (PATH) sampai muncul tombol ... , klik tombol tersebut, pilihlah direktori tempat menyimpan file diatas.

12. Simpanlah nama alias tadi. Klik menu Object pilih Apply dan klik OK 13. Keluarlah dari Database Explorer. Klik menu Object pilih Exit B. Rancangan program dapat dilihat pada Lampiran 1

C. Implementasi pada Delphi.

Untuk mengimplementasikan rancangan program yang telah dibuat ada dua cara atau pendekatan, yang pertama secara tidak langsung. Maksudnya adalah setiap dilakukan pengisian dan pengeditan data, data yang baru disimpan dalam dalam variabel memori dan setelah dinyatakan yakin untuk disimpan baru dilakukan penyimanan ke file. Proses editing datanya mengunakan komponen Edit. Yang kedua secara langsung. Maksudnya adalah setiap dilakukan pengisian data dan pengeditan data dilakukan langsung pada file tersebut. Hal ini dimungkinkan dengan menggunakan komponen DbEdit Untuk membandingkan kedua cara ini pada latihan ini akan dibuat program untuk kedua cara tsb.

ARSys Software Developed

2

Cara Pertama

1. Buka program Delphi. klick Start pilih program, pilih Borland Delphi 3 dan klick Delphi 3. Jika anda sedang berada pada lingkungan IDE delphi, tutup aplikasi yang ada (click menu File dan pilih Close All) dan buka aplikasi baru (klik menu File dan pilih New Aplication)

2. klik pada daerah properti. gantilah nilai-nilai yang ada pada properti tsb. BorderStyle=bsDialog, Caption = Pengelolaan Data Barang, Name = fmMain, Position = po ScreenCenter.

3. Untuk lebih amannya simpan dahulu aplikasi ini. Klik Menu File pilih Save All, Gantilah Unit1 dengan Main1 dan Project1 dengan Kasus1A

4. Pada komponen pallete Standar klik Panel, pindahkan mouse pada daerah form klik pada form. Pada form Properti isikan Align = alTop, BevelOuter = bvLowered, Caption = ‘’ (Kosong). 5. Pada komponen pallete Standar klik Panel, pindahkan mouse pada daerah form klik pada form.

Pada form Properti isikan Align = alButton, BevelOuter = bvLowered, Caption = ‘’ (Kosong). 6. Klik komponen pallete Data Access, klik komponen Table, pindahkan kursor mouse pada form

dan klik. pada form properti isikan DataBaseName= Stock, Name = tbBarang,TableName = Barang.Db, Active = True.

7. klik komponen table yang ada pada form, klik kanan sehingga tampil submenu dan pilih Field Editor. Pada form filed Editor klik kanan dan pilihlah Add Fields dan klik OK

8. pada komponen pallete Data Access klik DataSource, pindahkan kursor mouse pada form tempatkan disebelah komponen Table, dan klik. Pada form properti isiskan Name = dsBarang, DataSet = dsBarang.

9. Tekan tombol Ctrl-S secara bersamaan (Untuk menyimpan program). lakukanlah hal ini sesering mungkin atau setiap ada perubahan.

10. Klik komponen Pallete DataControl, klik komponen Grid, pindahkan kursor mouse pada form tempatkan dibawah panel yang atas dan klik. aturlah posisinya supaya kelihatan rapi dan bagus. 11. Pada form properti isikan DataSouce = dsBarang, double klik diatas kata +Options isikan

dgEditing = False, dgRowSelect = true, dgAlwayShowSelect = true

12. Klik komponen Pallete Standar, klik Button, tempatkan kursor mouse pada Panel bawah klik disebelah pojok kiri. Pada form properti isikan Caption = &Input, Name = Input.

13. Klik komponen button yang ada pada komponen pallete, pindahkan kursor mouse disebelah kanan button Input. Pada form properti isikan Caption = &Edit, Name = Edit.

14. Klik komponen button yang ada pada komponen pallete, pindahkan kursor mouse disebelah kanan button Edit. Pada form properti isikan Caption = &Delete, Name = Delete.

15. Klik komponen button yang ada pada komponen pallete, pindahkan kursor mouse disebelah kanan button Delete. Pada form properti isikan Caption = C&etak, Name = Cetak.

16. Klik komponen Pallete Addition, klik BitBtn tempatkan kursor mouse pada form panel bawah disebalah pojok kanan dan klik. Pada form properti isikan Kind = bkClose, Name = Close Sekarang akan dibuat form kedua sesuai dengan gambar 2

1. Pada daerah ToolBar klik NewForm, aturlah form tersebut sehingga bentuknya sesuai dengan gambar 2

2. Pada form properti isikan BorderStyle = bsDialog, Caption = Barang, Name = fmEdBarang, Position = poCenter

3. Klik komponen pallete Standar. klik Panel, bawa kursor mouse pada form dan klik, Pada form Properti isikan Align = alTop, BevelOuter = bvLowered, Caption =‘’

4. Klik Panel, bawa kursor mouse pada form dan klik, Pada form Properti isikan Align = alButton, BevelOuter = bvLowered, Caption =‘’

5. Klik Label pada komponen pallete Standar, pindahkan kursor mouse pada form diatas panel 1. pada form properti isikan Align = alClient, Caption = ‘’ double klik pada Font gantilah bentuk huruf menjadi Bold - 14, Name = KetProses, Layout = tlCenter

6. Buatlah lima Label tempatkan sesuai dengan gambar 2, isi Caption untuk masing masing label sesuai dengan judulnya.

7. Butalah lima Edit, Isilah Name sesuai dengan Caption pada label, kosongkan properti Text untuk semua Edit.

(2)

Seri Belajar Pemrograman Delphi

ARSys Software Developed

3

8. Klik komponen palette Addition, klik BitBtn, bawa kursor mouse ada form diatas panel 2 dan klik, isikan Kind = bkOK

9. Klik komponen BitBtn, tempatkan kursor mouse disebelah Bitbtn OK dan klik, isikan Kind = bkCancel

10. Simpanlah form ini dengan nama EdBarang

Setelah form-formnya sudah siap tinggal menambahan beberapa statement untuk prosedur-prosedur yang dibutuhkan. Pada rancangan program ini sebagai pengendali utama dari program adalah form fmMain1.

Ikuti langkah-langkah berikut ini:

1. Aktifkan form tersebut sehingga tampil seperti gambar 1 2. Klik menu File pilih Use Unit, sorot Edbarang dan klik OK 3. Double klik pada Button Input dan tuliskan perintah berikut ini

procedure TfmMain1.InputClick(Sender: TObject); begin

{Mengkosongkan isi variabel TEdit} with fmEdBarang do begin Kode.Text := ''; Nama.Text := ''; Katagori.text := ''; Satuan.text := ''; Jumlah.text := ''; end;

{Mengatur bentuk tampilan program}

fmEdBarang.KetProses.Caption :='Entry Data Barang'; fmEdBarang.Kode.Enabled := true; fmEdBarang.Kode.ReadOnly := false; fmEdBarang.Kode.Color := clWindow; fmEdBarang.ActiveControl := fmEdBarang.Kode; fmEdBarang.ShowModal; if fmEdBarang.ModalResult=mrOK then begin

tbBarang.Insert; {Menambahkan satu record kosong} {mengisikan nilai-nilai pada setiap fieldnya} tbBarangKode.Value := fmEdBarang.Kode.Text; tbBarangNama.Value := fmEdBarang.Nama.Text; tbBarangKatagori.Value := StrToInt(fmEdBarang.Katagori.Text); tbBarangSatuan.Value := fmEdBarang.Satuan.text; tbBarangJumlah.Value := StrToInt(fmEdBarang.Jumlah.text); tbBarang.Post; end; end;

4. Double klik pada Button Edit dan tuliskan perintah berikut ini procedure TfmMain1.EditClick(Sender: TObject); begin

{Memindahkan data yang ada direcord aktif ke variabel TEdit} with fmEdBarang do begin Kode.Text := tbBarangKode.Value; Nama.Text := tbBarangNama.Value; Katagori.text := IntToStr(tbBarangKatagori.Value); Satuan.text := tbBarangSatuan.Value; Jumlah.text := IntToStr(tbBarangJumlah.Value); end;

{Mengatur bentuk tampilan program}

fmEdBarang.KetProses.Caption :='Edit Data Barang'; fmEdBarang.Kode.Enabled := false;

fmEdBarang.Kode.ReadOnly := true;

fmEdBarang.Kode.Color := clInactiveCaption;

Seri Belajar Pemrograman Delphi

ARSys Software Developed

4

fmEdBarang.ActiveControl := fmEdBarang.Nama; fmEdBarang.ShowModal;

if fmEdBarang.ModalResult=mrOK then begin

tbBarang.Edit; {Merubah satu record kosong} {mengisikan nilai-nilai pada setiap fieldnya} tbBarangNama.Value := fmEdBarang.Nama.Text; tbBarangKatagori.Value := StrToInt(fmEdBarang.Katagori.Text); tbBarangSatuan.Value := fmEdBarang.Satuan.text; tbBarangJumlah.Value := StrToInt(fmEdBarang.Jumlah.text); tbBarang.Post; end; end;

5. Double klik pada Button Delete dan tuliskan perintah berikut ini procedure TfmMain1.DeleteClick(Sender: TObject); var

S : array [0..255] of char; begin

StrPCopy (S, Format (

'Anda yakin Barang %s dihapus?', [tbBarangNama.Value]));

if (Application.MessageBox ( S, 'Peringatan',

MB_YESNO or MB_ICONQUESTION) = IDYES) then tbBarang.Delete;

end;

Selanjutnya akan dibuat form untuk pencetakan data

1. Buka form baru. Pada properti isikan Nama =fmCetakBarang 2. Simpanlah form tsb dengan nama Cetakbarang

3. Klik komponen pallete Qreport, klik QuickRep, pindahkan mouse pada form dan klik, atur posisinya supaya menutupi semua form

4. Tempelkan komponen Table dan DataSource pada form ini lakukan hal yang sama seperti cara pertama no. 6 dan 8

5. Klik pada daerah putih (mengaktifkan Quickrep). isikan pada properti DataSet = Stock, Name = qrListBarang

6. Klik pada form, Klik kanan (menampilkan menu popup) pilih Report Setting, klik-lah Pageheader, ColumnHeader dan Detailheader, Klik OK

7. Klik pageHeader, klik komponen pallete Qreport, klik QRLabel, klik dipojok kiri pada pageHeader. pada properti isikan Caption = ARSys Software developed. untuk tampilan rubahlah jenis huruf pada font

8. Klik ColumnHeader, isikan pada daerah ini 6 QRLabel , isi Caption dengan urutan No, Kode Barang, Nama Barang, Katagori, Satuan, Jumlah

9. Klik detailHeader, Klik QRExpr, tempatkan dibawah QRLabel No.pada properti klik Expression, pada kotak Aviable Function pilih Count, klik Add dan klik OK

10. pada komponen pallete Qreport klik QRDbText, tepatkan dibawah QRLabel Kode, isikan pada properti DataSet =dsBarang, DataField = Kode, lakukan hal yang sama untuk filed yang lainya, datafiled sesuaikan dengan QRLabelnya

11. Untuk melihat tampilan cetakan klik kanan pilih Preview

Pembuatan form cetakan sudah selesai tinggal menyambungkannya dengan form yang lain yang akan dipanggil pada form Main1. Aktifkan form main1, double klik button Cetak dan tuliskan perintah berikut:

procedure TfmMain1.CetakClick(Sender: TObject); begin

(3)

ARSys Software Developed

5 end; Lampiran 1 Gambar 1 Gambar 2 Bentuk Cetakan

ARSys Software Developed

6

Cara Kedua

Pada cara kedua ini bentuk tampilan (form-form) akan di buat sama dengan yang pertama. Untuk lebih memahami tentang perbedaannya akan dibuat program baru tidak memodifikasi program yang telah ada. Ikutilah langkah-langkah berikut ini.

1. Buatlah sebuah direktori baru untuk menyimpan program atau project ini

2. Buka program Delphi. klick Start pilih program, pilih Borland Delphi 3 dan klick Delphi 3. Jika anda sedang berada pada lingkungan IDE delphi, tutup aplikasi yang ada (click menu File dan pilih Close All) dan buka aplikasi baru (klik menu File dan pilih New Aplication)

3. klik pada daerah properti. gantilah nilai-nilai yang ada pada properti tsb. BorderStyle=bsDialog, Caption = Pengelolaan Data Barang, Name = fmMain, Position = po ScreenCenter.

4. Untuk lebih amannya simpan dahulu aplikasi ini. Klik Menu File pilih Save All, Gantilah Unit1 dengan Main2 dan Project1 dengan Kasus1B

5. Pada komponen pallete Standar klik Panel, pindahkan mouse pada daerah form klik pada form. Pada form Properti isikan Align = alTop, BevelOuter = bvLowered, Caption = ‘’ (Kosong). 6. Pada komponen pallete Standar klik Panel, pindahkan mouse pada daerah form klik pada form.

Pada form Properti isikan Align = alButton, BevelOuter = bvLowered, Caption = ‘’ (Kosong). 7. Klik komponen Pallete DataControl, klik komponen Grid, pindahkan kursor mouse pada form

tempatkan dibawah panel yang atas dan klik. aturlah posisinya supaya kelihatan rapi dan bagus. Biarkan pada grid ini hanya kelihatan satu kolom.

8. Klik komponen Pallete DataControl, klik komponen Navigator, pindahkan kursor mouse pada form tempatkan dibawah panel yang atas di pojok kiri dan klik. Pada form properti double klik pada kata +VisibleButton, Gantilah nilai-nilai mulai dari nbInsert sampai nbRefresh menjadi false.

9. Klik komponen Pallete Standar, klik Button, tempatkan kursor mouse pada Panel bawah klik disebelah pojok kiri. Pada form properti isikan Caption = &Input, Name = Input.

10. Klik komponen button yang ada pada komponen pallete, pindahkan kursor mouse disebelah kanan button Input. Pada form properti isikan Caption = &Edit, Name = Edit.

11. Klik komponen button yang ada pada komponen pallete, pindahkan kursor mouse disebelah kanan button Edit. Pada form properti isikan Caption = &Delete, Name = Delete.

12. Klik komponen button yang ada pada komponen pallete, pindahkan kursor mouse disebelah kanan button Delete. Pada form properti isikan Caption = Ce&tak, Name = Cetak.

13. Klik komponen Pallete Addition, klik BitBtn tempatkan kursor mouse pada form panel bawah disebalah pojok kanan dan klik. Pada form properti isikan Kind = bkClose, Name = Close 14. Simpan kembali program ini.

Catatan

Pada form ini grid dengan navigator sengaja belum dihubungkan dengan sebuah file (DataSource masih kosong) karena tabelnya akan dibuat atau ditempatkan pada sebuah Data Modul. Jika kita lihat pada program sebelumnya (Kasus1A) ada dua form yang menggunakan komponen tabel yang sama, selain kelihatanya tidak bagus juga ada pekerjaan yang sama dilakukan berulang, oleh sebab itu perlu digunakan data modul.

Membuat Data Modul

1. Klik Menu file pilih New Data Module, pada form properti isikan Name = dmStock

2. Klik komponen pallete Data Access, klik komponen Table, pindahkan kursor mouse pada form data module dan klik. pada form properti isikan DataBaseName= Stock, Name = tbBarang,TableName = Barang.Db, Active = True.

3. Klik komponen table yang ada pada data module, klik kanan sehingga tampil submenu dan pilih Field Editor. Pada form field Editor klik kanan dan pilihlah Add Fields dan klik OK

4. pada komponen pallete Data Access klik DataSource, pindahkan kursor mouse pada form data module tempatkan disebelah komponen Table, dan klik. Pada form properti isiskan Name = dsBarang, DataSet = tbBarang.

5. Simpanlah data modul tersebut, tekan Ctrl-S, isikan nama filenya = DataModulStock

(4)

Seri Belajar Pemrograman Delphi

ARSys Software Developed

7

1. Aktifkan form Main

2. Klik menu file pilih Use Unit, klik kata DataModulStock dan klik OK

3. Aktifkan komponen Grid (klik pada daerah grid) isikan pada form properti DataSource= dmStock.dsBarang

4. Untuk mengatur judul pada grid tsb misalkan judulnya ingin di tengah , Klik kanan pilih Columns Editor, Klik Add All Fields, klik pada Kode, pada form properti double klik pada kata +Title, isilah Alignment=taCenter. Lakukan hal yang sama untuk field yang lainya.

5. Aktifkan komponen Navigator isikan pada form properti DataSource= dmStock.dsBarang 6. Simpan kembali program ini

Membuat from kedua (seperti Gambar 2)

1. Pada daerah ToolBar klik NewForm, aturlah form tersebut sehingga bentuknya sesuai dengan gambar 2

2. Pada form properti isikan BorderStyle = bsDialog, Caption = Barang, Name = fmEdBarang, Position = poCenter

3. Klik komponen pallete Standar. klik Panel, bawa kursor mouse pada form dan klik, Pada form Properti isikan Align = alTop, BevelOuter = bvLowered, Caption =‘’

4. Klik Panel, bawa kursor mouse pada form dan klik, Pada form Properti isikan Align = alButton, BevelOuter = bvLowered, Caption =‘’

5. Klik Label pada komponen pallete Standar, pindahkan kursor mouse pada form diatas panel 1. pada form properti isikan Align = alClient, Caption = ‘’ double klik pada Font gantilah bentuk huruf menjadi Bold - 14, Name = KetProses, Layout = tlCenter

6. Buatlah lima Label tempatkan sesuai dengan gambar 2, isi Caption untuk masing masing label sesuai dengan judulnya.

7. Klik menu file pilih Use Unit, klik kata DataModulStock dan klik OK

8. Klik Komponen pallete Data Control, klik DBEdit, klik pada form disebelah kanan Kode, isikan pada properti DataSource= dmStock.dsBarang, DataField= Kode, Name= Kode, Lakukan hal yang sama untuk field-field yang lain

9. Klik komponen palette Addition, klik BitBtn, bawa kursor mouse ada form diatas panel 2 dan klik, isikan Kind = bkOK

10. Klik komponen BitBtn, tempatkan kursor mouse disebelah Bitbtn OK dan klik, isikan Kind = bkCancel

11. Simpanlah form ini dengan nama EdBarang

Untuk menghubungkan forma Main dengan EdBarang Ikuti langkah-langkah berikut ini: 1. Aktifkan form tersebut sehingga tampil seperti gambar 1

2. Klik menu File pilih Use Unit, sorot Edbarang dan klik OK 3. Double klik pada Button Input dan tuliskan perintah berikut ini procedure TfmMain.InputClick(Sender: TObject); begin

fmEdBarang.KetProses.Caption :='Entry Data Barang'; fmEdBarang.Kode.Enabled := true; fmEdBarang.Kode.ReadOnly := false; fmEdBarang.Kode.Color := clWindow; fmEdBarang.ActiveControl := fmEdBarang.Kode; dmStock.tbBarang.Insert; fmEdBarang.ShowModal; if fmEdBarang.ModalResult=mrOK then dmStock.tbBarang.Post else dmStock.tbBarang.Cancel; end;

4. Double klik pada Button Edit dan tuliskan perintah berikut ini procedure TfmMain.EditClick(Sender: TObject); begin

Seri Belajar Pemrograman Delphi

ARSys Software Developed

8

fmEdBarang.KetProses.Caption :='Edit Data Barang'; fmEdBarang.Kode.Enabled := false; fmEdBarang.Kode.ReadOnly := true; fmEdBarang.Kode.Color := clInactiveCaption; fmEdBarang.ActiveControl := fmEdBarang.Nama; dmStock.tbBarang.Edit; fmEdBarang.ShowModal; if fmEdBarang.ModalResult=mrOK then dmStock.tbBarang.Post else dmStock.tbBarang.Cancel; end;

5. Double klik pada Button Delete dan tuliskan perintah berikut ini procedure TfmMain.DeleteClick(Sender: TObject); var

S : array [0..255] of char; begin

StrPCopy (S, Format (

'Anda yakin Barang %s dihapus?', [dmStock.tbBarangNama.Value])); if (Application.MessageBox (

S, 'Peringatan',

MB_YESNO or MB_ICONQUESTION) = IDYES) then dmStock.tbBarang.Delete;

end;

Untuk form cetak coba anda buat sendiri seperti yang telah dibuat dulu tampa menggunakan komponen table dan DataSource. Untuk mengambil data dari tabelnya gunakan Data Module Sampai pada bagian ini diharapkan telah dipahami materi pokok dan materi bawaan (yang tersirat). diantaranya

• Membuat form dan menghubungkan atau memanggil sebuah form (ShowModal, Show, Active). • Mengisi properti-properti penting dari sebuah form

• Pemahaman tentang tabel, datasource, data field, dan komponen visual untuk manipulasi sebuah tabel.

• Dapat mengambil kesimpulan dari dua model atau bentuk penyelesaian. Sebagai tambahan diantara keduanya bisa dipadukan misalnya untuk data field yang berjenis huruf ( Alpa), bilangan, currency bisa mengunakan cara pertama, tetapi jika jenis data fieldnya berupa tanggal dan diinginkan bentuk tanggal seperti datetimepicker maka gunakanlah cara pertama.

• Dalam bentuk penulisan source program untuk mempersingkat penulisan gunkanlah statemen

with do

• Jika anda mendapat kesulitan atau ingin mengetahui penjelasan tentang sesuatu gunkanlah tombol F1. Misalkan jika anda ingin mengetahui apa itu tabel maka aktifkan tabel yang ada di form atau di data modul, kemudian tekan tombol F1, tetapi jika anda ingin mengetahui nilai

sebuah properti misalkan DataBaseName pada sebuah Tabel maka klik pada properti tabel pada

bagian DataBaseName kemudian tekan F1. Jika anda hanya mengetahui namanya saja misalkan NOW apa artinya ini ? pada source program tuliskan kata NOW kemudian tempatkan kursor pada pada kata now tersebut dan tekan F1.

Bagian terakhir dari modul ini akan membahas contoh permasalahan yang paling sering dihadapi dalam penangan file ini. Misalkan ada kasus seperti ini; dalam struktur file ada field Quantity dan Harga, sementara diinginkan selalu tampil (dalam Grid) ada Total Harga (Perkalian antara Quantity dengan Harga) apakah harus ditambahkan field baru pada struktur filenya ? atau gimana ?, kasus lain misalnya dalam struktur file field Katagori Barang berbentuk nomor saja tetapi pada saat entri data dan saat menampilkan data ingin ditampikan namanya dari katagori tersebut. Harus bagaimanakah jika kejadianya seperti ini.

(5)

ARSys Software Developed

9

Dalam Delphi permasalahan ini cukup mudah ditanggani, dengan menggunakan field tambahan (Field Bayangan atau maya) yang sifat tidak permanen disimpan dalam sebuah file tetapi ini hanya merupakan sebuah variabel yang berjenis field, untuk membuatnya dengan menggunkan filed editor. Kita langsung saja pada permasalahan diatas seperti sfesifikasi program yang ada diawal modul ini. 1. Buka program Kasus pertama (Kasus1A.Dpr)

2. Aktifkan komponen Table. Klik komponen tabel yang ada form

3. Klik kanan pada komponen table, pilih field editor dan klik. selanjutnya akan tampil kotak fields Editor

4. Klik kanan pada daerah kotak tersebut kemudian pilih New Fields dan klik. Dan akan muncul form New Fields.

5. Isikan pada Name = KategoriNM, Type = String, FieldType = Calculated dan klik OK

6. Pindahkan posisi KategoriNM menjadi dibawah Kategori dengan cara men-drag KategoriNM dan menempatkanya dibawah Kategori.

7. Klik komponen Table pada forma Main (untuk mengaktifkan)

8. Klik Events disebelah komponen, kemudian pilihlah OnCalFields dan Double Klik, tuliskan program berikut ini

procedure TfmMain1.tbBarangCalcFields(DataSet: TDataSet); begin case tbBarangKatagori.Value of 1: tbBarangKategoriNM.Value :='Unit'; 2: tbBarangKategoriNM.Value :='Aksesories'; 3: tbBarangKategoriNM.Value :='Periperal'; end; end;

9. Kembali lagi ke form (Klik Toggle), klik pada daerah grid kemudian klik kanan, pilih Coloum Editor, klik AddAllFields. Hasilnya pada grid akan ditampilkan seluruh field yang ada pada editor ini, sementara kita tidak menginginkan adanya nomor kategori oleh sebab itu kita bisa menghapusnya. Sorot Kategori (No. 2) kemudian klik tombol Delete.

Sampai disini kita bisa melihat tampilan kategori yang ditampilkan dengan namanya. selanjutnya kita akan membuat perubahan untuk form kedua agar dalam entrian yang ditampilkan atau di entri bukan nomor kategori tetapi nama dari kategori, tetapi disimpanya masih tetap nomor kategori.

1. Klik tombol Select Form From List, pilih fmEdBarang dan klik OK 2. Hapuslah Edit Kategori (aktifkan EditKategori tekan tombol delete)

3. Pada Komponen pallete Standar pilih komponen ComboBox, Tempatkan pada posisi edit kategori yang baru dihapus.

4. Isikan pada properti ComboBox, Items=Unit, Aksesories,Periperal, Style= csDropDownList Aktifkan source program Main1, Pada prosedure InputClick hapuslah baris program Katagori.text:=''; dan hapus baris tbBarangKatagori.Value:= StrToInt(fmEdBarang.Katagori.Text); kemudian ganti dengan tbBarangKatagori.Value := fmEdBarang.ComboBox1.ItemIndex;

5. Pada prosedur EditClick hapuslah baris Katagori.text := IntToStr (tbBarangKatagori.Value); dan ganti dengan ComboBox1.ItemIndex := tbBarangKatagori.Value; Hapuslah baris tbBarangKatagori.Value := StrToInt(fmEdBarang.Katagori.Text); dan gantilah dengan tbBarangKatagori.Value := fmEdBarang.ComboBox1.ItemIndex;

Sampai sini entry data dan tampil data telah selesai tinggal cetak data, cobalah buat sendiri untuk cetak datanya, untuk menampilkan nama katogorinya prosesnya hampir sama dengan yang sebelumnya.

(6)

Seri Belajar Pemrograman Delphi

ARSys Software Developed

1

Materi : Pengelolaan Beberapa File Data

Oleh

: Abd. Rohim

Materi selanjutnya adalah penggeloaan beberapa file data. Kata beberapa disini bisa berarti dua buah file atau lebih. Bila terdapat dua atau lebih file dalam suatu database ini akan selalu menunjukan hubungan diantara file-file tersebut. Pembentukan lebih dari satu file biasanya dimaksudkan untuk mengilangkan redundansi data dan memudahkan dalam penggeloaan dari database tersebut jika terjadi proses pada database (Input, Edit, Delete).

Hubungan antara dua file ada yang bersifat Melengkapi/menjelaskan/memberikan keterangan dari suatu field, bisanya field tersebut selalu menjadi sebuah foreigkey. Selain itu ada juga hubungan yang bersifat ketergantungan artinya suatu file (Anak) tidak akan mempunyai artinya bila tidak ada file (Induk), bentuk seperti ini sering disebut dengan Master-Detail atau Induk-Anak.

Contoh kasus (untuk model yang pertama) yang akan diambil dalam modul ini akan mengembangkan kasus pada modul sebelumnya. Pada kasus tersebut diinginkan untuk menampilkan kategori dalam bentuk sebuah kata (Unit, Aksesories, Periperal) sementara saat disimpan dalam file yang ditulis hanya nomor urutnya saja (0,1,2). Hal ini dibuat seperti ini guna mengatisipasi perkembangan dimasa mendatang, jika terjadi pemambahan kategori maka tidak perlu merubah source program tetapi cukup dengan menambahkan jenis kategorinya saja.

Untuk itu perlu dibuatkan sebuah file/tabel baru untuk menyimpan nama kategori dengan struktur sbb: (Gunakan DataBase Desktop)

FieldName Type Size Key

No S *

NamaKat A 15

Simpanlah file tersebut dengan nama Kategori

Pada Database Desktop tersebut isikan langsung seperti berikut 0 Unit

1 Aksesories 2 Periperal

Selanjutnya bukalah program KASUS1B.DPR (Langsung ke File) dan lakukan langkah-langkah berikut ini. 1. Buka Form data Module. Klik Select Unit From List (Pada SpeedBar), Pilih dataModulStock dan klik OK 2. Klik tombol Toggle Unit/Form

3. Klik Komponen Pallete Data Access, Klik Table, Tempatkan kursor mouse pada form data Module dan klik, Isikan pada form properti nilai-nilai sbb: DatabaseName=Stock, Name=tbKategori, TableName=Kategori.db, Active=true

4. Klik DataSource, tepatkan kursor mouse pada form dan klik, isikan Name=dsKategori, DataSet=tbKategori 5. Klik tbBarang, klik kanan pilih field editor, Pada field editor klik kanan pilih New Field dan Klik hingga tampil

form. Isikan Name=KategoriNM, Type=String, FieldType=LookUp, KeyField=Kategori, DataSet=tbKategori, LookUpKey=No, ResultField=NamaKet. dan Klik OK, Selanjutnya drag-lah sehingga Field KategoriNM berada dibawah kategori

6. Aktifkan Form Main sehingga tampil formnya. Klik pada daerah grid, Klik kanan pilih kolom editor dan klik, Klik pada tulisan Kode dan klik, tekan tombol shift (jangan dilepas) klik Jumlah sehingga semua data disorot dan klik tombol delete. Klik tombol Add All Fields, Klik kategori dan klik delete. Tutuplah form tersebut.

7. Klik Select Unit From List (Pada SpeedBar), double klik pada EdBarang. Klik tombol Toggle Unit/Form. 8. Klik DBEdit kategori dan tekan tombol delete

9. Klik Komponen Pallete Data Control, Klik DBLookupComboBox1 dan klik pada form untuk mengganti yang dihapus. isikan sbb: DataSource= dmStock.dsBarang, DataFields= Kategori ,ListSource=dmStock.dsKategori, ListField= NamaKet, KeyField=No, Name=Kategori

10. Simpanlah Seluruh program 11. Jalankan programnya.

Seri Belajar Pemrograman Delphi

ARSys Software Developed

2

Selanjutnya kita akan bahas mengenai file Master-Detail. Model file ini banyak sekali terdapat dalam permasalahan umum, misalnya sebuah Faktur pembelian atau penjualan, Kartu Studi Mahasiswa, Kartu Peminjaman buku diperpustakaan dll, kesemuanya mempunyai keteraturan yang sama. Dalam faktur terdapat data-data sbb: No. Faktur, Tanggal faktur, Kepada atau Dari (Konsumen/Produsen), Nomor urut, Nama barang, Satuan, Jumlah barang, Harga, Total. Jika digambarkan dalam sebuah tabel akan berbentuk sbb:

No.Faktur Tanggal Kepada NamaBarang Satuan Jumlah Harga Total

Jika dimasukan satu buah transaksi dimana seseorang membeli tiga macam barang maka data yang akan disimpan sbb

No.Faktur Tanggal Kepada NamaBarang Satuan Jumlah Harga Total

1 01/01/99 Adi Kopi buah 10 1000 10000

1 01/01/99 Adi Gula buah 10 500 5000

1 01/01/99 Adi Susu kaleng 1 5000 5000

dari tabel akan terlihat ada tiga field yang ditulis berulang (No. Faktur, Tanggal, Kepada). Dalam teori database, dalam file tersebut ada redudansi oleh sebab itu harus dipecah untuk menghilangkan redudansi tersebut, sehingga bentuknya akan menjadi seperti berikut:

Tabel-A

No.Faktur Tanggal Kepada 1 01/01/99 Adi Tabel-B

No. Faktur NamaBaran g

Unit Jumlah Harga Total

1 Kopi buah 10 1000 10000

1 Gula buah 10 500 5000

1 Susu kalen

g

1 5000 5000

Tabel-A biasanya disebut dengan Master/Induk dan Tabel-B disebut dengan Detail/Anak yang dihubungkan dengan sebuah key (No.Faktur).

Dalam proses manipulasi terhadap filenya (Input, Edit dan Delete) untuk file-file tersebut sama dengan yang dilakukan pada modul sebelumnya, bisa dengan cara tidak langsung (dengan Tedit) atau dengan cara langsung (TDBEdit) atau kombinasi diantara keduanya. Tetapi sebelumya kedua file tersebut harus dikaitkan dahulu dan harus diketahui secara persis nama yang kan menjadi induk dan mana yang akan menjadi anak.

Sebagai bahan latihan untuk mengkaitkan antara dua tabel yang saling berhubungan akan digunakan database yang yang disediakan oleh delphi (DBDEMOS). Ada dua file yang terkait erat yaitu file Orders dan File Items. Kedua file ini dihubungkan oleh sebuah field OrderNo. Lakukanlah langkah-langkah berikut ini.

1. Bukalah project baru. Klik menu File kemudian pilih New Aplication

2. Pada Properti isikan Caption=Contoh Program Master Detail, Name=fmMasterDetail, Position-poScreenCenter, 3. Klik tombol Save All pada SpeedBar, Pindahkan direktori kedirektori kerja anda, ganti Unit1 menjadi

MasterDetail Project1 menjadi KasusB

4. Klik Komponen Pallete Data Access, Klik table, klik pada form dikiri atas isikan data-data sbb: DataBaseName=DBDEMOS, Name=tbMaster, TableName=ORDERS.DB, Klik DataSource pada komponen pallete, Klik kembali pada form disebelah table, isikan Dataset=tbMaster, Name= dsMaster.

5. Klik table, klik pada form isikan data-data sbb: DataBaseName=DBDEMOS, Name=tbDetail, TableName= ITEMS.DB, Klik DataSource pada komponen pallete, Klik kembali pada form disebelah table, isikan dataset=tbDetail, Name=dsDetail, MasterSource=DataSource1. Double klik pada MasterFields, Klik OrderNo pada DetailField, Klik OrderNo pada MasterField, Klik tombol Add, dan Klik tombol OK (Bold = cara untuk menghubungkan/mengkaitkan dua buah file, Orders=Master dan Items=Anak)

(7)

ARSys Software Developed

3

6. Klik Komponen Pallete Data Control, Klik Navigator, klik pada form dibagian atas, isikan pada properti sbb: DataSource= dsMaster, ShowHints=true

7. Klik DBGrid pada komponen pallete, klik pada form dibawah navigator (atur posisi, besar kecilnya supaya bagus). isikan pada properti DataSource=dsMaster

8. Klik DBGrid pada komponen pallete, klik pada form dibawah Grid yang tadi (atur posisi, besar kecilnya supaya bagus). isikan pada properti DataSource=dsDetail

9. Simpanlah progam ini

10. Coba jalankan (RUN) ikuti langkah selanjutnya

11. Klik tombol-tombol First Record, Next Record, Prior Record dan Last Record, akan terlihat jika posisi record pada Mater berubah maka pada anaka pun akan berubah. Pencarian record (yang sama OrderNo-nya) dilakukan secara otomatis oleh delphinya sendiri sesuai perintah no 5 diatas.

12. Klik tombol Insert (+) pada grid yang atas disediakan satu baris kosong, sementara pada grid yang dibawah isinya kosong. Klik tombol cancel.

Referensi

Dokumen terkait

Berdasarkan uji validitas pengaruh (uji t) pada signifikansi (α) sebesar 0,05, variabel yang memiliki pengaruh signifikan terhadap Permintaan Beras pada Kabupaten

Pengujian ini dilakukan untuk menganalisis adanya pengaruh variabel independen yaitu Return on asset (ROA), Net Profit Margin (NPM) dan Earning Per Share (EPS)

Melihat data dan kondisi di sekolah tentang Gerakan Literasi Sekolah di SMA Negeri 2 Gadingrejo yang menunjukan rendahnya minat baca peserta didik dan

Setelah ilmu-ilmu tersebut dipelajari dengan baik, Syekh Abdul Wahab kemudian memperkenankan seseorang untuk mempelajari tarekat dan berguru “kepada khalifah yang tinggi

15 Dalam usaha pembebasan WNI yang disandera oleh kelompok Abu Sayyaf di Filipina, pemerintah Indonesia mengutamakan opsi negosiasi yang dapat kita ketahui adalah bentuk

Tujuan penelitian ini yaitu : 1) untuk mengetahui pengaruh Program Akademik terhadap Mutu Pelayanan Mahasiswa 2) untuk mengetahui pengaruh Aplikasi SIAKAD terhadap

Pada umumnya simpang tak bersinyal dengan pengaturan hak jalan (prioritas dari sebelah kiri) digunakan di daerah permukiman perkotaan dan daerah pedalaman

Menimbang : bahwa dalam rangka pelaksanaan ketentuan Pasal 81 Peraturan Pemerintah Nomor 6 tahun 2006 tentang Pengelolaan Barang Milik Negara / Daerah sebagaimana telah