📄 unitsulfjishigozi.pas
字号:
unit UnitSulfjishigozi;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ComCtrls, StdCtrls, Mask, DBCtrls, ExtCtrls, Grids, DBGrids, Db, DBTables;
type
TFrmsulfjishigozi = class(TForm)
Table1: TTable;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Panel1: TPanel;
Panel2: TPanel;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DateTimePicker1: TDateTimePicker;
DBEdit5: TDBEdit;
Table1Ximi: TStringField;
Table1Jsrq: TDateField;
Table1Jishi: TFloatField;
Table1Biaozuen: TFloatField;
Table1Note: TStringField;
Table1Rizi: TFloatField;
Table1Kou: TFloatField;
Table1Butie: TFloatField;
Panel3: TPanel;
Panel4: TPanel;
Panel5: TPanel;
Panel6: TPanel;
DBEdit6: TDBEdit;
DBEdit7: TDBEdit;
Panel7: TPanel;
Panel8: TPanel;
Panel9: TPanel;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button5: TButton;
Button6: TButton;
Bevel1: TBevel;
Label6: TLabel;
Label7: TLabel;
DateTimePicker2: TDateTimePicker;
DateTimePicker3: TDateTimePicker;
Label5: TLabel;
Edit1: TEdit;
Button4: TButton;
Table1Jishizi: TFloatField;
procedure DBEdit1Enter(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
procedure FormShow(Sender: TObject);
procedure Table1FilterRecord(DataSet: TDataSet; var Accept: Boolean);
procedure Button4Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure Edit1Enter(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure DateTimePicker1Change(Sender: TObject);
procedure DateTimePicker1Click(Sender: TObject);
procedure DBEdit3Enter(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Frmsulfjishigozi: TFrmsulfjishigozi;
riqiri:Tdate;
jie,rz:real;
st:string;
pt:integer;
implementation
uses UnitQueryID;
{$R *.DFM}
procedure TFrmsulfjishigozi.DBEdit1Enter(Sender: TObject);
begin
if pt<>1 then
begin
showmessage('请先按“添加”按钮!');
Button5.SetFocus;
exit;
end;
frmCommQueryID.top:=100;
frmCommQueryID.left:=80;
FrmcommqueryID.PageControl1.ActivePageIndex:=0;
FrmcommqueryID.ActiveControl:=FrmcommqueryID.estaffID;
if FrmcommqueryID.showmodal=mrok then
begin
DBEdit1.text:=FrmcommqueryID.query3.fieldbyname('staffname').asstring;
end;
//DBEdit3.setfocus;
end;
procedure TFrmsulfjishigozi.Button5Click(Sender: TObject);
begin
edit1.Text:='';
table1.active:=true;
Button5.Enabled:=false;
Button1.Enabled:=true;
Button3.Enabled:=false;
Button2.Enabled:=false;
Button6.Enabled:=false;
pt:=1;
Table1.append;;
DBedit1.SetFocus;
table1.disablecontrols;
end;
procedure TFrmsulfjishigozi.Button1Click(Sender: TObject);
begin
if pt<>1 then
begin
showmessage('请先按“添加”按钮或“修改”按钮!');
exit;
end;
if (DBEdit1.text='')or(DBEdit3.text='') or (DBEdit4.text='') then
begin
showmessage('请输入职工姓名、工时和日工资标准!');
exit;
end;
DBGrid1.Enabled:=true;
if (DBEdit6.Text='') then table1.FieldByName('butie').asfloat:=0
else table1.FieldByName('butie').asfloat:= strtofloat(DBEdit6.Text);
if (DBEdit7.Text='') then table1.FieldByName('kou').asfloat:=0
else table1.FieldByName('kou').asfloat:= strtofloat(DBEdit7.Text);
//Edit1.Text:=DBEdit1.text;
rz:=strtofloat(DBEdit3.text)*strtofloat(DBEdit4.text)+table1.FieldByName('butie').asfloat-table1.FieldByName('kou').asfloat;
rz:=strtofloat(formatfloat('0.00',rz));
table1.FieldByName('rizi').asfloat:=rz;
table1.FieldByName('jishizi').asfloat:=strtofloat(DBEdit3.text)*strtofloat(DBEdit4.text);
table1.FieldByName('jsrq').asdatetime:=DateTimePicker1.date;
table1.post;
table1.Close;
table1.Filtered:=false;
table1.Filtered:=true;
table1.open;
Button5.Enabled:=true;
Button6.Enabled:=true;
//table1.Filtered:=false;
table1.enablecontrols;
Button2.Enabled:=true;
Button3.Enabled:=true;
DBEdit1.text:='';
DBEdit2.text:='';
DBEdit3.text:='';
DBEdit5.text:='';
DBEdit4.text:='';
DBEdit6.text:='';
DBEdit7.text:='';
st:='';
pt:=0;
end;
procedure TFrmsulfjishigozi.Button3Click(Sender: TObject);
begin
if st<>'a' then
begin
showmessage('请选择要修改的记录!');
exit;
end;
pt:=1;
//table1.Filtered:=true;
//table1.open;
//DataSource1.DataSet:=Table1;
Button3.Enabled:=false;
Button5.Enabled:=false;
DateTimePicker1.date:=table1.FieldByName('jsrq').asdatetime;
Button1.Enabled:=true;
Button2.Enabled:=false;
DBGrid1.Enabled:=false;
//table3.Refresh;
table1.edit;
end;
procedure TFrmsulfjishigozi.Button2Click(Sender: TObject);
begin
if st<>'a' then
begin
showmessage('请选择要删除的记录!');
exit;
end;
if messagedlg('会删除所选记录 要继续吗?',mtWarning,[mbYes,mbNo],0) = mrNo then
begin
st:='';
exit;
end;
table1.open;
table1.Delete;
{
with Query1 do
begin
close;
sql.Clear;
sql.Add('delete from jishigozhi.db');
sql.Add('where ximi=:v_fro and jsrq=:vv and jishi=:jj');
parambyname('v_fro').asstring:=Edit1.Text;
parambyname('vv').asdate:=riqiri;
parambyname('jj').asfloat:=jie;
execsql;
end;
with Query1 do
begin
close;
sql.Clear;
sql.Add('select * from jishigozhi.db');
sql.Add('where ximi=:v_fro ');
parambyname('v_fro').asstring:=Edit1.Text;
open;
end;
}
end;
procedure TFrmsulfjishigozi.DBGrid1CellClick(Column: TColumn);
begin
st:='a';
//Edit1.Text:=table1.fieldbyname('ximi').asstring;
DateTimePicker1.date:=table1.fieldbyname('jsrq').asdatetime;
jie:=table1.fieldbyname('jishi').asfloat;
riqiri:=table1.fieldbyname('jsrq').asdatetime;
end;
procedure TFrmsulfjishigozi.FormShow(Sender: TObject);
begin
pt:=0;
st:='';
DateTimePicker1.date:=date;
DateTimePicker2.date:=date-30;
DateTimePicker3.date:=date;
Button1.Enabled:=false;
Button2.Enabled:=true;
Button3.Enabled:=true;
Button5.Enabled:=true;
table1.Filtered:=true;
table1.Open;
end;
procedure TFrmsulfjishigozi.Table1FilterRecord(DataSet: TDataSet;
var Accept: Boolean);
var
tr,rt:string;
begin
if Edit1.text='' then
begin
tr:=formatdatetime('yy-mm-dd',table1.FieldByName('jsrq').asdatetime);
rt:=formatdatetime('yy-mm-dd',DateTimePicker1.date);
if tr = rt then
Accept:=true
else
Accept:=false;
end
else
begin
//rt:=formatdatetime('yy-mm-dd',DateTimePicker3.date);
//str:=formatdatetime('yy-mm-dd',DateTimePicker2.date);
if(table1.FieldByName('ximi').asstring = Edit1.text) and (table1.FieldByName('jsrq').asdatetime>=DateTimePicker2.date) and (table1.FieldByName('jsrq').asdatetime<=DateTimePicker3.date) then
Accept:=true
else
Accept:=false;
end;
end;
procedure TFrmsulfjishigozi.Button4Click(Sender: TObject);
begin
if edit1.text='' then
begin
showmessage('请输入职工姓名!');
exit;
end;
table1.Filtered:=false;
table1.close;
table1.Filtered:=true;
table1.open;
if table1.RecordCount=0 then
begin
showmessage('无记录!');
exit;
end;
end;
procedure TFrmsulfjishigozi.Button6Click(Sender: TObject);
begin
//query1.Close;
//table1.Close;
close;
end;
procedure TFrmsulfjishigozi.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then
begin
key:=#0;
perform(WM_NEXTDLGCTL,0,0);
end; //if
end;
procedure TFrmsulfjishigozi.Edit1Enter(Sender: TObject);
begin
table1.Close;
Edit1.text:='';
frmCommQueryID.top:=100;
frmCommQueryID.left:=80;
FrmcommqueryID.PageControl1.ActivePageIndex:=0;
FrmcommqueryID.ActiveControl:=FrmcommqueryID.estaffID;
if FrmcommqueryID.showmodal=mrok then
begin
Edit1.text:=FrmcommqueryID.query3.fieldbyname('staffname').asstring;
end;
end;
procedure TFrmsulfjishigozi.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
table1.Filtered:=false;
table1.Close;
edit1.text:='';
end;
//procedure TFrmsulfjishigozi.Table1CalcFields(DataSet: TDataSet);
//begin
//table1.Edit;
// rz:=(table1.FieldByName('jishi').asfloat)*(table1.FieldByName('biaozuen').asfloat);
// rz:=strtofloat(formatfloat('0.00',rz));
//table1.FieldByName('rizi').asfloat := rz;
//end;
procedure TFrmsulfjishigozi.DateTimePicker1Change(Sender: TObject);
begin
if pt=1 then
begin
showmessage('现在是添加记录操作,要修改时间,提交后,'+#13+'删除该记录,选择好时间,再重新输入一次!');
exit;
end;
Edit1.text:='';
table1.Filtered:=false;
table1.Close;
table1.Filtered:=true;
table1.Open;
end;
procedure TFrmsulfjishigozi.DateTimePicker1Click(Sender: TObject);
begin
if pt=1 then
begin
showmessage('现在是添加记录操作,要修改时间,'+#13+'提交后,再用“修改”操作!');
exit;
end;
Edit1.text:='';
DateTimePicker1.Date:=DateTimePicker1.Date-1;
table1.Close;
table1.Filtered:=true;
table1.Open;
end;
procedure TFrmsulfjishigozi.DBEdit3Enter(Sender: TObject);
begin
if pt<>1 then
begin
showmessage('请先按“添加”按钮!');
Button5.SetFocus;
exit;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -