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

📄 queryspfbunit.pas

📁 一个用delphi 开发的商场销售系统 涵盖很多功能
💻 PAS
字号:
unit QueryspfbUnit;

interface

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

type
  TQueryspfbForm = class(TQueryBassForm)
    DBG_GOODS: TDBGrid;
    DBG_temp: TDBGrid;
    DataSourceTemp: TDataSource;
    DataSourceGoods: TDataSource;
    Query_Goods: TQuery;
    procedure FormCreate(Sender: TObject);
    procedure FormResize(Sender: TObject);
    procedure SB_printClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  QueryspfbForm: TQueryspfbForm;

implementation

uses PrintspfbUnit, PrintBassUnit, FunctionUnit;

{$R *.dfm}

procedure TQueryspfbForm.FormCreate(Sender: TObject);
begin
  inherited;
  self.Caption := '商品分布统计';
  Query_GOODS.DatabaseName := 'CPXSGL';
  with query_temp do  //商品按名称分组查询
  begin
    close;
    sql.Clear;
    sql.Text := 'SELECT NAME from goods GROUP BY NAME ORDER BY NAME';
  end;
  with query_goods do  //查询单个分组下的商品信息
  begin
    close;
    sql.Clear;
    sql.Text := 'SELECT * from goods Where NAME=:"NAME"';
  end;
  with query_data do  //查询指定商品的库存状况
  begin
    close;
    sql.Clear;
    sql.Text := 'SELECT goods.NAME goodsname, goods.TYPE, Depot.NAME depotname,'
      + ' Storagerecord.NUMBER, goods.UNIT, Storagerecord.PRICE DJ,'
      + ' sum(Storagerecord.NUMBER*Storagerecord.PRICE) PRICE FROM Storagerecord'
      + ' INNER JOIN Depot ON  (Storagerecord.DEPOTID = Depot.ID)'
      + ' INNER JOIN goods ON  (Storagerecord.GOODSID = goods.ID)'
      + ' WHERE  goods.ID =:"ID"'
      + ' GROUP BY Depot.NAME, goods.NAME, goods.TYPE, Storagerecord.NUMBER,'
      + ' goods.UNIT, Storagerecord.PRICE';
  end;
  try
    query_temp.open;
    query_goods.open;
    query_data.open;
  except
    messagedlg(Errormsg0001 + '0012+0019', mtError, [mbok], 0);
    query_data.close;
    query_goods.close;
    query_temp.close;
  end;
end;

procedure TQueryspfbForm.FormResize(Sender: TObject);
var
  I_col: integer;
begin
  inherited;
  if DBG_temp.Columns.Count >= 1 then
  begin
    for I_col := 0 to DBG_temp.Columns.Count - 2 do
    begin
      DBG_temp.Columns.Items[I_col].Width := DBG_temp.Width div (DBG_temp.Columns.Count);
    end;
    DBG_temp.Columns.Items[DBG_temp.Columns.Count - 1].Width := DBG_temp.Width div (DBG_temp.Columns.Count) - 30;
  end;
  if DBG_goods.Columns.Count >= 1 then
  begin
    for I_col := 0 to DBG_goods.Columns.Count - 2 do
    begin
      DBG_goods.Columns.Items[I_col].Width := DBG_goods.Width div (DBG_goods.Columns.Count);
    end;
    DBG_goods.Columns.Items[DBG_goods.Columns.Count - 1].Width := DBG_goods.Width div (DBG_goods.Columns.Count) - 32;
  end;

end;

procedure TQueryspfbForm.SB_printClick(Sender: TObject);
begin
  inherited;
  try
    Application.CreateForm(TPrintspfbForm, PrintspfbForm);
    Application.CreateForm(TprintBassForm, printBassForm);
  except
    messagedlg(Errormsg0011, mtError, [mbok], 0);
    exit;
  end;
  PrintspfbForm.QuickRep_spfb.preview;
  PrintspfbForm.Free;
  printBassForm.Free;
end;

end.

⌨️ 快捷键说明

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