Membuat nomor pinjam secara otomatis yang terdiri dari 9 digit yang dihasilkan dengan proses :
Dua digit pertama adalah tahun
Dua digit kedua adalah bulan
Lima digit terakhir adalah nomor urut
Sehingga menghasilkan nomor : 100100001
Adapun langkah-langkahnya adalah :
1. Membuat fungsi rightstr dengan cara mengetikan koding secara langsung diluar procedure di bawah implementation.
// Membuat Fungsi Left, right, mid String
06 | (Const Str: String; Size: Word): String; |
08 | if Size > Length(Str) then Size := Length(Str) ; |
09 | RightStr := Copy (Str, Length(Str)-Size+1, Size) |
13 | (Const Str: String; From, Size: Word): String; |
15 | MidStr := Copy (Str, From, Size) |
19 | (Const Str: String; Size: Word): String; |
21 | LeftStr := Copy (Str, 1, Size) |
2. Membuat koding pada Form Create sebagai berikut :
01 | procedure TFrmPinjam.FormCreate(Sender: TObject); |
07 | decodedate( date ,Thn,Bln,hari); |
10 | adoquery5.SQL.add( 'Select * from pinjam' ); |
12 | if adoquery5.RecordCount = 0 then |
16 | nom := rightstr(inttostr((adoquery5.fields[0].AsInteger)),5); |
17 | nomor := strtoint(nom) + 1; |
20 | for i := 1 to (4 - length(inttostr(nomor))) do |
24 | edit1.text := rightstr(inttostr(thn),2) + rightstr(( '0' +inttostr(bln)),2)+no+ inttostr(nomor); |
27 | decodedate( date ,Thn,Bln,hari); |
29 | tanggal := encodedate(thn,bln,hari); |
30 | edit2.Text := formatdatetime( 'DD/MM/yyyy' ,tanggal) ; |
34 | sg.Cells[1,0]:= 'Kode Buku' ; |
35 | sg.Cells[2,0]:= 'Judul buku' ; |
36 | sg.Cells[3,0]:= 'Pengarang' ; |
1. Mengaktifkan Delphi 7.0 dengan cara, klik Start, Klik All Program, Klik Borland Delphi 7, Klik Delphi 7.
2. Klik menu File, klik Open Project, tentukan folder tempat anda
menyimpan project PRjpustaka, lalu klik prjpustaka dan klik open
3. Klik Menu file, Klik New, klik form, ganti caption pada properties
dengan Input Data Transaksi Pengembalian, dan pada name ketikkan
frmkembali.
4. Klik menu View, lalu klik forms dan double klik frmenu, klik Transaksi pada frmmenu, klik Pengembalian dan ketikkan :
frmkembali.show;
5. Klik menu View, lalu klik forms dan double klik frmkembali, lengkapi form tersebut seperti gambar berikut :
Gambar 1. Membuat form Transaksi Pengembalian Buku
Adapun koding selengkapnya adalah :
a. Buatlah variable seperti di bawah ini :
b. Membuat Koding pada Form Activate
procedure TFrmKembali.FormActivate(Sender: TObject);
begin
edit1.SetFocus;
end;
c. Membuat Koding pada Form Create
01 | procedure TFrmKembali.FormCreate(Sender: TObject); |
05 | edit2.Enabled := false; |
06 | edit3.Enabled := false; |
07 | edit4.Enabled := false; |
08 | edit5.Enabled := false; |
09 | edit6.Enabled := false; |
10 | edit7.Enabled := false; |
11 | edit8.Enabled := false; |
12 | datetimepicker1.Enabled := false; |
d. Buat koding pada edit1 dengan menggunakan event on keypress
01 | procedure TFrmKembali . Edit1KeyPress(Sender: TObject; var Key: Char ); |
08 | adoquery1 . SQL . add( 'Select * from pinjam where id_pinjam="' + edit1 . Text + '"' ); |
10 | if not adoquery1 . Eof then |
14 | decodedate(datetimepicker1 . DateTime,thn,bln,hari); |
16 | tanggal := encodedate(thn,bln,hari); |
17 | edit2 . Text := formatdatetime( 'dd/mm/yyyy' ,tanggal); |
19 | edit3 . Text := adoquery1 . Fields[ 1 ].AsString; |
20 | tgl := adoquery1 . Fields[ 3 ].AsDateTime; |
21 | if datetostr(tgl) <> '' then |
23 | button1 . Enabled := false ; |
24 | datetimepicker2 . enabled := false ; |
25 | showmessage( 'Buku Sudah dikembalikan' ); |
28 | datetimepicker1 . Date := adoquery1 . Fields[ 2 ].AsDateTime; |
29 | datetimepicker2 . date := adoquery1 . fields[ 3 ].asdatetime; |
34 | adoquery2 . SQL . add( 'select * from Anggota where id_Anggota = "' + edit3 . Text + '"' ); |
36 | if not adoquery2 . Eof then |
38 | edit4 . text := adoquery2 . Fields[ 1 ].AsString; |
39 | edit5 . Text := adoquery2 . Fields[ 2 ].AsString; |
45 | adoquery3 . SQL . add( 'select
dpinjam.id_pinjam,dpinjam.id_buku,buku.judulbuku,jumlah from
dpinjam,buku where dpinjam.id_buku = buku.kode and id_pinjam ="' + edit1 . Text + '"' ); |
47 | if not adoquery3 . eof then |
48 | datasource1 . dataset := adoquery3; |
49 | DBGrid1 . DataSource := datasource1; |
52 | showmessage( 'data tidak ditemukan' ); |
e. Membuat koding pada datetimepicker2 dengan menggunakan event change
01 | procedure TFrmKembali.DateTimePicker2Change(Sender: TObject); |
05 | tgl1 := datetimepicker1. Date ; |
06 | tgl2 := datetimepicker2. date ; |
07 | if (tgl2 > tanggal) then |
09 | lama :=trunc(tgl2 - tgl1); |
10 | edit7.Text := inttostr(lama); |
11 | edit8.text := inttostr(strtoint(edit6.text) * lama); |
f. Membuat koding pada tombol prosess button1
procedure TFrmKembali.Button1Click(Sender: TObject);
begin
03 | adoquery1.SQL.add( 'update pinjam set tgl_kembali = "' + datetostr(datetimepicker2. date )+ '", tgl_tempo = "' + edit2.text + '" where id_pinjam ="' + edit1.text + '"' ); |
05 | showmessage( 'Data Sudah terupdate' ); |
| SUMBER : http://12094406.blogspot.com/2011_03_01_archive.html |
|
No comments:
Post a Comment