. Jaringan Semantik Implementasi Perangkat Keras Implementasi Perangkat Lunak Implementasi Basis Data

74

3.6.5 . Jaringan Semantik

Jaringan semantik merupakan jaringan data dan informasi, yang menunjukan hubungan antar berbagai objek. F02 F03 F05 F13 F06 F08 F07 F09 F10 F11 F14 F15 F01 Gambar 3.25 Jaringan Semantik 3.7 Implementasi Tujuan Implementasi adalah untuk mengkonfirmasikan modul program perancangan pada para pelaku sistem sehingga user dapat memberi masukan kepada pembangun sistem. 75

3.7.1 Implementasi Perangkat Keras

Perangkat keras yang dibutuhkan untuk mengimplementasikan perangkat lunak, antara lain: 1. Processor Intel Pentium IV 2.0 Ghz 2. Memory RAM DDR 512 MB 3. Harddisk 120 GB 4. VGA 128 MB 5. Monitor 17” LCD 6. Keyboard dan Mouse Standar

3.7.2. Implementasi Perangkat Lunak

Perangkat lunak yang digunakan untuk mengimplementasikan sistem adalah, sebagai berikut: 1. Microsoft Windows XP Microsoft Windows 7 2. Borland Delphi 3. Adobe Photoshop

3.7.3. Implementasi Basis Data

Pembuatan basis data dilakukan dengan menggunakan Delphi adalah sebagai berikut: Admin unit ULogin; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ComCtrls, jpeg, ExtCtrls; type 76 TFLogin = classTForm Panel1: TPanel; Image1: TImage; ProgressBar1: TProgressBar; eusername: TEdit; epassword: TEdit; BitBtn2: TBitBtn; BitBtn1: TBitBtn; procedure BitBtn1ClickSender: TObject; procedure BitBtn2ClickSender: TObject; private { Private declarations } public { Public declarations } end; var FLogin: TFLogin; implementation uses UAdmin, UDM, UUser; {R .dfm} procedure TFLogin.BitBtn1ClickSender: TObject; label A; var i : integer; begin ProgressBar1.Position := 0; ProgressBar1.Max := 100; for i := 0 to 100 do begin ProgressBar1.Position := i; Sleep3; Application.ProcessMessages; end; begin if Eusername.Text= or Epassword.Text=then begin 77 Application.MessageBoxUsername dan Password Harus diisi ,Konfirmasi,MB_OK or MB_ICONERROR; if EUsername.Text= then EUsername.SetFocus else Epassword.SetFocus; end else begin if Eusername.Text=admin then begin if Epassword.Text=admin then begin FLogin.Hide; Fadmin.LAdmin.Caption:=Admin; Fadmin.show; end else begin Application.MessageBoxMaaf, Password Yang anda masukan Tidak cocok ,Konfirmasi,MB_OK or MB_ICONERROR; EPassword.SetFocus; end; end else begin DM.TLogin.First; A: if EUsername.Text=DM.TLoginUsername.Value then begin If Epassword.Text=DM.TloginPassword.Value then begin FLogin.Hide; FUser.LUser.Caption:=DM.TLoginUsername.Value; FUser.Show; end else begin Application.MessageBoxMaaf, Password Yang anda masukan tidak cocok ,Konfirmasi,MB_OK or MB_ICONERROR; Epassword.SetFocus; 78 end; end else begin if DM.TLogin.Eof then begin Application.MessageBoxMaaf, Username Yang anda masukan tidak Tidak terdaftar ,Konfirmasi,MB_OK or MB_ICONERROR; EUsername.setfocus; end else begin DM.TLogin.Next; goto A; end; end; end; end; end; end; procedure TFLogin.BitBtn2ClickSender: TObject; begin if MessageDlgAnda Yakin Ingin Keluar ?,mtConfirmation, [mbYes,mbNo],0=mrYes then begin FLogin.Close; exit; end; end; end. LOGIN unit ULogin; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ComCtrls, jpeg, ExtCtrls; type 79 TFLogin = classTForm Panel1: TPanel; Image1: TImage; ProgressBar1: TProgressBar; eusername: TEdit; epassword: TEdit; BitBtn2: TBitBtn; BitBtn1: TBitBtn; procedure BitBtn1ClickSender: TObject; procedure BitBtn2ClickSender: TObject; private { Private declarations } public { Public declarations } end; var FLogin: TFLogin; implementation uses UAdmin, UDM, UUser; {R .dfm} procedure TFLogin.BitBtn1ClickSender: TObject; label A; var i : integer; begin ProgressBar1.Position := 0; ProgressBar1.Max := 100; for i := 0 to 100 do begin ProgressBar1.Position := i; Sleep3; Application.ProcessMessages; end; begin if Eusername.Text= or Epassword.Text=then begin 80 Application.MessageBoxUsername dan Password Harus diisi ,Konfirmasi,MB_OK or MB_ICONERROR; if EUsername.Text= then EUsername.SetFocus else Epassword.SetFocus; end else begin if Eusername.Text=admin then begin if Epassword.Text=admin then begin FLogin.Hide; Fadmin.LAdmin.Caption:=Admin; Fadmin.show; end else begin Application.MessageBoxMaaf, Password Yang anda masukan Tidak cocok ,Konfirmasi,MB_OK or MB_ICONERROR; EPassword.SetFocus; end; end else begin DM.TLogin.First; A: if EUsername.Text=DM.TLoginUsername.Value then begin If Epassword.Text=DM.TloginPassword.Value then begin FLogin.Hide; FUser.LUser.Caption:=DM.TLoginUsername.Value; FUser.Show; end else begin Application.MessageBoxMaaf, Password Yang anda masukan tidak cocok ,Konfirmasi,MB_OK or MB_ICONERROR; Epassword.SetFocus; 81 end; end else begin if DM.TLogin.Eof then begin Application.MessageBoxMaaf, Username Yang anda masukan tidak Tidak terdaftar ,Konfirmasi,MB_OK or MB_ICONERROR; EUsername.setfocus; end else begin DM.TLogin.Next; goto A; end; end; end; end; end; end; procedure TFLogin.BitBtn2ClickSender: TObject; begin if MessageDlgAnda Yakin Ingin Keluar ?,mtConfirmation, [mbYes,mbNo],0=mrYes then begin FLogin.Close; exit; end; end; end. USER unit ULogin; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ComCtrls, jpeg, ExtCtrls; type 82 TFLogin = classTForm Panel1: TPanel; Image1: TImage; ProgressBar1: TProgressBar; eusername: TEdit; epassword: TEdit; BitBtn2: TBitBtn; BitBtn1: TBitBtn; procedure BitBtn1ClickSender: TObject; procedure BitBtn2ClickSender: TObject; private { Private declarations } public { Public declarations } end; var FLogin: TFLogin; implementation uses UAdmin, UDM, UUser; {R .dfm} procedure TFLogin.BitBtn1ClickSender: TObject; label A; var i : integer; begin ProgressBar1.Position := 0; ProgressBar1.Max := 100; for i := 0 to 100 do begin ProgressBar1.Position := i; Sleep3; Application.ProcessMessages; end; begin if Eusername.Text= or Epassword.Text=then begin 83 Application.MessageBoxUsername dan Password Harus diisi ,Konfirmasi,MB_OK or MB_ICONERROR; if EUsername.Text= then EUsername.SetFocus else Epassword.SetFocus; end else begin if Eusername.Text=admin then begin if Epassword.Text=admin then begin FLogin.Hide; Fadmin.LAdmin.Caption:=Admin; Fadmin.show; end else begin Application.MessageBoxMaaf, Password Yang anda masukan Tidak cocok ,Konfirmasi,MB_OK or MB_ICONERROR; EPassword.SetFocus; end; end else begin DM.TLogin.First; A: if EUsername.Text=DM.TLoginUsername.Value then begin If Epassword.Text=DM.TloginPassword.Value then begin FLogin.Hide; FUser.LUser.Caption:=DM.TLoginUsername.Value; FUser.Show; end else begin Application.MessageBoxMaaf, Password Yang anda masukan tidak cocok ,Konfirmasi,MB_OK or MB_ICONERROR; Epassword.SetFocus; 84 end; end else begin if DM.TLogin.Eof then begin Application.MessageBoxMaaf, Username Yang anda masukan tidak Tidak terdaftar ,Konfirmasi,MB_OK or MB_ICONERROR; EUsername.setfocus; end else begin DM.TLogin.Next; goto A; end; end; end; end; end; end; procedure TFLogin.BitBtn2ClickSender: TObject; begin if MessageDlgAnda Yakin Ingin Keluar ?,mtConfirmation, [mbYes,mbNo],0=mrYes then begin FLogin.Close; exit; end; end; end. UNIT ADMIN unit UAdmin; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, Buttons, Menus, jpeg; type TFAdmin = classTForm 85 Panel1: TPanel; Image1: TImage; MainMenu1: TMainMenu; Edit1: TMenuItem; ambahUser1: TMenuItem; EditUser1: TMenuItem; HapusUser1: TMenuItem; Out1: TMenuItem; Logout1: TMenuItem; SpeedButton1: TSpeedButton; SpeedButton2: TSpeedButton; SpeedButton3: TSpeedButton; SpeedButton4: TSpeedButton; Shape1: TShape; Label1: TLabel; LAdmin: TLabel; procedure SpeedButton1ClickSender: TObject; procedure SpeedButton2ClickSender: TObject; procedure SpeedButton4ClickSender: TObject; procedure SpeedButton5ClickSender: TObject; procedure ambahUser1ClickSender: TObject; procedure EditUser1ClickSender: TObject; procedure Logout1ClickSender: TObject; procedure Exit1ClickSender: TObject; procedure SpeedButton3ClickSender: TObject; procedure HapusUser1ClickSender: TObject; private { Private declarations } public { Public declarations } end; var FAdmin: TFAdmin; implementation uses UTambahUser, UEditUser, ULogin, UHapusUser, UDM; {R .dfm} procedure TFAdmin.SpeedButton1ClickSender: TObject; begin 86 DM.TLogin.Insert; FTambahUser.ShowModal; end; procedure TFAdmin.SpeedButton2ClickSender: TObject; begin FEditUser.ShowModal; end; procedure TFAdmin.SpeedButton4ClickSender: TObject; begin if Application.MessageBoxAnda ingin Log Out ?,Konfimasi,MB_YESNO or MB_ICONQUESTION=id_Yes then begin Fadmin.Hide; FLogin.Show; FLogin.EUsername.Clear; Flogin.EPassword.Clear; Flogin.EUsername.SetFocus; end else begin Focused; refresh; end; end; procedure TFAdmin.SpeedButton5ClickSender: TObject; begin if MessageDlgAnda Yakin Ingin Keluar ?,mtConfirmation, [mbYes,mbNo],0=mrYes then begin Fadmin.close; exit; end; end; procedure TFAdmin.ambahUser1ClickSender: TObject; begin FTambahUser.ShowModal; end; procedure TFAdmin.EditUser1ClickSender: TObject; 87 begin FEditUser.ShowModal; end; procedure TFAdmin.Logout1ClickSender: TObject; begin if Application.MessageBoxAnda ingin Log Out ?,Konfimasi,MB_YESNO or MB_ICONQUESTION=id_Yes then begin Fadmin.Hide; FLogin.Show; FLogin.EUsername.Clear; Flogin.EPassword.Clear; Flogin.EUsername.SetFocus; end else begin Focused; refresh; end; end; procedure TFAdmin.Exit1ClickSender: TObject; begin if MessageDlgAnda Yakin Ingin Keluar ?,mtConfirmation, [mbYes,mbNo],0=mrYes then begin Fadmin.close; exit; end; end; procedure TFAdmin.SpeedButton3ClickSender: TObject; begin FHapusUser.ShowModal; end; procedure TFAdmin.HapusUser1ClickSender: TObject; begin FHapusUser.ShowModal; end; end. 88 UDM unit UDM; interface uses SysUtils, Classes, DB, DBTables; type TDM = classTDataModule Login: TDataSource; TLogin: TTable; TLoginUsername: TStringField; TLoginPassword: TStringField; DSKas: TDataSource; TKas: TTable; TKasNo: TAutoIncField; TKasTanggal: TDateField; TKasUraian: TStringField; TKasDebet: TCurrencyField; TKasKredit: TCurrencyField; TKasSaldo: TCurrencyField; DSGuru: TDataSource; TGuru: TTable; TGuruNIP: TStringField; TGuruGaji: TCurrencyField; TGuruPengeluaran: TCurrencyField; TGuruTanggal: TDateField; TDGuru: TTable; DSDGuru: TDataSource; TDGuruNo: TAutoIncField; TDGuruNIP: TStringField; TDGuruNama: TStringField; TDGuruAlamat: TStringField; TGuruSaldo: TCurrencyField; TGuruNama: TStringField; procedure TKasCalcFieldsDataSet: TDataSet; procedure TGuruCalcFieldsDataSet: TDataSet; private { Private declarations } public { Public declarations } end; 89 var DM: TDM; implementation uses ULogin; {R .dfm} procedure TDM.TKasCalcFieldsDataSet: TDataSet; begin DM.TKasSaldo.Value:=DM.TKasDebet.Value-DM.TKasKredit.Value; end; procedure TDM.TGuruCalcFieldsDataSet: TDataSet; begin DM.TGuruSaldo.Value:=DM.TGuruGaji.Value-DM.TGuruPengeluaran.Value; end; end. EDIT USER unit UEditUser; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, Grids, DBGrids, ExtCtrls; type TFEditUser = classTForm Panel1: TPanel; Panel2: TPanel; DBGrid1: TDBGrid; BitBtn1: TBitBtn; procedure BitBtn1ClickSender: TObject; private { Private declarations } public { Public declarations } 90 end; var FEditUser: TFEditUser; implementation uses UDM, UIsiEditUser; {R .dfm} procedure TFEditUser.BitBtn1ClickSender: TObject; begin DM.TLogin.Edit; Fisiedituser.Show; end; end. GAJI GURU unit UGajiGuru; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids, DBGrids, Buttons, ExtCtrls; type TFGajiGuru = classTForm Panel1: TPanel; SpeedButton1: TSpeedButton; SpeedButton2: TSpeedButton; SpeedButton3: TSpeedButton; SpeedButton4: TSpeedButton; SpeedButton5: TSpeedButton; Panel2: TPanel; DBGrid1: TDBGrid; SpeedButton6: TSpeedButton; procedure SpeedButton1ClickSender: TObject; procedure SpeedButton2ClickSender: TObject; procedure SpeedButton3ClickSender: TObject; 91 procedure SpeedButton4ClickSender: TObject; procedure SpeedButton5ClickSender: TObject; procedure SpeedButton6ClickSender: TObject; private { Private declarations } public { Public declarations } end; var FGajiGuru: TFGajiGuru; implementation uses UDM, UIsiGajiGuru, UPengeluaran, ULapGajiGuru; {R .dfm} procedure TFGajiGuru.SpeedButton1ClickSender: TObject; begin DM.TGuru.Insert; FIsiGajiGuru.ShowModal; end; procedure TFGajiGuru.SpeedButton2ClickSender: TObject; begin DM.TGuru.Edit; FIsiGajiGuru.ShowModal; end; procedure TFGajiGuru.SpeedButton3ClickSender: TObject; var Pesan:String; begin Pesan:=Anda yakin data berikut : +13+13+ Nama : +DM.TGuruNama.Value+13+ akan dihapus?; if messageDlg Pesan,mtConfirmation,[mbYes,mbNo],0=mrYes then begin DM.TGuru.Delete; end; 92 end; procedure TFGajiGuru.SpeedButton4ClickSender: TObject; begin DM.TGuru.Edit; FPengeluaran.Showmodal; end; procedure TFGajiGuru.SpeedButton5ClickSender: TObject; begin close; end; procedure TFGajiGuru.SpeedButton6ClickSender: TObject; begin LapGajiGuru.Preview; end; end. DATA GURU unit UGuru; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids, DBGrids, Buttons, ExtCtrls; type TFGuru = classTForm Panel1: TPanel; SpeedButton1: TSpeedButton; SpeedButton2: TSpeedButton; SpeedButton3: TSpeedButton; SpeedButton5: TSpeedButton; Panel2: TPanel; DBGrid1: TDBGrid; procedure SpeedButton1ClickSender: TObject; procedure SpeedButton2ClickSender: TObject; procedure SpeedButton3ClickSender: TObject; procedure SpeedButton5ClickSender: TObject; 93 private { Private declarations } public { Public declarations } end; var FGuru: TFGuru; implementation uses UDM, UIsiGuru; {R .dfm} procedure TFGuru.SpeedButton1ClickSender: TObject; begin DM.TDGuru.Insert; FIsiGuru.ShowModal; end; procedure TFGuru.SpeedButton2ClickSender: TObject; begin DM.TDGuru.Edit; FIsiGuru.ShowModal; end; procedure TFGuru.SpeedButton3ClickSender: TObject; var Pesan:String; begin Pesan:=Anda yakin data berikut : +13+13+ Nama : +DM.TDGuruNama.Value+13+ akan dihapus?; if messageDlg Pesan,mtConfirmation,[mbYes,mbNo],0=mrYes then begin DM.TDGuru.Delete; end; end; procedure TFGuru.SpeedButton5ClickSender: TObject; begin close; end; 94 KAS UMUM unit UIsiKasUmum; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, DBCtrls, Mask, ExtCtrls; type TFIsiKasUmum = classTForm Panel1: TPanel; Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; DBEdit1: TDBEdit; DBEdit2: TDBEdit; DBEdit3: TDBEdit; DBEdit4: TDBEdit; BitBtn1: TBitBtn; BitBtn2: TBitBtn; Label5: TLabel; procedure BitBtn1ClickSender: TObject; procedure BitBtn2ClickSender: TObject; private { Private declarations } public { Public declarations } end; var FIsiKasUmum: TFIsiKasUmum; implementation uses UDM; {R .dfm} procedure TFIsiKasUmum.BitBtn1ClickSender: TObject; begin DM.TKasTanggal.Value; 95 if DM.TKasTanggal.IsNull then begin ShowMessageTanggal Tidak Boleh Kosong Dan Diisi Dengan Benar ddmmyyyy ; dbEDIT1.SetFocus; Exit; end; begin DM.TKasUraian.Value:=TrimDM.TKasUraian.Value; if DM.TKasUraian.IsNull then begin ShowMessageUraian Tidak Boleh Kosong; dbEDIT2.SetFocus; Exit; end; begin DM.TKasDebet.Value; if DM.TKasDebet.IsNull then begin ShowMessageDebet Tidak Boleh Kosong; dbEDIT3.SetFocus; Exit; end; DM.TKas.Post; Close; end; end; end; procedure TFIsiKasUmum.BitBtn2ClickSender: TObject; begin if messageDlgPengisian data dibatalkan ?,mtConfirmation, [mbYes,mbNo],0=mrYes then begin DM.TKas.Cancel; Close; end; end; end. 96 KREDIT unit UKredit; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, Buttons, DBCtrls, Mask; type TFKredit = classTForm Panel1: TPanel; Panel2: TPanel; Label1: TLabel; DBEdit1: TDBEdit; Label2: TLabel; DBText1: TDBText; BitBtn1: TBitBtn; BitBtn2: TBitBtn; procedure BitBtn1ClickSender: TObject; procedure BitBtn2ClickSender: TObject; private { Private declarations } public { Public declarations } end; var FKredit: TFKredit; implementation uses UDM; {R .dfm} procedure TFKredit.BitBtn1ClickSender: TObject; begin DM.TKas.Post; Close; end; procedure TFKredit.BitBtn2ClickSender: TObject; 97 begin if messageDlgPengisian data dibatalkan ?,mtConfirmation, [mbYes,mbNo],0=mrYes then begin DM.TKas.Cancel; Close; end; end; end. LAPORAN GAJI GURU unit ULapGajiGuru; interface uses Windows, SysUtils, Messages, Classes, Graphics, Controls, StdCtrls, ExtCtrls, Forms, QuickRpt, QRCtrls; type TLapGajiGuru = classTQuickRep PageHeaderBand1: TQRBand; TitleBand1: TQRBand; ColumnHeaderBand1: TQRBand; DetailBand1: TQRBand; SummaryBand1: TQRBand; PageFooterBand1: TQRBand; QRLabel1: TQRLabel; QRLabel2: TQRLabel; QRLabel3: TQRLabel; QRLabel4: TQRLabel; QRLabel5: TQRLabel; QRLabel6: TQRLabel; QRLabel7: TQRLabel; QRLabel8: TQRLabel; QRDBText1: TQRDBText; QRDBText2: TQRDBText; QRDBText3: TQRDBText; QRDBText4: TQRDBText; QRDBText5: TQRDBText; QRDBText6: TQRDBText; QRLabel9: TQRLabel; 98 QRSysData1: TQRSysData; QRLabel10: TQRLabel; QRSysData2: TQRSysData; private public end; var LapGajiGuru: TLapGajiGuru; implementation uses UDM; {R .DFM} end. LAPORAN KAS UMUM unit ULapKasUmum; interface uses Windows, SysUtils, Messages, Classes, Graphics, Controls, StdCtrls, ExtCtrls, Forms, QuickRpt, QRCtrls; type TLapKasUmum = classTQuickRep PageHeaderBand1: TQRBand; TitleBand1: TQRBand; DetailBand1: TQRBand; SummaryBand1: TQRBand; PageFooterBand1: TQRBand; QRLabel1: TQRLabel; QRLabel2: TQRLabel; QRBand1: TQRBand; QRLabel7: TQRLabel; QRLabel8: TQRLabel; QRLabel9: TQRLabel; QRLabel10: TQRLabel; QRLabel3: TQRLabel; QRLabel4: TQRLabel; 99 QRDBText1: TQRDBText; QRDBText2: TQRDBText; QRDBText3: TQRDBText; QRDBText4: TQRDBText; QRDBText5: TQRDBText; QRDBText6: TQRDBText; QRLabel5: TQRLabel; QRSysData1: TQRSysData; QRLabel6: TQRLabel; QRSysData2: TQRSysData; private public end; var LapKasUmum: TLapKasUmum; implementation uses UDM, UKasUmum; {R .DFM} end. LOGIN unit ULogin; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ComCtrls, jpeg, ExtCtrls; type TFLogin = classTForm Panel1: TPanel; Image1: TImage; ProgressBar1: TProgressBar; eusername: TEdit; epassword: TEdit; 100 BitBtn2: TBitBtn; BitBtn1: TBitBtn; procedure BitBtn1ClickSender: TObject; procedure BitBtn2ClickSender: TObject; private { Private declarations } public { Public declarations } end; var FLogin: TFLogin; implementation uses UAdmin, UDM, UUser; {R .dfm} procedure TFLogin.BitBtn1ClickSender: TObject; label A; var i : integer; begin ProgressBar1.Position := 0; ProgressBar1.Max := 100; for i := 0 to 100 do begin ProgressBar1.Position := i; Sleep3; Application.ProcessMessages; end; begin if Eusername.Text= or Epassword.Text=then begin Application.MessageBoxUsername dan Password Harus diisi ,Konfirmasi,MB_OK or MB_ICONERROR; if EUsername.Text= then EUsername.SetFocus else 101 Epassword.SetFocus; end else begin if Eusername.Text=admin then begin if Epassword.Text=admin then begin FLogin.Hide; Fadmin.LAdmin.Caption:=Admin; Fadmin.show; end else begin Application.MessageBoxMaaf, Password Yang anda masukan Tidak cocok ,Konfirmasi,MB_OK or MB_ICONERROR; EPassword.SetFocus; end; end else begin DM.TLogin.First; A: if EUsername.Text=DM.TLoginUsername.Value then begin If Epassword.Text=DM.TloginPassword.Value then begin FLogin.Hide; FUser.LUser.Caption:=DM.TLoginUsername.Value; FUser.Show; end else begin Application.MessageBoxMaaf, Password Yang anda masukan tidak cocok ,Konfirmasi,MB_OK or MB_ICONERROR; Epassword.SetFocus; end; end else begin if DM.TLogin.Eof then begin 102 Application.MessageBoxMaaf, Username Yang anda masukan tidak Tidak terdaftar ,Konfirmasi,MB_OK or MB_ICONERROR; EUsername.setfocus; end else begin DM.TLogin.Next; goto A; end; end; end; end; end; end; procedure TFLogin.BitBtn2ClickSender: TObject; begin if MessageDlgAnda Yakin Ingin Keluar ?,mtConfirmation, [mbYes,mbNo],0=mrYes then begin FLogin.Close; exit; end; end; end. PENGELUARAN unit UPengeluaran; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, Mask, DBCtrls, ExtCtrls; type TFPengeluaran = classTForm Panel1: TPanel; Label1: TLabel; Label2: TLabel; DBText1: TDBText; Panel2: TPanel; 103 DBEdit1: TDBEdit; BitBtn1: TBitBtn; BitBtn2: TBitBtn; procedure BitBtn1ClickSender: TObject; procedure BitBtn2ClickSender: TObject; private { Private declarations } public { Public declarations } end; var FPengeluaran: TFPengeluaran; implementation uses UDM; {R .dfm} procedure TFPengeluaran.BitBtn1ClickSender: TObject; begin DM.TGuru.Post; Close; end; procedure TFPengeluaran.BitBtn2ClickSender: TObject; begin if messageDlgPengisian data dibatalkan ?,mtConfirmation, [mbYes,mbNo],0=mrYes then begin DM.TGuru.Cancel; Close; end; end; end. 104 TAMBAH USER unit UTambahUser; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, jpeg, ExtCtrls, StdCtrls, Mask, DBCtrls, Buttons; type TFTambahUser = classTForm Panel1: TPanel; Label1: TLabel; Label2: TLabel; DBEdit1: TDBEdit; DBEdit2: TDBEdit; BitBtn1: TBitBtn; BitBtn2: TBitBtn; Panel2: TPanel; procedure BitBtn1ClickSender: TObject; procedure BitBtn2ClickSender: TObject; private { Private declarations } public { Public declarations } end; var FTambahUser: TFTambahUser; implementation uses UDM; {R .dfm} procedure TFTambahUser.BitBtn1ClickSender: TObject; begin DM.TLoginUsername.Value:=TrimDM.TLoginUsername.Value; if DM.TLoginUsername.IsNull then begin ShowMessageUsername Tidak Boleh Kosong ; 105 dbEDIT1.SetFocus; Exit; end; begin DM.TLoginPassword.Value:=TrimDM.TLoginPassword.Value; if DM.TLoginPassword.IsNull then begin ShowMessagePassword Tidak Boleh Kosong ; dbEDIT2.SetFocus; Exit; end; DM.TLogin.Post; close; end; end; procedure TFTambahUser.BitBtn2ClickSender: TObject; begin if MessageDlgPengisisan data dibatalkan?,mtConfirmation,[mbYes,mbNo],0=mrYes then begin dm.TLogin.Cancel; close; end; end; end. VALIDASI USER unit UUser; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, Menus, Buttons, jpeg; type TFUser = classTForm Panel1: TPanel; Image1: TImage; SpeedButton1: TSpeedButton; SpeedButton2: TSpeedButton; 106 SpeedButton3: TSpeedButton; SpeedButton4: TSpeedButton; MainMenu1: TMainMenu; Edit1: TMenuItem; ambahUser1: TMenuItem; EditUser1: TMenuItem; HapusUser1: TMenuItem; Out1: TMenuItem; Logout1: TMenuItem; Shape1: TShape; Label1: TLabel; LUser: TLabel; procedure SpeedButton1ClickSender: TObject; procedure LaporanKasUmum1ClickSender: TObject; procedure SpeedButton3ClickSender: TObject; procedure SpeedButton4ClickSender: TObject; procedure SpeedButton5ClickSender: TObject; procedure Exit1ClickSender: TObject; procedure Logout1ClickSender: TObject; procedure LaporanGajiGuru1ClickSender: TObject; procedure SpeedButton2ClickSender: TObject; procedure HapusUser1ClickSender: TObject; procedure EditUser1ClickSender: TObject; procedure ambahUser1ClickSender: TObject; private { Private declarations } public { Public declarations } end; var FUser: TFUser; implementation uses UKasUmum, ULapKasUmum, UGajiGuru, ULogin, ULapGajiGuru, UGuru; {R .dfm} procedure TFUser.SpeedButton1ClickSender: TObject; begin FKasUmum.ShowModal; end; 107 procedure TFUser.LaporanKasUmum1ClickSender: TObject; begin LapKasUmum.Preview; end; procedure TFUser.SpeedButton3ClickSender: TObject; begin FGajiGuru.Showmodal; end; procedure TFUser.SpeedButton4ClickSender: TObject; begin if Application.MessageBoxAnda ingin Log Out ?,Konfimasi,MB_YESNO or MB_ICONQUESTION=id_Yes then begin FUser.Hide; FLogin.Show; FLogin.EUsername.Clear; Flogin.EPassword.Clear; Flogin.EUsername.SetFocus; end else begin Focused; refresh; end; end; procedure TFUser.SpeedButton5ClickSender: TObject; begin if MessageDlgAnda Yakin Ingin Keluar ?,mtConfirmation, [mbYes,mbNo],0=mrYes then begin FUser.close; exit; end; end; procedure TFUser.Exit1ClickSender: TObject; begin if MessageDlgAnda Yakin Ingin Keluar ?,mtConfirmation, [mbYes,mbNo],0=mrYes then 108 begin FUser.close; exit; end; end; procedure TFUser.Logout1ClickSender: TObject; begin if Application.MessageBoxAnda ingin Log Out ?,Konfimasi,MB_YESNO or MB_ICONQUESTION=id_Yes then begin FUser.Hide; FLogin.Show; FLogin.EUsername.Clear; Flogin.EPassword.Clear; Flogin.EUsername.SetFocus; end else begin Focused; refresh; end; end; procedure TFUser.LaporanGajiGuru1ClickSender: TObject; begin LapGajiGuru.Preview; end; procedure TFUser.SpeedButton2ClickSender: TObject; begin FGuru.ShowModal; end; procedure TFUser.HapusUser1ClickSender: TObject; begin FGajiGuru.Showmodal; end; procedure TFUser.EditUser1ClickSender: TObject; begin FGuru.Showmodal; end; 109 procedure TFUser.ambahUser1ClickSender: TObject; begin FKasUmum.Showmodal; end; end.

3.7.4. Implementasi Antar Muka 1. Implementasi Login