📄 npyj.pas
字号:
unit npyj;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ComCtrls, Db, Grids, DBGrids;
type
Tnpyjb = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
Button3: TButton;
Button5: TButton;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Label3: TLabel;
DateTimePicker1: TDateTimePicker;
Label4: TLabel;
Edit3: TEdit;
Label5: TLabel;
Edit4: TEdit;
Label6: TLabel;
Memo1: TMemo;
Label7: TLabel;
Edit5: TEdit;
Label8: TLabel;
Edit6: TEdit;
Label9: TLabel;
Label10: TLabel;
Edit8: TEdit;
Button7: TButton;
DateTimePicker2: TDateTimePicker;
Button1: TButton;
TabSheet3: TTabSheet;
Label11: TLabel;
Edit7: TEdit;
Label12: TLabel;
Edit9: TEdit;
Label13: TLabel;
Label14: TLabel;
Edit11: TEdit;
Label15: TLabel;
Edit12: TEdit;
DateTimePicker3: TDateTimePicker;
DBGrid3: TDBGrid;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
DBGrid2: TDBGrid;
Button4: TButton;
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button2Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Edit1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit2KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit5KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit6KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit7KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit9KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure DBGrid2CellClick(Column: TColumn);
procedure DBGrid1CellClick(Column: TColumn);
procedure DBGrid3CellClick(Column: TColumn);
procedure Button4Click(Sender: TObject);
procedure DBGrid2DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
procedure DBGrid2KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure DBGrid1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure DBGrid3KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit7Enter(Sender: TObject);
procedure Edit7Exit(Sender: TObject);
procedure Edit5Enter(Sender: TObject);
procedure Edit5Exit(Sender: TObject);
procedure Edit1Enter(Sender: TObject);
procedure Edit1Exit(Sender: TObject);
procedure TabSheet2Enter(Sender: TObject);
procedure TabSheet1Enter(Sender: TObject);
private
{ Private declarations }
public
i_update:boolean;
{ Public declarations }
end;
var
npyjb: Tnpyjb;
implementation
uses datamodule, th, my, htyj, npfind, htfind, yjfind;
{$R *.DFM}
procedure Tnpyjb.Button1Click(Sender: TObject);
begin
if pagecontrol1.activepage=tabsheet1 then
npfindb.show;
if pagecontrol1.activepage=tabsheet2 then
yjfindb.show;
if pagecontrol1.activepage=tabsheet3 then
htfindb.show;
end;
procedure Tnpyjb.Button3Click(Sender: TObject);
var
yjstr,htgnstr:string;
begin
if pagecontrol1.activepage=tabsheet1 then
begin
with datamodule1.npdj do
begin
try
fieldbyname('a_number').asstring:=edit1.text;
fieldbyname('a_name').asstring:=edit2.text;
fieldbyname('a_date').asdatetime:=datetimepicker1.date;
fieldbyname('a_wp').asstring:=edit3.text;
fieldbyname('a_total').asfloat:=strtofloat(edit4.text);
fieldbyname('a_memo').asstring:=memo1.text;
post;
showmessage('正确保存');
edit1.text:='';
edit2.text:='';
edit3.text:='';
edit4.text:='';
append;
except
showmessage('不能正确保存数据,请确保输入数据的正确性');
end;
end;
end;
if pagecontrol1.activepage=tabsheet2 then
begin
yjstr:='select sum(a_yj) as bb from yjb where a_name='+''''+edit6.text+'''';
yjstr:=yjstr+' and a_number='+''''+edit5.text+'''';
with datamodule1.yjbs do
begin
close;
sql.clear;
sql.add(yjstr);
prepare;
open;
end;
showmessage(floattostr(datamodule1.yjsd.fieldbyname('a_full').asfloat));
if datamodule1.yjsd.FieldByName('a_full').asfloat<=datamodule1.yjbs.fieldbyname('bb').asfloat then
begin
if application.messagebox('押金已足够继续押吗?','程序执行确认',mb_yesno+mb_defbutton2+mb_iconstop+mb_applmodal)=idyes then
begin
with datamodule1.yjb do
begin
try
fieldbyname('A_number').asstring:=edit5.text;
fieldbyname('a_name').asstring:=edit6.text;
fieldbyname('a_date').asdatetime:=datetimepicker1.date;
fieldbyname('a_yj').asfloat:=strtofloat(edit8.text);
post;
showmessage('正确保存');
edit5.text:='';
edit6.text:='';
edit8.text:='';
append;
except
showmessage('不能正确保存数据,请确保输入数据的正确性');
end;//except
end;//with
end//确认的
else
begin
end;
end//已满的
else
begin
with datamodule1.yjb do
begin
try
fieldbyname('A_number').asstring:=edit5.text;
fieldbyname('a_name').asstring:=edit6.text;
fieldbyname('a_date').asdatetime:=datetimepicker1.date;
fieldbyname('a_yj').asfloat:=strtofloat(edit8.text);
post;
showmessage('正确保存');
edit5.text:='';
edit6.text:='';
edit8.text:='';
append;
except
showmessage('不能正确保存数据,请确保输入数据的正确性');
end;
end;
end;
end;//tabsheet的
if pagecontrol1.activepage=tabsheet3 then
begin
htgnstr:='select *from htgn where a_number='+''''+edit7.text+'''';
with datamodule1.htgns do
begin
close;
sql.clear;
sql.add(htgnstr);
prepare;
open;
end;
if (not datamodule1.htgns.eof) and (i_update<>true) then
begin
if application.messagebox('此人合同已签,是否更新?','程序执行确认',mb_yesno+mb_defbutton2+mb_iconstop+mb_applmodal)=idyes then
begin
i_update:=true;
edit7.text:=datamodule1.htgns.fieldbyname('a_number').asstring;
edit9.text:=datamodule1.htgns.fieldbyname('a_name').asstring;
datetimepicker3.datetime:=datamodule1.htgns.fieldbyname('a_date').asdatetime;
edit11.text:=floattostr(datamodule1.htgns.fieldbyname('a_htys').asfloat);
edit12.text:=datamodule1.htgns.fieldbyname('a_htjb').asstring;
edit7.readonly:=true;
edit9.readonly:=true;
edit11.SetFocus;
end
else
begin
edit7.readonly:=false;
edit9.readonly:=false;
end;
end
else
begin
if i_update=true then
begin
datamodule1.htgns.edit;
datamodule1.htgns.fieldbyname('a_htys').asfloat:=strtofloat(edit11.text);
edit7.readonly:=false;
edit9.readonly:=false;
i_update:=false;
try
datamodule1.htgns.post;
showmessage('更新成功');
except
showmessage('不能正确更新,请确保数据的正确性');
end;
end
else
begin
with datamodule1.htgn do
begin
try
fieldbyname('a_number').asstring:=edit7.text;
fieldbyname('a_name').asstring:=edit9.text;
fieldbyname('a_date').asdatetime:=datetimepicker3.date;
// fieldbyname('a_shhj').asboolean:=checkbox1.checked;
fieldbyname('A_htys').asfloat:=strtofloat(edit11.text);
fieldbyname('a_htjb').asstring:=edit12.text;
post;
showmessage('成功保存');
edit7.text:='';
edit9.text:='';
edit11.text:='';
edit12.text:='';
append;
except
showmessage('不能正确保存数据,请确保输入数据的正确性');
end;
end;
end;
end;
end;
end;
procedure Tnpyjb.FormShow(Sender: TObject);
begin
i_update:=false;
dbgrid1.visible:=false;
dbgrid2.visible:=false;
dbgrid3.visible:=false;
memo1.text:='';
edit7.text:='';
edit9.text:='';
edit11.text:='';
edit12.text:='';
datamodule1.htgn.append;
datamodule1.npdj.Append;
datamodule1.yjb.append;
edit1.setfocus;
end;
procedure Tnpyjb.Button5Click(Sender: TObject);
begin
self.close;
end;
procedure Tnpyjb.FormClose(Sender: TObject; var Action: TCloseAction);
begin
datamodule1.htgn.cancel;
datamodule1.npdj.cancel;
datamodule1.yjb.cancel;
self.release;
end;
procedure Tnpyjb.Button2Click(Sender: TObject);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -