📄 tuixue.pas
字号:
unit tuixue;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, base, SUIButton, Grids, DBGridEh, StdCtrls, SUIEdit,
SUIImagePanel, ExtCtrls, SUIForm, DB, ADODB, SUIPageControl,
SUITabControl;
type
Tfrmtuixue = class(Tbaseform)
adqnew: TADOQuery;
dsnew: TDataSource;
btnclose: TsuiButton;
suiPanel1: TsuiPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
edtid: TsuiEdit;
edtname: TsuiEdit;
edtgrade: TsuiEdit;
edtclass: TsuiEdit;
edtdep: TsuiEdit;
edtmoney: TsuiEdit;
edtmajor: TsuiEdit;
dgnew: TDBGridEh;
idnew: TsuiEdit;
btnfind: TsuiButton;
moneynew: TsuiEdit;
suiButton1: TsuiButton;
suiButton2: TsuiButton;
procedure btncloseClick(Sender: TObject);
procedure dsnewDataChange(Sender: TObject; Field: TField);
procedure moneyoldKeyPress(Sender: TObject; var Key: Char);
procedure moneynewKeyPress(Sender: TObject; var Key: Char);
procedure suiButton1Click(Sender: TObject);
procedure suiButton2Click(Sender: TObject);
procedure FormShow(Sender: TObject);
private
newid:integer;
procedure showdatanew;
{ Private declarations }
public
money,namestu,stumajor,stugrade,stuclass:string;
{ Public declarations }
end;
var
frmtuixue: Tfrmtuixue;
implementation
uses pub, umain, tuikuan;
{$R *.dfm}
procedure Tfrmtuixue.btncloseClick(Sender: TObject);
begin
inherited;
close;
end;
procedure tfrmtuixue.showdatanew;
begin
newid:=adqnew.fieldbyname('id').AsInteger;
edtid.Text:=adqnew.fieldbyname('stuid').AsString;
edtname.Text:=adqnew.fieldbyname('stuname').AsString;
edtdep.Text:=adqnew.fieldbyname('dep').AsString;
edtmajor.Text:=adqnew.fieldbyname('major').AsString;
edtgrade.Text:=adqnew.fieldbyname('grade').AsString;
edtclass.Text:=adqnew.fieldbyname('class').AsString;
edtmoney.Text:=adqnew.fieldbyname('shijiaomoney').AsString;
end;
procedure Tfrmtuixue.dsnewDataChange(Sender: TObject; Field: TField);
begin
inherited;
showdatanew;
end;
procedure Tfrmtuixue.moneyoldKeyPress(Sender: TObject; var Key: Char);
begin
inherited;
if not ( key in ['0'..'9',#23,#8]) then
key:=#0;
end;
procedure Tfrmtuixue.moneynewKeyPress(Sender: TObject; var Key: Char);
begin
inherited;
if not ( key in ['0'..'9',#23,#8]) then
key:=#0;
end;
procedure Tfrmtuixue.suiButton1Click(Sender: TObject);
begin
inherited;
if adqnew.IsEmpty then
begin
application.MessageBox('学生表为空!','提示',mb_ok+mb_iconinformation);
exit;
end;
if trim(moneynew.Text)='' then
begin
application.MessageBox('请输入退款金额!','提示',mb_ok+mb_iconinformation);
exit;
end;
if strtoint(moneynew.Text)>strtoint(edtmoney.Text) then
begin
application.MessageBox('退款金额不应大于实交金额!','提示',mb_ok+mb_iconinformation);
exit;
end;
frmmain.adc.BeginTrans;
try
with adqnew do
begin
sql.Clear;
sql.Add('update money set tuikuan='+moneynew.text+',tuikuandate=:v1,status=2 where id='+inttostr(newid));
//showmessage(sql.Text);
parameters.ParamByName('v1').Value :=formatdatetime('yyyy-mm-dd',now());
//parameters.ParamByName('v2').Value :=newid;}
execsql;
end;
frmmain.adc.CommitTrans;
application.MessageBox('退款成功!','提示',mb_ok+mb_iconinformation);
pub.showrecord(adqnew,'a.stuid,a.stuname,a.dep,a.major,a.grade,a.class,b.id,b.shijiaomoney','newstu as a,money as b where a.stuid=b.stuid and b.status=1','a.stuid');
except
frmmain.adc.RollbackTrans;
raise;
application.MessageBox('退款失败!','警告',mb_ok+mb_iconwarning);
end;
end;
procedure Tfrmtuixue.suiButton2Click(Sender: TObject);
begin
inherited;
if adqnew.IsEmpty then
begin
application.MessageBox('学生表为空!','提示',mb_ok+mb_iconinformation);
exit;
end;
money:=moneynew.Text;
namestu:=edtname.Text;
stumajor:=edtmajor.Text;
stugrade:=edtgrade.Text;
stuclass:=edtclass.Text;
frmrpttui:=tfrmrpttui.Create(nil);
with frmrpttui.QuickRep1 do
begin
previewwidth:=screen.Width;
previewheight:=screen.Height;
preview;
end;
end;
procedure Tfrmtuixue.FormShow(Sender: TObject);
begin
inherited;
with adqnew do
begin
sql.Clear;
sql.Add('select a.stuid,a.stuname,a.dep,a.major,a.grade,a.class,b.id,b.shijiaomoney from newstu as a,money as b where a.stuid=b.stuid and b.status=1 order by a.stuid');
//sql.Add('select a.*,b.* from newstu as a,oldstu as b where a.status=1 and b.status=1 order by a.major');
//showmessage(sql.Text);
open;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -