📄 unit8.~pas
字号:
unit Unit8;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, Grids, DBGrids, DB, ADODB;
type
TfrmBR = class(TForm)
DataSource1: TDataSource;
ADOQuery1: TADOQuery;
DBGrid1: TDBGrid;
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
btnAdd: TButton;
btnReturn: TButton;
Label1: TLabel;
txtNo: TEdit;
Label2: TLabel;
txtBooknum: TEdit;
Label3: TLabel;
txtBorrowdate: TDateTimePicker;
Label4: TLabel;
txtBooknum1: TEdit;
btnSupply: TButton;
Button2: TButton;
procedure btnAddClick(Sender: TObject);
procedure btnSupplyClick(Sender: TObject);
procedure btnReturnClick(Sender: TObject);
procedure txtBooknum1Change(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmBR: TfrmBR;
implementation
{$R *.dfm}
procedure TfrmBR.btnAddClick(Sender: TObject);
begin
datasource1.DataSet.Append;
txtNo.Enabled :=true;
txtBooknum.Enabled:=true;
txtBorrowdate.Enabled :=true;
btnAdd.enabled:= false;
txtNo.SetFocus ;
btnSupply.enabled := true;
end;
procedure TfrmBR.btnSupplyClick(Sender: TObject);
begin
try
with ADOquery1 do
begin
close;
SQL.Clear;
SQL.Add('select * from BOOKS where 是否在库= '+'''0'''+' and 书的编号= '+txtBooknum.Text );
open;
if ADOQuery1.RecordCount >0 then
begin
Messagebox(handle,'您想要的图书已被借出或者预约。','借阅错误',MB_ok or MB_ICONWARNING );
end
else
begin
close;
SQL.Clear;
SQL.Add('select * from BOOKS where 书的编号= ' + txtBooknum.Text );
open;
edit;
fields.FieldByName('是否在库').AsString := '0';
UpdateBatch();
close;
SQL.Clear;
SQL.Add('select 借书证号,图书编号,借阅日期,归还日期 from LenderRecord' );
open;
datasource1.DataSet.Append;
edit;
fields.FieldByName('借书证号').AsString :=txtNo.Text ;
fields.FieldByName('图书编号').AsString :=txtBooknum.Text ;
fields.fieldbyname('借阅日期').AsDateTime := txtBorrowdate.Date;
fields.FieldByName('归还日期').AsDateTime :=txtborrowdate.Date+30;
post;
txtNo.Enabled :=false;
txtBooknum.Enabled:=false;
txtBorrowdate.Enabled :=false;
btnAdd.enabled:= true;
btnSupply.Enabled :=false;
end;
txtNo.Text:='';
txtbooknum.Text:='';
end;
except
messagebox(handle,'系统找不到您输入的卡号或者是书本编号,请检查后再次输入','错误提示',MB_ok or MB_ICONINFORMATION);
end;
end;
procedure TfrmBR.btnReturnClick(Sender: TObject);
begin
try
with ADOquery1 do
begin
datasource1.DataSet.Delete;
close;
SQL.Clear;
SQL.Add('select * from BOOKS where 书的编号= ' + txtBooknum1.Text );
open;
edit;
Fields.FieldByName('是否在库').AsString :='1';
post;
messagebox(handle,'您借的书已经成功归还','友情提示',MB_ok or MB_ICONINFORMATION);
close;
SQL.Clear;
SQL.Add('select 借书证号,图书编号,借阅日期,归还日期 from LenderRecord' );
open;
end;
btnReturn.Enabled:=false;
except
end;
end;
procedure TfrmBR.txtBooknum1Change(Sender: TObject);
var n1 : string ;
begin
n1:=txtBooknum1.Text;
btnReturn.Enabled :=true;
with adoquery1 do
begin
try
close;
with sql do
begin
clear;
add('select 借书证号,图书编号,借阅日期,归还日期 from LenderRecord');
add('where 图书编号='+ n1);
end;
open;
except
exit;
end;
end;
end;
procedure TfrmBR.FormCreate(Sender: TObject);
begin
txtBorrowdate.DateTime :=date();
with adoquery1 do
try
with sql do
begin
clear;
add('select * from LenderRecord');
open;
end;
except
end;
end;
procedure TfrmBR.Button2Click(Sender: TObject);
begin
frmBR.Close;
end;
procedure TfrmBR.FormClose(Sender: TObject; var Action: TCloseAction);
begin
with adoquery1 do
try
with sql do
begin
clear;
add('select * from LenderRecord');
open;
end;
except
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -