FISKOM Bab 3

13
3.3.5 Menyimpan Proyek dan Form Sebelum melanjutkan ke penulisan kode, simpanlah proyek ini dengan memilih F ile│Project Save As . . . . Simpanlah pada folder LatDelphi dengan nama form FBayar dan nama proyek Bayar. 3.3.6 Menguji Program Untuk sementara, jalankan program.Anda dapat mencoba mengisikan sesuatu pada kotak edit yang berjudul Total Pembelian:. Bila pengaturan property pada kotak edit telah sesuai dengan yang dianjurkan, maka hanya kotak edit ini yang bisa diisi ketika program dijalankan. 3.3.7 Mengisikan Kode Tombol H itung dimaksudkan untuk melakukan perhitungan pajak dan total pembayaran berdasarkan nilai yang dimasukkan pada kotak edit Total Pembelian: Untuk itu perlu dituliskan kode pada tombol tersebut. Berikut adalah langkah yang perlu Anda lakukan : 1. Klik pada tombol H itung (pada saat berada pada mode perancangan). 2. Aktifkan Object Inspector. 3. Klik pada tab events. 4. Klik ganda pada sel yang terletak di sebelah kanan OnClick.

Transcript of FISKOM Bab 3

3.3.5 Menyimpan Proyek dan Form

Sebelum melanjutkan ke penulisan kode, simpanlah proyek ini

dengan memilih File│Project Save As . . . . Simpanlah pada folder

LatDelphi dengan nama form FBayar dan nama proyek Bayar.

3.3.6 Menguji Program

Untuk sementara, jalankan program.Anda dapat mencoba

mengisikan sesuatu pada kotak edit yang berjudul Total

Pembelian:. Bila pengaturan property pada kotak edit telah sesuai

dengan yang dianjurkan, maka hanya kotak edit ini yang bisa diisi

ketika program dijalankan.

3.3.7 Mengisikan Kode

Tombol Hitung dimaksudkan untuk melakukan perhitungan pajak

dan total pembayaran berdasarkan nilai yang dimasukkan pada kotak

edit Total Pembelian: Untuk itu perlu dituliskan kode pada tombol

tersebut. Berikut adalah langkah yang perlu Anda lakukan :

1. Klik pada tombol Hitung (pada saat berada pada mode

perancangan).

2. Aktifkan Object Inspector.

3. Klik pada tab events.

4. Klik ganda pada sel yang terletak di sebelah kanan OnClick.

5. Setelah jendela kode muncul, ketikkan kode (yang tidak

dicetak tebal) berikut:

procedure TFormPembayaran.ButtonHitungClick(Sender:

TObject);

var

TotalPembelian : Currency;

begin

ThousandSeparator := '.' ;

TotalPembelian :=

StrToCurr(FormPembayaran.EditTotalPembelian.Text);

FormPembayaran.EditPajak.Text :=

CurrToStrF(0.1*TotalPembelian, ffNumber,0);

FormPembayaran.EditTotalPembayaran.Text :=

CurrToStrF(1.1*TotalPembelian, ffNumber,0);

end;

Penjelasan terhadap kode di atas:

Kode:

Var

TotalPembelian : Currency;

Digunakan untuk menciptakan variable bernama TotalPembelian

yang bertipe Currency (bisa untuk menyimpan data uang).

Pernyataan :

ThousandSeparator := ‘.’ ;

Digunakan untk memberitahukan bahwa pemisah ribuan berupa

titik. Thousand Separator adalah variable global yang

digunakan untuk mengatur tanda pemisah ribuan. Bila tidak

ditentukan, pemisah ribuan akan berupa koma.

Pernyataan :

TotalPembelian :=

StrToCurr(FormPembayaran.EditTotalPembelian.Text);

Digunakan untuk mengonversi isi kotak edit

EditTotalPembelian ke variable TotalPembelian. StrToCurr

adalah fungsi yang disediakan Delphi untuk melakukan

konversi dari data bertipe string ke data bertipe Currency.

Pada pernyataan di atas :

FormPembayaran.EditTotalPembelian.Text

Berarti properti Text milik EditTotalPembelian yang berada

pada form FormPembayaran. Tanda titik digunakan untuk

memisahkan antara nama form dan nama kotak Edit, serta

antara kotak edit dan nama propertinya.

Untuk mengatur tanda pecahan (yang default nya berupa

titik), Anda bisa mengisikan tanda pecahan ke variable

global bernama Decimal Separator. Misalnya:

DecimalSeparator := ‘,’ ;

Pernyataan :

FormPembayaran.EditPajak.Text :=

CurrToStrF(0.1*TotalPembelian, ffNumber,0);

Digunakan untuk mengisikan hasil perkalian 0,1 dengan

TotalPembelian (untuk memperoleh pajak 10%). Mengingat

property Text milik EditPajak (yang berada pada form

FormPembayaran) bertipe string, hasil perkalian tersebut

perlu dikonversi ke string dengan menggunakan fungsi

CurrToStrF. Fungsi ini dapat digunakan untuk memformat

string yang dihasilkan, dengan cara menyebutkan format yang

diinginkan pada parameter kedua. Konstanta ffNumber pada

parameter kedua ini memberitahukan bahwa hasil konversi

mengandung pemisah ribuan. Parameter ketiga pada CurrToStrF

yang berupa nol dimaksudkan agar bagian pecahan tidak

disertakan. Bila misalnya parameter ketiga diisi dengan 2,

maka bagian pecahan akan berupa 2 digit.

Pernyataan :

FormPembayaran.EditTotalPembayaran.Text :=

CurrToStrF(1.1*TotalPembelian, ffNumber,0);

Dipakai untuk mengisikan total yang harus dibayar ke kotak

edit EditTotalPembayaran.

Tombol Ulang dimaksudkan untuk melakukan pengulangan

perhitungan pajak dan total pembayaran pada kotak edit Total

Pembelian: Untuk itu perlu dituliskan kode pada tombol tersebut.

Berikut adalah langkah yang perlu Anda lakukan :

1. Klik pada tombol Ulang (pada saat berada pada mode

perancangan).

2. Aktifkan Object Inspector.

3. Klik pada tab events.

4. Klik ganda pada sel yang terletak di sebelah kanan OnClick.

5. Setelah jendela kode muncul, ketikkan kode (yang tidak

dicetak tebal) berikut:

procedure TFormPembayaran.ButtonUlangClick(Sender: TObject);

begin

EditTotalPembelian.Text :=' ';

EditPajak.Text :=' ';

EditTotalPembayaran.Text :=' ';

end;

Tombol Selesai dimaksudkan untuk keluar dari program yang

sedang dieksekusi. Untuk itu perlu dituliskan kode pada tombol

tersebut. Berikut adalah langkah yang perlu Anda lakukan:

1. Klik pada tombol Ulang (pada saat berada pada mode

perancangan).

2. Aktifkan Object Inspector.

3. Klik pada tab events.

4. Klik ganda pada sel yang terletak di sebelah kanan OnClick.

5. Setelah jendela kode muncul, ketikkan kode (yang tidak

dicetak tebal) berikut:

procedure TFormPembayaran.ButtonKeluarClick(Sender:

TObject);

begin

close;

end;

3.3.8 Menguji Form

Sekarang saatnya untuk menguji program. Jalankan program dan

kemudian ujilah dengan memasukkan suatu nilai (misalnya 25000) ke

dalam kotak edit yang berada disebelah kanan tulisan

TotalPembelian:. Lalu klik lah tombol Hitung. Anda akan segera

melihat hasilnya sebagaimana diperlihatkan pada Gambar 3.6.

Gambar 3.6 Form Bayar.wfm setelah proses perhitungan dilakukan

3.3.9 Mengatur Pemasukan Data

Bila Anda mencoba memasukkan data yang yang mengandung huruf

(misalnya 5R) pada kotak edit yang berada disebelah kanan tulisan

Total Pembelian: dan kemudian Anda mengklik tombol Hitung, Delphi

akan segera menampilkan pesan kesalahan.

Untuk mengatasi kesalahan seperti itu, Anda bisa melakukan

pencegahan terhadap pemasukan karakter selain angka pada kejadian

OnKeyPress milik kotak edit. Berikut adalah langkah yang perlu

Anda lakukan :

1. Klik pada kotak edit EditTotalPembelian.

2. Aktifkan Object Inspector

3. Klik pada tab Events.

4. Klik ganda pada sel yang terletak di kanan OnKeyPress

5. Setelah jendela kode muncul, ketikkan kode (yang tidak

dicetak tebal) berikut:

procedure TFormPembayaran.EditTotalPembelianKeyPress(Sender:

TObject;

var Key: Char);

begin

if not (Key in ['0'..'9', #8]) then

key := #0; // Null end;

kode :

if not (Key in ['0'..'9', #8]) then

key := #0; // Null

digunakan untuk mengganti karakter yang diketik pemakai sekiranya

karakter tersebut (diwakili oleh parameter Key) tidak berupa

angka (0 sampai dengan 9) atau tombol backspace (#8). Penggantian

dilakukan dengan mengubah karakter yang diketik (yang ada pada

parameter Key) dengan karakter bull (#0). Efek yang terjadi

dengan kode ini, hanya angka 0 sampai dengan 9 yang bisa

dimasukkan.

Anda akan mempelajari operator not pada Bab 4. Pernyataan if

akan Anda pelajari pada Bab 5, sedangkan konstanta himpunan

Setelah kode di atas Anda ketik, cobalah untuk menjalankan

program. Coba ketikkan karakter selain angka. Akan terlihat bahwa

karakter-karakter tersebut tidak dapat dimasukkan ke kotak edit.

3.4 Tanya dan Jawab

1. Apa perbedaan Enabled dan ReadOnly pada kotak Edit?

Jawab:

Bila Enabled dalam keadaan False, kotak edit menjadi tidak

tersentuh. Beda halnya kalau ReadOnly bernilai True. Pada

keadaan ini, sekalipun isi kotak edit tidak dapat diedit,

Anda masih bisa memblok isi pada kotak edit dengan

menggunakan mouse.

2. Berdasarkan contoh di depan, saya tidak melakukan pengaturan

pada variable ThousandSeparator, tetapi ternyata nilai uang

yang ditampilkan telah menggunakan tanda titik (bukan koma).

Mengapa demikian?

Jawab:

Secara default, pemisah ribuan (dan juga beberapa parameter

lainnya, misalnya format tanggal) ditentukan oleh

International Setting (pada Control Panel Windows). Bila

komputer anda telah menggunakan format Indonesian, dengan

Delphi juga menyediakan komponen semacam kotak edit yang telah

dilengkapi dengan pengecekan karakter yang berlaku (polanya

dapat ditentukan sendiri oleh pemprogram). Komponen ini

disebut EditMask dan terdapat pada halaman Additional (berupa

sendirinya pemisah ribuan yang digunakan adalah titik, bukan

koma.bila anda bermaksud membuat program yang tidak

tergantung oleh pengaturan pada Internatioanal Setting, anda

perlu mengatur isi ThousandSeparator untuk menyatakan tanda

pemisah ribuan.

3.5 Latihan

Modifikasilah program Bayar sehingga kalau tombol Hitung

diklik, tombol ini menjadi mati (Enabled = False). Selanjutnya,

bila kotak edit untuk mengisi nilai pembelian dalam keadaan

terfokus, ubahlah Enabled milik tombol hitung menjadi True.

3.6 Kesimpulan

Kotak Edit adalah komponen yang biasa digunakan untuk

memasukkan data dalam bentuk satu baris. Jika kotak edit

dimaksudkan untuk tidak diisi maka property Enabled diatur

bernilai False. Dalam Program Pembayaran ini digunakan tipe

Currency (untuk menyimpan data uang). Untuk mengatur tanda

pecahan, bisa mengisi tanda pecahan ke variable global bernama

Decimal Separator. StrToCurr adalah fungsi yang disediakan Delphi

untuk melakukan konversi dari data bertipe string ke data bertipe

Currency. Untuk melakukan pencegahan pemasukan karakter selain

angka pada OnKeyPress milik kotak edit menggunakan karakter

parameter Key. Delphi juga menyediakan komponen semacam kotak

edit yang telah dilengkapi dengan pengecekan karakter yang

berlaku (polanya dapat ditentukan sendiri oleh pemprogram).

Komponen ini disebut EditMask.