Disusun dalam rangka menghadapi Uji Kompetensi Keahlian pada Program Keahlian Pengembangan Perangkat Lunak & Gim
NAMA :
KELAS :
2024
2
1. Buka dan jalankan aplikasi Xampp, kemudian klik tombol Statr pada Apache dan Mysql seperti
gambar di bawah
2. Buka Crom atau Firefox atau yang lainnya, untuk membuat database, kemudian masukan alamat
http://localhost/phpmyadmin
3. Masukan Nama database, misal Kasir_XIIPPLGB_Jaka_Tarub
4. Kemudian buatlah 5 buah tabel sesuai dengan spesifikasi pada gambar berikut
- Tabel Detail_penjualan
- Tabel pelanggan
- Tabel penjualan
- Tabel produk
- Tabel user
- Langkah berikutnya pilih menu Object kemudian pilih ODBC Administrator, atau klik kanan lalu pilih
ODBC Administrator
- Kemudian akan tampil seperti di bawah ini,
- Pilih MySQL ODBC Driver, kemudian klik Finish, berikutnya akan tampil seperti gambar di bawah, dan
atur…..
- Setelah semua diatur, kemudian akan tampil seperti contoh gambar di bawah
- Kemudian Pilih OK
- Lalu klik kana pada tampilan BDE Administrator dan pilih Refresh
- Pastikan Nama Koneksi_kasir_XIIPPLGB_Jaka ada pada list tersebut, kemudian close BDE, Artinya
proses pembuatan koneksi selesai .
6. Buka Aplikasi Borland Delphi, dan untuk Form1 ganti menjadi LOGIN pada Caption
7. Desainlah tampilan login seperti pada gambar di bawah ini
9. Agar Form1/Login terhubung dengan ke-2 form baru tersebut, lakukan use unit dari form1, klik dulu
pada form1
- File>use unit, pilih unit2 OK
- File>use unit, pilih unit3 OK
10. Jika Desain form Login sudah sesuai, kemudian klik 2 kali pada tombol Masuk/Login dan tuliskan Kode
Program di bawah ini :
begin
with ADOquery1 do begin // cek username ada atau tdk di tbl user
close;
sql.Clear;
sql.Add('select * from user where username='+quotedstr(edit1.Text));
open;
end;
begin //jika username tdk ada
if ADOquery1.RecordCount=0 then application.MessageBox //kondisi 1 apabila isi record =0
('Username Tidak Ditemukan','INFORMATION',MB_OK or MB_ICONINFORMATION)
else if (ADOquery1.FieldByName('password').AsString=edit2.Text) and //kondisi 2 cek pswrd
(radiobutton1.Checked = true) and //cek radiobutton1 yg dipilih harus (admin)
(ADOquery1.FieldByName('Jabatan').AsString='Admin') then //cek admin login sbg admin
begin
form2.Show; //tampilkan form2
hide; //menyembunyikan form 1 karna sintak ini ada di form 1
end
else if (ADOquery1.FieldByName('password').AsString=edit2.Text) and (radiobutton2.Checked = true)
and //cek password dan yang dipilih harus radiobutton2 (petugas)/kondisi 3
(ADOquery1.FieldByName('Jabatan').AsString='Petugas')then
begin
form3.Show; //menampilkan form3
hide; //menyembunyikan form 1 karna sintak ini ada di form 1
end
else // jika tidak masuk ke kondisi 1, 2 dan 3 (username, password dan jabatan tdk sesuai)
begin
ShowMessage('Gagal Login !'); //menampilkan pesan gagal
end;
begin
edit1.Clear; //membersihkan inputan diedit 1
edit2.Clear; //membersihkan inputan diedit 2
end;
end;
end;
end.
11. Kemudian Klik 2 Kali pada tombol Tutup, dan masukan kode berikut :
begin
Application.Terminate;
end;
- Langkah Berikutnya Mendesain Form2/Menu admin, untuk tampilan Registrasi User Seperti pada
gambar di bawah
- Double klik pada tombol edit, Masukan sintak berikut (Proses Edit Username menjadi patokan dan
tidak bisa di ubah)
Begin
if (ADOQuery1.Locate('username',edit1.Text,[])) then // cek username ada/tdk di tabel user
begin
if(MessageDlg('Ubah Data?',mtConfirmation,[mbYes,mbNo],0)=mrYES)then //kondisi 1 usernme ada
begin
ADOQuery1.edit;
ADOQuery1.FieldByName('password').AsString:=Edit2.Text;
if Radiobutton1.Checked= true then
Adoquery1.FieldByName('jabatan').AsString:=Radiobutton1.Caption;
if radiobutton2.Checked= true then
Adoquery1.FieldByName('jabatan').AsString:=Radiobutton2.Caption;
ADOQuery1.Post;
ShowMessage('Data Telah Diubah !');
end;
end
else // jika tidak (username tidak ada, kebalikan dari kondisi 1)
begin
ShowMessage('Nama User Tidak Ditemukan !');
end;
end;
- Double klik pada tombol Hapus, Masukan sintak berikut (Untuk Hapus Username Patokan)
Begin
if (ADOquery1.Locate('username',edit1.Text,[])) then
begin
if(MessageDlg('Hapus User?',mtConfirmation,[mbYes,mbNo],0)=mrYES)then
begin
ADOQuery1.Delete; //proses hapus
end;
end
else // Jika username tidak ada muncul pesan
begin
ShowMessage('Nama User Tidak Ada !');
end;
end;
end.
14. Apabila desain sudah sesuai, silahkan klik 2 kali pada tombol Simpan dan masukan sintak berikut
Begin
if (edit3.text=' ')or //kondisi apabila edit3 sampai 6 kosong/tidak di isi
(edit4.text=' ')or
(edit5.text=' ')or
(edit6.text=' ')then
begin
application.MessageBox('Isi Data dengan Lengkap','GAGAL MENYIMPAN',MB_ICONERROR);
end
else if(ADOQuery2.Locate('ID_produk',edit3.Text,[]))then //apabila ID produk sudah ada
begin
ShowMessage('Produk Sudah Terdata');
Edit3.SetFocus;
exit;
end
else
begin
ADOQuery2.Append; // proses menyimpan
ADOQuery2.FieldByName('ID_produk').AsString:=Edit3.Text;
ADOQuery2.FieldByName('nama_produk').AsString:=Edit4.Text;
ADOQuery2.FieldByName('harga').AsString:=Edit5.Text;
ADOQuery2.FieldByName('stok').AsString:=edit6.Text;
ADOQuery2.Post;
ShowMessage('Data Tersimpan !!');
edit3.clear;
edit4.clear;
edit5.clear;
edit6.clear;
end
end;
15. Klik 2 kali pada tombol Edit dan masukan sintak berikut
begin
if (edit3.text=' ')or //kondisi apabila edit3 sampai 6 kosong/tidak di isi
(edit4.text=' ')or
(edit5.text=' ')or
(edit6.text=' ')then
begin
application.MessageBox('Isi Data dengan Lengkap','GAGAL MERUBAH DATA',MB_ICONERROR);
end
else
if (ADOQuery2.Locate('ID_produk',edit3.Text,[])) then //Kondisi bila ID ada lanjut ke proses edit
begin
if(MessageDlg('Ubah Data?',mtConfirmation,[mbYes,mbNo],0)=mrYES)then
begin
ADOQuery2.edit;
ADOQuery2.FieldByName('nama_produk').AsString:=Edit4.Text;
ADOQuery2.FieldByName('harga').AsString:=Edit5.Text;
ADOQuery2.FieldByName('stok').AsString:=Edit6.Text;
ADOQuery2.Post;
ShowMessage('Produk Telah Diubah !');
edit3.clear;
edit4.clear;
edit5.clear;
edit6.clear;
end;
end
else // Jika tidak masuk kondisi diatas (Kebalikan dari ID ada)
begin
ShowMessage('Produk Tidak Ada !');
end;
end;
end.
ADOQuery3.FieldByName('ID_pelanggan').AsString:=edit9.Text;
ADOQuery3.Post;
ShowMessage('Data Tersimpan !!');
edit7.clear;
edit8.clear;
edit9.clear;
end
end;
begin
if (edit7.text='')or
(edit8.text='')or
(edit9.text='')then
begin
application.MessageBox('Isi ID Penjualan Untuk Merubah','GAGAL MERUBAH
DATA',MB_ICONERROR);
end
else
if (ADOQuery3.Locate('ID_penjualan',edit7.Text,[])) then
begin
if(MessageDlg('Ubah Data?',mtConfirmation,[mbYes,mbNo],0)=mrYES)then
begin
ADOQuery3.edit;
ADOQuery3.FieldByName('Tgl_penjualan').AsDateTime:=Datetimepicker1.Date;
ADOQuery3.FieldByName('Total_harga').AsString:=Edit8.Text;
ADOQuery3.FieldByName('ID_pelanggan').AsString:=Edit9.Text;
ADOQuery3.Post;
ShowMessage('Data Penjualan Telah Diubah !');
edit7.clear;
edit8.clear;
edit9.clear;
end;
end
else
begin
ShowMessage('ID Penjualan Tidak Ada !');
end;
end;
- Klik kanan di Pagecontrol 1, new Page, kemudian caption ganti menjadi Laporan
- Desain Menu Laporan seperti gambar berikut
- Selanjutnya tampilkan Form 2 bagian menu Laporan, klik file >use unit, pilih unit4, ok
- Klik 2 kali di tombol Laporan Penjualan, masukan sintak berikut
begin
tform4.create(self).quickrep1.preview;
end;
end.
- Lakukan Hal yang sama untuk laporan Barang (diarahkan ke tabel barang)
Catatan :
1. Untuk Menu Petugas (Form3) lakukan seperti hal nya membuat menu Admin, perbedaan di Menu
Petugas tidak disediakan Menu Registrasi seperti di menu Admin, dan Menu Petugas tidak dilengkapi
Laporan
2. Desain UI/UX di atas merupakan desain minimal, silahkan didesain semaksimal mungkin dengan
menunjukan kreativitas masing-masing.
Bersambung ….