?? htgl.pas
字號:
unit htgl;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, Grids, DBGrids, StdCtrls, ComCtrls, ExtCtrls, Buttons,
ToolWin, DBCtrls;
type
Thtglfrm = class(TForm)
CoolBar1: TCoolBar;
ToolBar1: TToolBar;
SpeedButton1: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
SpeedButton5: TSpeedButton;
Panel1: TPanel;
Panel2: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
ComboBox1: TComboBox;
ComboBox2: TComboBox;
ComboBox3: TComboBox;
DateTimePicker1: TDateTimePicker;
DateTimePicker2: TDateTimePicker;
DateTimePicker3: TDateTimePicker;
Memo1: TMemo;
Panel3: TPanel;
DBGrid1: TDBGrid;
DataSource1: TDataSource;
SpeedButton2: TSpeedButton;
procedure FormShow(Sender: TObject);
procedure editvalue;
procedure editclear;
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
private
{ Private declarations }
public
{ Public declarations }
end;
var
htglfrm: Thtglfrm;
implementation
uses dbdata;
{$R *.dfm}
procedure Thtglfrm.FormShow(Sender: TObject);
begin
with data.ADOQYhtgl do
begin
close;
sql.Clear;
sql.Add('select * from 合同表');
open;
end;
data.ADOQYhtgl.Active:=true;
if data.ADOQYhtgl.FieldByName('合同編號').Value<>null then
editvalue
else
application.MessageBox('數據庫中沒有數據,請添加數據!','提示',64);
with data.ADOpublic do
begin
close;
sql.Clear;
sql.Add('select distinct 編號 from 人事表');
open;
end;
while not data.ADOpublic.Eof do
begin
combobox1.Items.Add(data.ADOpublic.FieldByName('編號').Value);
data.ADOpublic.Next;
end;
with data.ADOpublic do
begin
close;
sql.Clear;
sql.Add('select distinct 合同類型 from 合同類型表');
open;
end;
while Not Data.ADOpublic.Eof do
begin
ComboBox3.Items.Add(Data.ADOpublic.FieldByName('合同類型').Value);
Data.ADOpublic.Next;
end;
editclear;
end;
procedure Thtglfrm.editvalue;
begin
edit1.Text:=data.ADOQYhtgl.FieldByName('合同編號').Value;
combobox1.Text:=data.ADOQYhtgl.FieldByName('員工編號').Value;
datetimepicker1.Date:=data.ADOQYhtgl.FieldByName('登記日期').Value;
datetimepicker2.Date:=data.ADOQYhtgl.FieldByName('合同開始日期').Value;
datetimepicker3.Date:=data.ADOQYhtgl.FieldByName('合同結束日期').Value;
combobox3.Text:=data.ADOQYhtgl.FieldByName('合同類型').Value;
edit2.Text:=data.ADOQYhtgl.FieldByName('合同期限').Value;
edit3.Text:=data.ADOQYhtgl.FieldByName('合同期工資').Value;
combobox2.Text:=data.ADOQYhtgl.FieldByName('狀態').Value;
memo1.Text:=data.ADOQYhtgl.FieldByName('備注').Value;
end;
procedure Thtglfrm.editclear;
begin
Edit1.Clear;
Edit2.Clear;
Edit3.Clear;
combobox1.Text:='';
combobox2.Text:='';
combobox3.Text:='';
datetimepicker1.Date:=date();
datetimepicker2.Date:=date();
datetimepicker3.Date:=date();
memo1.Clear;
end;
procedure Thtglfrm.SpeedButton1Click(Sender: TObject);
var
s,m:string;
i:integer;
begin
editclear;
s:= FormatDateTime('yyyy',Now());
With data.ADOpublic do
begin
Close;
SQL.Clear;
SQL.Add('select max(合同編號) as ss From 合同表 ');
Open;
end;
If data.ADOpublic.FieldByName('ss').Value = null then
s := s + '001'
else
begin
m:= Trim(data.ADOpublic.FieldByName('ss').Value) ;
i:= StrToInt(copy(m,6,5)) ;
if i<9 then
s:= s + '00'+ InttoStr(i +1)
else if i<99 then
s:= s + '0'+ InttoStr(i +1)
else
s:= s +InttoStr(i +1);
end;
edit1.Text:=s;
combobox1.SetFocus;
combobox3.SetFocus;
end;
procedure Thtglfrm.SpeedButton2Click(Sender: TObject);
var
a,b,c:string;
begin
if messagebox(self.Handle,'確定要修改該信息嗎?','提示',mb_yesno+mb_iconquestion)=idyes then
a:=datetostr(datetimepicker1.Date);
b:=datetostr(datetimepicker2.Date);
c:=datetostr(datetimepicker3.Date);
with data.ADOQYhtgl do
begin
edit;
fieldbyname('合同編號').Value:=edit1.Text;
fieldbyname('員工編號').Value:=combobox1.Text;
fieldbyname('登記日期').Value:=a;
fieldbyname('合同開始日期').Value:=b;
fieldbyname('合同結束日期').Value:=c;
fieldbyname('合同類型').Value:=combobox3.Text;
fieldbyname('合同期限').Value:=edit2.Text;
fieldbyname('合同期工資').Value:=edit3.Text;
fieldbyname('狀態').Value:=combobox2.Text;
fieldbyname('備注').Value:=memo1.Text;
post;
end;
editclear;
application.MessageBox('修改成功','提示',64);
end;
procedure Thtglfrm.SpeedButton3Click(Sender: TObject);
var
a,b,c:string;
begin
a:=datetostr(datetimepicker1.Date);
b:=datetostr(datetimepicker2.Date);
c:=datetostr(datetimepicker3.Date);
if (combobox3.Text<>'') and (edit2.Text<>'') and (edit3.Text<>'') and (combobox2.Text<>'') then
try
with data.ADOQYhtgl do
begin
close;
sql.Clear;
sql.Add('insert 合同表 values (:a,:b,:c,:d,:e,:f,:g,:h,:i,:j)');
parameters.ParamByName('a').Value:=trim(edit1.Text);
parameters.ParamByName('b').Value:=trim(combobox1.Text);
parameters.ParamByName('c').Value:=a;
parameters.ParamByName('d').Value:=b;
parameters.ParamByName('e').Value:=c;
parameters.ParamByName('f').Value:=trim(combobox3.Text);
parameters.ParamByName('g').Value:=trim(edit2.Text);
parameters.ParamByName('h').Value:=trim(edit3.Text);
parameters.ParamByName('i').Value:=trim(combobox2.Text);
parameters.ParamByName('j').Value:=trim(memo1.Text);
execsql;
end;
self.OnShow(sender);
editclear;
application.MessageBox('保存成功','提示',64);
close;
except
application.MessageBox('保存失敗','提示',64);
end
else
application.MessageBox('請完整添寫信息','提示',64);
end;
procedure Thtglfrm.SpeedButton4Click(Sender: TObject);
var
djdate,zzdate:Tdatetime;
state:string;
begin
state:=data.ADOQYhtgl.FieldByName('狀態').Value;
djdate:=date();
zzdate:=data.ADOQYhtgl.FieldByName('合同結束日期').Value;
if (djdate<zzdate) and (state='在職') then
application.MessageBox('該員工的合同期還未滿,不能刪除!','提示',64)
else
if messagebox(self.Handle,'真的要刪除嗎?','提示',mb_yesno+mb_iconquestion)=idyes then
data.ADOQYhtgl.Delete;
editclear;
end;
procedure Thtglfrm.SpeedButton5Click(Sender: TObject);
begin
close;
end;
procedure Thtglfrm.DBGrid1CellClick(Column: TColumn);
begin
if dbgrid1.DataSource.DataSet<>nil then
if dbgrid1.DataSource.DataSet.RecordCount>0 then
editvalue;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -