?? gzadd.pas
字號:
unit gzadd;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ComCtrls, TFlatComboBoxUnit, TFlatEditUnit,
ExtCtrls, TFlatPanelUnit, DB, ADODB;
type
TFrmgzadd = class(TForm)
FlatPanel1: TFlatPanel;
Label1: TLabel;
gh: TFlatEdit;
Label2: TLabel;
xm: TFlatEdit;
Label3: TLabel;
xb: TFlatComboBox;
Label4: TLabel;
sfz: TFlatEdit;
Label5: TLabel;
ebm: TFlatComboBox;
Label6: TLabel;
yhzh: TFlatEdit;
Label7: TLabel;
jbgz: TFlatComboBox;
Label8: TLabel;
jj: TFlatComboBox;
Label9: TLabel;
yk1: TFlatEdit;
Label10: TLabel;
yk2: TFlatEdit;
Label11: TLabel;
bx: TFlatEdit;
Label12: TLabel;
yf: TFlatEdit;
Label13: TLabel;
sf: TFlatEdit;
ffsj: TDateTimePicker;
Label14: TLabel;
BitBtn1: TBitBtn;
Label15: TLabel;
Button1: TButton;
Button2: TButton;
Button3: TButton;
ADOQuery1: TADOQuery;
procedure FormCreate(Sender: TObject);
procedure sfzKeyPress(Sender: TObject; var Key: Char);
procedure yhzhKeyPress(Sender: TObject; var Key: Char);
procedure jbgzExit(Sender: TObject);
procedure yk2Exit(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
tys:integer;
function getygbmid(const bmname:string):string;
procedure getbmname;
// procedure wagestat;//統(tǒng)計(jì),寫入數(shù)據(jù)庫;
public
{ Public declarations }
property ty:integer read tys write tys;
end;
var
Frmgzadd: TFrmgzadd;
implementation
{$R *.dfm}
uses Data;
{procedure Tfrmgzadd.wagestat;
var
UpdateSql:string;
begin
//
end; }
function Tfrmgzadd.getygbmid(const bmname:string):string;
begin
with dm.ADOQuery1 do
begin
close;
sql.Clear;
sql.Add('select 部門編碼 from 部門 where 部門名稱='''+bmname+'''');
open;
result:=fieldByName('部門編碼').AsString;
close;
end;
end;
procedure Tfrmgzadd.getbmname;
begin
with dm.ADOQuery1 do
begin
close;
sql.Clear;
sql.Add('select 部門名稱 from 部門');
open;
first;
ebm.Items.Clear ;
while not eof do
begin
ebm.Items.Add(fieldbyname('部門名稱').asstring) ;
next;
end;
close;
end;
end;
procedure TFrmgzadd.FormCreate(Sender: TObject);
begin
getbmname;
//wagestat;
end;
procedure TFrmgzadd.sfzKeyPress(Sender: TObject; var Key: Char);
begin
//檢查身份證號碼
end;
procedure TFrmgzadd.yhzhKeyPress(Sender: TObject; var Key: Char);
begin
//檢查銀行帳號
end;
procedure TFrmgzadd.jbgzExit(Sender: TObject);
var
gzbx:currency;
begin
gzbx:=(StrToCurr(jbgz.text))*0.1;
bx.Text:=CurrToStr(gzbx);
end;
procedure TFrmgzadd.yk2Exit(Sender: TObject);
var
a,b,c,d,e:currency;
begin
//
a:=StrToCurr(jbgz.text);
b:=StrTOCurr(jj.Text);
C:=StrTOCurr(bx.Text);
d:=StrToCurr(yk1.Text);
e:=StrToCurr(yk2.Text);
yf.Text:=CurrToStr(a+b+c);
sf.Text:=CurrtoStr(a+b+c-d-e);
end;
procedure TFrmgzadd.BitBtn1Click(Sender: TObject);
var
sql:string;
date:string;
begin
//
if trim(gh.Text)='' then
begin
gh.SetFocus;
application.MessageBox('請輸入部門編碼','系統(tǒng)提示',64);
modalresult:=mrnone;
exit;
end;
if trim(xm.Text)='' then
begin
xm.SetFocus;
application.MessageBox('請輸入員工姓名','系統(tǒng)提示',64);
modalresult:=mrnone;
exit;
end;
if trim(sfz.Text)='' then
begin
sfz.SetFocus;
application.MessageBox('請輸入部門編碼','系統(tǒng)提示',64);
modalresult:=mrnone;
exit;
end;
if trim(yhzh.Text)='' then
begin
yhzh.SetFocus;
application.MessageBox('請輸入銀行帳號!','系統(tǒng)提示',64);
modalresult:=mrnone;
exit;
end;
date:=DateTostr(ffsj.dateTime);
if ty=1 then
begin
sql:='insert into 工資(工號,姓名,部門編碼,性別,身份證號碼,銀行帳號,基本工資,獎(jiǎng)金,應(yīng)扣1,應(yīng)扣2,保險(xiǎn),應(yīng)發(fā)工資,實(shí)發(fā)工資,發(fā)放時(shí)間) values ('''
+trim(gh.Text)+''','''+trim(xm.Text)+''','''+getygbmid(ebm.Text)+''','''
+trim(xb.Text)+''','''+trim(sfz.Text)+''','''
+trim(yhzh.Text)+''','+trim(jbgz.Text)+','+trim(jj.Text)+','+trim(yk1.Text)+','+trim(yk2.Text)+','+trim(bx.Text)+','+yf.Text+','+sf.Text+','''+date+''')';
dm.ADOConnection1.Execute(sql);
application.MessageBox('添加成功','系統(tǒng)提示',64);
end
else
begin
Button1.Visible:=false;
button2.Visible:=false;
button3.Visible:=false;
sql:='update 工資 set 姓名='''+trim(xm.Text)+''',部門編碼='''+getygbmid(ebm.Text)+''',';
sql:=sql+'性別='''+trim(xb.Text)+''',身份證號碼='''+trim(sfz.Text)+''',銀行帳號='''+trim(yhzh.Text)+''',';
sql:=sql+'基本工資='+trim(jbgz.Text)+',獎(jiǎng)金='+trim(jj.Text)+',應(yīng)扣1='+trim(yk1.Text)+',應(yīng)扣2='+trim(yk2.Text)+',保險(xiǎn)='+trim(bx.Text)+',應(yīng)發(fā)工資='+yf.Text+',';
sql:=sql+'發(fā)放時(shí)間='''+date+''' where 工號='''+trim(gh.Text)+'''';
dm.ADOConnection1.Execute(sql);
application.MessageBox('修改成功 ','系統(tǒng)提示',64);
end;
self.ADOQuery1.DataSource.DataSet.Active:=false;
self.ADOQuery1.DataSource.DataSet.Active:=true;
end;
procedure TFrmgzadd.Button1Click(Sender: TObject);
begin
//檢測工號
if not dm.ADOConnection1.Execute('select 工號 from 工資 where 工號='''
+trim(gh.Text)+'''').EOF then
begin
gh.SetFocus;
application.MessageBox('已經(jīng)有此工號','',64);
modalResult:=mrNone;
exit;
end;
end;
procedure TFrmgzadd.Button2Click(Sender: TObject);
begin
//檢測身份證
if not dm.ADOConnection1.Execute('select 身份證號碼 from 工資 where 身份證號碼 ='''
+trim(sfz.Text)+'''').EOF then
begin
sfz.SetFocus;
application.MessageBox('已經(jīng)有此身份證號碼','',64);
modalResult:=mrNone;
exit;
end;
end;
procedure TFrmgzadd.Button3Click(Sender: TObject);
begin
//檢測銀行帳號
if not dm.ADOConnection1.Execute('select 銀行帳號 from 工資 where 銀行帳號 ='''
+trim(yhzh.Text)+'''').EOF then
begin
yhzh.SetFocus;
application.MessageBox('已經(jīng)有此身份證號碼','',64);
modalResult:=mrNone;
exit;
end;
end;
procedure TFrmgzadd.FormShow(Sender: TObject);
begin
gh.Enabled:=tys=1;
if tys<>1 then //讀取
begin
adoquery1.Connection:=dm.ADOConnection1;
adoquery1.SQL.Text:='SELECT 工資.工號 as 工號,工資.姓名 as 姓名,部門.部門名稱 as 部門名稱,工資.性別 as 性別,';
adoquery1.SQL.Text:=adoquery1.SQL.Text+'工資.身份證號碼 as 身份證號碼,工資.銀行帳號,工資.基本工資 as 基本工資,工資.獎(jiǎng)金 as 獎(jiǎng)金,工資.應(yīng)扣1 as 應(yīng)扣1 ,';
adoquery1.SQL.Text:=adoquery1.SQL.Text+'工資.應(yīng)扣2 as 應(yīng)扣2 ,工資.保險(xiǎn) as 保險(xiǎn),工資.應(yīng)發(fā)工資 as 應(yīng)發(fā)工資,';
adoquery1.SQL.Text:=adoquery1.SQL.Text+'工資.實(shí)發(fā)工資 as 實(shí)發(fā)工資,工資.發(fā)放時(shí)間 as 發(fā)放時(shí)間 FROM 工資 INNER JOIN 部門 ON 工資.部門編碼 = 部門.部門編碼 where 工資.工號='''+trim(gh.Text)+'''';
adoquery1.Open;
xm.Text:=adoquery1.fieldByname('姓名').AsString;
ebm.Text:=adoquery1.fieldByname('部門名稱').AsString;
xb.Text:=adoquery1.fieldByName('性別').AsString;
sfz.Text:=adoquery1.fieldBYname('身份證號碼').AsString;
yhzh.Text:=adoquery1.fieldBYname('銀行帳號').AsString;
jbgz.Text:=adoquery1.fieldByName('基本工資').AsString;
jj.Text:=adoquery1.fieldByName('獎(jiǎng)金').AsString;
yk1.Text:=adoquery1.fieldByName('應(yīng)扣1').AsString;
yk2.Text:=adoquery1.fieldByName('應(yīng)扣2').AsString;
bx.Text:=adoquery1.fieldByName('保險(xiǎn)').AsString;
yf.Text:=adoquery1.fieldByName('應(yīng)發(fā)工資').AsString;
sf.Text:=adoquery1.fieldByName('實(shí)發(fā)工資').AsString;
ffsj.Date:=adoquery1.fieldByName('發(fā)放時(shí)間').asdatetime;
adoquery1.Close;
adoquery1.free;
end;
end;
end.
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -