📄 slsalechainlist.pas
字号:
unit SLSaleChainList;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, WSVoucherBrowse, DB, ActnList, Grids,WSEdit, DBGrids, QLDBGrid,
ComCtrls, ExtCtrls, ToolWin,DateUtils, ADODB, StdCtrls, Buttons,TypInfo,
Menus;
type
TSLSaleChainListForm = class(TWSVoucherBrowseForm)
ToolButton4: TToolButton;
ToolButton5: TToolButton;
ToolButton6: TToolButton;
ToolButton7: TToolButton;
ToolButton8: TToolButton;
ToolButton9: TToolButton;
ToolButton11: TToolButton;
ToolButton12: TToolButton;
ToolButton13: TToolButton;
adsMaster: TADODataSet;
ADOQuery: TADOQuery;
Panel2: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
DateTimePicker1: TDateTimePicker;
DateTimePicker2: TDateTimePicker;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
BitBtn5: TBitBtn;
BitBtn6: TBitBtn;
BitBtn7: TBitBtn;
BitBtn8: TBitBtn;
BitBtn9: TBitBtn;
BitBtn10: TBitBtn;
BitBtn11: TBitBtn;
BitBtn12: TBitBtn;
BitBtn14: TBitBtn;
BitBtn13: TBitBtn;
ToolButton1: TToolButton;
procedure DBGridCellClick(Column: TColumn);
procedure DBGridDblClick(Sender: TObject);
procedure UpdateDBGrid;
procedure DateTimePicker1Change(Sender: TObject);
procedure DateTimePicker2Change(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure BitBtn6Click(Sender: TObject);
procedure BitBtn7Click(Sender: TObject);
procedure BitBtn8Click(Sender: TObject);
procedure BitBtn9Click(Sender: TObject);
procedure BitBtn10Click(Sender: TObject);
procedure BitBtn11Click(Sender: TObject);
procedure BitBtn12Click(Sender: TObject);
procedure BitBtn13Click(Sender: TObject);
procedure BitBtn14Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure adsMasterBeforeOpen(DataSet: TDataSet);
procedure adsMasterAfterOpen(DataSet: TDataSet);
private
year,month,day,year1,month1,day1 :word;
Datestr1,Datestr2 :string;
{ Private declarations }
public
{ Public declarations }
protected
function CreateEditForm: TWSEditForm; override;
end;
var
SLSaleChainListForm: TSLSaleChainListForm;
implementation
uses CommonDM ;
{$R *.dfm}
function TSLSaleChainListForm.CreateEditForm: TWSEditForm;
begin
// Result :=;
end;
procedure TSLSaleChainListForm.DBGridCellClick(Column: TColumn);
begin
UpdateDBGrid;
end;
procedure TSLSaleChainListForm.DBGridDblClick(Sender: TObject);
begin
UpdateDBGrid;
end;
procedure TSLSaleChainListForm.UpdateDBGrid;
var I: Integer;
begin
with DBGrid.DataSource.DataSet do
begin
for I :=0 to DBGrid.DataSource.DataSet.FieldCount -1 do
begin
if DBGrid.DataSource.DataSet.Fields[i].DataType = TFieldType(ftFloat) then
begin
SetStrProp(DBGrid.DataSource.DataSet.Fields[I], 'DisplayFormat','#,#.00') ;
DBGrid.DataSource.DataSet.Fields[i].DisplayWidth :=20;
end;
end;
end;
with DBGrid do
begin
FooterRowCount := 0;
Columns[0].Footer.ValueType := fvtStaticText;
Columns[0].Footer.Value := '合计:';
Columns[0].Footer.Alignment := taCenter;
Columns[0].Title.Alignment:= taCenter;
Columns[0].Width :=200;
for I := 1 to Columns.Count - 1 do
begin
Columns[i].Width :=90;
if Pos('日',Columns[I].FieldName)>0 then Columns[i].Width :=70;
if Pos('编',Columns[I].FieldName)>0 then Columns[i].Width :=70;
Columns[i].Title.Alignment:= taCenter;
if Columns[I].Field is TNumericField then
if Pos('Price',Columns[I].FieldName)<=0 then
Columns[I].Footer.ValueType := fvtSum;
end;
FooterRowCount := 1;
end;
end;
procedure TSLSaleChainListForm.DateTimePicker1Change(Sender: TObject);
begin
inherited;
if DateTimePicker1.Date>DateTimePicker2.Date then
DateTimePicker2.Date :=DateTimePicker1.Date;
DecodeDate(DateTimePicker1.Date,year, month, day);
DecodeDate(DateTimePicker2.Date,year1, month1, day1);
DateStr1 :=Datetostr(DateTimePicker1.Date);
DateStr2 :=Datetostr(DateTimePicker2.Date);
end;
procedure TSLSaleChainListForm.DateTimePicker2Change(Sender: TObject);
begin
inherited;
if DateTimePicker2.Date<DateTimePicker1.Date then
DateTimePicker1.Date :=DateTimePicker2.Date;
DecodeDate(DateTimePicker1.Date,year, month, day);
DecodeDate(DateTimePicker2.Date,year1, month1, day1);
DateStr1 :=Datetostr(DateTimePicker1.Date);
DateStr2 :=Datetostr(DateTimePicker2.Date);
end;
procedure TSLSaleChainListForm.BitBtn1Click(Sender: TObject);
begin
adsMaster.Close;
adsMaster.CommandText :=' select CLIENT as [客户名称],Sum(Isnull(Amount,0)) '
+' as [金额合计] from #SLSaleChainList '
+' where date>'+Quotedstr(Datestr1)+' and date<='
+Quotedstr(Datestr2)+' and Amount<>0'
+' Group By CLIENT order by [金额合计] Desc';
adsMaster.open;
UpdateDBGrid;
end;
procedure TSLSaleChainListForm.BitBtn2Click(Sender: TObject);
begin
adsMaster.Close;
adsMaster.CommandText :=' select Employee as [业务员姓名],Sum(Isnull(Amount,0)) '
+' as [金额合计] from #SLSaleChainList '
+' where date>'+Quotedstr(Datestr1)+' and date<='
+Quotedstr(Datestr2)+' and Amount<>0'
+' Group By Employee order by [金额合计] Desc';
adsMaster.open;
UpdateDBGrid;
end;
procedure TSLSaleChainListForm.BitBtn3Click(Sender: TObject);
begin
adsMaster.Close;
adsMaster.CommandText :=' select goods as [商品名称],Sum(Isnull(Amount,0)) '
+' as [金额合计] from #SLSaleChainList '
+' where date>'+Quotedstr(Datestr1)+' and date<='
+Quotedstr(Datestr2)+' and Amount<>0'
+' Group By Goods order by [金额合计] Desc';
adsMaster.open;
UpdateDBGrid;
end;
procedure TSLSaleChainListForm.BitBtn4Click(Sender: TObject);
begin
adsMaster.Close;
adsMaster.CommandText :=' select Area as [地区名称],Sum(Isnull(Amount,0)) '
+' as [金额合计] from #SLSaleChainList '
+' where date>'+Quotedstr(Datestr1)+' and date<='
+Quotedstr(Datestr2)+' and Amount<>0'
+' Group By Area order by [金额合计] Desc';
adsMaster.open;
UpdateDBGrid;
end;
procedure TSLSaleChainListForm.BitBtn5Click(Sender: TObject);
begin
adsMaster.Close;
adsMaster.CommandText :=' select GoodsClass as [商品类别名称],Sum(Isnull(Amount,0)) '
+' as [金额合计] from #SLSaleChainList '
+' where date>'+Quotedstr(Datestr1)+' and date<='
+Quotedstr(Datestr2)+' and Amount<>0'
+' Group By GoodsClass order by [金额合计] Desc';
adsMaster.open;
UpdateDBGrid;
end;
procedure TSLSaleChainListForm.BitBtn6Click(Sender: TObject);
begin
adsMaster.Close;
adsMaster.CommandText :=' select Client as [客户名称],'
+' Goods as [商品名称], sum(isnull(Quantity,0)) as [销售数量],'
+' Sum(Isnull(Amount,0)) as [金额合计] , '
+' GoalUnit as [标准单位] '
+' from #SLSaleChainList '
+' where date>'+Quotedstr(Datestr1)+' and date<='
+Quotedstr(Datestr2)+' and Quantity<>0'
+' Group By Client,Goods, GoalUnit order by [销售数量] Desc';
adsMaster.open;
UpdateDBGrid;
end;
procedure TSLSaleChainListForm.BitBtn7Click(Sender: TObject);
begin
adsMaster.Close;
adsMaster.CommandText :=' select '
+' Goods as [商品名称], sum(isnull(Quantity,0)) as [销售数量],'
+' Sum(Isnull(Amount,0)) as [金额合计] , '
+' GoalUnit as [标准单位] '
+' from #SLSaleChainList '
+' where date>'+Quotedstr(Datestr1)+' and date<='
+Quotedstr(Datestr2)+' and Quantity<>0'
+' Group By Goods, GoalUnit order by [销售数量] Desc';
adsMaster.open;
UpdateDBGrid;end;
procedure TSLSaleChainListForm.BitBtn8Click(Sender: TObject);
begin
adsMaster.Close;
adsMaster.CommandText :=' select Area as [地区名称],'
+' Goods as [商品名称], sum(isnull(Quantity,0)) as [销售数量],'
+' Sum(Isnull(Amount,0)) as [金额合计] , '
+' GoalUnit as [标准单位] '
+' from #SLSaleChainList a '
+' where date>'+Quotedstr(Datestr1)+' and date<='
+Quotedstr(Datestr2)+' and Quantity<>0'
+' Group By Area,Goods, GoalUnit order by [销售数量] Desc';
adsMaster.open;
UpdateDBGrid;
end;
procedure TSLSaleChainListForm.BitBtn9Click(Sender: TObject);
begin
adsMaster.Close;
adsMaster.CommandText :=' select GoodsClass as [商品分类名称],'
+' Goods as [商品名称], sum(isnull(Quantity,0)) as [销售数量],'
+' Sum(Isnull(Amount,0)) as [金额合计] , '
+' GoalUnit as [标准单位] '
+' from #SLSaleChainList a '
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -