📄 ugysdd.pas
字号:
unit ugysdd;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DBCtrls, ComCtrls, RzDTP, RzButton, ExtCtrls, Grids, DBGridEh,
StdCtrls, DB, ADODB, RzTabs, FR_Class;
type
Tfrmgysdd = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
Panel3: TPanel;
RzBitBtn1: TRzBitBtn;
RzBitBtn2: TRzBitBtn;
RzBitBtn3: TRzBitBtn;
RzBitBtn4: TRzBitBtn;
dtp1: TRzDateTimePicker;
dtp2: TRzDateTimePicker;
DBNavigator1: TDBNavigator;
TreeView1: TTreeView;
Label1: TLabel;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
DataSource1: TDataSource;
ADOQuery1DSDesigner: TStringField;
ADOQuery1DSDesigner2: TStringField;
ADOQuery1DSDesigner3: TStringField;
ADOQuery1DSDesigner4: TStringField;
ADOQuery1DSDesigner5: TStringField;
ADOQuery1DSDesigner6: TStringField;
ADOQuery1DSDesigner7: TStringField;
ADOQuery1DSDesigner8: TStringField;
ADOQuery1DSDesigner9: TStringField;
ADOQuery1DSDesigner10: TDateTimeField;
ADOQuery1DSDesigner11: TDateTimeField;
RzPageControl1: TRzPageControl;
TabSheet1: TRzTabSheet;
TabSheet2: TRzTabSheet;
DBGridEh1: TDBGridEh;
DBGridEh2: TDBGridEh;
ADOQuery3: TADOQuery;
ADOQuery3wldm: TStringField;
ADOQuery3wlmc: TStringField;
ADOQuery3wlys: TStringField;
ADOQuery3wlsh: TStringField;
ADOQuery3cgdw: TStringField;
ADOQuery3dj: TFloatField;
ADOQuery3xql: TBCDField;
ADOQuery3je: TFloatField;
DataSource2: TDataSource;
ADOQuery1DSDesigner12: TStringField;
frReport1: TfrReport;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure RzBitBtn4Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure csh();
procedure TreeView1Change(Sender: TObject; Node: TTreeNode);
procedure DBGridEh1DblClick(Sender: TObject);
procedure dtp1Exit(Sender: TObject);
procedure dtp2Exit(Sender: TObject);
procedure RzBitBtn3Click(Sender: TObject);
procedure RzBitBtn2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmgysdd: Tfrmgysdd;
implementation
uses uconst,ufunction,udm1,ucx, Unit3;
{$R *.dfm}
procedure tfrmgysdd.csh();
var
node:ttreenode;
begin
strsql:='select distinct gysmc from cgdd_main where cgrq>=:rq1 and cgrq<=:rq2 order by gysmc asc';
if adoquery2.Active then adoquery2.Close;
adoquery2.SQL.Clear;
adoquery2.SQL.Add(strsql);
if adoquery1.Active then adoquery1.Open;
strsql:='select ddhm as 订单号码,xqdh as 需求单号,jhdh as 计划单号,bjdh as 报价单号,'+
'djr as 登记人,lxr as 联络人,gysdm as 供应商代码,gysmc as 供应商名称,'+
'fkfs as 付款方式,bb as 币别,cgrq as 采购日期,ldrq as 落单日期 from cgdd_main where cgrq>=:rq1 and'+
' cgrq<=:rq2 order by ddhm asc';
adoquery1.sql.Add(strsql);
adoquery1.Parameters.ParamByName('rq1').Value:=dtp1.Date;
adoquery1.Parameters.ParamByName('rq2').Value:=dtp2.Date;
adoquery2.Parameters.ParamByName('rq1').Value:=dtp1.Date;
adoquery2.Parameters.ParamByName('rq2').Value:=dtp2.Date;
adoquery2.Open;
adoquery1.Open;
if not(adoquery2.Recordset.EOF and adoquery2.Recordset.BOF) then
treeview1.Items.Clear;
begin
adoquery2.First;
node:=treeview1.Items.AddFirst(nil,'供应商列表');
while not adoquery2.Eof do begin
treeview1.Items.AddChild(node,trim(adoquery2.fieldbyname('gysmc').AsString));
adoquery2.Next;
end;
end;
adoquery2.Close;
end;
procedure Tfrmgysdd.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:=cafree;
end;
procedure Tfrmgysdd.RzBitBtn4Click(Sender: TObject);
begin
close;
end;
procedure Tfrmgysdd.FormCreate(Sender: TObject);
begin
adoquery1.Connection:=dm1.ADOConnection1;
adoquery2.Connection:=dm1.ADOConnection1;
adoquery3.Connection:=dm1.ADOConnection1;
dtp1.Date:=date-30;
dtp2.Date:=date;
csh;
end;
procedure Tfrmgysdd.TreeView1Change(Sender: TObject; Node: TTreeNode);
begin
strsql:='select ddhm as 订单号码,xqdh as 需求单号,jhdh as 计划单号,bjdh as 报价单号,'+
'djr as 登记人,lxr as 联络人,gysdm as 供应商代码,gysmc as 供应商名称,'+
'fkfs as 付款方式,bb as 币别,cgrq as 采购日期,ldrq as 落单日期 from cgdd_main where '+
'gysmc='+''''+node.Text+''''+' and cgrq>='+''''+datetostr(dtp1.Date)+''''+
' and cgrq<='+''''+datetostr(dtp2.Date)+''''+' order by ddhm asc';
adoexect(adoquery1,strsql);
if node.Level=0 then
begin
if adoquery1.Active then adoquery1.Open;
strsql:='select ddhm as 订单号码,xqdh as 需求单号,jhdh as 计划单号,bjdh as 报价单号,'+
'djr as 登记人,lxr as 联络人,gysdm as 供应商代码,gysmc as 供应商名称,'+
'fkfs as 付款方式,bb as 币别,cgrq as 采购日期,ldrq as 落单日期 from cgdd_main where cgrq>=:rq1 and'+
' cgrq<=:rq2 order by ddhm asc';
adoquery1.sql.Add(strsql);
adoquery1.Parameters.ParamByName('rq1').Value:=dtp1.Date;
adoquery1.Parameters.ParamByName('rq2').Value:=dtp2.Date;
adoquery1.Open;
end;
RzPageControl1.ActivePageIndex:=0;
end;
procedure Tfrmgysdd.DBGridEh1DblClick(Sender: TObject);
begin
strsql:='select cgdd_detail.wldm,wlmc,wlys,wlsh,cgdw,cgdd_detail.dj,cgdd_detail.xql,'+
'cgdd_detail.dj*cgdd_detail.xql as je from cgdd_detail,wldmk where'+
' cgdd_detail.wldm=wldmk.wldm and cgdd_detail.ddhm='+''''+trim(adoquery1.fieldbyname('订单号码').asstring)+
''''+'order by cgdd_detail.wldm asc';
adoexect(adoquery3,strsql);
RzPageControl1.ActivePageIndex:=1;
end;
procedure Tfrmgysdd.dtp1Exit(Sender: TObject);
begin
csh;
end;
procedure Tfrmgysdd.dtp2Exit(Sender: TObject);
begin
csh;
end;
procedure Tfrmgysdd.RzBitBtn3Click(Sender: TObject);
begin
form3.frDBDataSet1.dataset:=adoquery1;
form3.frReport1.DoublePass := True;
form3.frReport1.Clear;
form3.frReport1.LoadFromFile(strpath+'/report/gysdd.frf');
frVariables['username']:=username;
frVariables['rq1']:=datetostr(dtp1.Date);
frVariables['rq2']:=datetostr(dtp2.Date);
form3.frReport1.Preview := Form3.frPreview1;
if form3.frReport1.PrepareReport then
begin
form3.frReport1.ShowPreparedReport;
end;
form3.ShowModal;
end;
procedure Tfrmgysdd.RzBitBtn2Click(Sender: TObject);
begin
form3.frDBDataSet1.dataset:=adoquery1;
form3.frReport1.DoublePass := True;
form3.frReport1.Clear;
form3.frReport1.LoadFromFile(strpath+'/report/gysdd.frf');
frVariables['username']:=username;
frVariables['rq1']:=datetostr(dtp1.Date);
frVariables['rq2']:=datetostr(dtp2.Date);
form3.frReport1.DesignReport;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -