📄 dfm_zshzfx.pas
字号:
unit dfm_zshzfx;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
TeeProcs, TeEngine, Chart, mxgraph, ExtCtrls, ComCtrls, Series, mxstore,
mxDB, Db, DBTables, mxtables, Grids, mxgrid, StdCtrls, Buttons, DBGrids,
Mask, DBCtrls, ppPrnabl, ppClass, ppCtrls, ppDB, ppBands, ppProd,
ppReport, ppComm, ppRelatv, ppCache, ppDBPipe, ppDBBDE, ppModule,
daDatMod, ppVar;
type
Tdfmxshzfx = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
Panel1: TPanel;
Panel3: TPanel;
DBGrid1: TDBGrid;
dsqryshop: TDataSource;
qryshop: TQuery;
DateTimePicker1: TDateTimePicker;
DateTimePicker2: TDateTimePicker;
BitBtn1: TBitBtn;
Label1: TLabel;
Label2: TLabel;
BitBtn2: TBitBtn;
DBGrid2: TDBGrid;
dsqrystyle: TDataSource;
qrystyle: TQuery;
Label3: TLabel;
DBEdit1: TDBEdit;
Label4: TLabel;
DBEdit2: TDBEdit;
sumshop: TQuery;
sumstyle: TQuery;
dssumshop: TDataSource;
dssumstyle: TDataSource;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
ComboBox1: TComboBox;
tbltposloca: TTable;
dstposloca: TDataSource;
TabSheet3: TTabSheet;
Panel2: TPanel;
DBGrid3: TDBGrid;
Label8: TLabel;
Label9: TLabel;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
TabSheet4: TTabSheet;
Panel4: TPanel;
DBGrid4: TDBGrid;
dssku: TDataSource;
qrysku: TQuery;
dssumsku: TDataSource;
sumsku: TQuery;
Label10: TLabel;
Label11: TLabel;
DBEdit7: TDBEdit;
DBEdit8: TDBEdit;
dscolr: TDataSource;
qrycolr: TQuery;
dssumcolr: TDataSource;
sumcolr: TQuery;
BitBtn3: TBitBtn;
ppBDEPipeline1: TppBDEPipeline;
ppReport1: TppReport;
ppHeaderBand1: TppHeaderBand;
ppDetailBand1: TppDetailBand;
ppFooterBand1: TppFooterBand;
ppLabel1: TppLabel;
ppLabel2: TppLabel;
ppLabel3: TppLabel;
ppLabel4: TppLabel;
ppLabel5: TppLabel;
ppLabel6: TppLabel;
ppVariable2: TppVariable;
ppLabel23: TppLabel;
ppVariable3: TppVariable;
ppSystemVariable2: TppSystemVariable;
ppSystemVariable3: TppSystemVariable;
ppLabel18: TppLabel;
ppLabel19: TppLabel;
ppLabel20: TppLabel;
ppLabel21: TppLabel;
ppDBText1: TppDBText;
ppDBText2: TppDBText;
ppDBText3: TppDBText;
ppDBText4: TppDBText;
ppLine1: TppLine;
ppLine2: TppLine;
ppDBText5: TppDBText;
ppBDEPipeline2: TppBDEPipeline;
ppSummaryBand1: TppSummaryBand;
ppLine3: TppLine;
ppLabel7: TppLabel;
ppLabel8: TppLabel;
ppLabel9: TppLabel;
ppDBCalc1: TppDBCalc;
ppDBCalc2: TppDBCalc;
ppLine4: TppLine;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ppVariable2Calc(Sender: TObject; var Value: Variant);
procedure ppVariable3Calc(Sender: TObject; var Value: Variant);
procedure ComboBox1Exit(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
dfmxshzfx: Tdfmxshzfx;
implementation
uses dfm_shopzf;
{$R *.DFM}
procedure Tdfmxshzfx.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:=cafree;
end;
procedure Tdfmxshzfx.BitBtn1Click(Sender: TObject);
begin
if dfmxshzfx.PageControl1.ActivePage=TabSheet1 then
begin
with qryshop do
begin
close;
SQL.clear;
SQL.add('SELECT SASTOR, ttsaqty=sum(tsaqty), ttsasal=sum(tsasal) FROM dbo.V_shop Dbo_v_shop');
SQL.Add('where sastor like :vsastor and sadate>=:vsdate and sadate<=:vedate');
SQL.Add('group by sastor');
SQL.Add('order by ttsasal');
ParamByName ('vsastor').asstring:=trim(combobox1.text)+'%';
// ParamByName ('viasku').asstring:=trim(combobox2.text)+'%';
ParamByName ('vsdate').asdate :=DateTimePicker1.date;
ParamByName ('vedate').asdate :=DateTimePicker2.date;
open;
end;
with sumshop do
begin
close;
SQL.clear;
SQL.add('SELECT ttsaqty=sum(tsaqty), ttsasal=sum(tsasal) FROM dbo.V_shop Dbo_v_shop');
SQL.Add('where sastor like :vsastor and sadate>=:vsdate and sadate<=:vedate');
ParamByName ('vsastor').asstring:=trim(combobox1.text)+'%';
ParamByName ('vsdate').asdate :=DateTimePicker1.date;
ParamByName ('vedate').asdate :=DateTimePicker2.date;
open;
end;
end;
if dfmxshzfx.PageControl1.ActivePage=TabSheet2 then
begin
with qrystyle do
begin
close;
SQL.clear;
SQL.add('SELECT SASTYL, aaprc=convert(int,avg(aprc)), ttsaqty=sum(tsaqty), ttsasal=sum(tsasal) FROM dbo.V_STYLE Dbo_v_style');
SQL.Add('where sastor like :vsastor and sadate>=:vsdate and sadate<=:vedate');
SQL.Add('group by SASTYL');
SQL.Add('order by SASTYL');
ParamByName ('vsastor').asstring:=trim(combobox1.text)+'%';
// ParamByName ('viasku').asstring:=trim(combobox2.text)+'%';
ParamByName ('vsdate').asdate :=DateTimePicker1.date;
ParamByName ('vedate').asdate :=DateTimePicker2.date;
open;
end;
with sumstyle do
begin
close;
SQL.clear;
SQL.add('SELECT ttsaqty=sum(tsaqty), ttsasal=sum(tsasal) FROM dbo.V_STYLE Dbo_v_style');
SQL.Add('where sastor like :vsastor and sadate>=:vsdate and sadate<=:vedate');
ParamByName ('vsastor').asstring:=trim(combobox1.text)+'%';
ParamByName ('vsdate').asdate :=DateTimePicker1.date;
ParamByName ('vedate').asdate :=DateTimePicker2.date;
open;
end;
end;
if dfmxshzfx.PageControl1.ActivePage=TabSheet3 then
begin
with qrycolr do
begin
close;
SQL.clear;
SQL.add('SELECT SASTYL, sacolr, ttsaqty=sum(saqty), ttsasal=sum(sasal) FROM t_possale');
SQL.Add('where sastor like :vsastor and sadate>=:vsdate and sadate<=:vedate');
SQL.Add('group by SASTYL, sacolr');
SQL.Add('order by ttsasal');
ParamByName ('vsastor').asstring:=trim(combobox1.text)+'%';
// ParamByName ('viasku').asstring:=trim(combobox2.text)+'%';
ParamByName ('vsdate').asdate :=DateTimePicker1.date;
ParamByName ('vedate').asdate :=DateTimePicker2.date;
open;
end;
with sumcolr do
begin
close;
SQL.clear;
SQL.add('SELECT ttsaqty=sum(saqty), ttsasal=sum(sasal) FROM t_possale');
SQL.Add('where sastor like :vsastor and sadate>=:vsdate and sadate<=:vedate');
ParamByName ('vsastor').asstring:=trim(combobox1.text)+'%';
ParamByName ('vsdate').asdate :=DateTimePicker1.date;
ParamByName ('vedate').asdate :=DateTimePicker2.date;
open;
end;
end;
if dfmxshzfx.PageControl1.ActivePage=TabSheet4 then
begin
with qrysku do
begin
close;
SQL.clear;
SQL.add('SELECT SASKU, ttsaqty=sum(saqty), ttsasal=sum(sasal) FROM t_possale');
SQL.Add('where sastor like :vsastor and sadate>=:vsdate and sadate<=:vedate');
SQL.Add('group by SASKU');
SQL.Add('order by ttsasal');
ParamByName ('vsastor').asstring:=trim(combobox1.text)+'%';
// ParamByName ('viasku').asstring:=trim(combobox2.text)+'%';
ParamByName ('vsdate').asdate :=DateTimePicker1.date;
ParamByName ('vedate').asdate :=DateTimePicker2.date;
open;
end;
with sumsku do
begin
close;
SQL.clear;
SQL.add('SELECT ttsaqty=sum(saqty), ttsasal=sum(sasal) FROM t_possale');
SQL.Add('where sastor like :vsastor and sadate>=:vsdate and sadate<=:vedate');
ParamByName ('vsastor').asstring:=trim(combobox1.text)+'%';
ParamByName ('vsdate').asdate :=DateTimePicker1.date;
ParamByName ('vedate').asdate :=DateTimePicker2.date;
open;
end;
end;
// SELECT SASTYL, SUM(SAQTY) AS tsaqty, SUM(SASAL) AS tsasal, SASKU, SACOLR, SASIZE
//FROM t_possale
//GROUP BY SASKU, SASTYL, SASKU, SACOLR, SASIZE
end;
procedure Tdfmxshzfx.BitBtn2Click(Sender: TObject);
begin
If Application.FindComponent('dfmshopzf')=Nil Then
dfmshopzf:=Tdfmshopzf.Create(Application);
dfmshopzf.Show;
end;
procedure Tdfmxshzfx.FormCreate(Sender: TObject);
begin
tbltposloca.active:=true;
while not tbltposloca.Eof do begin
ComboBox1.Items.Add(tbltposloca.FieldByName('lcstor').AsString);
tbltposloca.Next;
end;
end;
procedure Tdfmxshzfx.FormShow(Sender: TObject);
begin
DateTimePicker1.Date :=date();
DateTimePicker2.Date :=date();
end;
procedure Tdfmxshzfx.ppVariable2Calc(Sender: TObject; var Value: Variant);
begin
value:=DateTimePicker1.Date;
end;
procedure Tdfmxshzfx.ppVariable3Calc(Sender: TObject; var Value: Variant);
begin
value:=DateTimePicker2.Date;
end;
procedure Tdfmxshzfx.ComboBox1Exit(Sender: TObject);
begin
if tbltposloca.FindKey([combobox1.text]) then
begin
end;
end;
procedure Tdfmxshzfx.BitBtn3Click(Sender: TObject);
begin
ppReport1.Print;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -