📄 uwbg_mater_info.pas
字号:
unit uwbg_mater_info;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGridEh, ComCtrls, StdCtrls, RzDTP, RzButton, RzPanel,
RzSplit, ExtCtrls, DB, ADODB, FR_Class, RzTabs, GridsEh;
type
Tfrmswbgwl = class(TForm)
Panel1: TPanel;
RzSizePanel1: TRzSizePanel;
RzBitBtn1: TRzBitBtn;
RzBitBtn2: TRzBitBtn;
RzBitBtn3: TRzBitBtn;
RzBitBtn4: TRzBitBtn;
dtp1: TRzDateTimePicker;
dtp2: TRzDateTimePicker;
Label1: TLabel;
TreeView1: TTreeView;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
ADOQuery2: TADOQuery;
RzPageControl1: TRzPageControl;
TabSheet1: TRzTabSheet;
TabSheet2: TRzTabSheet;
ADOQuery3: TADOQuery;
DataSource2: TDataSource;
ADOQuery4: TADOQuery;
DBGridEh2: TDBGridEh;
DBGridEh1: TDBGridEh;
procedure RzBitBtn4Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure csh();
procedure TreeView1Change(Sender: TObject; Node: TTreeNode);
procedure RzBitBtn1Click(Sender: TObject);
procedure RzBitBtn2Click(Sender: TObject);
procedure RzBitBtn3Click(Sender: TObject);
procedure dtp1Exit(Sender: TObject);
procedure dtp2Exit(Sender: TObject);
procedure DBGridEh1DblClick(Sender: TObject);
procedure DBGridEh1CellClick(Column: TColumnEh);
procedure DBGridEh1TitleClick(Column: TColumnEh);
procedure DBGridEh2TitleClick(Column: TColumnEh);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmswbgwl: Tfrmswbgwl;
implementation
uses ucx,uconst,ufunction,Unit_treepublic,Unit3, udm1;
{$R *.dfm}
procedure Tfrmswbgwl.csh();
begin
strsql:='select gysdm as 供应商代码,gysmc as 供应商名称,bgwl as 报关物类,sum(weight) as 重量'+
',zldw as 单位,sum(quantity) as 数量 from shd_main where shrq >='+''''+datetostr(dtp1.Date)+''''+' and shrq<='+
''''+datetostr(dtp2.Date)+''''+' and gysdm in (select gysdm from gysdmk where sfbg=1)'+
' group by gysdm,gysmc,bgwl,zldw order by gysdm asc';
adoexect(adoquery1,strsql);
strsql:='select shd_main.shdh as 收货单号,shd_main.ddhm as 订单号码,yshdh as 送货单号,shd_main.djr as 收货人,'+
'shd_main.shrq as 送货日期,gysdm as 供应商代码,gysmc as 供应商,weight as 重量,'+
'zldw as 单位,quantity as 数量,substring(bz,1,200) as 备注 from shd_main'+
' where shd_main.shrq>='+''''+datetostr(dtp1.Date)+''''+' and shd_main.shrq<='+
''''+datetostr(dtp2.Date)+''''+' and gysdm in (select gysdm from gysdmk where sfbg=1)'+
' order by shd_main.srrq asc';
adoexect(adoquery2,strsql);
end;
procedure Tfrmswbgwl.RzBitBtn4Click(Sender: TObject);
begin
close;
end;
procedure Tfrmswbgwl.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:=cafree;
end;
procedure Tfrmswbgwl.FormCreate(Sender: TObject);
var
node:ttreenode;
node1:ttreenode;
begin
dtp1.Date:=date-30;
dtp2.Date:=date;
adoquery1.Connection:=dm1.ADOConnection1;
adoquery2.Connection:=dm1.ADOConnection1;
adoquery3.Connection:=dm1.ADOConnection1;
strsql:='select distinct fr from gysdmk where sfbg=1 order by fr asc';
adoexect(adoquery3,strsql);
if not(adoquery3.Recordset.EOF and adoquery3.Recordset.BOF) then
treeview1.Items.Clear;
begin
adoquery3.First;
node:=treeview1.Items.AddFirst(nil,'供应商列表');
while not adoquery3.Eof do begin
node1:=treeview1.Items.AddChild(node,trim(adoquery3.fieldbyname('fr').AsString));
strsql:='select distinct jianch from gysdmk where sfbg=1 and fr='+''''+
trim(adoquery3.fieldbyname('fr').AsString)+''''+' order by jianch asc';
adoexect(adoquery4,strsql);
while not adoquery4.Eof do
begin
treeview1.Items.AddChild(node1,trim(adoquery4.fieldbyname('jianch').AsString));
adoquery4.Next;
end;
adoquery3.Next;
end;
end;
adoquery3.Close;
adoquery4.close;
csh;
end;
procedure Tfrmswbgwl.TreeView1Change(Sender: TObject; Node: TTreeNode);
begin
case node.Level of
0:
csh;
1:
begin
strsql:='select gysdm as 供应商代码,gysmc as 供应商名称,bgwl as 报关物类,sum(weight) as 重量'+
',zldw as 单位,sum(quantity) as 数量 from shd_main where shrq >='+''''+datetostr(dtp1.Date)+''''+' and shrq<='+
''''+datetostr(dtp2.Date)+''''+' and gysdm in (select gysdm from gysdmk where fr='+''''+
trim(node.Text)+''''+' and sfbg=1) group by gysdm,gysmc,bgwl,zldw order by gysdm asc';
adoexect(adoquery1,strsql);
strsql:='select shd_main.shdh as 收货单号,shd_main.ddhm as 订单号码,yshdh as 送货单号,shd_main.djr as 收货人,'+
'shd_main.shrq as 送货日期,gysdm as 供应商代码,gysmc as 供应商,weight as 重量,'+
'zldw as 单位,quantity as 数量,substring(bz,1,200) as 备注 from shd_main'+
' where shd_main.srrq>='+''''+datetostr(dtp1.Date)+''''+' and shd_main.srrq<='+
''''+datetostr(dtp2.Date)+''''+' and gysdm in (select gysdm from gysdmk where fr='+''''+
trim(node.Text)+''''+' and sfbg=1) order by shd_main.srrq asc';
adoexect(adoquery2,strsql);
end;
2,3:
begin
strsql:='select gysdm as 供应商代码,gysmc as 供应商名称,bgwl as 报关物类,sum(weight) as 重量'+
',zldw as 单位,sum(quantity) as 数量 from shd_main where shrq >='+''''+datetostr(dtp1.Date)+''''+' and shrq<='+
''''+datetostr(dtp2.Date)+''''+' and gysmc ='+''''+
trim(node.Text)+''''+' group by gysdm,gysmc,bgwl,zldw order by gysdm asc';
adoexect(adoquery1,strsql);
strsql:='select shd_main.shdh as 收货单号,shd_main.ddhm as 订单号码,yshdh as 送货单号,shd_main.djr as 收货人,'+
'shd_main.shrq as 送货日期,gysdm as 供应商代码,gysmc as 供应商,weight as 重量,'+
'zldw as 单位,quantity as 数量,substring(bz,1,200) as 备注 from shd_main'+
' where shd_main.srrq>='+''''+datetostr(dtp1.Date)+''''+' and shd_main.srrq<='+
''''+datetostr(dtp2.Date)+''''+' and gysmc ='+''''+
trim(node.Text)+''''+' order by shd_main.srrq asc';
adoexect(adoquery2,strsql);
end;
end;
end;
procedure Tfrmswbgwl.RzBitBtn1Click(Sender: TObject);
begin
frmcx:=tfrmcx.Create(self);
frmcx.adocx:=adoquery1;
frmcx.ShowModal;
adoquery1:=frmcx.adocx;
ADOquery1.Requery();
end;
procedure Tfrmswbgwl.RzBitBtn2Click(Sender: TObject);
begin
if RzPageControl1.ActivePageIndex=0 then
begin
form3.frDBDataSet1.dataset:=adoquery1;
form3.frReport1.DoublePass := True;
form3.frReport1.Clear;
form3.frReport1.LoadFromFile(strpath+'/report/wbgwltj.frf');
form3.frReport1.Preview := Form3.frPreview1;
frVariables['username']:=username;
frVariables['rq1']:=datetostr(dtp1.Date);
frVariables['rq2']:=datetostr(dtp2.Date);
if form3.frReport1.PrepareReport then
begin
form3.frReport1.ShowPreparedReport;
end;
end else begin
form3.frDBDataSet1.dataset:=adoquery2;
form3.frReport1.DoublePass := True;
form3.frReport1.Clear;
form3.frReport1.LoadFromFile(strpath+'/report/bgshdxg.frf');
form3.frReport1.Preview := Form3.frPreview1;
frVariables['username']:=username;
frVariables['rq1']:=datetostr(dtp1.Date);
frVariables['rq2']:=datetostr(dtp2.Date);
if form3.frReport1.PrepareReport then
begin
form3.frReport1.ShowPreparedReport;
end;
end;
form3.ShowModal;
end;
procedure Tfrmswbgwl.RzBitBtn3Click(Sender: TObject);
begin
if RzPageControl1.ActivePageIndex=0 then
begin
form3.frDBDataSet1.dataset:=adoquery1;
form3.frReport1.DoublePass := True;
form3.frReport1.Clear;
form3.frReport1.LoadFromFile(strpath+'/report/wbgwltj.frf');
form3.frReport1.Preview := Form3.frPreview1;
frVariables['username']:=username;
frVariables['rq1']:=datetostr(dtp1.Date);
frVariables['rq2']:=datetostr(dtp2.Date);
form3.frReport1.DesignReport;
end else begin
form3.frDBDataSet1.dataset:=adoquery2;
form3.frReport1.DoublePass := True;
form3.frReport1.Clear;
form3.frReport1.LoadFromFile(strpath+'/report/bgshdxg.frf');
form3.frReport1.Preview := Form3.frPreview1;
frVariables['username']:=username;
frVariables['rq1']:=datetostr(dtp1.Date);
frVariables['rq2']:=datetostr(dtp2.Date);
form3.frReport1.DesignReport;
end;
form3.ShowModal;
end;
procedure Tfrmswbgwl.dtp1Exit(Sender: TObject);
begin
csh;
end;
procedure Tfrmswbgwl.dtp2Exit(Sender: TObject);
begin
csh;
end;
procedure Tfrmswbgwl.DBGridEh1DblClick(Sender: TObject);
begin
RzPageControl1.ActivePageIndex:=1;
end;
procedure Tfrmswbgwl.DBGridEh1CellClick(Column: TColumnEh);
begin
strsql:='select shd_main.shdh as 收货单号,shd_main.ddhm as 订单号码,yshdh as 送货单号,shd_main.djr as 收货人,'+
'shd_main.shrq as 送货日期,gysdm as 供应商代码,gysmc as 供应商,weight as 重量,'+
'zldw as 单位,quantity as 数量,substring(bz,1,200) as 备注 from shd_main'+
' where shd_main.shrq>='+''''+datetostr(dtp1.Date)+''''+' and shd_main.shrq<='+
''''+datetostr(dtp2.Date)+''''+' and gysmc ='+''''+
trim(adoquery1.fieldbyname('供应商名称').AsString) +''''+' order by shd_main.srrq asc';
adoexect(adoquery2,strsql);
end;
procedure Tfrmswbgwl.DBGridEh1TitleClick(Column: TColumnEh);
begin
Compositor(adoquery1,Column);
end;
procedure Tfrmswbgwl.DBGridEh2TitleClick(Column: TColumnEh);
begin
Compositor(adoquery1,Column);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -