Koding Acara 2
Koding Acara 2
1 Membuat Splash
var
FSplash: TFSplash;
Praktikum 2.3.1 Membuat Login
Kode Program :
end;
unit ULogin;
var
interface FLogin: TFLogin;
uses implementation
Windows, Messages, SysUtils, Variants, uses UMenu;
Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls;
{$R *.dfm}
type
procedure TFLogin.BitBtn1Click(Sender:
TFLogin = class(TForm) TObject);
Bevel1: TBevel; begin
Label1: TLabel; If (Edit1.Text = 'public') then
Label2: TLabel; Begin
Label3: TLabel; With FMenu do
Edit1: TEdit; Begin
Edit2: TEdit; Alsin1.Enabled := False;
BitBtn1: TBitBtn; Daya1.Enabled := False;
BitBtn2: TBitBtn; DaftarHarga1.Enabled := False;
procedure BitBtn1Click(Sender: PerhitunganBiaya1.Enabled := False;
TObject);
FMenu.Show;
procedure BitBtn2Click(Sender:
TObject); End;
private End
type
implementation
TFMenu = class(TForm)
MainMenu1: TMainMenu;
{$R *.dfm}
Label1: TLabel;
Image1: TImage;
end.
Praktikum 2.5.1 Program Alsin
procedure
TFAlsin.RadioGroup1Click(Sender: Caption := 'Menambah Data';
TObject);
ActiveControl := Edit1;
begin
end;
if RadioGroup1.ItemIndex = 0 then
TAlsin.IndexFieldNames := 'KdAlsin'
FKtAlsin.ShowModal;
else
TAlsin.IndexFieldNames := 'NmAlsin1';
if (FKtAlsin.ModalResult = mrok) then
end;
with TAlsin, FKtAlsin do
begin
procedure TFAlsin.btTambahClick(Sender:
TObject); Append;
FieldByName('KdAlsin').AsString :=
Edit1.Text;
Var
FieldByName('NmAlsin').AsString :=
JmlTapak1 : integer; Edit2.Text;
LbrPerTapak1, LbrKerjaAlsin1 : real; FieldByName('JmlTapak').AsInteger :=
begin StrToInt(Edit3.Text);
FieldByName('JamKerjaPerThAlsin').AsFlo Edit9.Text :=
at := StrToFloat(Edit9.Text); FloatToStr(TAlsin.Fields[8].AsFloat);
FKtAlsin.Free; end;
end; FKtAlsin.ShowModal;
if (FKtAlsin.ModalResult = mrok) then
begin FieldByName('NmAlsin').AsString :=
Edit2.Text;
FKtAlsin:=TFKtAlsin.Create (Self);
FieldByName('JmlTapak').AsInteger :=
with FKtAlsin do StrToInt(Edit3.Text);
begin JmlTapak1 :=
FieldByName('JmlTapak').AsInteger;
Edit1.Text := TAlsin.Fields[0].AsString;
FieldByName('LbrPerTapak').AsFloat := TAlsin.IndexFieldNames := 'KdAlsin';
StrToFloat(Edit4.Text);
{Mencari data}
LbrPerTapak1 :=
FieldByName('LbrPerTapak').AsFloat; if (not TAlsin.FindKey([EKdAlsin.Text]))
then
LbrKerjaAlsin1 := JmlTapak1 *
LbrPerTapak1; {Jika data tidak ditemukan tampilkan
pesan}
FieldByName('LbrKerjaAlsin').AsFloat
:= LbrKerjaAlsin1; Application.MessageBox ('Data tidak
ditemukan',
FieldByName('HrgAlsin').AsFloat :=
StrToFloat(Edit6.Text); 'Information', MB_OK or
MB_ICONINFORMATION);
end; end;
FKtAlsin.Free;
end; procedure
TFAlsin.TAlsinPostError(DataSet:
TDataSet; E: EDatabaseError;
procedure TFAlsin.btKeluarClick(Sender: var Action: TDataAction);
TObject);
begin
Var
FAlsin.close;
IDBIError : Integer;
end;
Begin
procedure TFAlsin.btCariKdClick(Sender:
TObject); If (E is EDBEngineError) then
begin Begin
end; begin
if RadioGroup1.ItemIndex = 0 then
EMin = 9730;
ERequiredField = 9732; procedure TFDaya.btTambahClick(Sender:
TObject);
EadaDetil = 9734;
Var
KdDaya1 :string;
implementation
begin
FKtDaya:= TFKtDaya.Create (Self);
FieldByName('JamKerjaPerThDaya').AsFlo
at := StrToFloat(Edit6.Text);
with FKtDaya do FieldByName('KecpKerja').AsFloat :=
begin StrToFloat(Edit7.Text);
Edit1.Text := '';
Edit2.Text := ''; Post;
Edit5.Text := '0';
Edit6.Text := '0'; end;
Edit7.Text := '0';
procedure TFDaya.btEditClick(Sender:
TObject);
Caption := 'Menambah Data';
Var
ActiveControl := Edit1;
KdDaya :string;
end;
begin
FKtDaya:= TFKtDaya.Create (Self);
FKtDaya.ShowModal;
if (FKtDaya.ModalResult = mrok) then
with FKtDaya do
with TDaya, FKtDaya do
begin
begin
Edit1.Text := TDaya.Fields[0].AsString;
Append;
Edit2.Text := TDaya.Fields[1].AsString;
FieldByName('KdDaya').AsString :=
Edit1.Text; Edit3.Text :=
FloatToStr(TDaya.Fields[2].AsFloat);
FieldByName('NmDaya').AsString :=
Edit2.Text; Edit4.Text :=
FloatToStr(TDaya.Fields[3].AsFloat);
FieldByName('HPDaya').AsFloat :=
StrToFloat(Edit3.Text); Edit5.Text :=
FloatToStr(TDaya.Fields[4].AsFloat);
FieldByName('HrgDaya').AsFloat :=
StrToFloat(Edit4.Text); Edit6.Text :=
FloatToStr(TDaya.Fields[5].AsFloat);
FieldByName('UmurEkonDaya').AsFloat
:= StrToFloat(Edit5.Text);
Edit7.Text := procedure TFDaya.btKeluarClick(Sender:
FloatToStr(TDaya.Fields[6].AsFloat); TObject);
begin
Caption := 'Mengedit Data'; FDaya.close;
ActiveControl := Edit1; end;
end;
procedure TFDaya.btCariKdClick(Sender:
TObject);
FKtDaya.ShowModal;
begin
if (FKtDaya.ModalResult = mrok) then
{Menggunakan indeks primer}
with TDaya, FKTDaya do
TDaya.IndexFieldNames := 'KdDaya';
begin
{Mencari data}
Edit;
if (not TDaya.FindKey([EKdDaya.Text]))
FieldByName('KdDaya').AsString := then
Edit1.Text;
{Jika data tidak ditemukan tampilkan
FieldByName('NmDaya').AsString := pesan}
Edit2.Text;
Application.MessageBox ('Data tidak
FieldByName('HPDaya').AsFloat := ditemukan',
StrToFloat(Edit3.Text);
'Information', MB_OK or
FieldByName('HrgDaya').AsFloat := MB_ICONINFORMATION);
StrToFloat(Edit4.Text);
EKdDaya.Text :='';
FieldByName('UmurEkonDaya').AsFloat := ActiveControl := EKdDaya;
StrToFloat(Edit5.Text);
end;
FieldByName('JamKerjaPerThDaya').AsFlo
at := StrToFloat(Edit6.Text); procedure TFDaya.FormCreate(Sender:
FieldByName('KecpKerja').AsFloat := TObject);
StrToFloat(Edit7.Text); begin
Post; KeyPreview := True;
end; end;
FKtDaya.Free;
end; procedure
TFDaya.TDayaPostError(DataSet:
TDataSet; E: EDatabaseError;
var Action: TDataAction); StrPCopy (S, Format ('Yakin Kode Daya
%s dihapus ?',
[TDaya.Fields[0].AsString]));
Var
if (Application.MessageBox (S,
IDBIError : Integer; 'Peringatan',
MB_YESNO or MB_ICONQUESTION)
begin = IDYES) then
eKeyViol :
{Duplikasi Kd Daya} end.
Begin
MessageDLG('Kode Daya sama', Praktikum 2.5.3 Program Harga Bahan
mtWarning,[mbok],0);
Abort;
Kode Program :
End;
End; unit UHrgBahan;
End;
end; interface
begin
if (Key = vk_F8) then type
with FKtHrgBahan do
procedure TFHrgBahan.btEditClick(Sender:
begin TObject);
Edit1.Text := ''; Var
Edit2.Text := ''; KdBahan :string;
Edit3.Text := ''; begin
Edit4.Text := ''; FKtHrgBahan:= TFKtHrgBahan.Create
(Self);
procedure TFHrgBahan.FormCreate(Sender:
Post; TObject);
end; begin
FKtHrgBahan.Free; KeyPreview := True;
end; end;
procedure procedure
TFHrgBahan.btKeluarClick(Sender: TFHrgBahan.THrgBahanPostError(DataSet:
TObject); TDataSet;
begin
E: EDatabaseError; var Action: if (Key = vk_F8) then
TDataAction);
Begin
StrPCopy (S, Format ('Yakin Kode Bahan
Var %s dihapus ?',
IDBIError : Integer; [THrgBahan.Fields[0].AsString]));
if (Application.MessageBox (S,
'Peringatan',
begin
MB_YESNO or MB_ICONQUESTION)
If (E is EDBEngineError) then = IDYES) then
Begin {menegaskan pemakai apakah yakin akan
iDBIError := (E as menghapus ?}
EDBEngineError).Errors[0].ErrorCode; THrgBahan.Delete;
case iDBIError of End;
eKeyViol : end;
{Duplikasi Kd Bahan}
Begin end.
MessageDLG('Kode Bahan sama',
mtWarning,[mbok],0);
Abort;
End;
End;
End;
end;
procedure
TFHrgBahan.FormKeyDown(Sender:
TObject; var Key: Word;
Shift: TShiftState);
Var
S : array [0..255] of char;
begin