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

📄 queryscsellunit.pas

📁 安装完成后
💻 PAS
字号:
unit QueryscSellUnit;

interface

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

type
  TQueryscSellForm = class(TQueryBassForm)
    procedure FormCreate(Sender: TObject);
    procedure SB_queryClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure SB_printClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  QueryscSellForm: TQueryscSellForm;

implementation

uses FunctionUnit, MainUnit, PrintscxsUnit, PrintBassUnit;

{$R *.dfm}

procedure TQueryscSellForm.FormCreate(Sender: TObject);
begin
  inherited;
  self.Caption := '商场销售统计';
  with query_temp do
  begin
    close;
    sql.Clear;
    sql.Text := 'select name from depot where type="外部"';
    open;
    CB_depot.Items.Clear;
    CB_depot.Style := csDropDownList;
    CB_depot.Items.Add('所有');
    CB_depot.ItemIndex := 0;
    while not eof do
    begin
      CB_depot.Items.add(fieldbyname('name').asstring);
      next;
    end;
    close;
  end;
end;



procedure TQueryscSellForm.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_depot.Text = '') or (CB_depot.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 DEPOT.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 (depot.name="' + cb_depot.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 (depot.name="' + cb_depot.Text + '")'
        + '  ORDER BY DEPOT.NAME,MYDATE';
    try
      open;
    except
      messagedlg(Errormsg0001 + '0008+0018+0023', mtError, [mbok], 0);
      close;
    end;
  end;
end;


procedure TQueryscSellForm.FormShow(Sender: TObject);
begin
  inherited;
  SB_query.Click;
end;

procedure TQueryscSellForm.SB_printClick(Sender: TObject);
begin
  inherited;
  try
    Application.CreateForm(TPrintscxsForm, PrintscxsForm);
    Application.CreateForm(TPrintBassForm, PrintBassForm);
  except
    messagedlg(Errormsg0011, mtError, [mbok], 0);
    exit;
  end;
  PrintscxsForm.QuickRep_scxsmx.preview;
  PrintscxsForm.Free;
  PrintBassForm.Free;
end;

end.

⌨️ 快捷键说明

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