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

📄 bookorder.~cpp

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

#include <vcl.h>
#pragma hdrstop

#include "BookOrder.h"
#include "SelectBook.h"

//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "Parent"
#pragma resource "*.dfm"
TfmBookOrder *fmBookOrder;
//---------------------------------------------------------------------------
__fastcall TfmBookOrder::TfmBookOrder(TComponent* Owner)
    : TfmParent(Owner)
{
    this->szCondition1 = "征订编号";
    this->szCondition2 = "图书编号";
    this->szCondition3 = "图书名称";
    // 设置查询条件
    this->SetSeekEditStatus();
    // 和以前的窗体不一样,我们在这里打开Table1
    Table1->Active = true;
    Edit4->Text = "";
}
//---------------------------------------------------------------------------
void __fastcall TfmBookOrder::btSelectBookClick(TObject *Sender)
{
    TfmSelectBook* pForm = new TfmSelectBook(NULL);
    pForm->ShowModal();
    EditDBEdit2->Text = pForm->m_szBookCode;
    delete pForm; 
}
//---------------------------------------------------------------------------
void __fastcall TfmBookOrder::EditDBEdit2Change(TObject *Sender)
{
    TQuery* pQuery = new TQuery(NULL);
    AnsiString sql;
    pQuery->DatabaseName = "db";
    sql = "select 书名 from 图书信息 where 编号='";
    sql += EditDBEdit2->Text;
    sql += "'";
    pQuery->SQL->Add(sql);
    pQuery->Open();
    Edit4->Text = pQuery->FieldByName("书名")->AsString;
    delete pQuery;
}
//---------------------------------------------------------------------------
void __fastcall TfmBookOrder::btNewClick(TObject *Sender)
{
    // 获取最大的编号,自动计算
    TQuery* pQuery = new TQuery(NULL);
    AnsiString sql;
    AnsiString szCode;
    pQuery->DatabaseName = "db";
    sql = "select max(征订编号) as 编号 from 图书征订";
    pQuery->SQL->Add(sql);
    pQuery->Open();
    szCode = pQuery->FieldByName("编号")->AsString;
    delete pQuery;
    // 调用父窗体的新建方法
    TfmParent::btNewClick(Sender);
    int nCode;
    nCode = StrToInt(szCode);
    nCode ++;
    szCode = IntToStr(nCode);
    AnsiString szT = "0000000";
    szCode = szT.SubString(1,7-szCode.Length())+szCode;
    // 设置编号
    EditDBEdit->Text = szCode;
    // 设置征订日期
    TDateTime dt;
    dt = dt.CurrentDate();
    EditDBEdit7->Text = dt.DateString();
}
//---------------------------------------------------------------------------

void __fastcall TfmBookOrder::BitBtn2Click(TObject *Sender)
{
    TQuery* pQuery = new TQuery(NULL);
    AnsiString sql;
    pQuery->DatabaseName = "db";
    sql = "exec sf_图书征订";
    pQuery->SQL->Add(sql);
    pQuery->ExecSQL();
    delete pQuery;
}
//---------------------------------------------------------------------------
void __fastcall TfmBookOrder::BitBtn1Click(TObject *Sender)
{
    // 注意这里的代码
    // 因为DBGrid只显示没有验收的数据
    // 所以要继承搜索按钮
    // 添加filter属性
    TfmParent::BitBtn1Click(Sender);
    AnsiString szFilter;
    szFilter = Table1->Filter;
    if(szFilter.Length()>0)
       szFilter += " and ";
    szFilter += "是否验收=0";
    Table1->Filtered = false;
    Table1->Filter = szFilter;
    Table1->Filtered = true;
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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