📄 purchaseaccount.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, saleAccount;
{$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 + -