TUTORIAL SIM PERPUSTAKAAN (dengan DELPHI)
Berawal dari tugas kuliah yang diberikan oleh dosen, yang saya akui sangat sulit untuk saya waktu itu untuk mengerjakannya, karena waktu itu saya sama sekali belum mengenal Delphi. Setengah mati saya mencari-cari artikel di google tentang Sistem Informasi Perpustakaan dan juga koding-kodingnya, apalagi koding untuk multiuser, ampun deh. Tapi, Alhamdulillah saya mendapat pelajaran dari tugas-tugas yang diberikan tersebut. Baiklah langsung saja... Berikut tutorialnya...
Untuk Menu Login dengan multi usernya sudah saya bahas pada artikel sebelumnya, jadi silahkan buka saja link berikut..tutorial login multi user dengan delphi (Sistem Informasi Perpustakaan)..
Untuk Menu Login dengan multi usernya sudah saya bahas pada artikel sebelumnya, jadi silahkan buka saja link berikut..tutorial login multi user dengan delphi (Sistem Informasi Perpustakaan)..
1. Kemudian
masuk pada tahap pembuatan form utama. Buka form baru dan simpan dengan nama Menu. Desainlah form utama seperti
gambar di bawah ini:
- Letakkan MainMenu pada komponen Standar. Klik 2 kali, lalu isi menu sesuai keinginan. (pada gambar terdapat menu FILE. Submenunya ada 4, data user, data karyawan, data anggota, data buku. Selanjutnya ada menu TRANSACTION, dan EXIT).
- Untuk menu EXIT, klik 2 kali, dan isi dengan koding sbb:
begin
Application.terminate;
End;
2.
Selanjutnya adalah pembuatan form input data
karyawan. Buka form baru dan simpan dengan nama Karyawan.
- Kemudian pada form menu utama, klik 2 kali pada menu karyawan dan isi dengan koding berikut:
Begin
Form4.showmodal;
End;
- Letakkan komponen di bawah:
Nama komponen
|
Object Inspector
|
|
GroupBox1
|
Caption
|
Data
Karyawan
|
Label1
|
Caption
|
No
|
Label2
|
Caption
|
NIK
|
Label3
|
Caption
|
Nama
|
Label4
|
Caption
|
Alamat
|
Label5
|
Caption
|
Tempat
Lahir
|
Label6
|
Caption
|
Tanggal
Lahir
|
Label7
|
Caption
|
Jenis
Kelamin
|
Label8
|
Caption
|
Agama
|
Label9
|
Caption
|
Pendidikan
terakhir
|
Label10
|
Caption
|
Status
Perkawinan
|
Label11
|
Caption
|
Jabatan
|
Label12
|
Caption
|
No
telp
|
Edit1
|
Name
|
Eno
|
Edit2
|
Name
|
Enik
|
Edit3
|
Name
|
Enama
|
Edit4
|
Name
|
Ealamat
|
Edit5
|
Name
|
Etempat
|
DateTimePicker
|
Name
|
Dtp1
|
ComboBox1
|
Name
|
Cbbjk
|
Items
|
Laki-laki
Perempuan
|
|
ComboBox2
|
Name
|
Cbbagama
|
Items
|
Islam
Katolik
Hindu
Budha
Kristen
|
|
ComboBox3
|
Name
|
Cbbpt
|
Items
|
S1
S2
S3
D3
SMA/sederajat
|
|
ComboBox4
|
Name
|
Cbbsk
|
Items
|
Kawin
Belum
|
|
ComboBox5
|
Name
|
Cbbjabat
|
Items
|
Kepala
Wakil
Administrator
|
|
Edit6
|
Name
|
Enotelp
|
GroupBox2
|
Caption
|
Cari
data (berdasarkan Nik)
|
Edit7
|
Name
|
Eecari1
|
Button1
|
Caption
|
TAMBAH
|
Name
|
Btambah
|
|
Button2
|
Caption
|
SIMPAN
|
Name
|
Bsimpan
|
|
Button3
|
Caption
|
BATAL
|
Name
|
Bbatal
|
|
Button4
|
Caption
|
EDIT
|
Name
|
Bedit
|
|
Button5
|
Caption
|
HAPUS
|
Name
|
Bhapus
|
|
Button6
|
Caption
|
KELUAR
|
Name
|
Bkeluar
|
|
Button7
|
Caption
|
LIHAT
LAPORAN
|
Name
|
B1
|
|
Button8
|
Caption
|
TAMPILKAN
|
Name
|
Btampil
|
|
DbGrid1
|
Name
|
Dbgrd1
|
Datasource
|
DataModule1.dskaryawan
|
|
DbNavigator
|
Name
|
Dbnvgr1
|
datasourse
|
DataModule1.dskaryawan
Silahkan isi koding-kodingnya sbb: |
Silahkan isi koding-kodingnya sbb:
private
private
{
Private declarations }
procedure
mati;
procedure
hidup;
procedure kosong;
procedure tabel;
procedure
tampil;
public
{ Public declarations }
end;
var
Form4: TForm4;
implementation
uses
dmperpustakaan;
{$R *.dfm}
procedure tform4.mati;
begin
eno.Enabled:=false;
enik.Enabled:=false;
enama.Enabled:=false;
ealamat.Enabled:=false;
etempat.Enabled:=false;
dtp1.Enabled:=false;
cbbjk.Enabled:=false;
cbbagama.Enabled:=false;
cbbpt.Enabled:=false;
cbbsk.Enabled:=false;
cbbjabat.Enabled:=false;
enotlp.Enabled:=false;
end;
procedure tform4.hidup;
begin
enik.Enabled:=true;
enama.Enabled:=true;
ealamat.Enabled:=true;
etempat.Enabled:=true;
dtp1.Enabled:=True;
cbbjk.Enabled:=true;
cbbagama.Enabled:=true;
cbbpt.Enabled:=true;
cbbsk.Enabled:=true;
cbbjabat.Enabled:=true;
enotlp.Enabled:=true;
end;
procedure tform4.kosong;
begin
eno.Text:='';
enik.Text:='';
enama.Text:='';
ealamat.Text:='';
etempat.Text:='';
cbbjk.Text:='';
cbbagama.Text:='';
cbbpt.Text:='';
cbbsk.Text:='';
cbbjabat.Text:='';
enotlp.Text:='';
end;
procedure tform4.tabel;
begin
with DataModule1 do
begin
tblkaryawan['NO']:=Eno.Text;
tblkaryawan['NIK']:=Enik.Text;
tblkaryawan['Nama']:=Enama.Text;
tblkaryawan['Alamat']:=Ealamat.Text;
tblkaryawan['Tempat Lahir']:=Etempat.Text;
tblkaryawan['Tanggal Lahir']:=dtp1.Date;
tblkaryawan['Jenis Kelamin']:=cbbjk.Text;
tblkaryawan['Agama']:=cbbagama.Text;
tblkaryawan['Pendidikan Terakhir']:=cbbpt.Text;
tblkaryawan['Status Perkawinan']:=cbbsk.text;
tblkaryawan['Jabatan']:=cbbjabat.Text;
tblkaryawan['No Telp']:=enotlp.Text;
end;
end;
procedure
tform4.tampil;
begin
with
DataModule1 do
begin
Eno.Text:=tblkaryawan['NO'];
Enik.Text:=tblkaryawan['NIK'];
Enama.Text:=tblkaryawan['Nama'];
Ealamat.Text:=tblkaryawan['Alamat'];
Etempat.Text:=tblkaryawan['Tempat
Lahir'];
cbbjk.Text:=tblkaryawan['Jenis
Kelamin'];
cbbagama.Text:=tblkaryawan['Agama'];
cbbpt.Text:=tblkaryawan['Pendidikan
Terakhir'];
cbbsk.Text:=tblkaryawan['status
Perkawinan'];
cbbjabat.Text:=tblkaryawan['Jabatan'];
enotlp.Text:=tblkaryawan['No
Telp'];
end;
end;
- Klik 2 kali pada form kosong, kemudian isi dengan koding di bawah:
procedure
TForm4.FormCreate(Sender: TObject);
begin
bbatal.Enabled:=false;
bsimpan.Enabled:=false;
mati;
end;
- Klik 2 kali pada button TAMBAH, kemudian isi dengan koding di bawah:
procedure
TForm4.btambahClick(Sender: TObject);
begin
with DataModule1 do
begin
hidup;
kosong;
eno.Text:=eno.Text+inttostr(tblkaryawan.RecordCount+1);
enik.SetFocus;
bsimpan.Enabled:=true;
bhapus.Enabled:=true;
bedit.Enabled:=false;
bbatal.Enabled:=true;
btambah.Enabled:=false;
end;
end;
- Klik 2 kali pada button SIMPAN, kemudian isi dengan koding di bawah:
procedure
TForm4.bsimpanClick(Sender: TObject);
begin
with DataModule1 do
begin
bsimpan.Enabled:=false;
bedit.Enabled:=true;
btambah.Enabled:=true;
bhapus.Enabled:=true;
bbatal.Enabled:=true;
//mencek inputan yang masih kosong
if(Eno.Text='')
or (Enik.Text='') or (enama.Text='') or (ealamat.Text='')or
(etempat.Text='')
or (cbbjk.Text='')or (cbbagama.Text='') or (cbbpt.Text='')
or
(cbbjabat.Text='') or (cbbsk.Text='')or (enotlp.Text='')
then
//tampilkan
pesan kesalahan
begin
MessageDlg('Maaf
masih ada data yang kosong',mtWarning,[mbOK],0);
bsimpan.Enabled:=True
end
else
begin
tblkaryawan.Append;
tabel;
tblkaryawan.Post
end;
end;
end;
- Klik 2 kali pada button BATAL, kemudian isi dengan koding di bawah:
procedure
TForm4.bbatalClick(Sender: TObject);
begin
with DataModule1 do
begin
tblkaryawan.Cancel;
btambah.Enabled:=true;
bedit.Enabled:=true;
bhapus.Enabled:=true;
bsimpan.Enabled:=false;
bbatal.Enabled:=false;
kosong;
enik.SetFocus;
end;
end;
- Klik 2 kali pada button EDIT, kemudian isi dengan koding di bawah:
procedure
TForm4.beditClick(Sender: TObject);
begin
with DataModule1 do
begin
bbatal.Enabled:=false;
bsimpan.Enabled:=false;
bedit.Enabled:=true;
btambah.Enabled:=true;
bhapus.Enabled:=true;
bkeluar.Enabled:=true;
tblkaryawan.Edit;
tabel;
tblkaryawan.Post;
end;
end;
- Klik 2 kali pada button HAPUS, kemudian isi dengan koding di bawah:
procedure
TForm4.bhapusClick(Sender: TObject);
var
hapus:string;
begin
with DataModule1 do
begin
hapus:='Apakah data
ini benar-benar ingin dihapus ?';
if
(application.MessageBox(Pchar(hapus),'Peringatan',MB_YESNO or
MB_ICONQUESTION)=IDYES)
then
tblkaryawan.Delete;
end;
end;
- Klik 2 kali pada button TAMPIL, kemudian isi dengan koding di bawah:
procedure
TForm4.btampilClick(Sender: TObject);
begin
tampil;
hidup;
btambah.Enabled:=false;
eEcari1.Text:='';
end;
- Klik 2 kali pada edit Cari, kemudian isi dengan koding di bawah:
procedure
TForm4.eEcari1Change(Sender: TObject);
begin
with DataModule1 do
begin
tblkaryawan.Locate('NIK',eEcari1.Text,[]);
end;
end;
- Klik Even di sebelah properties, kemudian klik oncellclick dan isi dengan koding di bawah:
procedure
TForm4.dbgrd1CellClick(Column: TColumn);
begin
eno.Text:=dbgrd1.Fields[0].AsString;
enik.Text:=dbgrd1.Fields[1].AsString;
enama.Text:=dbgrd1.Fields[2].AsString;
ealamat.Text:=dbgrd1.Fields[3].AsString;
etempat.Text:=dbgrd1.Fields[4].AsString;
dtp1.date:=dbgrd1.Fields[5].AsDateTime;
cbbjk.Text:=dbgrd1.Fields[6].AsString;
cbbagama.Text:=dbgrd1.Fields[7].AsString;
cbbpt.Text:=dbgrd1.Fields[8].AsString;
cbbjabat.Text:=dbgrd1.Fields[10].AsString;
enotlp.Text:=dbgrd1.Fields[11].AsString;
end;
- Untuk memberikan pesan jika kita memasukkan NIK yang telah ada maka klik 2 kali pada edit NIK, kemudian isi dengan koding di bawah:
procedure
TForm4.enikChange(Sender: TObject);
var
b:Boolean;
begin
with DataModule1 do
begin
b:=False;
b
:= tblkaryawan.Locate('NIK',Enik.Text,[]);
if
b= True then
begin
ShowMessage('NIK
sudah ada');
Enik.Enabled:=True;
Enik.SetFocus;
end;
end;
end;
- Pada Even, klik keypress pada edit cari kemudian isi dengan koding di bawah:
procedure
TForm4.eEcari1KeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then
begin
with
DataModule1 do
begin
tblkaryawan.Filtered:=false;
tblkaryawan.Filter:='NIK='
+ QuotedStr(eEcari1.Text);
tblkaryawan.Filtered:=true;
end;
if DATAMODULE1.tblkaryawan.IsEmpty then
begin
DATAMODULE1.tblkaryawan.Filtered:=false;
ShowMessage('Data
Tidak ditemukan');
eEcari1.Clear;
end;
end;
end;
- Klik 2 kali pada button KELUAR, kemudian isi dengan koding di bawah:
procedure
TForm4.bkeluarClick(Sender: TObject);
begin
close;
kosong;
mati;
end;
1. Membuat
laporan dengan RAVE.
- Komponen yang dibutuhkan adalah : RvProject dan RvDatasetConnection (pada komponen Rave)
- Pada RvDatasetConnection, pada properties dataset isi dengan DataModule1.tblkaryawan.
- Klik 2 kali pada RvProject sehingga pada form tampil layar seperti ini:
- Dari jendela Report Rave, klik File-New Data Object – Direct Data View dan klik Next
- Klik Finish
- Pada jendela Onobject tri view, klik report Library, dan klik report1
- Dari menu Tools, pilih Report Wizard, Simple Table –dataview1-Next
- Kemudian beri centang pada field yang ingin Anda tampilkan pada laporan nanti. Kalau ingin semuanya maka klik All, kemudian Next
- Kemudian Next lagi
- Pada text Report Title, hapus dan ganti dengan judul laporan yang diinginkan, misalnya
LAPORAN DATA KARYAWAN
- Klik Next
- Pada Wizard ini berfungsi untuk mengganti pilihan font untuk setiap masing-masing bagian dari report. Caranya klik pada command Change Font
- Jika sudah selesai, klik Generate untuk mengakhiri perintah. Dan perhatikan perubahan tampilan pada jendela report seperti berikut.
- Jika sudah selesai maka klik file-save as (menyimpannya harus satu folder dengan project Delphi yang Anda buat)
- Kemudian kembali ke form delphi
- Pada properties RvProject, klik project file dan cari laporan yang sudah Anda buat tadi, jika sudah menemukan klik open
- Dan untuk tombol button LIHAT LAPORAN, klik 2 kali, lalu isi dengan koding ini:
Begin
Rvproject1.executereport(‘report2’);
End;
2.
Selanjutnya adalah membuat form data user. Buka form
baru dan simpan dengan nama User.
- Kemudian pada form menu utama, klik 2 kali pada menu user dan isi dengan koding berikut:
Begin
Form5.showmodal;
End;
- Kemudian desainlah formnya seperti gambar berikut:
- Isilah komponen sbb:
Palate
|
Caption
|
Name
|
|
GroupBox1
|
Data
User
|
||
Label1
|
USERNAME
|
||
Label2
|
PASSWORD
|
||
Label3
|
NAMA
|
||
Label4
|
LEVEL
|
||
Label5
|
Tanggal
Login
|
||
ComboBox1
|
Cbbuser
|
||
Edittext1
|
Epass
|
||
Edittext2
|
Enama
|
||
ComboBox2
|
Cbb1
|
||
Items
|
Kepala
Wakil
Administrator
|
||
DateTimePicker
|
Dtp1
|
||
Button1
|
Caption
|
TAMBAH
|
|
Name
|
Btambah
|
||
Button2
|
Caption
|
SIMPAN
|
|
Name
|
Bsimpan
|
||
Button3
|
Caption
|
BATAL
|
|
Name
|
Bbatal
|
||
Button4
|
Caption
|
EDIT
|
|
Name
|
Bedit
|
||
Button5
|
Caption
|
HAPUS
|
|
Name
|
Bhapus
|
||
Button6
|
Caption
|
KELUAR
|
|
Name
|
Bkeluar
|
||
Button7
|
Caption
|
LIHAT
LAPORAN
|
|
Name
|
B1
|
||
Button8
|
Caption
|
TAMPILKAN
|
|
Name
|
Btampil
|
||
DbGrid1
|
Name
|
Dbgrd1
|
|
Datasource
|
DataModule1.ds1
|
||
DbNavigator
|
Name
|
Dbnvgr1
|
|
datasourse
|
DataModule1.ds1
|
||
- Supaya combobox terisi secara otomatis dan ketika kita klik maka password dan nama akan secara otomatis terisi, maka klik 2 kali pada combobox username, lalu isi dengan koding berikut:
procedure
TForm2.cbbuserChange(Sender: TObject);
begin
if
DataModule1.tblkaryawan.Locate('NIK',cbbuser.Text,[])
then
begin
epass.Text:=cbbuser.Text;
enama.Text:=
DataModule1.tblkaryawan.FieldValues['Nama'];
end;
end;
3. Untuk koding
TAMBAH, SIMPAN, EDIT, BATAL, HAPUS, LIHAT LAPORAN, TAMPIL, KELUAR dll, hampir
sama dengan koding pada form data karyawan. Anda hanya
tinggal menyesuaikan saja.
4. Kemudian
form Data
Buku. Buka form baru dan simpan dengan nama Buku.
- Kemudian pada form menu utama, klik 2 kali pada menu buku dan isi dengan koding berikut:
Begin
Form6.showmodal;
End;
- Desainlah formnya seperti gambar di bawah:
- Atur komponennya sbb:
Nama komponen
|
Object Inspector
|
|
GroupBox1
|
Caption
|
Data
Buku
|
Label1
|
Caption
|
No
|
Label2
|
Caption
|
Kode
Buku
|
Label3
|
Caption
|
Judul
Buku
|
Label4
|
Caption
|
Kategori
|
Label5
|
Caption
|
Letak
|
Label6
|
Caption
|
Tahun
Lahir
|
Label7
|
Caption
|
Tahun
Terbit
|
Label8
|
Caption
|
Deskripsi
|
Label9
|
Caption
|
Nama
Penulis
|
Label10
|
Caption
|
Nama
Penerbit
|
Label11
|
Caption
|
Jumlah
Buku
|
Edit1
|
Name
|
Eno
|
Edit2
|
Name
|
Ekodebuku
|
Edit3
|
Name
|
Ejudul
|
Combobox1
|
Name
|
cbkategori
|
Items
|
umum
cerita
fiksi
ilmu
pengetahuan
kitab
|
|
Edit4
|
Name
|
Eletak
|
Combobox2
|
Name
|
cbtahun
|
Items
|
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
|
|
Edit5
|
Name
|
Edeskripsi
|
Edit6
|
Name
|
Enamapenulis
|
Edit7
|
Name
|
Enamapenerbit
|
Edit8
|
Name
|
Ejumlah
|
GroupBox2
|
Caption
|
Cari
data (berdasarkan kode buku)
|
Edit9
|
Name
|
Eecari1
|
Button1
|
Caption
|
TAMBAH
|
Name
|
Btambah
|
|
Button2
|
Caption
|
SIMPAN
|
Name
|
Bsimpan
|
|
Button3
|
Caption
|
BATAL
|
Name
|
Bbatal
|
|
Button4
|
Caption
|
EDIT
|
Name
|
Bedit
|
|
Button5
|
Caption
|
HAPUS
|
Name
|
Bhapus
|
|
Button6
|
Caption
|
KELUAR
|
Name
|
Bkeluar
|
|
Button7
|
Caption
|
LIHAT
LAPORAN
|
Name
|
Blap
|
|
Button8
|
Caption
|
TAMPILKAN
|
Name
|
Btampil
|
|
DbGrid1
|
Name
|
Dbgrd1
|
Datasource
|
DataModule1.dsbuku
|
|
DbNavigator
|
Name
|
Dbnvgr1
|
datasourse
|
DataModule1.dsbuku
|
5. Kemudian
pembuatan form data anggota. Buka form baru dan simpan dengan nama Anggota.
6. Desainlah
seperti gambar di bawah:
- Atur komponennya sbb:
Nama komponen
|
Object Inspector
|
|
GroupBox1
|
Caption
|
Data
Anggota
|
Label1
|
Caption
|
No
|
Label2
|
Caption
|
No
Identitas
|
Label3
|
Caption
|
Nama
|
Label4
|
Caption
|
Alamat
|
Label5
|
Caption
|
Tempat
Lahir
|
Label6
|
Caption
|
Tanggal
Lahir
|
Label7
|
Caption
|
Jenis
Kelamin
|
Label8
|
Caption
|
Agama
|
Label9
|
Caption
|
No
telp
|
Edit1
|
Name
|
Eno
|
Edit2
|
Name
|
Eni
|
Edit3
|
Name
|
Enama
|
Edit4
|
Name
|
Ealamat
|
Edit5
|
Name
|
Etempat
|
DateTimePicker
|
Name
|
Dtp1
|
ComboBox1
|
Name
|
Cbbjk
|
Items
|
Laki-laki
Perempuan
|
|
ComboBox2
|
Name
|
Cbbagama
|
Items
|
Islam
Katolik
Hindu
Budha
Kristen
|
|
Edit6
|
Name
|
Enotelp
|
GroupBox2
|
Caption
|
Cari
data (berdasarkan No identitas)
|
Edit7
|
Name
|
Eecari1
|
Button1
|
Caption
|
TAMBAH
|
Name
|
Btambah
|
|
Button2
|
Caption
|
SIMPAN
|
Name
|
Bsimpan
|
|
Button3
|
Caption
|
BATAL
|
Name
|
Bbatal
|
|
Button4
|
Caption
|
EDIT
|
Name
|
Bedit
|
|
Button5
|
Caption
|
HAPUS
|
Name
|
Bhapus
|
|
Button6
|
Caption
|
KELUAR
|
Name
|
Bkeluar
|
|
Button7
|
Caption
|
LIHAT
LAPORAN
|
Name
|
B1
|
|
Button8
|
Caption
|
TAMPILKAN
|
Name
|
Btampil
|
|
DbGrid1
|
Name
|
Dbgrd1
|
Datasource
|
DataModule1.dsanggota
|
|
DbNavigator
|
Name
|
Dbnvgr1
|
datasourse
|
DataModule1.dsanggota
|
- Kemudian pada form menu utama, klik 2 kali pada menu anggota dan isi dengan koding berikut:
Begin
Form7.showmodal;
End;
7. Terakhir,
buka form baru dan simpan dengan nama sirkulasi/transaksi
(beri nama sesuai keinginan Anda).
8. Desainlah
seperti gambar di bawah:
- Kemudian pada form menu utama, klik 2 kali pada menu transaksi dan isi dengan koding berikut:
Begin
Form8.showmodal;
End;
- Atur komponen sbb:
Nama komponen
|
Object Inspector
|
|
Label1
|
Caption
|
No
Transaksi
|
Label2
|
Caption
|
No
Identitas
|
Label3
|
Caption
|
Kode
Buku
|
Label4
|
Caption
|
Jumlah
Pinjam
|
Label5
|
Caption
|
Tanggal
Pinjam
|
Label6
|
Caption
|
Tanggal
Harus Kembali
|
Label7
|
Caption
|
Tanggal
Kembali
|
Label8
|
Caption
|
Denda
|
Label9
|
Caption
|
Terlambat
|
Edit1
|
Name
|
Eno
|
Combobox1
|
Name
|
Cbbidentitas
|
Edit2
|
Name
|
Enama
|
Combobox2
|
Name
|
Cbbkode
|
Edit3
|
Name
|
Ejudul
|
Edit4
|
Name
|
Ejumlah
|
DateTimePicker1
|
Name
|
Dtppinjam
|
DateTimePicker2
|
Name
|
Dtpharuskembali
|
DateTimePicker3
|
Name
|
Dtpkembali
|
GroupBox1
|
Caption
|
Cari
data (berdasarkan No identitas)
|
Edit5
|
Name
|
Eecari1
|
Button1
|
Caption
|
BARU
|
Name
|
Bbaru
|
|
Button2
|
Caption
|
PINJAM
|
Name
|
Bpinjam
|
|
Button3
|
Caption
|
BATAL
|
Name
|
Bbatal
|
|
Button4
|
Caption
|
BUKU
KEMBALI
|
Name
|
Bkembali
|
|
Button5
|
Caption
|
HAPUS
|
Name
|
Bhapus
|
|
Button6
|
Caption
|
KELUAR
|
Name
|
Bkeluar
|
|
Button7
|
Caption
|
LIHAT
LAPORAN
|
Name
|
Blap
|
|
Button8
|
Caption
|
TAMPILKAN
|
Name
|
Btampil
|
|
DbGrid1
|
Name
|
Dbgrd1
|
Datasource
|
DataModule1.dstransaksi
|
|
DbNavigator
|
Name
|
Dbnvgr1
|
datasourse
|
DataModule1.dstransaksi
|
- Supaya combobox identitas terisi secara otomatis,dan jika kita klik maka edit nama akan terisi secara otomatis juga, maka isi dengan koding berikut:
procedure
TForm7.cbbidentitasChange(Sender: TObject);
begin
if
DataModule1.tblanggota.Locate('No_Identitas',cbbidentitas.Text,[])
then
begin
eNAMA.Text:=DataModule1.tblanggota.FieldValues['Nama'];
end;
end;
- Supaya combobox kode buku terisi secara otomatis, dan jika kita klik maka edit judul buku akan terisi secara otomatis juga, maka isi dengan koding berikut:
procedure
TForm7.cbbkodeChange(Sender: TObject);
begin
if DataModule1.tblbuku.Locate('Kode
Buku',cbbkode.Text,[])
then
begin
eJUDUL.Text:=DataModule1.tblbuku.FieldValues['Judul Buku'];
end;
end;
- Klik 2 kali pada button BARU, dan isi dengan koding sbb:
begin
with DataModule1 do
begin
baru;
kosong;
eNO.Text:=eNO.Text+inttostr(tbltransaksi.RecordCount+1);
cbbidentitas.SetFocus;
bBARU.Enabled:=FALSE;
bHAPUS.Enabled:=False;
bKEMBALI.Enabled:=FALSE;
bPINJAM.Enabled:=TRUE;
bBATAL.Enabled:=TRUE;
end;
end;
- Klik 2 kali pada button PINJAM, dan isi dengan koding sbb:
begin
with DataModule1 do
begin
bPINJAM.Enabled:=false;
bBATAL.Enabled:=false;
bBARU.Enabled:=true;
bHAPUS.Enabled:=true;
//mencek inputan yang masih kosong
if(ENO.Text='') or (cbbidentitas.Text='')
or (cbbkode.Text='') or (eJUMLAH.Text='')
then
//tampilkan pesan kesalahan
begin
MessageDlg('Maaf masih ada data yang
kosong',mtWarning,[mbOK],0);
bPINJAM.Enabled:=True
end
else
begin
tbltransaksi.Append;
pinjam;
tbltransaksi.Post;
kosong;
end;
end;
end;
- Klik 2 kali pada button BATAL, dan isi dengan koding sbb:
begin
with DataModule1 do
begin
tbltransaksi.Cancel;
bBARU.Enabled:=true;
bPINJAM.Enabled:=FALSE;
bBATAL.Enabled:=FALSE;
bKEMBALI.Enabled:=false;
bHAPUS.Enabled:=TRUE;
kosong;
cbbidentitas.SetFocus;
end;
end;
- Klik 2 kali pada button BUKU KEMBALI, dan isi dengan koding sbb:
begin
with DataModule1 do
begin
bKEMBALI.Enabled:=FALSE;
BBARU.Enabled:=TRUE;
tbltransaksi.Edit;
pinjam;
tbltransaksi.Post;
end;
end;
Catatan: untuk
desain seluruh form sesuai selera, di sini saya hanya menulis komponen-komponen
yang penting saja.
bagi yang ingin bertanya jangan sungkan-sungkan yaa... insya Allah kalo bisa bantu akan saya bantu deeeeh...
BalasHapusatau sms ke no hp saya saja...
089634706123
atau pin bb 585642CA