unit FormStartUp;
interface
usesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, ComCtrls, StdCtrls;
typeTStartUp = class(TForm) Timer1: TTimer;
Panel1: TPanel;
ProgressBar1: TProgressBar;
Panel2: TPanel;
Panel3: TPanel;
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations } public
{ Public declarations } end;
varStartUp: TStartUp;
implementation uses FormLogin;
{$R *.dfm}
procedure TStartUp.Timer1Timer(Sender: TObject);
begin
ProgressBar1.StepBy(1);
ProgressBar1.Step:=ProgressBar1.Step+1;
if ProgressBar1.Step =100 then begin
usesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, DB, ADODB, ExtCtrls;
typeTLogin = class(TForm) Panel1: TPanel;
Panel2: TPanel;
Panel3: TPanel;
procedure FormActivate(Sender: TObject);
procedure esandiKeyPress(Sender: TObject; var Key: Char);
procedure BkeluarClick(Sender: TObject);
procedure bmasukClick(Sender: TObject);
procedure eidKeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations } public
{ Public declarations } end;
varLogin: TLogin;
x:string;
y,z:integer;
implementation
uses Math, MaskUtils, StrUtils, FormMenuUtama, FormLatarBelakang;
{$R *.dfm}
procedure TLogin.FormActivate(Sender: TObject);
begin
esandi.Enabled:=false;
enama.Enabled:=false;
bmasuk.Enabled:=false;
end;
procedure TLogin.esandiKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then begin
if esandi.Text ='' then begin
Application.MessageBox('Sandi Harus Diisi ..!','Pesan',MB_OK+MB_ICONINFORMATION);
esandi.SetFocus;;
elseend
if ADODataUserTb.Locate('sandi',esandi.Text,[]) then begin
if(Application.MessageBox('Sandi yang Anda Masukan
Salah','Pesan',MB_OK+MB_ICONHAND)=idok)then
esandi.Text:='';
esandi.SetFocus;
elseend if z=2 then
begin
Application.MessageBox('Anda Memiliki 1 Kesempatan
Lagi','Pesan',MB_OK+MB_ICONINFORMATION);
esandi.Text:='';
esandi.SetFocus;
elseend begin
Application.MessageBox('Anda Tidak Berhak Masuk','Pesan',MB_OK+MB_ICONHAND);
close;Application.Terminate;
endend end;end end;
procedure TLogin.BkeluarClick(Sender: TObject);
begin
Application.Terminate;
end;
procedure TLogin.bmasukClick(Sender: TObject);
begin
if ADODataUserTb.Locate('sandi',esandi.Text,[]) then begin
x:=ADODataUserTb.FieldValues['jab'];
if x='KA. PURCHASING' then begin
Application.MessageBox('Anda Masuk Sebagai Kepala
Purchasing','Pesan',MB_OK+MB_ICONINFORMATION);
menuutama.show;
MenuUtama.Edit1.Text:=ADODataUserTb['jab'];
MenuUtama.Edit2.Text:=ADODataUserTb['nmuser'];
elseend
if x='SUPERVISOR' then begin
Application.MessageBox('Anda Masuk Sebagai Supervisor','Pesan',MB_OK+MB_ICONINFORMATION);
menuutama.show;
Application.MessageBox('Anda Masuk Sebagai Staff','Pesan',MB_OK+MB_ICONINFORMATION);
menuutama.show;
procedure TLogin.eidKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then begin
if eid.Text ='' then begin
Application.MessageBox('Masukan Id Anda Terlebih Dahulu
..!','Pesan',MB_OK+MB_ICONINFORMATION);
if(Application.MessageBox('Id yang Anda Masukan Salah','Pesan',MB_OK+MB_ICONHAND)=idok) then y:=y+1;
begin if y=1 then
begin
Application.MessageBox('Anda Memiliki 2 Kesempatan
Lagi','Pesan',MB_OK+MB_ICONINFORMATION);
Application.MessageBox('Anda Memiliki 1 Kesempatan
Lagi','Pesan',MB_OK+MB_ICONINFORMATION);
eid.Text:='';
eid.SetFocus;
elseend begin
Application.MessageBox('Anda Tidak Berhak Masuk','Pesan',MB_OK+MB_ICONHAND);
close;Application.Terminate;
DataUser1: TMenuItem;
procedure DataUser1Click(Sender: TObject);
procedure Keluar1Click(Sender: TObject);
procedure Out1Click(Sender: TObject);
procedure In1Click(Sender: TObject);
procedure DataSupplier1Click(Sender: TObject);
procedure DataItem1Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure DaftarPermintaan1Click(Sender: TObject);
procedure PurchaseOrder1Click(Sender: TObject);
procedure Pembelian1Click(Sender: TObject);
procedure TransaksiPembelian1Click(Sender: TObject);
private
{ Private declarations } public
{ Public declarations } end;
varMenuUtama: TMenuUtama;
implementation
uses FormUser, FormLogin, FormSupplier, FormItemProduk,
FormDaftarPermintaan, FormPurchaseOrder, FormTransPembelian;
{$R *.dfm}
procedure TMenuUtama.DataUser1Click(Sender: TObject);
begin
DataUser.Show;
end;
procedure TMenuUtama.Keluar1Click(Sender: TObject);
begin
Application.Terminate;
end;
procedure TMenuUtama.Out1Click(Sender: TObject);
begin close;
end;
procedure TMenuUtama.In1Click(Sender: TObject);
begin login.show;
end;
procedure TMenuUtama.DataSupplier1Click(Sender: TObject);
begin
DataSupplier.show;
end;
procedure TMenuUtama.DataItem1Click(Sender: TObject);
begin
DataItemProduk.show;
end;
procedure TMenuUtama.Timer1Timer(Sender: TObject);
begin
shortdateformat:='dd mmmm yyyy';
LbTanggal.Caption:= datetostr(date);
LbJam.Caption:=timetostr(time);
LbJam.caption:=formatdatetime('hh:mm:ss',now);
end;
procedure TMenuUtama.DaftarPermintaan1Click(Sender: TObject);
begin
DaftarPermintaan.show;
end;
procedure TMenuUtama.PurchaseOrder1Click(Sender: TObject);
begin
PurchaseOrder.show;
end;
procedure TMenuUtama.Pembelian1Click(Sender: TObject);
begin
TransPembelian.show;
end;
procedure TMenuUtama.TransaksiPembelian1Click(Sender: TObject);
begin
TransPembelian.Show;
end;
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, Grids, DBGrids, DB, ADODB, ExtCtrls;
typeTDataUser = class(TForm) Label1: TLabel;
procedure btambahClick(Sender: TObject);
procedure bitsetelahClick(Sender: TObject);
procedure bitatasClick(Sender: TObject);
procedure bitsebelumClick(Sender: TObject);
procedure bitbawahClick(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure bbatalClick(Sender: TObject);
procedure bhapusClick(Sender: TObject);
procedure bubahClick(Sender: TObject);
procedure bsimpanClick(Sender: TObject);
procedure enamalengkapKeyPress(Sender: TObject; var Key: Char);
procedure memoalamatKeyPress(Sender: TObject; var Key: Char);
procedure esandiKeyPress(Sender: TObject; var Key: Char);
procedure etelpKeyPress(Sender: TObject; var Key: Char);
procedure bkeluarClick(Sender: TObject);
private
{ Private declarations } public
{ Public declarations } procedure aktif;
procedure pasif;
procedure bersih;
procedure tampil;
procedure no_otomatis;
end;
varDataUser: TDataUser;
isi:boolean;
if ADODataUserTb.RecordCount = 0 then begin
ADODataUserTb.Last;
procedure TDataUser.FormActivate(Sender: TObject);
begin
procedure TDataUser.enamalengkapKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then begin
memoalamat.Enabled:=true;
memoalamat.SetFocus;
end;end;
procedure TDataUser.memoalamatKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then begin
etelp.Enabled:=true;
etelp.SetFocus;
end;end;
procedure TDataUser.etelpKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then begin
if ADODataUserTb.Locate('notelp',etelp.Text,[]) then begin
Application.MessageBox('Nomor Sudah Pernah Digunakan','Pesan',MB_OK+MB_ICONINFORMATION);
etelp.Text:='';
if not (key in['0'..'9',#8,#13,#32]) then //jika isian bukan angka dari 0 sampai 9 begin
Application.MessageBox('Input Hanya Angka Saja','Pesan',MB_OK+MB_ICONINFORMATION);
key:=#0;
etelp.Clear;//teks edit akan bersih etelp.SetFocus;
Exit;//untuk menutup pernyataan agar message tidak bertumpuk dengan pesan setelahnya end;end;
procedure TDataUser.esandiKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then begin
if Length (esandi.Text) < 4 then begin
Application.MessageBox('Sandi Harus 4 Digit Huruf','Pesan',MB_OK+MB_ICONINFORMATION);
key:=#0;
Application.MessageBox('Sandi Sudah Pernah Digunakan','Pesan',MB_OK+MB_ICONINFORMATION);
esandi.Text:='';
if not (key in['a'..'z','A'..'Z',#8,#13,#32]) then begin
Application.MessageBox('Input Hanya Huruf Saja','Pesan',MB_OK+MB_ICONINFORMATION);
key:=#0;
esandi.Clear;
esandi.SetFocus;
Exit;
end;end;
{#8 adalah kode ascii tombol backspace (hapus)
#13 adalah kode ascii tombol enter
#32 adalah kode ascii tombol space (spasi)}
procedure TDataUser.btambahClick(Sender: TObject);
begin
bsimpan.Caption:='Simpan';
Application.MessageBox('Silahkan Isi Data Baru','Pesan',MB_OK+MB_ICONINFORMATION);
isi:=true;
btambah.Enabled:=false;
procedure TDataUser.bsimpanClick(Sender: TObject);
begin
if (isi=true) then begin
if (enamalengkap.Text = '')or(memoalamat.Text = '')or(etelp.Text = '')or(esandi.Text = '')or(ejab.Text = '') thenbegin
Application.MessageBox('Data Belum Lengkap','Pesan',MB_OK+MB_ICONINFORMATION);
eiduser.Enabled :=false;
pasif;
enamalengkap.Enabled:=true;
enamalengkap.SetFocus;
elseend
if ADODataUserTb.Locate('iduser',eiduser.Text,[])or
ADODataUserTb.Locate('nmuser',enamalengkap.Text,[]) or ADODataUserTb.Locate('notelp',etelp.Text,[])or ADODataUserTb.Locate('sandi',esandi.Text,[])then
begin
Application.MessageBox('Data Sudah Pernah Ada','Pesan',MB_OK+MB_ICONINFORMATION);
pasif;
Application.MessageBox('Data Berhasil Disimpan','Pesan',MB_OK+MB_ICONINFORMATION);
ADODataUserTb.Post;
tampil;
pasif;
btambah.Enabled:=true;
bsimpan.Enabled:=false;
bbatal.Enabled:=false;
elseif (isi=false) then begin
if (enamalengkap.Text = '')or(memoalamat.Text = '')or(etelp.Text = '')or(esandi.Text = '')or(ejab.Text = '') thenbegin
Application.MessageBox('Data Belum Lengkap','Pesan',MB_OK+MB_ICONINFORMATION);
eiduser.Enabled :=false;
Application.MessageBox('Data Berhasil DiUbah','Pesan',MB_OK+MB_ICONINFORMATION);
ADODataUserTb.Post;
procedure TDataUser.bhapusClick(Sender: TObject);
begin
if Application.MessageBox('Yakin Ingin Menghapus Data?','Tanya',MB_YESNO+MB_ICONQUESTION)=idyes thenbegin
ADODataUserTb.Delete;
ADODataUserTb.First;
ADODataUserTb.Refresh;
ADODataUserTb.Prior;
ADODataUserTb.First;
tampil;
end;end;
procedure TDataUser.bubahClick(Sender: TObject);
begin
procedure TDataUser.bbatalClick(Sender: TObject);
begin
procedure TDataUser.bkeluarClick(Sender: TObject);
begin close;
end;
procedure TDataUser.bitatasClick(Sender: TObject);
begin
bbatal.Enabled:=false;
end;
procedure TDataUser.bitsebelumClick(Sender: TObject);
begin
ADODataUserTb.Prior;
if ADODataUserTb.Bof =true then begin
Application.MessageBox('Sudah Diawal Data','Pesan',MB_OK+MB_ICONINFORMATION);
ADODataUserTb.First;
procedure TDataUser.bitsetelahClick(Sender: TObject);
begin
ADODataUserTb.Next;
if ADODataUserTb.Eof = true then begin
Application.MessageBox('Sudah Diakhir Data','Pesan',MB_OK+MB_ICONINFORMATION);
ADODataUserTb.Last;
procedure TDataUser.bitbawahClick(Sender: TObject);
begin
typeTDataSupplier = class(TForm)
procedure FormActivate(Sender: TObject);
procedure enamasupKeyPress(Sender: TObject; var Key: Char);
procedure bsimpanClick(Sender: TObject);
procedure memoalamatsupKeyPress(Sender: TObject; var Key: Char);
procedure etelpsupKeyPress(Sender: TObject; var Key: Char);
procedure efaxsupKeyPress(Sender: TObject; var Key: Char);
procedure ekontaksupKeyPress(Sender: TObject; var Key: Char);
procedure btambahClick(Sender: TObject);
procedure bhapusClick(Sender: TObject);
procedure bubahClick(Sender: TObject);
procedure bbatalClick(Sender: TObject);
procedure bkeluarClick(Sender: TObject);
procedure bitatasClick(Sender: TObject);
procedure bitsebelumClick(Sender: TObject);
procedure bitsetelahClick(Sender: TObject);
procedure bitbawahClick(Sender: TObject);
procedure ecarikodeKeyPress(Sender: TObject; var Key: Char);
procedure ecarinamaKeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations } public
{ Public declarations } procedure aktif;
varDataSupplier: TDataSupplier;
isi:boolean;
procedure TDataSupplier.no_otomatis;
var nomor:integer;
begin
ADODataSupplierTb.Refresh;
if ADODataSupplierTb.RecordCount = 0 then begin
if nomor < 10 then
ekodesup.Text:=Edit3.Text + '0' + inttostr(nomor) elseekodesup.Text:=Edit3.Text + inttostr(nomor);
end;end;
procedure TDataSupplier.FormActivate(Sender: TObject);
begin
procedure TDataSupplier.enamasupKeyPress(Sender: TObject; var Key: Char);
var karakter:string;
depan:string[5];
tengah:string[5];
gabung:string[5];
begin
if key=#13 then begin
karakter:=enamasup.Text;
Edit1.Text:=copy(karakter,1,2); //copy(teks,indeks atau karakter keberapa,jumlah karakter yang diambil)
if (isi=true) then begin
no_otomatis;
memoalamatsup.Enabled:=TRUE;
memoalamatsup.SetFocus;
elseend
if (isi=false) then begin
memoalamatsup.Enabled:=true;
memoalamatsup.SetFocus;
end;end
{fungsi mengcopy string, mencetak ulang string atau karakter sebanyak huruf yang dipilih dengan posisi karakter awal sudah ditemtukan}
end;
procedure TDataSupplier.memoalamatsupKeyPress(Sender: TObject;
var Key: Char);
begin
if key=#13 then begin
etelpsup.Enabled:=true;
etelpsup.SetFocus;
end;end;
procedure TDataSupplier.etelpsupKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then begin
if ADODataSupplierTb.Locate('telpsup',etelpsup.Text,[]) then begin
Application.MessageBox('Nomor Sudah Pernah Digunakan','Pesan',MB_OK+MB_ICONINFORMATION);
etelpsup.Text:='';
if not (key in['0'..'9',#8,#13,#32]) then //jika isian bukan angka dari 0 sampai 9 begin
Application.MessageBox('Input Hanya Angka Saja','Pesan',MB_OK+MB_ICONINFORMATION);
key:=#0;
etelpsup.Clear;//teks edit akan bersih etelpsup.SetFocus;
Exit;//untuk menutup pernyataan agar message tidak bertumpuk dengan pesan setelahnya end;end;
procedure TDataSupplier.efaxsupKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then begin
if ADODataSupplierTb.Locate('faxsup',efaxsup.Text,[]) then begin
Application.MessageBox('Nomor Sudah Pernah Digunakan','Pesan',MB_OK+MB_ICONINFORMATION);
efaxsup.Text:='';
efaxsup.SetFocus;
end
if not (key in['0'..'9',#8,#13,#32]) then //jika isian bukan angka dari 0 sampai 9 begin
Application.MessageBox('Input Hanya Angka Saja','Pesan',MB_OK+MB_ICONINFORMATION);
key:=#0;
efaxsup.Clear;//teks edit akan bersih efaxsup.SetFocus;
Exit;//untuk menutup pernyataan agar message tidak bertumpuk dengan pesan setelahnya end;end;
procedure TDataSupplier.ekontaksupKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then begin
memoitem.Enabled:=true;
memoitem.SetFocus;
end;end
procedure TDataSupplier.btambahClick(Sender: TObject);
begin
bsimpan.Caption:='Simpan';
Application.MessageBox('Silahkan Isi Data Baru','Pesan',MB_OK+MB_ICONINFORMATION);
isi:=true;
procedure TDataSupplier.bsimpanClick(Sender: TObject);
begin
if (isi=true) then begin
if (ekodesup.Text = '')or(enamasup.Text = '')or(memoalamatsup.Text = '')or(etelpsup.Text = '')or(efaxsup.Text = '')or(ekontaksup.Text = '')or(memoitem.Text = '') then
begin
Application.MessageBox('Data Belum Lengkap','Pesan',MB_OK+MB_ICONINFORMATION);
ekodesup.Enabled :=false;
pasif;
enamasup.Enabled:=true;
enamasup.SetFocus;
elseend
if ADODataSupplierTb.Locate('kdsup',ekodesup.Text,[])or ADODataSupplierTb.Locate('nmsup',enamasup.Text,[])or
ADODataSupplierTb.Locate('telpsup',etelpsup.Text,[])then begin
Application.MessageBox('Data Sudah Pernah Ada','Pesan',MB_OK+MB_ICONINFORMATION);
pasif;
Application.MessageBox('Data Berhasil Disimpan','Pesan',MB_OK+MB_ICONINFORMATION);
ADODataSupplierTb.Post;
elseif (isi=false) then begin
if (enamasup.Text = '')or(memoalamatsup.Text = '')or(etelpsup.Text = '')or(efaxsup.Text = '')or(ekontaksup.Text = '')or(memoitem.Text = '')then
begin
Application.MessageBox('Data Belum Lengkap','Pesan',MB_OK+MB_ICONINFORMATION);
ekodesup.Enabled :=false;
bsimpan.Enabled:=false;
procedure TDataSupplier.bhapusClick(Sender: TObject);
begin
if Application.MessageBox('Yakin Ingin Menghapus Data?','Tanya',MB_YESNO+MB_ICONQUESTION)=idyes thenbegin
procedure TDataSupplier.bubahClick(Sender: TObject);
begin
procedure TDataSupplier.bbatalClick(Sender: TObject);
begin
bsimpan.Enabled:=false;
procedure TDataSupplier.bkeluarClick(Sender: TObject);
begin close;
end;
procedure TDataSupplier.bitatasClick(Sender: TObject);
begin
procedure TDataSupplier.bitsebelumClick(Sender: TObject);
begin
ADODataSupplierTb.Prior;
if ADODataSupplierTb.Bof =true then begin
Application.MessageBox('Sudah Diawal Data','Pesan',MB_OK+MB_ICONINFORMATION);
ADODataSupplierTb.First;
procedure TDataSupplier.bitsetelahClick(Sender: TObject);
begin
ADODataSupplierTb .Next;
if ADODataSupplierTb.Eof = true then begin
Application.MessageBox('Sudah Diakhir Data','Pesan',MB_OK+MB_ICONINFORMATION);
ADODataSupplierTb.Last;
bhapus.Enabled:=true;
bubah.Enabled:=true;
bbatal.Enabled:=false;
end;
procedure TDataSupplier.bitbawahClick(Sender: TObject);
begin
procedure TDataSupplier.ecarikodeKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then begin
if ADODataSupplierTb.Locate('kdsup',ecarikode.Text,[])then begin
//Application.MessageBox('Data Supplier Ada','Pesan',MB_OK+MB_ICONINFORMATION);
Application.MessageBox('Mau Input Data pembelian Lagi ?','Pesan',MB_YESNO+MB_ICONQUESTION);
ecarikode.Text:='';
tampil;
elseend begin
Application.MessageBox('Nomor Supplier Tidak Ada','Pesan',MB_OK+MB_ICONINFORMATION);
ecarikode.Text:='';
end;end end;
procedure TDataSupplier.ecarinamaKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then begin
if ADODataSupplierTb.Locate('nmsup',ecarinama.Text,[])then begin
Application.MessageBox('Data Supplier Ada','Pesan',MB_OK+MB_ICONINFORMATION);
ecarinama.Text:='';
tampil;
elseend begin
Application.MessageBox('Data Supplier Tidak Ada','Pesan',MB_OK+MB_ICONINFORMATION);
ecarinama.Text:='';
end;end end;end.