⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bookreturn.~cpp

📁 全面剖析图书馆管理的内容
💻 ~CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "BookReturn.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "Parent"
#pragma resource "*.dfm"
TfmBookReturn *fmBookReturn;
//---------------------------------------------------------------------------
__fastcall TfmBookReturn::TfmBookReturn(TComponent* Owner)
    : TfmParent(Owner)
{
    this->szCondition1 = "读者编号";
    this->szCondition2 = "读者条码";
    this->szCondition3 = "图书编号";
    // 设置查询条件
    this->SetSeekEditStatus();
    // 和以前的窗体不一样,我们在这里打开Table1
    Table1->Active = true;
    // 设置可以操作
    Panel2->Enabled = true;
    lblCount->Caption = "记录数: " + IntToStr(Table1->RecordCount) ;
}
//---------------------------------------------------------------------------
void __fastcall TfmBookReturn::btReturnClick(TObject *Sender)
{
    if(Table1->FieldByName("借阅编号")->AsString == "")
        return;
    //判断是否过期,如果过期提示输入罚款金额
    TDateTime dt,dt1;
    dt = dt.CurrentDate();
    dt1 = Table1->FieldByName("应还时间")->AsString;
    AnsiString NewString = "0";
    if(dt>dt1)
    {
        // 获得罚款金额
        if (!InputQuery("归还的图书已过期,请输入罚款金额,取消不罚款", "提示", NewString))
            NewString = "0";

    }
    TQuery* pQuery = new TQuery(NULL);
    AnsiString sql;
    pQuery->DatabaseName = "db";
    sql = "exec sf_图书归还 ";
    sql += Table1->FieldByName("借阅编号")->AsString;
    sql += "," + NewString;
    pQuery->SQL->Add(sql);
    pQuery->ExecSQL();
    delete pQuery;
    // 更新显示
    BitBtn1Click(NULL);
}
//---------------------------------------------------------------------------
void __fastcall TfmBookReturn::BitBtn1Click(TObject *Sender)
{
    // 注意这里的代码
    // 因为DBGrid只显示没有归还的数据
    // 所以要继承搜索按钮
    // 添加filter属性
    TfmParent::BitBtn1Click(Sender);
    AnsiString szFilter;
    szFilter = Table1->Filter;
    if(szFilter.Length()>0)
       szFilter += " and ";
    szFilter += "状态='未还'";
    Table1->Filtered = false;
    Table1->Filter = szFilter;
    Table1->Filtered = true;
    lblCount->Caption = "记录数: " + IntToStr(Table1->RecordCount) ;
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -