⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 umaterial_gys.pas

📁 工廠採購管理系統
💻 PAS
字号:
unit Umaterial_gys;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, RzButton, ExtCtrls, RzPanel, RzSplit, ComCtrls, Grids, DBGrids,
  RzTabs, DB, ADODB, StdCtrls, Mask, DBCtrls, Buttons;

type
  Tfrmmaterial_gys = class(TForm)
    RzSizePanel1: TRzSizePanel;
    Panel1: TPanel;
    Panel2: TPanel;
    RzBitBtn1: TRzBitBtn;
    RzBitBtn2: TRzBitBtn;
    RzBitBtn4: TRzBitBtn;
    RzBitBtn5: TRzBitBtn;
    RzBitBtn6: TRzBitBtn;
    RzBitBtn7: TRzBitBtn;
    TreeView1: TTreeView;
    ADOQuery1: TADOQuery;
    ADOQuery2: TADOQuery;
    ADOQuery3: TADOQuery;
    RzPageControl1: TRzPageControl;
    TabSheet1: TRzTabSheet;
    TabSheet2: TRzTabSheet;
    TabSheet3: TRzTabSheet;
    TabSheet4: TRzTabSheet;
    DBGrid1: TDBGrid;
    DBGrid2: TDBGrid;
    DBGrid3: TDBGrid;
    GroupBox1: TGroupBox;
    ADOQuery4: TADOQuery;
    Label1: TLabel;
    RzBitBtn3: TRzBitBtn;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    GroupBox2: TGroupBox;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    DBEdit1: TDBEdit;
    DBEdit2: TDBEdit;
    DBEdit3: TDBEdit;
    DBEdit4: TDBEdit;
    DBEdit5: TDBEdit;
    DBEdit6: TDBEdit;
    DBEdit7: TDBEdit;
    DBEdit8: TDBEdit;
    DBEdit9: TDBEdit;
    DBEdit10: TDBEdit;
    DBEdit11: TDBEdit;
    DBEdit12: TDBEdit;
    RzBitBtn8: TRzBitBtn;
    RzBitBtn9: TRzBitBtn;
    DataSource1: TDataSource;
    DataSource2: TDataSource;
    DataSource3: TDataSource;
    Label13: TLabel;
    DBEdit13: TDBEdit;
    RzToolbarButton1: TRzToolbarButton;
    DBEdit14: TDBEdit;
    Label14: TLabel;
    Label15: TLabel;
    DBEdit15: TDBEdit;
    DBEdit16: TDBEdit;
    procedure FormCreate(Sender: TObject);
    procedure TabSheet2Enter(Sender: TObject);
    procedure TabSheet3Enter(Sender: TObject);
    procedure TabSheet4Enter(Sender: TObject);
    procedure DBGrid3DblClick(Sender: TObject);
    procedure RzBitBtn1Click(Sender: TObject);
    procedure RzBitBtn2Click(Sender: TObject);
    procedure RzBitBtn7Click(Sender: TObject);
    procedure RzBitBtn6Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure RzBitBtn5Click(Sender: TObject);
    procedure TreeView1Change(Sender: TObject; Node: TTreeNode);
    procedure RzBitBtn9Click(Sender: TObject);
    procedure RzBitBtn8Click(Sender: TObject);
    procedure RzToolbarButton1Click(Sender: TObject);
    procedure RzPageControl1Change(Sender: TObject);
    procedure DBEdit12KeyPress(Sender: TObject; var Key: Char);
    procedure DBEdit8DblClick(Sender: TObject);
    procedure DBEdit9DblClick(Sender: TObject);
    procedure DBEdit11DblClick(Sender: TObject);
    procedure DBEdit6DblClick(Sender: TObject);
    procedure DBGrid1DblClick(Sender: TObject);
    procedure DBGrid2DblClick(Sender: TObject);
  private
    { Private declarations }
    addedit:boolean;
    id:string;
  public
    { Public declarations }
  end;

var
  frmmaterial_gys: Tfrmmaterial_gys;

implementation
 uses uconst,ufunction,unit_treepublic,ucx,ugyslb;
{$R *.dfm}

procedure Tfrmmaterial_gys.FormCreate(Sender: TObject);
begin
adoquery4.ConnectionString:=connectionstring;
maketree(adoquery4,'wllb',treeview1,'物料类别列表');
strsql:='select wldm as 物料代码,wlmc as 名称,cgdw as 采购单位,wlsh as 色号,wlys as 颜色,dj as 单价'+
      ' from wldmk order by pym asc';
adoexect(adoquery1,strsql);
strsql:='select gysdmk.gysdm as 供应商代码,gysmc as 供应商名称,dz as 地址,dh as 电话,cz as 传真,lxr as 联系人 from'+
         ' gysdmk,material_gys where gysdmk.gysdm=material_gys.gysdm';
adoexect(adoquery2,strsql);
strsql:='select wldm as 物料代码,wldm_gys as 客物料代码,wlmc as 物料名称,wlys as 颜色,'+
'wlsh as 色号,cgdw as 单位, gysdm as 供应商代码,dj as 单价, djr as 操作,srrq as 日期'+
' from material_gys where wldm='+''''+'a'+'''';
adoexect(adoquery3,strsql);

end;

procedure Tfrmmaterial_gys.TabSheet2Enter(Sender: TObject);
begin
if adoquery1.Recordset.eof and adoquery1.Recordset.BOF then
   begin
   adoquery2.Close;
   exit;
   end;
strsql:='select gysdmk.gysdm as 供应商代码,gysmc as 供应商名称,dz as 地址,dh as 电话,cz as 传真,lxr as 联系人 from'+
         ' gysdmk,material_gys where gysdmk.gysdm=material_gys.gysdm and '+
         'material_gys.wldm='+''''+trim(adoquery1.fieldbyname('物料代码').AsString)+'''';
adoexect(adoquery2,strsql);

end;

procedure Tfrmmaterial_gys.TabSheet3Enter(Sender: TObject);
begin
if adoquery1.Recordset.eof and adoquery1.Recordset.BOF  then exit;
if not adoquery2.Active then
   begin
   adoquery3.Close;
   exit;
   end;
strsql:='select wldm as 物料代码,wldm_gys as 客物料代码,wlmc as 物料名称,wlys as 颜色,'+
'wlsh as 色号,cgdw as 单位, gysdm as 供应商代码,dj as 单价, djr as 操作,srrq as 日期'+
' from material_gys where wldm='+''''+trim(adoquery1.fieldbyname('物料代码').AsString)+''''+
' and gysdm='+''''+trim(adoquery2.fieldbyname('供应商代码').AsString)+'''';
adoexect(adoquery3,strsql);
end;

procedure Tfrmmaterial_gys.TabSheet4Enter(Sender: TObject);
begin
if not adoquery3.Active then exit;
GroupBox2.Caption:='('+trim(adoquery2.fieldbyname('供应商名称').AsString)+')物料档案';
end;

procedure Tfrmmaterial_gys.DBGrid3DblClick(Sender: TObject);
begin
if not adoquery3.Active  then exit;
if adoquery3.Recordset.EOF and adoquery3.Recordset.bof then exit;
RzBitBtn8.Enabled:=true;
RzBitBtn1.Enabled:=true;
RzBitBtn2.Enabled:=true;
addedit:=false;
id:=trim(dbedit13.Text);
adoquery3.Edit;
dbedit15.Text:=username;
dbedit16.text:=datetostr(date);
dbedit10.Text:=trim(dbedit5.text);
RzPageControl1.ActivePageIndex:=3;
end;

procedure Tfrmmaterial_gys.RzBitBtn1Click(Sender: TObject);
begin
if adoquery1.Recordset.EOF and adoquery1.Recordset.BOF then exit;
addedit:=true;
RzPageControl1.ActivePageIndex:=3;
adoquery3.Append;
dbedit15.Text:=username;
dbedit16.text:=datetostr(date);
dbedit10.Text:=trim(dbedit5.text);
dbedit14.Text:=adoquery1.fieldbyname('物料代码').AsString;
RzBitBtn8.Enabled:=true;
RzBitBtn1.Enabled:=false;
RzBitBtn2.Enabled:=false;
end;

procedure Tfrmmaterial_gys.RzBitBtn2Click(Sender: TObject);
begin
if adoquery3.Recordset.eof and adoquery3.Recordset.BOF then exit;
addedit:=false;
adoquery3.Edit;
id:=trim(dbedit13.Text);
dbedit15.Text:=username;
dbedit16.text:=datetostr(date);
dbedit10.Text:=trim(dbedit5.text);
RzBitBtn8.Enabled:=true;
RzBitBtn1.Enabled:=false;
RzBitBtn2.Enabled:=false;
end;

procedure Tfrmmaterial_gys.RzBitBtn7Click(Sender: TObject);
begin
close;
end;

procedure Tfrmmaterial_gys.RzBitBtn6Click(Sender: TObject);
begin
RzPageControl1.ActivePageIndex:=2;
if adoquery3.Recordset.eof and adoquery3.Recordset.BOF then exit;
if messagebox(handle,'是否真的要删除该条记录?','询问',mb_yesno+mb_iconwarning)=idyes then
   begin
   adoquery3.Delete;
   end;

end;

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

procedure Tfrmmaterial_gys.RzBitBtn5Click(Sender: TObject);
begin
frmcx:=tfrmcx.Create(self);
frmcx.adocx:=adoquery1;
frmcx.ShowModal;
adoquery1:=frmcx.adocx;
ADOquery1.Requery();
dbgrid1.Refresh;
end;

procedure Tfrmmaterial_gys.TreeView1Change(Sender: TObject;
  Node: TTreeNode);
begin
case node.Level of
    0:
    strsql:='select wldm as 物料代码,wlmc as 名称,cgdw as 采购单位,wlsh as 色号,wlys as 颜色,dj as 单价'+
    ' from wldmk order by pym asc';
    1:
    strsql:='select wldm as 物料代码,wlmc as 名称,cgdw as 采购单位,wlsh as 色号,wlys as 颜色,dj as 单价'+
      ' from wldmk where bigclass='+''''+trim(node.Text)+''''+' order by pym asc';
    2:
    strsql:='select wldm as 物料代码,wlmc as 名称,cgdw as 采购单位,wlsh as 色号,wlys as 颜色,dj as 单价'+
      ' from wldmk where smallclass='+''''+trim(node.Text)+''''+' order by pym asc';
end;
adoexect(adoquery1,strsql);
end;

procedure Tfrmmaterial_gys.RzBitBtn9Click(Sender: TObject);
begin
adoquery3.CancelUpdates;
RzPageControl1.ActivePageIndex:=0;
RzBitBtn8.Enabled:=false;
RzBitBtn1.Enabled:=true;
RzBitBtn2.Enabled:=true;
end;

procedure Tfrmmaterial_gys.RzBitBtn8Click(Sender: TObject);
begin
strsql:='select * from material_gys where wldm='+''''+trim(dbedit1.Text)+''''+
        ' and gysdm='+''''+trim(dbedit13.text)+'''';
adoexect(adoquery4,strsql);
if addedit and (not(adoquery4.Recordset.EOF and adoquery4.Recordset.BOF)) then
   begin
   showmessage('该物料代码在该供应商库已经存在');
   exit;
   end;
if (not addedit) and (not(adoquery4.Recordset.EOF and adoquery4.Recordset.BOF)) and (id<>trim(dbedit13.Text)) then
   begin
   showmessage('该物料代码在该供应商库已经存在');
   exit;
   end;
adoquery3.Post;
RzPageControl1.ActivePageIndex:=0;
RzBitBtn8.Enabled:=false;
RzBitBtn1.Enabled:=true;
RzBitBtn2.Enabled:=true;
end;

procedure Tfrmmaterial_gys.RzToolbarButton1Click(Sender: TObject);
begin
lbname:='';
frmgyslb:=tfrmgyslb.create(self);
frmgyslb.showmodal;
dbedit13.Text:=lbname;
end;

procedure Tfrmmaterial_gys.RzPageControl1Change(Sender: TObject);
begin
if (adoquery3.State in[dsinsert]) or (adoquery3.State in[dsedit]) then
RzPageControl1.ActivePageIndex:=3;
end;

procedure Tfrmmaterial_gys.DBEdit12KeyPress(Sender: TObject;
  var Key: Char);
begin
  if not (key in['0'..'9',#8,#46] ) then
    key:=#0;
end;

procedure Tfrmmaterial_gys.DBEdit8DblClick(Sender: TObject);
begin
dbedit8.Text:=dbedit2.Text;
end;

procedure Tfrmmaterial_gys.DBEdit9DblClick(Sender: TObject);
begin
dbedit9.Text:=dbedit3.Text;
end;

procedure Tfrmmaterial_gys.DBEdit11DblClick(Sender: TObject);
begin
dbedit11.Text:=dbedit4.Text;
end;

procedure Tfrmmaterial_gys.DBEdit6DblClick(Sender: TObject);
begin
dbedit12.Text:=dbedit6.Text;
end;

procedure Tfrmmaterial_gys.DBGrid1DblClick(Sender: TObject);
begin
if adoquery1.Recordset.EOF and adoquery1.Recordset.BOF then exit;
RzPageControl1.ActivePageIndex:=1;
end;

procedure Tfrmmaterial_gys.DBGrid2DblClick(Sender: TObject);
begin
if not adoquery2.Active then exit;
if adoquery2.Recordset.EOF and adoquery2.Recordset.bof then exit;
RzPageControl1.ActivePageIndex:=2;
end;

end.

⌨️ 快捷键说明

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