uwlzxqtj.pas

来自「工廠採購管理系統」· PAS 代码 · 共 185 行

PAS
185
字号
unit uwlzxqtj;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, RzButton, ExtCtrls, GridsEh, DBGridEh, StdCtrls, ComCtrls, RzDTP,
  DB, ADODB, Grids, FR_DSet, FR_DBSet, FR_Class, DBGrids;

type
  Tfrmwlzxqtj = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    RzBitBtn1: TRzBitBtn;
    RzBitBtn2: TRzBitBtn;
    RzBitBtn3: TRzBitBtn;
    RzBitBtn4: TRzBitBtn;
    dtp1: TRzDateTimePicker;
    dtp2: TRzDateTimePicker;
    Label1: TLabel;
    Label3: TLabel;
    ADOQuery1: TADOQuery;
    DataSource1: TDataSource;
    DBGrid1: TDBGrid;
    Edit1: TEdit;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure RzBitBtn4Click(Sender: TObject);
    procedure csh();
    procedure FormCreate(Sender: TObject);
    procedure dtp1Exit(Sender: TObject);
    procedure dtp2Exit(Sender: TObject);
    procedure RzBitBtn3Click(Sender: TObject);
    procedure RzBitBtn1Click(Sender: TObject);
    procedure RzBitBtn2Click(Sender: TObject);
    procedure DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
      DataCol: Integer; Column: TColumn; State: TGridDrawState);
    procedure Edit1Change(Sender: TObject);
    procedure DBGrid1TitleClick(Column: TColumn);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmwlzxqtj: Tfrmwlzxqtj;

implementation
uses uconst,ufunction,udm1,ucx,unit3;
{$R *.dfm}

procedure Tfrmwlzxqtj.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:=cafree;
end;

procedure Tfrmwlzxqtj.RzBitBtn4Click(Sender: TObject);
begin
close;
end;
procedure tfrmwlzxqtj.csh();
begin
strsql:='SELECT cgwl.wldm AS 物料代码,pym as 助记码, wldmk.wlmc AS 物料名称,'+
     'wldmk.wlys AS 颜色, wldmk.wlsh AS 色号, wldmk.dw AS 单位,pym,'+
      'SUM(cgwl.xql) AS 需求量,SUM(cgwl.ykcl) AS 用库存量, '+
      'SUM(cgwl.jhcgl) as 计划采购量 FROM cgwl_mail,cgwl,wldmk where'+
      ' cgwl.wldm=wldmk.wldm and cgwl.cgxqdh=cgwl_mail.cgxqdh and '+
      'cgwl_mail.srrq>='+''''+datetostr(dtp1.Date)+''''+' and cgwl_mail.srrq<='+''''+datetostr(dtp2.Date)+''''+
      ' and cgwl_mail.xqwcjs<>1 GROUP BY cgwl.wldm, wldmk.wlmc, '+
      'wldmk.wlys,pym, wldmk.wlsh,wldmk.dw,pym';
if adoquery1.Active then adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add(strsql);
adoquery1.Open;
end;
procedure Tfrmwlzxqtj.FormCreate(Sender: TObject);
begin
adoquery1.Connection:=dm1.ADOConnection1;
dtp1.Date:=date-30;
dtp2.date:=date;
csh;

end;

procedure Tfrmwlzxqtj.dtp1Exit(Sender: TObject);
begin
csh;
end;

procedure Tfrmwlzxqtj.dtp2Exit(Sender: TObject);
begin
csh;
end;

procedure Tfrmwlzxqtj.RzBitBtn3Click(Sender: TObject);
begin
form3.frDBDataSet1.dataset:=adoquery1;
form3.frReport1.DoublePass := True;
form3.frReport1.Clear;
form3.frReport1.LoadFromFile(strpath+'/report/wlxqtj.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 Tfrmwlzxqtj.RzBitBtn1Click(Sender: TObject);
begin
frmcx:=tfrmcx.Create(self);
frmcx.adocx:=adoquery1;
frmcx.ShowModal;
adoquery1:=frmcx.adocx;
ADOquery1.Requery();
end;
procedure Tfrmwlzxqtj.RzBitBtn2Click(Sender: TObject);
begin
form3.frDBDataSet1.dataset:=adoquery1;
form3.frReport1.DoublePass := True;
form3.frReport1.Clear;
form3.frReport1.LoadFromFile(strpath+'/report/wlxqtj.frf');
frVariables['username']:=username;
frVariables['rq1']:=datetostr(dtp1.Date);
frVariables['rq2']:=datetostr(dtp2.Date);
form3.frReport1.DesignReport;
end;

procedure Tfrmwlzxqtj.DBGrid1DrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn;
  State: TGridDrawState);
begin
if adoquery1.FieldByName('需求量').value>adoquery1.FieldByName('用库存量').value+
adoquery1.FieldByName('计划采购量').value then begin
dbgrid1.Canvas.Brush.Color:=clYellow;
dbgrid1.DefaultDrawColumnCell(rect,datacol,column,[gdfixed,gdfocused,gdselected]);
end;
end;

procedure Tfrmwlzxqtj.Edit1Change(Sender: TObject);
begin
if trim(edit1.Text)='' then
    begin
    exit;
    end;
strsql:='SELECT cgwl.wldm AS 物料代码,pym as 助记码, wldmk.wlmc AS 物料名称,'+
     'wldmk.wlys AS 颜色, wldmk.wlsh AS 色号, wldmk.dw AS 单位,pym,'+
      'SUM(cgwl.xql) AS 需求量,SUM(cgwl.ykcl) AS 用库存量, '+
      'SUM(cgwl.jhcgl) as 计划采购量 FROM cgwl_mail,cgwl,wldmk where'+
      ' cgwl.wldm=wldmk.wldm and cgwl.cgxqdh=cgwl_mail.cgxqdh and '+
      'cgwl_mail.srrq>='+''''+DATETOSTR(DTP1.Date)+''''+' and cgwl_mail.srrq<='+''''+DATETOSTR(DTP2.Date)+''''+
      ' AND pym like '+''''+trim(edit1.Text)+'%'+''''+' group BY cgwl.wldm, wldmk.wlmc, '+
      'wldmk.wlys,pym, wldmk.wlsh,wldmk.dw,pym';
adoexect(adoquery1,strsql);
if adoquery1.Recordset.EOF and adoquery1.Recordset.BOF then
   begin
   strsql:='SELECT cgwl.wldm AS 物料代码,pym as 助记码, wldmk.wlmc AS 物料名称,'+
     'wldmk.wlys AS 颜色, wldmk.wlsh AS 色号, wldmk.dw AS 单位,pym,'+
      'SUM(cgwl.xql) AS 需求量,SUM(cgwl.ykcl) AS 用库存量, '+
      'SUM(cgwl.jhcgl) as 计划采购量 FROM cgwl_mail,cgwl,wldmk where'+
      ' cgwl.wldm=wldmk.wldm and cgwl.cgxqdh=cgwl_mail.cgxqdh and '+
      'cgwl_mail.srrq>='+''''+DATETOSTR(DTP1.Date)+''''+' and cgwl_mail.srrq<='+''''+DATETOSTR(DTP2.Date)+''''+
      ' AND wlmc like '+''''+'%'+trim(edit1.Text)+'%'+''''+' group BY cgwl.wldm, wldmk.wlmc, '+
      'wldmk.wlys,pym, wldmk.wlsh,wldmk.dw,pym';
   adoexect(adoquery1,strsql);
   end;
end;

procedure Tfrmwlzxqtj.DBGrid1TitleClick(Column: TColumn);
begin
dgridpx(adoquery1,DBGrid1,Column);
end;

end.






⌨️ 快捷键说明

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