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

📄 purchaseaccount.~pas

📁 delphi制作的图书管理系统
💻 ~PAS
字号:
unit PurchaseAccount;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls, Grids, DBGrids, ExtCtrls, DBCtrls,DB,DBTables;

type
  TPurchaseAccountFrm = class(TForm)
    LblQueryTitel: TLabel;
    LblFrmTitle: TLabel;
    DBGridBookInfo: TDBGrid;
    BtnClose: TButton;
    EdtQueryContent: TEdit;
    CBoxQueryTitle: TComboBox;
    LblQueryContent: TLabel;
    BtnQuery: TButton;
    LblQueryDate: TLabel;
    DTPStart: TDateTimePicker;
    DTPEnd: TDateTimePicker;
    LblTo: TLabel;
    Button1: TButton;
    procedure BtnCloseClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormDestroy(Sender: TObject);
    procedure BtnQueryClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  PurchaseAccountFrm: TPurchaseAccountFrm;

implementation

uses DataModuel, Main, Depository;

{$R *.dfm}

procedure TPurchaseAccountFrm.BtnCloseClick(Sender: TObject);
begin
  MainForm.Sub_PAccount.Enabled:=True;           //主界面的进书统计可用
  with DM.PurchaseAccountQry do
  begin
    Active:=False;
  end;
  close;
end;

procedure TPurchaseAccountFrm.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  Action:=caFree;
end;


procedure TPurchaseAccountFrm.FormDestroy(Sender: TObject);
begin
  PurchaseAccountFrm:=nil;
end;


procedure TPurchaseAccountFrm.BtnQueryClick(Sender: TObject);
Var
  EndDate:TDate;
  StartDate:TDate;
begin
  StartDate:=DTPStart.Date;
  EndDate:=DTPEnd.Date;
  if (EndDate<StartDate) then
  begin
    MessageDlg('查询的起始日期比结束日期晚,不能查询!',mtInformation,[mbOK],0);
    exit;
  end;

  DM.TmpPurchaseTable.EmptyTable;
  With DM.PurchaseQry do
  begin
    close;
    SQL.Text:='Select BookID,Sum(SaleQuantity) as TotalNum,Sum(SaleAmount) as TotalAmount from SalesSub,SalesMaster ';
    SQL.Add('where (SalesSub.SaleID=SalesMaster.SaleID) and');
    SQL.Add('((SaleDate>=:StartDate) and (SaleDate<=:EndDate)) ');
    SQL.Add(' Group by BookID');
    Params.ParamByName('StartDate').Value:=StartDate;
    Params.ParamByName('EndDate').Value:=EndDate;
    Open;
  end;
  DM.TmpPurchaseTable.BatchMove(DM.PurchaseQry,batAppend);          //把数据放入临时表

  //******按相应内容进行查询
  With DM.PurchaseAccountQry do
  begin
    close;
    SQL.Text:='Select Bookinfo.BookID,BookName,Author,Press,Price,TotalNum,TotalAmount from PurchaseAccount,Bookinfo';
    SQL.Add('where (PurchaseAccount.BookID=Bookinfo.BookID) and');
    if CBoxQueryTitle.Text='书号' then
    begin
       SQL.Add('(BookInfo.BookID like ''%'+Trim(EdtQueryContent.Text)+'%'')');
    end
    else if CBoxQueryTitle.Text='书名' then
    begin
       SQL.Add('(BookInfo.BookName like ''%'+Trim(EdtQueryContent.Text)+'%'')');
    end
    else if CBoxQueryTitle.Text='作者' then
    begin
       SQL.Add('(BookInfo.Author like ''%'+Trim(EdtQueryContent.Text)+'%'')');
    end;
    open;
    if RecordCount=0 then
    begin
      MessageDlg('没有你想要的查询结果!'+#13+'请重新查询',mtInformation,[mbOk],0);
      exit;
    end;
  end;

end;

procedure TPurchaseAccountFrm.FormCreate(Sender: TObject);
begin
  DTPStart.Date:=Date();
  DTPEnd.Date:=Date();                       //取得当前系统日期
end;

procedure TPurchaseAccountFrm.Button1Click(Sender: TObject);
var
  saleAccountPrtFrm:TsaleAccountPrtFrm;
begin
  //******按相应内容进行查询
With DM.PurchaseQry do
  begin
    close;
    SQL.Text:='Select Bookinfo.BookID,BookName,Author,Press,Price,TotalNum,TotalAmount from PurchaseAccount,Bookinfo';
    SQL.Add('where (PurchaseAccount.BookID=Bookinfo.BookID) and');
    if CBoxQueryTitle.Text='书号' then
    begin
       SQL.Add('(BookInfo.BookID like ''%'+Trim(EdtQueryContent.Text)+'%'')');
    end
    else if CBoxQueryTitle.Text='书名' then
    begin
       SQL.Add('(BookInfo.BookName like ''%'+Trim(EdtQueryContent.Text)+'%'')');
    end
    else if CBoxQueryTitle.Text='作者' then
    begin
       SQL.Add('(BookInfo.Author like ''%'+Trim(EdtQueryContent.Text)+'%'')');
    end;
    open;
  end;
  saleAccountPrtFrm:=TsaleAccountPrtFrm.Create(self);
  saleAccountPrtFrm.QuickRep1.DataSet:=DM.PurchaseQry;

  saleAccountPrtFrm.QBookID.DataSet:=DM.PurchaseQry;
  saleAccountPrtFrm.QBKName.DataSet:=DM.PurchaseQry;
  saleAccountPrtFrm.QAuthor.DataSet:=DM.PurchaseQry;
  saleAccountPrtFrm.QPress.DataSet:=DM.PurchaseQry;
  saleAccountPrtFrm.QPrice.DataSet:=DM.PurchaseQry;
  saleAccountPrtFrm.QTotalNum.DataSet:=DM.PurchaseQry;
  saleAccountPrtFrm.QTotalAmount.DataSet:=DM.PurchaseQry;
  saleAccountPrtFrm.QuickRep1.Preview;
end;

end.

⌨️ 快捷键说明

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