📄 borrow_return.pas
字号:
unit Borrow_Return; //档案借用和归还管理窗体项目
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Inherit, ExtCtrls, DBCtrls, Grids, DBGrids, Mask, StdCtrls,
ComCtrls, ImgList, ToolWin;
type
TF_BReturn = class(TF_Inherit)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
GroupBox1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
ME_Borrow: TMaskEdit;
DBGrid1: TDBGrid;
TabSheet2: TTabSheet;
GroupBox2: TGroupBox;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
DBEdit7: TDBEdit;
DBEdit8: TDBEdit;
ME_Return: TMaskEdit;
DBGrid2: TDBGrid;
DBNavigator: TDBNavigator;
procedure FormCreate(Sender: TObject);
procedure PageControl1Change(Sender: TObject);
procedure ME_BorrowChange(Sender: TObject);
procedure ME_ReturnChange(Sender: TObject);
procedure cmdaddClick(Sender: TObject);
procedure cmdmodiClick(Sender: TObject);
procedure cmddelClick(Sender: TObject);
procedure cmdstoreClick(Sender: TObject);
procedure cmdquitClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
F_BReturn: TF_BReturn;
implementation
uses DataModule, Archives_Class; //引用数据模块窗体项目
{$R *.dfm}
procedure TF_BReturn.FormCreate(Sender: TObject);
begin {*****档案借用和归还管理窗体创建事件*****}
inherited;
if (PageControl1.ActivePageIndex=0) then //判断创建时PageControl目录处在是那一页
DBNavigator.DataSource := DM.DS_Borrow //导航导数据源为档案借用信息表
else
DBNavigator.DataSource := DM.DS_Return; //导航导数据源为档案归还信息表
end;
procedure TF_BReturn.PageControl1Change(Sender: TObject);
begin {*****PageControl不同标签页切换事件*****}
inherited;
case PageControl1.ActivePageIndex of //判断PageControl现在切换到了那一页,对导航条控件数据源进行动态赋值,实现动态切换数据源的目的
0 : begin
DBNavigator.DataSource := DM.DS_Borrow; //导航导数据源为档案借用信息表
DM.DS_Borrow.Enabled := true; //档案借用管理数据源控件处于使能态,
DM.DS_Return.Enabled := false; //档案归还管理数据源控件处于非使能态,
end;
1 : begin
DBNavigator.DataSource := DM.DS_Return; //导航导数据源为档案归还信息表
DM.DS_Borrow.Enabled := false; //档案借用管理数据源控件处于非使能态,
DM.DS_Return.Enabled := true; //档案归还管理数据源控件处于使能态,
end;
end;
end;
procedure TF_BReturn.ME_BorrowChange(Sender: TObject);
begin {*****借用档案编号输入框OnChange事件*****}
inherited;
if not (TrimRight(ME_Borrow.Text)='') then //借用档案编号输入框右边去空格后字符串为空判断
begin
DM.AQ_Manage.Filtered := false; //关闭过滤器
DM.AQ_Manage.Filter := 'Content_ID ='+ME_Borrow.Text; //设置过滤值
DM.AQ_Manage.Filtered := true; //启动过滤器
if (DM.AQ_Manage.RecordCount>0) then //找到输入框中输入档案编号的档案记录
begin
DM.AT_BorrowBorrow_ID.Value := DM.AQ_Manage['Content_ID']; //档案借用信息表档案编号字段赋值
DM.AT_BorrowBorrow_Name.Value := DM.AQ_Manage['Content_Name']; //档案借用信息表档案名称字段赋值
end;
end;
end;
procedure TF_BReturn.ME_ReturnChange(Sender: TObject);
begin {*****归还档案编号输入框OnChange事件*****}
inherited;
if not (TrimRight(ME_Return.Text)='') then //借用档案编号输入框右边去空格后字符串为空判断
begin
DM.AQ_Manage.Filtered := false; //关闭过滤器
DM.AQ_Manage.Filter := 'Content_ID ='+ME_Return.Text; //设置过滤值
DM.AQ_Manage.Filtered := true; //启动过滤器
if (DM.AQ_Manage.RecordCount>0) then //找到输入框中输入档案编号的档案记录
begin
DM.AT_ReturnReturn_ID.Value := DM.AQ_ManageContent_ID.Value; //档案借用信息表档案编号字段赋值
DM.AT_ReturnReturn_Name.Value := DM.AQ_ManageContent_Name.Value; //档案借用信息表档案名称字段赋值
end;
end;
end;
procedure TF_BReturn.cmdaddClick(Sender: TObject);
begin {*****增加按钮单击事件*****}
inherited;
if (PageControl1.ActivePageIndex=0) then //判断PageControl目录处在是那一页
ME_Borrow.Enabled := true //可以查询档案记录,查到后再来添加借用记录
else
ME_Return.Enabled := true; //可以查询档案记录,查到后再来添加归还记录
// ToolButton1.Enabled := false; //增加按钮非使能
// ToolButton2.Enabled := false; //编辑按钮非使能
// ToolButton3.Enabled := false; //删除按钮非使能
DBNavigator.BtnClick(nbInsert); //数据源处于插入记录状态
end;
procedure TF_BReturn.cmdmodiClick(Sender: TObject);
begin {*****修改按钮单击事件*****}
inherited;
if (PageControl1.ActivePageIndex=0) then //判断PageControl目录处在是那一页
begin
ME_Borrow.Enabled := false; //档案记录字段不可编辑
ME_Borrow.Color := clBtnFace; //档案记录字段输入框变颜色
end
else
begin
ME_Return.Enabled := false; //档案记录字段不可编辑
ME_Return.Color := clBtnFace; //档案记录字段输入框变颜色
end;
// ToolButton1.Enabled := false; //增加按钮非使能
// ToolButton2.Enabled := false; //编辑按钮非使能
// ToolButton3.Enabled := false; //删除按钮非使能
DBNavigator.BtnClick(nbEdit); //数据源进入编辑记录状态
end;
procedure TF_BReturn.cmddelClick(Sender: TObject);
var {*****删除按钮单击事件*****}
Button:integer;
begin
inherited;
Button := Application.MessageBox('真的要删除记录吗?','提示对话框',MB_OKCANCEL); //弹出提示对话框
if Button = IDOK then //单击OK按钮
begin
DBNavigator.BtnClick(nbDelete); //删除记录
with DM.AQ_Manage do
begin
Close; //关闭数据集
SQL.Clear; //清除SQL语句
SQL.Add('UPDATE Archives_Content SET Content_State=''在库'' WHERE '); //添加更新Content_State字段值语句
SQL.Add('Content_ID:='+IntToStr(DM.AT_Borrow['Borrow_ID'])); //添加更新记录条件语句
ExecSQL; //执行更新操作
end;
end;
end;
procedure TF_BReturn.cmdstoreClick(Sender: TObject);
begin {*****保存按钮单击事件*****}
inherited;
DM.AQ_Manage.Close; //关闭数据集
DM.AQ_Manage.SQL.Clear; //清除SQL语句
if (PageControl1.ActivePageIndex=0) then //判断PageControl目录处在是那一页
begin
ME_Borrow.Enabled := false; //档案记录字段不可编辑
ME_Borrow.Color := clWindow; //档案记录字段输入框变颜色
DM.AQ_Manage.SQL.Add('UPDATE Archives_Content SET Content_State=''借出'' WHERE '); //添加更新Content_State字段值语句
DM.AQ_Manage.SQL.Add('Content_ID='+IntToStr(DM.AT_Borrow['Borrow_ID'])); //添加更新记录条件语句
end
else
begin
ME_Return.Enabled := false; //档案记录字段不可编辑
ME_Return.Color := clWindow; //档案记录字段输入框变颜色
DM.AQ_Manage.SQL.Add('UPDATE Archives_Content SET Content_State=''归还'' WHERE '); //添加更新Content_State字段值语句
DM.AQ_Manage.SQL.Add('Content_ID='+IntToStr(DM.AT_Return['Return_ID'])); //添加更新记录条件语句
end;
DM.AQ_Manage.ExecSQL; //执行更新操作
DBNavigator.BtnClick(nbPost); //删除记录
// ToolButton1.Enabled := true; //增加按钮使能
// ToolButton2.Enabled := true; //编辑按钮使能
// ToolButton3.Enabled := true; //删除按钮使能
end;
procedure TF_BReturn.cmdquitClick(Sender: TObject);
begin {*****取消或关闭按钮单击事件*****}
// inherited;
if cmdquit.Caption='取消' then
begin
DBNavigator.BtnClick(nbCancel); //取消对数据集的操作
inherited;
//ToolButton1.Enabled := true; //增加按钮使能
// ToolButton2.Enabled := true; //编辑按钮使能
// ToolButton3.Enabled := true; //删除按钮使能
end
else
F_BReturn.Close; //关闭档案借用和归还窗口
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -