📄 dj_u.pas
字号:
unit DJ_U;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ExtCtrls, Buttons, ToolWin, StdCtrls;
type
TDJ = class(TForm)
CoolBar1: TCoolBar;
ToolBar1: TToolBar;
SB1: TSpeedButton;
SB2: TSpeedButton;
SB3: TSpeedButton;
SB4: TSpeedButton;
Panel13: TPanel;
SB5: TSpeedButton;
SB6: TSpeedButton;
SB7: TSpeedButton;
SB8: TSpeedButton;
Panel12: TPanel;
SB15: TSpeedButton;
SB9: TSpeedButton;
SB10: TSpeedButton;
SB11: TSpeedButton;
Panel14: TPanel;
ToolButton1: TToolButton;
SB14: TSpeedButton;
Shape1: TShape;
Shape2: TShape;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Shape3: TShape;
Label5: TLabel;
Label6: TLabel;
date1: TDateTimePicker;
Label7: TLabel;
Label8: TLabel;
Shape4: TShape;
Shape5: TShape;
Shape6: TShape;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Shape7: TShape;
Shape8: TShape;
Shape9: TShape;
Label12: TLabel;
Label13: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
Memo1: TMemo;
SpeedButton3: TSpeedButton;
BH: TEdit;
Label14: TLabel;
Name: TEdit;
l1: TLabel;
procedure Edit1Enter(Sender: TObject);
procedure Edit1Exit(Sender: TObject);
procedure Edit2Exit(Sender: TObject);
procedure Edit2Enter(Sender: TObject);
procedure Memo1Enter(Sender: TObject);
procedure Memo1Exit(Sender: TObject);
procedure SB14Click(Sender: TObject);
procedure BHEnter(Sender: TObject);
procedure BHExit(Sender: TObject);
procedure SB11Click(Sender: TObject);
procedure SB5Click(Sender: TObject);
procedure SB4Click(Sender: TObject);
procedure SB3Click(Sender: TObject);
procedure SB2Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure SB1Click(Sender: TObject);
procedure NameEnter(Sender: TObject);
procedure NameExit(Sender: TObject);
procedure Edit3Enter(Sender: TObject);
procedure Edit4Enter(Sender: TObject);
procedure Edit3Exit(Sender: TObject);
procedure Edit4Exit(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure BHKeyPress(Sender: TObject; var Key: Char);
procedure date1Change(Sender: TObject);
procedure SB8Click(Sender: TObject);
procedure SB6Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
DJ: TDJ;
procedure DJ_save;
procedure DJ_write;
implementation
uses DB_U, Main_u, LBZY_U, FYMC_U, Find_U;
{$R *.dfm}
procedure DJ_save;
var
s:string;
hs,Buttona,i:integer;
ddd: TDate;
Year, Month, Day:word;
begin
if (DJ.BH.text='') or (DJ.edit1.text='') then begin
Application.MessageBox('单据不完整,不能保存 ! ','提示信息!'
,mb_Iconexclamation+mb_Ok+mb_DefButton1);
Abort;
end;
customerdata.adoquery4.close;
customerdata.adoquery4.sql.clear;
customerdata.adoquery4.sql.add('select * from DJ where 年份=:nf and 月份=:yf and 单据号=:djh');
customerdata.adoquery4.Parameters.ParamByName('djh').Value:=strtoint(DJ.BH.Text);
DDD:=DJ.date1.date;
Decodedate(ddd,year,month,day);
customerdata.adoquery4.Parameters.ParamByName('nf').Value:=inttostr(year);
customerdata.adoquery4.Parameters.ParamByName('yf').Value:=inttostr(month);
customerdata.adoquery4.open;
if customerdata.adoquery4.RecordCount<>0 then begin
Buttona:=Application.MessageBox('该单据已存在,是否替换? ','警告!'
,mb_Iconquestion+mb_OkCancel+mb_DefButton2);
if Buttona=IDCANCEL then abort;
end;//if customerdata.adoquery1.RecordCount<>0 then begin
//删除将被替换的单据
customerdata.adoquery4.close;
customerdata.adoquery4.sql.clear;
customerdata.adoquery4.sql.add('delete from DJ where 年份=:nf and 月份=:yf and 单据号=:djh');
customerdata.adoquery4.Parameters.ParamByName('djh').Value:=strtoint(DJ.BH.Text);
customerdata.adoquery4.Parameters.ParamByName('nf').Value:=inttostr(year);
customerdata.adoquery4.Parameters.ParamByName('yf').Value:=inttostr(month);
customerdata.adoquery4.Execsql;
customerdata.ADOTable3.Active:=False;
customerdata.ADOTable3.TableName:='DJ';
customerdata.ADOTable3.Active:=true;
DDD:=DJ.date1.date;
Decodedate(ddd,year,month,day);
customerdata.ADOTable3.Insert;
customerdata.ADOTable3.FieldByName('年份').Value:=inttostr(year);
customerdata.ADOTable3.FieldByName('月份').Value:=inttostr(month);
customerdata.ADOTable3.FieldByName('单据号').Value:=strtoint(DJ.BH.Text);
customerdata.ADOTable3.FieldByName('日期').Value:=DJ.date1.date;
customerdata.ADOTable3.FieldByName('姓名').Asstring:=DJ.Name.text;
customerdata.ADOTable3.FieldByName('洗剪吹').Value:=DJ.edit1.text;
customerdata.ADOTable3.FieldByName('烫染').Value:=DJ.edit2.text;
customerdata.ADOTable3.FieldByName('备注').Value:=DJ.Memo1.text;
customerdata.ADOTable3.FieldByName('发型师').Asstring:=DJ.edit3.text;
customerdata.ADOTable3.FieldByName('助理').Asstring:=DJ.edit4.text;
customerdata.ADOTable3.post;
Application.MessageBox('保存完毕 ! ','提示信息!'
,mb_Iconexclamation+mb_Ok+mb_DefButton1);
{ DJ.SB1.Enabled:=true;
DJ.SB2.Enabled:=true;
DJ.SB3.Enabled:=true;
DJ.SB4.Enabled:=true;
DJ.SB5.Enabled:=true;
DJ.SB6.Enabled:=true;
DJ.SB7.Enabled:=true;
DJ.SB8.Enabled:=true;
DJ.SB9.Enabled:=true;
DJ.SB15.Enabled:=true;
DJ.SB10.Enabled:=true;
DJ.SB11.Enabled:=False;
// DJ.SB12.Enabled:=true;
DJ.SB13.Enabled:=False;
DJ.SB14.Enabled:=true; }
end;
procedure DJ_write;
begin
if customerdata.adoquery1.RecordCount<>0 then begin
DJ.BH.Text:=inttostr(customerdata.adoquery1.fieldbyname('单据号').Value);
DJ.Name.Text:=customerdata.adoquery1.fieldbyname('姓名').AsString;
DJ.edit1.Text:=Floattostr(customerdata.adoquery1.fieldbyname('洗剪吹').Value);
DJ.edit2.Text:=Floattostr(customerdata.adoquery1.fieldbyname('烫染').Value);
DJ.Memo1.Text:=customerdata.adoquery1.fieldbyname('备注').AsString;
DJ.edit3.Text:=customerdata.adoquery1.fieldbyname('发型师').AsString;
DJ.edit4.Text:=customerdata.adoquery1.fieldbyname('助理').AsString;
end;// if customerdata.adoquery1.RecordCount<>0 begin
end;
procedure TDJ.Edit1Enter(Sender: TObject);
begin
edit1.Color:=ClAqua;
end;
procedure TDJ.Edit1Exit(Sender: TObject);
begin
edit1.Color:=ClWhite;
end;
procedure TDJ.Edit2Exit(Sender: TObject);
begin
edit2.Color:=ClWhite;
end;
procedure TDJ.Edit2Enter(Sender: TObject);
begin
edit2.Color:=ClAqua;
end;
procedure TDJ.Memo1Enter(Sender: TObject);
begin
Memo1.Color:=ClAqua;
end;
procedure TDJ.Memo1Exit(Sender: TObject);
begin
Memo1.Color:=ClWhite;
end;
procedure TDJ.SB14Click(Sender: TObject);
begin
Close;
end;
procedure TDJ.BHEnter(Sender: TObject);
begin
BH.Color:=ClAqua;
end;
procedure TDJ.BHExit(Sender: TObject);
begin
BH.Color:=ClWhite;
end;
procedure TDJ.SB11Click(Sender: TObject);
begin
DJ_Save;
customerdata.adoquery1.Close;
customerdata.adoquery1.Open;
end;
procedure TDJ.SB5Click(Sender: TObject);
var
ddd: TDateTime;
Year, Month, Day:word;
// i:integer;
begin
BH.Text:='';
edit1.Text:='';
edit2.Text:='';
edit3.Text:='';
edit4.Text:='';
Memo1.Text:='';
Name.Text:='';
Name.SetFocus;
date1.Date:=main.date1.DateTime;
ddd:=date1.Date;
Decodedate(ddd,year,month,day);
customerdata.adoquery4.close;
customerdata.adoquery4.sql.clear;
customerdata.adoquery4.sql.add('select max(单据号) from DJ where 年份=:nf_now and 月份=:yf_now');//求单据号最大值
customerdata.adoquery4.Parameters.ParamByName('nf_now').Value:=year;
customerdata.adoquery4.Parameters.ParamByName('yf_now').Value:=month;
customerdata.adoquery4.open;
BH.Text:=floattostr(customerdata.ADOQuery4.Fields[0].asfloat+1);//单据号最大值加1
{SB1.Enabled:=False;
SB2.Enabled:=False;
SB3.Enabled:=False;
SB4.Enabled:=False;
SB5.Enabled:=False;
SB6.Enabled:=False;
SB7.Enabled:=False;
SB8.Enabled:=False;
SB9.Enabled:=False;
SB15.Enabled:=False;
SB10.Enabled:=False;
SB11.Enabled:=true;
// SB12.Enabled:=False;
SB13.Enabled:=true;
SB14.Enabled:=true;
date1.DragMode:=dmManual; }
end;
procedure TDJ.SB4Click(Sender: TObject);
begin
customerdata.adoquery1.Last;
DJ_write;
{ SB1.Enabled:=true;
SB2.Enabled:=true;
SB3.Enabled:=true;
SB4.Enabled:=true;
SB5.Enabled:=true;
SB6.Enabled:=true;
SB7.Enabled:=true;
SB8.Enabled:=true;
SB9.Enabled:=true;
SB15.Enabled:=true;
SB10.Enabled:=true;
SB11.Enabled:=False;
SB12.Enabled:=true;
SB13.Enabled:=False;
SB14.Enabled:=true;
date1.DragMode:=dmAutomatic; }
end;
procedure TDJ.SB3Click(Sender: TObject);
begin
customerdata.adoquery1.Next;
DJ_write;
end;
procedure TDJ.SB2Click(Sender: TObject);
begin
customerdata.adoquery1.Prior;
DJ_write;
end;
procedure TDJ.FormShow(Sender: TObject);
begin
if l1.Caption='1' then begin
BH.Text:='';
edit1.Text:='';
edit2.Text:='';
edit3.Text:='';
edit4.Text:='';
Memo1.Text:='';
Name.Text:='';
Date1.SetFocus;
customerdata.adoquery1.close;
customerdata.adoquery1.sql.clear;
customerdata.adoquery1.sql.add('select * from DJ Order by 年份,月份,单据号');
customerdata.adoquery1.open;
SB4.Click;
end;
end;
procedure TDJ.SB1Click(Sender: TObject);
begin
customerdata.adoquery1.First;
DJ_write;
end;
procedure TDJ.NameEnter(Sender: TObject);
begin
Name.Color:=ClAqua;
end;
procedure TDJ.NameExit(Sender: TObject);
begin
Name.Color:=ClWhite;
end;
procedure TDJ.Edit3Enter(Sender: TObject);
begin
edit3.Color:=ClAqua;
end;
procedure TDJ.Edit4Enter(Sender: TObject);
begin
edit4.Color:=ClAqua;
end;
procedure TDJ.Edit3Exit(Sender: TObject);
begin
edit3.Color:=ClWhite;
end;
procedure TDJ.Edit4Exit(Sender: TObject);
begin
edit4.Color:=ClWhite;
end;
procedure TDJ.SpeedButton1Click(Sender: TObject);
begin
edit3.SetFocus;
LBZY.l1.Caption:='1';
LBZY.speedbutton4.Enabled:=True;
LBZY.speedbutton4.Visible:=True;
LBZY.ShowModal;
end;
procedure TDJ.SpeedButton2Click(Sender: TObject);
begin
edit4.SetFocus;
LBZY.l1.Caption:='2';
LBZY.speedbutton4.Enabled:=True;
LBZY.speedbutton4.Visible:=True;
LBZY.ShowModal;
end;
procedure TDJ.SpeedButton3Click(Sender: TObject);
begin
Memo1.SetFocus;
FYMC.speedbutton4.Enabled:=True;
FYMC.speedbutton4.Visible:=True;
FYMC.ShowModal;
end;
procedure TDJ.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in['0'..'9','.',#8]) then
key:=#0;
end;
procedure TDJ.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in['0'..'9','.',#8]) then
key:=#0;
end;
procedure TDJ.BHKeyPress(Sender: TObject; var Key: Char);
begin
if not(key in['0'..'9','.',#8]) then
key:=#0;
end;
procedure TDJ.date1Change(Sender: TObject);
var
ddd: TDateTime;
Year, Month, Day:word;
// i:integer;
begin
ddd:=date1.Date;
Decodedate(ddd,year,month,day);
customerdata.adoquery4.close;
customerdata.adoquery4.sql.clear;
customerdata.adoquery4.sql.add('select max(单据号) from DJ where 年份=:nf_now and 月份=:yf_now');//求单据号最大值
customerdata.adoquery4.Parameters.ParamByName('nf_now').Value:=year;
customerdata.adoquery4.Parameters.ParamByName('yf_now').Value:=month;
customerdata.adoquery4.open;
BH.Text:=floattostr(customerdata.ADOQuery4.Fields[0].asfloat+1);//单据号最大值加1
end;
procedure TDJ.SB8Click(Sender: TObject);
begin
Find.l1.Caption:='1';
Find.ShowModal;
end;
procedure TDJ.SB6Click(Sender: TObject);
var
Buttona:integer;
ddd: TDate;
Year, Month, Day:word;
begin
if (BH.Text<>'') and (edit3.Text<>'') then begin
Buttona:=Application.MessageBox('确实删除该张单据吗? ','警告!'
,mb_Iconquestion+mb_OkCancel+mb_DefButton2);
if Buttona=IDCANCEL then abort;
customerdata.adoquery4.close;
customerdata.adoquery4.sql.clear;
customerdata.adoquery4.sql.add('delete from DJ where 年份=:nf and 月份=:yf and 单据号=:djh');
customerdata.adoquery4.Parameters.ParamByName('djh').Value:=strtoint(DJ.BH.Text);
DDD:=DJ.date1.date;
Decodedate(ddd,year,month,day);
customerdata.adoquery4.Parameters.ParamByName('nf').Value:=inttostr(year);
customerdata.adoquery4.Parameters.ParamByName('yf').Value:=inttostr(month);
customerdata.adoquery4.Execsql;
customerdata.adoquery1.close;
customerdata.adoquery1.open;
customerdata.adoquery1.last;
if customerdata.adoquery1.RecordCount=0 then begin
BH.Text:='';
edit1.Text:='';
edit2.Text:='';
edit3.Text:='';
edit4.Text:='';
Memo1.Text:='';
Name.Text:='';
end;
DJ_write;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -