📄 wagefind.pas.~8~
字号:
unit wagefind;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, Grids, DBGrids, StdCtrls, ExtCtrls, DBClient,wageinfo_unit;
type
Twagefindfrm = class(TForm)
Label1: TLabel;
Bevel1: TBevel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
worker_ided: TEdit;
give_dateed: TEdit;
allowance1ed: TEdit;
rewarded: TEdit;
overtime_moneyed: TEdit;
deduct_checked: TEdit;
medical_moneyed: TEdit;
unemploy_moneyed: TEdit;
worker_nameed: TEdit;
base_wageed: TEdit;
allowance2ed: TEdit;
aged_moneyed: TEdit;
compo_moneyed: TEdit;
housing_moneyed: TEdit;
income_taxed: TEdit;
real_wageed: TEdit;
Button1: TButton;
Button2: TButton;
Button3: TButton;
DBGrid1: TDBGrid;
wagefind_ds1: TDataSource;
wagefind_cds1: TClientDataSet;
procedure Button3Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
private
wageinfo:Twageinfo;
{ Private declarations }
public
{ Public declarations }
end;
var
wagefindfrm: Twagefindfrm;
sql:string;
implementation
{$R *.dfm}
procedure Twagefindfrm.Button3Click(Sender: TObject);
begin
worker_ided.Text:='';worker_nameed.Text :='';
give_dateed.Text :='';base_wageed.Text:='';
allowance1ed.Text :=''; allowance2ed.Text :='';
rewarded.Text :='';aged_moneyed.Text :='';
overtime_moneyed.Text :='';compo_moneyed.Text:='';
deduct_checked.Text :='';housing_moneyed.Text :='';
medical_moneyed.Text :='';income_taxed.Text :='';
unemploy_moneyed.Text :='';real_wageed.Text :='';
wagefindfrm.Close;
end;
procedure Twagefindfrm.Button2Click(Sender: TObject);
begin
//实例化类
wageinfo:=Twageinfo.create ;
if (worker_ided.Text='') or (give_dateed.Text='') then
begin
showmessage('请根据员工编号和月份编号来查找!');
exit;
end;
//先查询记录是否存在
if wageinfo.WageInfoRec(worker_ided.Text,give_dateed.Text)=false then
begin
showmessage('对不起,该记录不存在!');
exit;
end;
//赋值查询语句
sql:='select worker_id 员工编号,worker_name 员工姓名,give_date 月份编号,'
+'base_wage 基本工资,allowance1 公共补贴,allowance2 出差补贴,reward 奖金,'
+'aged_money 养老保险,overtime_money 加班费,compo_money 工伤保险,'
+'deduct_check 扣考核,housing_money 住房公积金,medical_money 医疗保险,'
+'income_tax 所得税,unemploy_money 失业保险,real_wage 实发工资 from '
+'wage_info where worker_id='''+worker_ided.Text+''' and give_date='''+give_dateed.Text+'''';
//将查询的记录显示出来
wagefind_cds1.Data:=wageinfo.WagesRecs(sql);
//获取对应字段内容并在文本框上显示出来
worker_ided.Text :=DBGrid1.Fields[0].AsString ; //员工编号
worker_nameed.Text :=DBGrid1.Fields[1].AsString ; //员工姓名
give_dateed.Text :=DBGrid1.Fields[2].AsString ; //月份编号
base_wageed.Text :=DBGrid1.Fields[3].AsString ; //基本工资
allowance1ed.Text :=DBGrid1.Fields[4].AsString ; //公共补贴
allowance2ed.Text :=DBGrid1.Fields[5].AsString ; //出差补贴
rewarded.Text :=DBGrid1.Fields[6].AsString ; //奖金
aged_moneyed.Text :=DBGrid1.Fields[7].AsString ; //养老保险
overtime_moneyed.Text :=DBGrid1.Fields[8].AsString ; //加班费
compo_moneyed.Text :=DBGrid1.Fields[9].AsString ; //工伤保险
deduct_checked.Text :=DBGrid1.Fields[10].AsString ; //扣除考核
housing_moneyed.Text :=DBGrid1.Fields[11].AsString ; //住房公积金
medical_moneyed.Text :=DBGrid1.Fields[12].AsString ; //医疗保险
income_taxed.Text :=DBGrid1.Fields[13].AsString ; //所得税
unemploy_moneyed.Text :=DBGrid1.Fields[14].AsString ; //失业保险
real_wageed.Text :=DBGrid1.Fields[15].AsString ; //实发工资
//释放类的实例
wageinfo.Free;
end;
procedure Twagefindfrm.Button1Click(Sender: TObject);
begin
//实例化类
wageinfo:=Twageinfo.create ;
//判断数据库中是否有记录存在
if wageinfo.WageInfoRec1('select * from wage_info')=false then
begin
application.MessageBox('数据库中没有记录存在!','提示:',mb_ok);
exit;
end;
//赋值查询语句
sql:='select worker_id 员工编号,worker_name 员工姓名,give_date 月份编号,'
+'base_wage 基本工资,allowance1 公共补贴,allowance2 出差补贴,reward 奖金,'
+'aged_money 养老保险,overtime_money 加班费,compo_money 工伤保险,'
+'deduct_check 扣考核,housing_money 住房公积金,medical_money 医疗保险,'
+'income_tax 所得税,unemploy_money 失业保险,real_wage 实发工资 from wage_info';
//将查询结果在列表中显示出来
wagefind_cds1.Data :=wageinfo.WagesRecs(sql);
//释放类的实例
wageinfo.Free;
end;
procedure Twagefindfrm.DBGrid1CellClick(Column: TColumn);
begin
try
worker_ided.Text :=adoquery2.fieldbyname('员工编号').AsString ;
worker_nameed.Text :=adoquery2.fieldbyname('员工姓名').AsString ;
give_dateed.Text :=adoquery2.fieldbyname('月份编号').AsString ;
base_wageed.Text :=adoquery2.FieldValues['基本工资'] ;
allowance1ed.Text :=adoquery2.FieldValues['公共补贴'] ;
allowance2ed.Text :=adoquery2.FieldValues['出差补贴'] ;
rewarded.Text :=adoquery2.FieldValues['奖金'] ;
aged_moneyed.Text :=adoquery2.FieldValues['养老保险'] ;
overtime_moneyed.Text :=adoquery2.FieldValues['加班费'] ;
compo_moneyed.Text :=adoquery2.FieldValues['工伤保险'] ;
deduct_checked.Text :=adoquery2.FieldValues['扣考核'] ;
housing_moneyed.Text :=adoquery2.FieldValues['住房公积金'] ;
medical_moneyed.Text :=adoquery2.FieldValues['医疗保险'] ;
income_taxed.Text :=adoquery2.FieldValues['所得税'] ;
unemploy_moneyed.Text :=adoquery2.FieldValues['失业保险'] ;
real_wageed.Text :=adoquery2.FieldValues['实发工资'] ;
except
showmessage('没有可以显示的数据记录!');
exit;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -