📄 ztfp.pas
字号:
unit Ztfp;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ExtCtrls, Grids, DBGrids, StdCtrls, Mask, DBCtrls;
type
TFormZTFP = class(TForm)
DBGrid1: TDBGrid;
Panel1: TPanel;
Button2: TButton;
Button4: TButton;
Panel2: TPanel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Label1: TLabel;
Labelbh: TLabel;
Labelmc: TLabel;
Label4: TLabel;
Button5: TButton;
Label2: TLabel;
Label3: TLabel;
Label5: TLabel;
Label6: TLabel;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Button3: TButton;
procedure Button5Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure Button4Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Edit6Exit(Sender: TObject);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure Edit3KeyPress(Sender: TObject; var Key: Char);
procedure Edit4KeyPress(Sender: TObject; var Key: Char);
procedure Edit5KeyPress(Sender: TObject; var Key: Char);
procedure Edit6KeyPress(Sender: TObject; var Key: Char);
procedure Button3Click(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
private
{ Private declarations }
nform:smallint; //0:初始 1:增加 2:保存;
FPTJBH,FPCS:string;
YJSL,EJSL,SJSL,FSEJ,FSSJ,QT,HJ:smallint;
public
{ Public declarations }
end;
var
FormZTFP: TFormZTFP;
implementation
uses datamodl,Publicfun;
{$R *.dfm}
procedure TFormZTFP.Button5Click(Sender: TObject);
begin
close;
end;
procedure TFormZTFP.FormActivate(Sender: TObject);
begin
//datamodule1.ChangeTab('xqxxb');
datamodule1.DataS.DataSet:= datamodule1.ADOQry;
with datamodule1 do
begin
if ADOQry.Active= true then ADOQry.Close;
Adoqry.SQL.Clear;
adoqry.SQL.Add('select fptjbh,fptjmc=b.mc,'+#10+
'fpcs,yjsl,ejsl,sjsl,fsej,fssj,qt,hj'+#10+
'from fpzb a, fptjb b '+#10+
'where a.fptjbh =b.bh');
adoqry.Open;
end;
dbgrid1.Columns[0].Visible:=false;
dbgrid1.Columns[2].Visible:=false;
dbgrid1.Columns[1].Title.caption:='分配途径名称';
dbgrid1.Columns[3].Title.caption:='一居室';
dbgrid1.Columns[4].Title.caption:='二居室';
dbgrid1.Columns[5].Title.caption:='三居室';
dbgrid1.Columns[6].Title.caption:='复式二居';
dbgrid1.Columns[7].Title.caption:='复式三居';
dbgrid1.Columns[8].Title.caption:='其他';
dbgrid1.Columns[9].Title.caption:='合计';
nform:=0;
edit1.Enabled:=false;
edit2.Enabled:=false;
edit3.Enabled:=false;
edit4.Enabled:=false;
edit5.Enabled:=false;
edit6.Enabled:=false;
edit7.Enabled:=false;
button4.Enabled:=false;
end;
procedure TFormZTFP.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
Key := #0;
Perform(WM_NEXTDLGCTL,0,0);
end;
end;
procedure TFormZTFP.Button4Click(Sender: TObject);
var
HD:Thandle;
begin
FPTJBH:= datamodule1.ADOQry.Fields.fieldbyname('fptjbh').asstring;
FPCS:= datamodule1.ADOQry.Fields.fieldbyname('fpcs').asstring;
if trim(edit1.Text)='' then
YJSL:=0
else
YJSL:= strtoint(trim(edit1.Text));
if trim(edit2.Text)='' then
EJSL:=0
else
EJSL:= strtoint(trim(edit2.Text));
if trim(edit3.Text)='' then
SJSL:=0
else
SJSL:= strtoint(trim(edit3.Text));
if trim(edit4.Text)='' then
FSEJ:=0
else
FSEJ:= strtoint(trim(edit4.Text));
if trim(edit5.Text)='' then
FSSJ:=0
else
FSSJ:= strtoint(trim(edit5.Text));
if trim(edit6.Text)='' then
QT:=0
else
QT:= strtoint(trim(edit6.Text));
HJ:= YJSL+EJSL+SJSL+FSEJ+FSSJ+QT;
HD:= formZtfp.Handle;
if datamodule1.ADOSP.Active= true then
datamodule1.ADOSP.Close;
datamodule1.ADOSP.ProcedureName:='P_FPZB_Save;1';
if nform= 0 then exit;
if nform= 1 then
if datamodule1.ifexist('fpzb','FPTJBH+FPCS',FPTJBH+FPCS )= true then
if messagebox(HD,pchar('数据库中已存在编号为<'+trim(edit1.Text)+'>的纪录,是否更新?'),pchar('信息提示'),MB_YESNO)=IDYES then
if FpzbAdd(FPTJBH,FPCS,YJSL,EJSL,SJSL,FSEJ,FSSJ,QT,HJ)=0 then
showmessage('更新成功!')
else
begin
showmessage('更新失败!');
exit;
end
else
exit
else
if FpzbAdd(FPTJBH,FPCS,YJSL,EJSL,SJSL,FSEJ,FSSJ,QT,HJ)=0 then
showmessage('保存成功!')
else
begin
showmessage('保存失败!');
exit;
end
else
if nform= 2 then
if FpzbAdd(FPTJBH,FPCS,YJSL,EJSL,SJSL,FSEJ,FSSJ,QT,HJ)=0 then
showmessage('更新成功!')
else
begin
showmessage('更新失败!');
exit;
end;
//datamodule1.ChangeTab('xqxxb');
datamodule1.ADOQry.Requery();
dbgrid1.Columns[1].Title.caption:='分配途径名称';
dbgrid1.Columns[3].Title.caption:='一居室';
dbgrid1.Columns[4].Title.caption:='二居室';
dbgrid1.Columns[5].Title.caption:='三居室';
dbgrid1.Columns[6].Title.caption:='复式二居';
dbgrid1.Columns[7].Title.caption:='复式三居';
dbgrid1.Columns[8].Title.caption:='其他';
dbgrid1.Columns[9].Title.caption:='合计';
nform:=0;
button2.Enabled:=true;
button2.SetFocus;
button3.Enabled:=true;
button4.Enabled:=false;
edit1.Text:='';
edit2.Text:='';
edit3.Text:='';
edit4.Text:='';
edit5.Text:='';
edit6.Text:='';
edit7.Text:='';
dbgrid1.Enabled:=true;
edit1.Enabled:=false;
edit2.Enabled:=false;
edit3.Enabled:=false;
edit4.Enabled:=false;
edit5.Enabled:=false;
edit6.Enabled:=false;
end;
procedure TFormZTFP.Button2Click(Sender: TObject);
begin
nform:=2;
edit1.Text:= Datamodule1.ADOQry.fieldbyname('yjsl').AsString;
edit2.Text:= Datamodule1.ADOQry.fieldbyname('ejsl').AsString;
edit3.Text:= Datamodule1.ADOQry.fieldbyname('sjsl').AsString;
edit4.Text:= Datamodule1.ADOQry.fieldbyname('fsej').AsString;
edit5.Text:= Datamodule1.ADOQry.fieldbyname('fssj').AsString;
edit6.Text:= Datamodule1.ADOQry.fieldbyname('qt').AsString;
edit7.Text:= Datamodule1.ADOQry.fieldbyname('hj').AsString;
edit1.Enabled:=true;
edit2.Enabled:=true;
edit3.Enabled:=true;
edit4.Enabled:=true;
edit5.Enabled:=true;
edit6.Enabled:=true;
dbgrid1.Enabled:=false;
button2.Enabled:=false;
button3.Enabled:=false;
button4.Enabled:=true;
end;
procedure TFormZTFP.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in ['0'..'9']) and (key <> #8) then
key:= char(0);
end;
procedure TFormZTFP.Edit6Exit(Sender: TObject);
begin
button4.SetFocus;
end;
procedure TFormZTFP.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in ['0'..'9']) and (key <> #8) then
key:= char(0);
end;
procedure TFormZTFP.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in ['0'..'9']) and (key <> #8) then
key:= char(0);
end;
procedure TFormZTFP.Edit4KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in ['0'..'9']) and (key <> #8) then
key:= char(0);
end;
procedure TFormZTFP.Edit5KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in ['0'..'9']) and (key <> #8) then
key:= char(0);
end;
procedure TFormZTFP.Edit6KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in ['0'..'9']) and (key <> #8) then
key:= char(0);
end;
procedure TFormZTFP.Button3Click(Sender: TObject);
var
res:smallint;
begin
if datamodule1.ADOSP.Active= true then
datamodule1.ADOSP.Close;
datamodule1.ADOSP.ProcedureName:='P_Test;1';
res:= test();
case res of
1: showmessage('一居数量与总计不符!');
2: showmessage('二居数量与总计不符!');
3: showmessage('三居数量与总计不符!');
4: showmessage('复式二居数量与总计不符!');
5: showmessage('复式三居数量与总计不符!');
6: showmessage('其他数量与总计不符!');
7: showmessage('请重新设置分配数量!');
else
showmessage('数量分配无误!');
end;
end;
procedure TFormZTFP.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
datamodule1.DataS.DataSet:=datamodule1.ADOTab;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -