?? sf.~pas
字號:
unit sf;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, ExtCtrls, DB, DBTables, Buttons;
type
Tsf_Form = class(TForm)
Label1: TLabel;
xh_LEdit: TLabeledEdit;
xm_LEdit: TLabeledEdit;
xf_LEdit: TLabeledEdit;
gyf_LEdit: TLabeledEdit;
qtf_LEdit: TLabeledEdit;
hjf_LEdit: TLabeledEdit;
yjsf_LEdit: TLabeledEdit;
bcsf_LEdit: TLabeledEdit;
sfr_LEdit: TLabeledEdit;
sfrq_DTP: TDateTimePicker;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender:TObject;var Action:TCloseAction);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
sf_Form: Tsf_Form;
implementation
uses main,sfgl;
{$R *.dfm}
////////////////////////////////////////////////
procedure Tsf_Form.FormCreate(Sender: TObject);
var xbdm,gydm,xh,sqlstr:string;
begin
sfrq_DTP.DateTime:=now;
xm_LEdit.Text:=sfgl_FOrm.Query1.FieldByName('姓名').AsString;
xh_LEdit.Text:=sfgl_Form.Query1.FieldByName('學號').AsString;
xh:=sfgl_Form.Query1.FieldByName('學號').AsString;
with TQuery.Create(nil)do
begin
try
SessionName:=Main_Form.Database1.SessionName;
DatabaseName:=Main_Form.Database1.DatabaseName;
sqlstr:='select isnull(sum(收費金額),0)as 已經收費 from[sfb] where(學號='''+xh+''')';
Close;
SQL.Clear;
SQl.Add(sqlstr);
Open;
yjsf_LEdit.Text:=FIeldByName('已經收費').AsString;
xbdm:=sfgl_Form.Query1.FieldByName('系別代碼').AsString;
sqlstr:='select *from[xbdm] where(系別代碼='''+xbdm+''')';
close;
SQL.Clear;
SQL.Add(sqlstr);
Open;
xf_LEdit.Text:=FieldByName('學費').AsString;
qtf_LEdit.Text:=FieldByName('其他費').AsString;
gydm:=sfgl_Form.Query1.FieldByName('公寓代碼').AsString;
sqlstr:='select *from [gydm]where (公寓代碼='''+gydm+''')';
Close;
SQL.Clear;
SQL.Add(sqlstr);
Open;
gyf_LEdit.Text:=FIELdByName('收費金額').AsString;
finally
Free;
end;
end;
hjf_Ledit.Text:=FloatToStr(StrToFloat(xf_LEdit.Text)+(StrToFloat(gyf_LEdit.Text)
+strToFloat(qtf_LEdit.Text)));
bcsf_LEdit.Text:=FloatToStr(StrToFloat(hjf_LEdit.Text)-StrToFloat(yjsf_LEdit.Text));
if hjf_LEdit.Text=yjsf_LEdit.Text then
begin
ShowMessage('該生已繳齊費用');
close;
end;
end;
////////////////////////////////////////////////////////////////////
procedure Tsf_Form.FormClose(Sender:TObject;var Action:TCloseAction);
begin
Main_Form.Open_Form_number:=Main_Form.Open_Form_number-1;
if Main_Form.Open_Form_number=0 then
Main_Form.N15.Enabled:=true;
Action:=caFree;
end;
/////////////////////////////////////////////
procedure Tsf_Form.BitBtn2Click(Sender: TObject);
begin
close
end;
//////////////////////////////////////////
procedure Tsf_Form.BitBtn1Click(Sender: TObject);
var hjf,yjsf,bcsf,xh,xm,sfr,sfrq,sqlstr:string;
begin
bcsf:=Trim(bcsf_LEdit.Text);
hjf:=Trim(hjf_LEdit.Text);
yjsf:=Trim(yjsf_LEdit.Text);
if StrToFloat(hjf)-StrToFloat(yjsf)<StrToFloat(bcsf) then
begin
ShowMessage('收費超額,請重新確認!');
exit;
end;
sfr:=Trim(sfr_LEdit.Text);
if Length(sfr)<1 then
begin
ShowMEssage('請輸入收費人');
exit;
end;
sfrq:=DateToStr(sfrq_DTP.DateTime);
xh:=Trim(xh_LEdit.Text);
xm:=Trim(xm_Ledit.Text);
sqlstr:='insert into [sfb] (學號,姓名,收費金額,收費日期,收費人) values ('''+xh+''','''+xm;
sqlstr:=sqlstr+''','''+bcsf+''','''+sfrq+''','''+sfr+''')';
with TQuery.Create(nil)do
begin
try
SessionName:=Main_Form.Database1.SessionName;
DatabaseName:=Main_Form.Database1.DatabaseName;
close;
SQL.Clear;
SQL.Add(sqlstr);
ExecSQL;
finally
Free;
end;
end;
close;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -