• Tidak ada hasil yang ditemukan

Modul V Form Enty Data Tabel Tabel Transaksi

N/A
N/A
Protected

Academic year: 2021

Membagikan "Modul V Form Enty Data Tabel Tabel Transaksi"

Copied!
16
0
0

Teks penuh

(1)

Modul V

Form Enty Data Tabel Tabel Transaksi

A. Form Interface

Form entry data table transaksi sedikit berbeda dibandingkan dengan form entry data table master. Perbedaannya terletak pada jumlah table yang berasosiasi. Pada form entry data table master, seperti form entry data table pegawai dan nasabah seperti yang telah anda praktekkan pada modul IV adalah contoh-contoh form entry data table master. Form ini hanya menangani satu buah table saja, dan yang perlu divalidasi hanyalah nilai field kunci primary-nya saja. Sedangkan pada form entry data table transaksi, programmer selain harus menediakan fasilitas validasi data ke kunci primer juga harus ada validasi data ke kunci tamu (foreign key).

Jika validasi data pada kunci primer, system harus mendeteksi apakah nilai kunci primer yang diimputkan sekarang sudah ada di table atau belum. Jika sudah ada nilai tersebut harus dapat ditolak oleh system. Sebaliknya, nilai yang harus divalidasi pada kunci tamu adalah apakah nilai yang diinputkan ke field kunci tamu merupakan nilai yang kunci primer yang telah ada di table masternya. Jika nilai kunci tamu yang diinputkan ke kunci tamu table transaksi tidak tersedia di table masternya maka nilai itu harus dapat ditolak oleh system. Untuk memudahkan anda memahami penjelasan ini, berkut ini kembali ditampilkan diagram relasi antara table nasabah dengan table rekening.

Gambar 5.1 Relasi Tabel Nasabah dengan Tabel Rekening rekening

*id nama alamat

1 Eva Fauzia Jln. Batang Marao No. 4 2 Muhammad Fadhil Cemara II Blok GG/5 3 Elice Muryanti Jln. Linggar Jari II No. 14 nasabah

*nomor **id saldo tgl_buat

1234 1 50.000 2007-02-12 09:18:29 0035 1 45.675.000 2000-12-10 10:05:00 5432 2 2.000.000 2007-02-12 09:20:08 2136 3 18.000 2007-02-12 09:30:09

(2)

Diagram relasi yang ditunjukkan pada Gambar 5.1 memperlihatkan bahwa, nilai yang diinputkan ke field id table rekening adalah nilai yang sudah ada di table masternya, yaitu nilei field id table nasabah. Jadi secara prosedur, operator harus meng-entry data ke table nasabah terlebih dahulu baru ia bisa meng-entry-kan data ke table rekening. Karena id yang ameng-entry-kan ia inputmeng-entry-kan table rekening adalah id yang telah ada di table nasabah. Jika validitas ini tidak dipenuhi maka integritas (satu-kesatuan-data) antara table nasabah dengan table rekening tidak dapat dipelihara dan makna serta fungsi database akan hilang.

Materi praktikum dengan pokok bahasan “Form Entry Data ke Tabel Transaksi” mengambil contoh pada form entry data ke table rekening karena materi ini telah didukung oleh aktifitas praktikum sebelumnya. Pada Modul I, anda telah membuat database bank dan di dalam database ini juga telah anda buat table nasabah dan table rekening. Tidak hanya itu, ketika anda membuat table rekening, field id table ini telah anda refensikan (references) ke field id table nasabah. Anda masih ingat perintah SQL yang telah anda ketikkan ketika anda membuat table rekening? Untuk membantu ingatan anda (yang sudah mulai agak pelupa ☺), di bawah ini ditampilkan kembali perintah yang telah anda berikan ketika membuat table tersebut;

create table rekening(nomor varchar(4) not null primary key, id int not null references nasabah(id), saldo decimal, tgl_buat date);

Jika sebagai programmer anda tidak mempertimbangkan keberadaan perintah tersebut ketika mendesing tampilan program dan merencanakan pengkodean (coding), maka ketika operator tidak memasukkan nilai field id rekening dengan nilai yang sudah ada di table nasabah maka nilai yang diinputkan akan dianggap salah oleh DBMS, dan program akan menampilkan pesan kesalahan tersebut. Berikut ini adalah contoh rancangan form interface ke table rekening yang telah mempertimbangkan masalah validasi field kunci primer dan field kunci tamu.

Gambar 5.2 Rancangan Form Interface ke Tabel rekening DateTimePicker

(Name= dtpTgl)

SpeedButton (name=spbShow)

(3)

Keterangan:

• Komponen DateTimePicker pada form di atas digunakan untuk mengisi tanggal pembuatan rekening agar ketika user mengisi data tanggal pembuatan rekening selalu dapat menyesuaikan dengan format penulisan tanggal system operasi computer. Ganti property name komponen ini menjadi dtpTgl, agar ketika menulis kode program lembih mudah mengingatnya.

• Komponen SpeedButton disediakan untuk menampilkan Daftar Nasabah, agar ketika operator memerlukan id Nasabah yang ada di table nasabah untuk diinputkan ke field id table rekening, datanya dapat dilihat terlebih dahulu.

Seperti di jelaskan di atas, ada dua field yang akan divalidasi pada form entry data table rekening ini, yaitu;

a. Validasi nilai field kunci primer (nomor rekening), yaitu nilei field nomor rekening harus unik

b. Validasi nilai field kunci tamu (id), yaitu id yang akan diinputkan adalah ada yang telah ada di table nasabah.

Dari segi rancangan form, untuk mengimplementasikan validasi ke kunci primer dilakukan dengan cara membuat dua buah procedure untuk mematikan fungsi komponen input data untuk field selain kunci primer (Edit2 – Edit6). Jika nilai yang dimasukkan ke input data untuk field kunci primer benar, baru input data ke field selain kunci primer diaktifkan. Untuk mengimplementasikan rancangan ini, dibuat prosedur dengan nama TdkSiapIsi. Prosedur ini akan berisi perintah-perintah untuk;

a. Menghapus nilai yang tampil di seluruh komponen input atau mengembalikannya ke nilai default,

b. Men-disable-kan (mengisi property Enabled komponen input dengan nilai False sehingga komponen ini tidak dapat diinputkan data selama nilai yang diinputkan ke kunci primer masih merupakan nilai yang tidak valid,

c. Mematikan fungsi tombol Simpan (memberi nilai false ke property Enabled btnSimpan)

Rancangan dan strategi penampilkan form seperti dijelaskan di atas dapat anda praktekkan melalui langkah-langkah praktikum pada pokok bahasan Aktifas Praktikum di bawah ini.

B. Aktifias Praktikum untuk Menerapkan Rancangan Form Interface

Praktikum dengan judul “Form Entry Data Tabel Transaksi” ini juga merupakan lanjutan dari praktikum-praktikum sebelumnya. Oleh karena itu, sebelum melaksanakan aktifitas di bawah ini, anda harus telah menyelesaikan praktikum di modul sebelumnya, termasuk latihan dan tugas yang ada di masing-masing modul tersebut. Setelah semua itu anda laksanakan, lakukan langkah-langkah di

(4)

bawah ini untuk menambahkan form interface ke table rekening dan merencanakan penampilan form setelah program di jalankan.

1. Jalankan Borland Delphi, 2. Buka project prjBank.dpr,

3. Tambahkan form baru ke project tersebut. Form ini akan digunakan sebagai form interface ke table rekening. Caranya; klik menu File | New | Form, 4. Ganti property name form tersebut menjadi frmRekening,

5. Simpan file unit form tersebut dengan nama uRekening.pas.

6. Letakkan komponen Label dan komponen Edit masing-masing sebanyak 6 buah, DateTimePicker dan SpeedButton masing-masing satu buah, serta komponen Button tiga buah.

7. Atur tata-letak komponen-komponen yang telah anda letakkan di form melalui langkah 6 di atas sehingga tampilan form seperti dicontohkan pada Gambar 5.2 di atas.

8. Untuk memudahk penjelasan ketika anda menulis kode program nanti, ganti property name komponen-komponen Button di atas sesuai dengan property Captionnya. Untuk tombol Simpan, ganti namanya menjadi btnSimpan, tombol Hapus, ganti menjadi btnHapus, dan tombo Tampilkan menjadi btnTampilkan serta tombol Tutup menjadi btnTutup.

9. Agar tombol Tutup (btnTutup) dapat digunakan untuk menutup form ketika diklik, ketik perintah Close; pada event on click tombol tersebut. Gunakan objek inspector untuk mendeklarasikan dan mengimplementasikan event procedure btnTutupClick. Untuk mengetahui bagaimana caranya, baca kembali modul-modul praktkum sebelumnya. Kode program event on click btnTutup ditampilkan di bawah ini;

procedure TfrmRekening.btnTutupClick(Sender: TObject); begin

Close; end;

10. Tampilkan editor program (file unit) dengan cara menekan tombol F12 (keyboard). Deklarasikan procedure TdkSiapIsi dan SiapIsi di dalam class TfrmRekening di bawah kata cadangan private. Lihat contoh di bawah ini;

type TfrmRekening = class(TForm) Label1: TLabel; Edit1: TEdit; Label2: TLabel; Peringatan!!!

- File unit uRekening harus berada di forder yang sama dengan file project (prjBank.dpr) dan file-file unit yang lainnya, yang telah anda buat melalui aktifitas praktikum sebelumnya.

(5)

Label3: TLabel; Label4: TLabel; Label5: TLabel; Edit2: TEdit; DateTimePicker1: TDateTimePicker; Edit3: TEdit; SpeedButton1: TSpeedButton; Edit4: TEdit; Edit5: TEdit; Label6: TLabel; Edit6: TEdit; btnSimpan: TButton; btnHapus: TButton; btnTampilkan: TButton; btnTutup: TButton;

procedure btnTutupClick(Sender: TObject); private

procedure TdkSiapIsi;

public

{ Public declarations } end;

Prosedur TdkSiapIsi digunakan untuk menghapus isi Edit1 – Edit6 (menghapus nilai property Text-nya) dan me-non-aktifkan fungsi komponen tersebut. Buat implementasi procedure ini (tulis kode programnya pada blok program utama. Contoh penggalan programnya adalah;

procedure TfrmRekening.TdkSiapIsi; begin Edit1.Text := ''; Edit2.Text := ''; Edit3.Text := ''; Edit4.Text := ''; Edit5.Text := ''; Edit6.Text := ''; Edit2.Color := clNone; Edit3.Color := clNone; Edit4.Color := clNone; Edit5.Color := clNone; Edit6.Color := clNone; Edit2.Enabled := False; Edit3.Enabled := False; Edit4.Enabled := False; Edit5.Enabled := False; Edit6.Enabled := False; end; Peringatan!!!

- Anda hanya menambahkan dua baris perintah di atas pada file unit uRekening, kode program lainnya telah ada di file unit anda

Mendeklarasikan Procedure TdkSiapIsi

(6)

11. Ketika program dijalankan dan form interface ke table reking ditampilkan maka diharapkan input data yang aktif hanya Edit1 saja. Tujuannya adalah agar ketika user menginputkan data ke table ini, user harus mengisi nilai Nomor Rekening terlebih dahulu dengan benar (valid). Jika nomor rekening yang diinputkan salah, maka system harus menginformasikan (menampilkan pesan kesalahan tersebut) dan membiarkan agar Edit2 – Edit6 dalam modus tidak aktif. Edit2 – Edit6 baru diaktifkan jika nomor rekening yang diinputkan adalah nomor rekening yang valid.

Untuk membuat agar ketika form interface table rekening aktif, Edit2 – Edit6 tidak aktif, panggil procedure TdkSiapIsi pada event on active form frmRekening. Kode program untuk memanggil form tersebut dicontohkan di bawah ini.

procedure TfrmRekening.FormActivate(Sender: TObject); begin

TdkSiapIsi;

end;

12. Untuk mengetahui apakah nilai yang diinputkan ke Edit1 merupakan nilai yang valid, sebelum menginputkan data ke field yang lain, cari nilai yang akan diinputkan tersebut ke field kunci primer table tersebut. Jika nilai yang diinputkan telah ada maka proses penginputkan data dapat ditolah oleh system dan memberikan kesempatan untuk mengulangi memasukkan nilai lainnya yang belum ada di kunci primer.

Modul praktikum ini akan mencontohkan cara memvalidasi data kunci primer menggunakan perintah SQL. Untuk dapat menjalankan perintah ini di pemrograman Delphi anda harus menggunakan komponen Data Set PSQLQuery. Lakukan langkah-langkah di bawah ini untuk mempersiapkan komponen Data Set sehingga ia dapat digunakan untuk menjalankan perintah SQL;

a. Ambil komponen PSQLQuery dari component pallet kemudian letakkan di data modul Dm (Data Modul Dm adalah data modul yang telah anda tambahkan pada project anda melalui katifiktas praktikum sebelumnya), b. Untuk memudahkan anda mengingat nama komponen ini, ganti property

namenya menjadi qrCari,

c. Isi property Database-nya dengan nilai dbServer (dbServer adalah nama komponen PSQLDatabase yang telah anda letakkan di data modul pada praktikum sebelumnya),

d. Perintah SQL untuk memvalidasi data field nomor (kunci primer table rekening) akan ditulis di Event on Exit komponen Edit1 pada form Catatan:

• Kreteria valid untuk nilai data field kunci primer sebenarnya tidak hanay nilainya harus selalu unik, akan tetapi juga harus sesuai dengan tipe data di struktur tablenya.

(7)

frmRekening, untuk itu tampilkan form frmRekening dan buat event prosedur-nya. Setelah kerangka prosedur dibuat, ketik kode program di bawah ini di antara begin dan end;

if Edit1.Text <> '' Then begin

Dm.qrCari.Close; Dm.qrCari.SQL.Clear;

Dm.qrCari.SQL.Add('select nomor from rekening where nomor = :nr'); Dm.qrCari.ParamByName('nr').AsString := Edit1.Text;

Dm.qrCari.Prepare; Dm.qrCari.Open;

if Dm.qrCari.RecordCount > 0 then begin

ShowMessage('Nomor Rekening Tersebut sudah ada. Ulangi...'); Edit1.SetFocus; end else begin Edit2.Enabled := True; Edit2.Color := clWindow; Edit3.Enabled := True; Edit3.Color := clWindow; end; end; Keterangan:

• Perintah SQL; “select nomor from rekening where nomor = :nr” adalah perintah untuk mencari nilai field nomor di table rekening yang sesuai dengan nilai parameter “nr

• Nilai parameter “nr” diinputkan pada komponen Edit1 (Lihat perintah: Dm.qrCari.ParamByName('nr').AsString := Edit1.Text;),

• Perintah if Dm.qrCari.RecordCount > 0 then untuk mengetahui apakah nilai yang dicari ketemu atau tidak. Jika ketemu maka perintah Dm.qrCari.RecordCount > 0 akan bernilai True dan pernyataan setelah then akan dijalankan, sebaliknya jika tidak ketmua maka penyataan setelah else yang akan dijalankan.

13. Untuk mengetahui dan memahami kegunaan perintah di atas, jalankanlah program anda dan coba menginputkan nomor rekning yang talah ada di table rekening, kemudian perhatikan respon dari program anda.

14. Setelah mencoba menginputkan nilai nomor rekening yang telah ada, coba juga menginputkan nomor rekening yang belum ada di table rekening. Sekali lagi amati tampilan program dan coba anda identiikfasik baris-bari program mana yang dieksekusi ketika uji-coba ini anda lakukan.

(8)

Menggunakan komponen DateTimePicker untuk memvalidasi nilai field tgl_buat

Field tgl_ buat di table rekening didefinsikan sebagai type data Date. Permasalahan yang sering muncul adalah ketidak sesuai format antara format yang diinputkan oleh operator dengan format tanggal yang diatur pada system komputer. Untuk mengatasi hal ini, anda dapat menggunakan komponen DataTimePicker. Komponen ini telah anda letakkan di form frmRekening ketika anda mendesign form ini.

Jika anda ingin menggunakan komponen ini sebagai panduan untuk menginputkan data Tanggal Buat, lanjutkan langkah praktikum di bawah ini;

16. Agar sesuai dengan kode program yang dicontohkan di bawah ini, ganti property name DataTimePicker1 menjadi dtpTgl,

17. Pada Event on Change komponen dtpTgl, tulis perintah untuk menyalin nilai property Date komponen dtpTgl ke property Text komponen Edit2. Contoh kode programnya adalah;

procedure TfrmRekening.dtpTglChange(Sender: TObject); begin

if Edit2.Enabled = True then

Edit2.Text := DateToStr(dtpTgl.Date) else

MessageDlg('Nomor Rekening harus diisi terlebih dulu. Ulangi ...', mtInformation, [mbOk], 0);

end;

18. Jalankan program, dan tampilkan form interface table rekening,

19. Coba klik DataTimePicket dtpTgl dalam keadaan data Nomor Rekening masih kosong. Perhatikan tampilan program anda, dan coba identifikasi kode program mana yang dieksekusi ketika anda melakukan percobaan tersebut. 20. Selanjutnya, coba anda inputkan data ke nomor rekening dengan yang valid,

setelah itu juga amati respon program anda. Identikfasi juga kode-kode program apa yang dieksekusi saat anda melakukan percobaan tersebut! 21. Untuk menginputkan data Tanggal Buat, klik dtpTgl dan pilih bulan serta

tahun yang anda inginkan kemudian klik salah satu tanggal yang ada di dtpTgl tersebut. Perhatikan apa yang terjadi, dan identifikasi kode program mana yang menyebabkan data tanggal di komponen DateTimePicker ter-copy ke Edit2 tersebut!

22. Stop program anda dan simpan perubahan yang telah anda perbuat. Memvalidasi Nilai Field Kunci Tamu

Kode program pada form interface table rekening selain harus memvalidasi nilai field kunci primer, juga harus memvalidasi nilai field kunci tamu (field id). Ketentuan nilai valid bagi field ini yaitu;

(9)

a) Nilai yang diinputkan ke field ini haruslah merupakan nilai yang telah ada di table masternya.

b) Tipe data nilai yang diinputkan harus sama dengan tipe data fieldnya

Untuk memenuhi aturan validitas integritas referensial (nilai kunci tamu harus mengacu nilai kunci primer table masternya) dapat menerapkan algoritma pemrograman berikut;

a) Masukkan nilai kunci tamu ke komponen input (misalnya Edit3), b) Cari nilai yang diinputkan tersebut di table masternya;

Jika tidak ketemu;

• Tampilkan pesan “Nilai yang anda inputkan tidak ada ditabel masternya”, • Kembali ke langkah 1.

Jika ketemu;

• Lanjutkan proses untuk menginputkan nilai field yang lainnya.

Untuk menerapkan algorita di atas ke dalam bahasa pemrograman Borland Delphi dapat dilakukan melalui langkah-langkah praktikum berikut;

23. Komponen Edit3 pada rancangan form di atas berfungsi untuk menerima input data ke field id, sehingga kode program untuk mencari nilai field kunci tamu dapat ditulis pada event on exit komponen ini, untuk itu lakukan; a. Sorot komponen Edit3,

b. Klik halaman Event di Object Inspector,

c. Klik ganda di sebelah kanan Event on Exit, sehingga kode program untuk event procedure on exit komponen terbentuk seperti dicontohkan di bawah ini;

procedure TfrmRekening.Edit3Exit(Sender: TObject); begin

end;

Jika kode program untuk mencari data ditulis pada blok event procedure on exit Edit3, ketika operator menginputkan data pada Edit3, dan setelah itu memindahkan pointer ke komponen input yang lain maka kode program akan dijalankan.

24. Perintah mencari data di table master akan menggunakan perintah SQL seperti dicontohkan ketika memvalidasi nilai kunci primer, dan data set yang digunakan juga akan menggunakan data set yang telah anda tambahkan pada aktifitas praktikum sebelumnya. Tulis kode program di bawah ini untuk memvalidasi nilai kunci tamu tersebut.

Dm.qrCari.Close; Dm.qrCari.SQL.Clear;

Dm.qrCari.SQL.Add('selec id, nama, alamat from nasabah where id = idn'); Dm.qrCari.ParamByName('id').AsInteger := StrToInt(Edit3.Text);

(10)

if Dm.qrCari.RecordCount > 0 then begin Edit4.Text := Dm.qrCari.Fields[1].AsString; Edit5.Text := Dm.qrCari.Fields[2].AsString; end else begin

MessageDlg('ID Nasabah yang anda inputkan tidak ada di tabel mastenya. Ulangi...!', mtInformation, [mbOk], 0);

Edit4.SetFocus; end;

Keterangan:

a) Perintah SQL untuk mencari data di table master adalah perintah;

select id, nama, alamat from nasabah where id = :idn,

b) Nilai parameter idn diisi melalui pernyataan perintah;

Dm.qrCari.ParamByName('id').AsInteger := StrToInt(Edit3.Text);

b) Perintah SQL untuk mencari field id di table nasabah tidak hanya meng-query field id saja akan tetapi juga field nama dan alamat, hal ini dikarenakan jika pencarian tersebut berhasil maka nilai field nama dan alamat table nasabah akan ditampilkan ke komponen Edit4 dan Edit5 melalui perintah;

Edit4.Text := Dm.qrCari.Fields[1].AsString; Edit5.Text := Dm.qrCari.Fields[2].AsString;

Melihat (loockup) field id di table nasabah untuk menginputkan ID Nasabah di table rekening

Jika terdapat sejumlah aturan yang harus dipenuhi oleh operator saat meng-entry data maka programmer harus menyiapakan falistas untuk membantu operator agar operator tidak melakukan kelasahan (meminimisasi kesalahan) saat melaksanan tugasnya tersebut. Pada form interface yang dirancang di atas membuka peluang operator untuk melakukan kesalahan karena operator harus mengingat nomor id nasabah yang telah ada di table nasabah. id untuk ia inputkan ke field kunci tamu di table rekening. Jika jumlah data di table nasabah tidak terlalu banyak masih memungkian bagi operator untuk mengingat id nasabah berapa saja yang telah diinputkan. Akan tetapi jika jumlah datanya sudah banyak akan sangkat mustahil bagi operator dapat mengingatnya. Oleh karena programmer haus menyediakan faslitas untuk menampilkan segakligus menggambil data id table nasbah untuk diinputkan ke field id table rekening. Berikut ini akan dicontohkan menyediakan faslitas untuk menampilkan data table nasabah menggunakan komponen DBGrid. Komponen ini akan tampil

(11)

ketika tombol spbCari diklik, dan data table nasabah akan tampil di sana. Komponen-komponen yang perlu ditambhkan untuk menerapkan rancangan ini adalah sebagai berikut;

a) DBGrid sebanyak 1 buah, b) DataSource sebanyak 1 buah

c) Data Set PSQLQuery sebanyak 1 buat. Komponen ini dapat menggunakan komponen yang telah ada. Pada aktifitas sebelumnya anda telah meletakan komponen PSQLQuery dan telah mengganti namanya menjadi qrCari. Gunakan saja komponen ini sebagai Data Set-nya

Langkah praktikum yang harus anda lakukan adalah sebagai berikut; 25. Tampilkan form frmRekening,

26. Ambil komponen DBGrid dari pallet DataControl dan letakkan di form frmRekenig, posisi sudut kiri atasnya tetap berada/menutupi kmponen spbCari. Lihat gambar 5.4 di bawah ini,

Gambar 5.4 Tampilan Form Interface Tabel Rekening Setelah Ditambahkan Komponen DBGrid

27. Agar ketika form tampil DBGrid1 tidak tampak, isi property Visible-nya dengan nilai False,

28. Setting ukuran dan posisinya sehingga dapat menampilkan nilai field id dan nama,

29. Agar ketika tombol spbCari diklik, DBGrid dapat menampilkan data id dan nama nasabah ketik kode program di bawah ini;

procedure TfrmRekening.spbCariClick(Sender: TObject); begin

if Edit3.Enabled = True then begin

(12)

Dm.dsShow.DataSet := Dm.qrCari; Dm.qrCari.Close;

Dm.qrCari.SQL.Clear;

Dm.qrCari.SQL.Add('select id, nama from nasabah order by id'); Dm.qrCari.Open;

DBGrid1.DataSource := Dm.dsShow; end else

MessageDlg('Nomor Rekening masih kosong. Isi nomor rekening terlebih dahulu', mtInformation, [mbOk], 0);

End;

30. Simpan perubahan yang telah anda lakukan dan coba menjalankan kembali program anda. Jangan lupa untuk menguji fasilitas yang telah anda tambahkan sambil berupaya memahami tujuan dan kode program yang telah anda tulis.

Kode Program untuk Menyimpan Data

Sejauh ini aktifitas praktikum anda baru meyiapkan fasilitas agar operator dapat menginputkan data dengan benar dan mudah, tetapi belum ada satu baris kode program pun yang anda buat untuk menyimpan data-data. Dari segi rancangan tampilan, anda telah menyiapkan tombol yang ber-caption-kan “Simpan”. Gunakan tombol ini untuk menyimpan data. Langkah praktkum yang dapat anda lakukan adalah;

31. Tampilkan frmRekening dan Sorot tombol Simpan,

32. Agar kode program yang dicontohkan di bawah ini sesuai dengan aktifitas praktikum anda, ganti property name tombol Simpan menjadi btnSimpan. 33. Buat event procedure on click di tombol simpan,

34. Ketik kode program di di bawah ini pada event on click tombol btnSimpan; if btnSimpan.Caption = 'Simpan' then

begin

Dm.qrProses.Close; Dm.qrProses.SQL.Clear;

Dm.qrProses.SQL.Add('insert into rekening(nomor, tgl_buat, id, saldo) values(:norek, :tglbuat, :idn, :saldon)');

Dm.qrProses.ParamByName('norek').AsString := Edit1.Text; Dm.qrProses.ParamByName('tglbuat').AsDate := StrToDate(Edit2.Text); Dm.qrProses.ParamByName('idn').AsInteger := StrToInt(Edit3.Text); Dm.qrProses.ParamByName('saldon').AsString := Edit6.Text; Dm.qrProses.Prepare; Dm.qrProses.ExecSQL; end; TdkSiapIsi;

(13)

C. Tugas

Kembangkanlah fasilitas yang ada pada program anda sehingga memiliki kemampuan-kemampuan berikut ini;

1. Membatasi panjang karakter yang dapat diinputkan ke Edit1 hanya sapanjnag 4 karakter karena field nomor table rekening bertipe varchar(4),

2. Ketika operator menginputkan nomor rekening yang sudah ada di database, tampilkan pesan “Nomor Rekening yang Anda Inputkan Sudah Ada, Tampilkan Adatanya?” seperti dicontohkan di bawah ini

Gambar 5.5 Message Dialog yang Tampil Jika Operator Memasukkan Nomor Rekening yang Sudah Ada di Database

Jika dialog di atas dijawab oleh operator dengan mengklik tombol Yes, maka pada form interface akan tampil data table rekening dan tombol simpan captionya berupan menjadi Upadate seperti ditunjukkan oleh Gambar 5.6 di bawah ini

Gambar 5.6 Tampilan Interface dan Data Tabel Rekening jika Operator Mengklik Tombol Yes pada Dialog Gambar 5.5

3. Dengan tampilan seperti ditunjukkan pada Gambar 5.6 di atas, operator dapat meng-edit Tanggal Buat, ID Nasabah, dan Saldo. Setelah data di-Edit,

(14)

operator dapat menyimpan perubahan tersebut dengan cara mengklik tombol “Update”

(15)

Lembar Jawaban & Tugas

NOBP : …….….….….….….. Nama : ….….….….….….….. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... Nilai:

(16)

... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...

Gambar

Gambar 5.1 Relasi Tabel Nasabah dengan Tabel Rekening rekening
Diagram relasi yang ditunjukkan pada Gambar 5.1 memperlihatkan bahwa, nilai  yang diinputkan ke field id table rekening adalah nilai yang sudah ada di table  masternya, yaitu nilei field  id table nasabah
Gambar 5.4 Tampilan Form Interface Tabel Rekening Setelah Ditambahkan  Komponen DBGrid
Gambar 5.5 Message Dialog yang Tampil Jika Operator Memasukkan  Nomor Rekening yang Sudah Ada di Database

Referensi

Dokumen terkait

Berdasarkan hasil penelitian yang dilakukan dapat disimpulkan bahwa pemberian mineral berpengaruh tidak nyata terhadap jumlah bakteri E.coli dan Coliform pada sapi bali

Sesuai dengan tingkat usia anak, tahapan bermain dibagi menjadi 3 (tiga) tahap yaitu; 1) exploration play (usia 0-2 tahun) dalam tahapan bermain ini anak sudah mulai

Persentase tunas tetraploid yang berasal dari perendaman konsentrasi 30 dan 75 µM juga termasuk tinggi yaitu 40 dan 45,71%, namun pada kedua konsentrasi tersebut

Pilihlah satu kemungkinan jawaban yang mempunyai arti yang berlawanan dengan kata yang dicetak dengan huruf kapital dengan cara menghitamkan bulatan yang sesuai

NPWP (Nomor Pokok wajib Pajak) adalah nomor yang diberikan kepada wajib pajak untuk mempermudah administrasi perpajakan yang dipergunakan sebagai tanda pengenal diri atau

Dari hasil komputasi diperoleh hasil bahwa teknik ekstrapolasi Richardson berulang dapat mempercepat laju konvergensi barisan nilai opsi yang dihasilkan oleh model binomial

Apabila sidik jari yang sudah direkam sebagaimana dimaksud dalam Pasal 6 ayat (1) mengalami perubahan akibat suatu hal seperti luka dan sebagainya sehingga tidak berfungsinya sidik

Penelitian yang dilakukan oleh Djumali, dkk (2014) berjudul perhitungan harga pokok produksi menggunakan metode variable costing dalam proses penentuan harga jual