📄 queryywysellunit.pas
字号:
unit QueryYWYSellUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, QueryBassUnit, DB, DBTables, StdCtrls, ComCtrls, Buttons, Grids,
DBGrids, ExtCtrls;
type
TQueryYWYSellForm = class(TQueryBassForm)
procedure FormCreate(Sender: TObject);
procedure SB_queryClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure SB_printClick(Sender: TObject);
procedure SB_chartClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
QueryYWYSellForm: TQueryYWYSellForm;
implementation
uses FunctionUnit, MainUnit, PrintbassUnit, PrintywyxsUnit, ChartSaleUnit;
{$R *.dfm}
procedure TQueryYWYSellForm.FormCreate(Sender: TObject);
begin
//继承父窗体的FormCreate方法
inherited;
self.Caption := '业务员销售统计详单';
with query_temp do
begin
close;
sql.Clear;
sql.Text := 'select name from YWYData where usertype="在职"';
open;
cb_ywy.Items.Clear;
cb_ywy.Style := csDropDownList;
cb_ywy.Items.Add('所有');
cb_ywy.ItemIndex := 0;
while not eof do
begin
CB_ywy.Items.add(fieldbyname('name').asstring);
next;
end;
close;
end;
end;
procedure TQueryYWYSellForm.SB_queryClick(Sender: TObject);
begin
inherited; //继承父窗体方法
if not Checkrights(USERRIGHTS, '查看') then //权限检查
begin
messagedlg(Errormsg0006 + '0007', mterror, [mbok], 0);
exit;
end;
with query_data do
begin
close;
sql.Clear;
if (cb_ywy.Text = '') or (CB_ywy.Text = '所有') then //查询所有业务员销售记录
sql.Text := ' SELECT YWYData.Name, (Depot.NAME) Depotname, (goods.NAME) goodsname,'
+ ' goods.TYPE,goods.UNIT, Sellrecord.NUMBER,(Sellrecord.price) selldj,'
+ ' (Sellrecord.NUMBER*Sellrecord.PRICE) PRICE,Sellrecord.MYDATE, Sellrecord.MEMO'
+ ' FROM Sellrecord INNER JOIN YWYData'
+ ' ON (Sellrecord.PEOPLEID = YWYData.Id) INNER JOIN Depot'
+ ' ON (Sellrecord.DEPOTID = Depot.ID) INNER JOIN goods'
+ ' ON (Sellrecord.GOODSID = goods.ID)'
+ ' WHERE (Sellrecord.mydate>="' + formatdatetime('yyyy-mm-dd', DTP_begin.DateTime) + '")'
+ ' AND (Sellrecord.mydate<="' + formatdatetime('yyyy-mm-dd', dtp_end.DateTime) + '")'
+ ' UNION ALL'
+ ' SELECT YWYData.Name, (Depot.NAME) Depotname, (goods.NAME) goodsname,'
+ ' goods.TYPE,goods.UNIT,(0- XSTHrecord.NUMBER) NUMBER,(XSTHrecord.price) selldj,'
+ ' ((0-XSTHrecord.NUMBER)*XSTHrecord.PRICE) PRICE,XSTHrecord.MYDATE, XSTHrecord.MEMO'
+ ' FROM XSTHrecord INNER JOIN YWYData'
+ ' ON (XSTHrecord.PEOPLEID = YWYData.Id) INNER JOIN Depot'
+ ' ON (XSTHrecord.DEPOTID = Depot.ID) INNER JOIN goods'
+ ' ON (XSTHrecord.GOODSID = goods.ID)'
+ ' WHERE (XSTHrecord.mydate>="' + formatdatetime('yyyy-mm-dd', DTP_begin.DateTime) + '")'
+ ' AND (XSTHrecord.mydate<="' + formatdatetime('yyyy-mm-dd', dtp_end.DateTime) + '")'
+ ' ORDER BY YWYData.NAME, MYDATE'
else //查询某个业务员销售记录
sql.Text := ' SELECT YWYData.Name, (Depot.NAME) Depotname, (goods.NAME) goodsname,'
+ ' goods.TYPE,goods.UNIT, Sellrecord.NUMBER,(Sellrecord.price) selldj,'
+ ' (Sellrecord.NUMBER*Sellrecord.PRICE) PRICE,Sellrecord.MYDATE, Sellrecord.MEMO'
+ ' FROM Sellrecord INNER JOIN YWYData'
+ ' ON (Sellrecord.PEOPLEID = YWYData.Id) INNER JOIN Depot'
+ ' ON (Sellrecord.DEPOTID = Depot.ID) INNER JOIN goods'
+ ' ON (Sellrecord.GOODSID = goods.ID)'
+ ' WHERE (Sellrecord.mydate>="' + formatdatetime('yyyy-mm-dd', DTP_begin.DateTime) + '")'
+ ' AND (Sellrecord.mydate<="' + formatdatetime('yyyy-mm-dd', dtp_end.DateTime) + '")'
+ ' and (YWYData.name="' + cb_ywy.Text + '")'
+ ' UNION ALL'
+ ' SELECT YWYData.Name, (Depot.NAME) Depotname, (goods.NAME) goodsname,'
+ ' goods.TYPE,goods.UNIT,(0- XSTHrecord.NUMBER) NUMBER,(XSTHrecord.price) selldj,'
+ ' ((0 - XSTHrecord.NUMBER)*XSTHrecord.PRICE) PRICE,XSTHrecord.MYDATE, XSTHrecord.MEMO'
+ ' FROM XSTHrecord INNER JOIN YWYData'
+ ' ON (XSTHrecord.PEOPLEID = YWYData.Id) INNER JOIN Depot'
+ ' ON (XSTHrecord.DEPOTID = Depot.ID) INNER JOIN goods'
+ ' ON (XSTHrecord.GOODSID = goods.ID)'
+ ' WHERE (XSTHrecord.mydate>="' + formatdatetime('yyyy-mm-dd', DTP_begin.DateTime) + '")'
+ ' AND (XSTHrecord.mydate<="' + formatdatetime('yyyy-mm-dd', dtp_end.DateTime) + '")'
+ ' and (YWYData.name="' + cb_ywy.Text + '") '
+ ' ORDER BY YWYData.NAME, MYDATE';
try
open;
except
messagedlg(Errormsg0001 + '0008+0018+0023', mtError, [mbok], 0);
close;
end;
end;
end;
procedure TQueryYWYSellForm.FormShow(Sender: TObject);
begin
inherited;
SB_query.Click;
end;
procedure TQueryYWYSellForm.SB_printClick(Sender: TObject);
begin
inherited;
try
Application.CreateForm(TPrintywyxsForm, PrintywyxsForm);
except
messagedlg(Errormsg0011, mtError, [mbok], 0);
exit;
end;
PrintywyxsForm.QuickRep_ywyxsmx.Preview;
PrintywyxsForm.Free;
end;
procedure TQueryYWYSellForm.SB_chartClick(Sender: TObject);
begin
inherited;
Application.CreateForm(TChartSaleForm, ChartSaleForm);
ChartSaleForm.DTP_begin.Date := self.DTP_begin.Date;
ChartSaleForm.DTP_end.Date := self.DTP_end.Date;
ChartSaleForm.showmodal;
ChartSaleForm.free;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -