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

📄 ugysgywl.pas

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

interface

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

type
  Tfrmgysgywl = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    Panel3: TPanel;
    RzBitBtn1: TRzBitBtn;
    RzBitBtn2: TRzBitBtn;
    RzBitBtn3: TRzBitBtn;
    RzBitBtn4: TRzBitBtn;
    DBNavigator1: TDBNavigator;
    TreeView1: TTreeView;
    ADOQuery1: TADOQuery;
    ADOQuery2: TADOQuery;
    DataSource1: TDataSource;
    RzPageControl1: TRzPageControl;
    TabSheet1: TRzTabSheet;
    TabSheet2: TRzTabSheet;
    ADOQuery3: TADOQuery;
    frReport1: TfrReport;
    GroupBox1: TGroupBox;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    GroupBox2: TGroupBox;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    RzToolbarButton1: TRzToolbarButton;
    Label15: TLabel;
    Label16: TLabel;
    DBEdit7: TDBEdit;
    DBEdit8: TDBEdit;
    DBEdit9: TDBEdit;
    DBEdit10: TDBEdit;
    DBEdit11: TDBEdit;
    DBEdit12: TDBEdit;
    DBEdit13: TDBEdit;
    DBEdit14: TDBEdit;
    DBEdit15: TDBEdit;
    DBEdit16: TDBEdit;
    RzBitBtn8: TRzBitBtn;
    RzBitBtn9: TRzBitBtn;
    RzBitBtn5: TRzBitBtn;
    RzBitBtn6: TRzBitBtn;
    RzBitBtn7: TRzBitBtn;
    RzToolbarButton2: TRzToolbarButton;
    Label1: TLabel;
    ADOQuery4: TADOQuery;
    DBGrid3: TDBGrid;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure RzBitBtn4Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure TreeView1Change(Sender: TObject; Node: TTreeNode);
    procedure DBGridEh1DblClick(Sender: TObject);
    procedure RzBitBtn3Click(Sender: TObject);
    procedure RzBitBtn2Click(Sender: TObject);
    procedure RzBitBtn5Click(Sender: TObject);
    procedure RzBitBtn6Click(Sender: TObject);
    procedure RzBitBtn8Click(Sender: TObject);
    procedure RzBitBtn9Click(Sender: TObject);
    procedure RzToolbarButton2Click(Sender: TObject);
    procedure RzToolbarButton1Click(Sender: TObject);
    procedure DBGrid3DblClick(Sender: TObject);
    procedure csh();
    procedure RzBitBtn1Click(Sender: TObject);
    procedure DBEdit8DblClick(Sender: TObject);
    procedure DBEdit9DblClick(Sender: TObject);
    procedure DBEdit11DblClick(Sender: TObject);
    procedure DBEdit10DblClick(Sender: TObject);
    procedure DBEdit12DblClick(Sender: TObject);
    procedure RzBitBtn7Click(Sender: TObject);
  private
    { Private declarations }
    addedit:boolean;
    id:string;
    gysdm:string;
  public
    { Public declarations }
  end;

var
  frmgysgywl: Tfrmgysgywl;

implementation
uses uconst,ufunction,udm1,ucx, Unit3,uwllb,ugyslb;
{$R *.dfm}
procedure tfrmgysgywl.csh();
begin
if adoquery4.Recordset.eof and adoquery4.Recordset.BOF then exit;
edit1.Text:=adoquery4.fieldbyname('wldm').AsString;
edit2.Text:=adoquery4.fieldbyname('wlmc').AsString;
edit3.Text:=adoquery4.fieldbyname('wlys').AsString;
edit4.Text:=adoquery4.fieldbyname('wlsh').AsString;
edit5.Text:=adoquery4.fieldbyname('cgdw').AsString;
edit6.Text:=adoquery4.fieldbyname('dj').AsString;
end;
procedure Tfrmgysgywl.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:=cafree;
end;

procedure Tfrmgysgywl.RzBitBtn4Click(Sender: TObject);
begin
close;
end;

procedure Tfrmgysgywl.FormCreate(Sender: TObject);
var
node:ttreenode;
node1:ttreenode;
begin
adoquery1.Connection:=dm1.ADOConnection1;
adoquery2.Connection:=dm1.ADOConnection1;
adoquery3.Connection:=dm1.ADOConnection1;
strsql:='select distinct fr from gysdmk order by fr asc';
adoexect(adoquery2,strsql);
if not(adoquery2.Recordset.eof and adoquery2.Recordset.BOF) then
   begin
   adoquery2.First;
   treeview1.Items.Clear;
   Node := TreeView1.Items.AddChild(nil, '供应商列表');
   while not adoquery2.Eof do
     begin
         Node1 := TreeView1.Items.AddChild(node, adoquery2.FieldByName('fr').AsString);
         strsql:='select jianch from gysdmk where fr='+''''+trim(adoquery2.fieldbyname('fr').asstring)+'''';
         adoexect(adoquery3,strsql);
         if not(adoquery3.Recordset.eof and adoquery3.Recordset.BOF) then
         begin
         adoquery3.First;
         while not adoquery3.Eof do
              begin
              TreeView1.Items.AddChild(node1, adoquery3.FieldByName('jianch').AsString);
              adoquery3.Next;
              end;
         adoquery2.next;
         end;
     end;
   end;
strsql:='select wldm as 物料代码,wlmc as 名称,wlys as 颜色,wlsh as 色号,cgdw as 单位,dj as 单价'+
' from wldmk order by wldm asc';
adoexect(adoquery4,strsql);
 strsql:='select wldm as 物料代码,wldm_gys as 客物料代码,gysdm as 供应商代码,wlmc as 物料名称,'+
'wlys as 颜色,wlsh as 色号,cgdw as 单位,dj as 单价,djr as 操作,srrq as 日期 from material_gys '+
 'order by wldm asc';
 adoexect(adoquery1,strsql);
end;

procedure Tfrmgysgywl.TreeView1Change(Sender: TObject; Node: TTreeNode);
begin
case node.Level of
   0:
   strsql:='select wldm as 物料代码,wldm_gys as 客物料代码,gysdm as 供应商代码,wlmc as 物料名称,'+
   'wlys as 颜色,wlsh as 色号,cgdw as 单位,dj as 单价,djr as 操作,srrq as 日期 from material_gys '+
   'order by wldm asc';
   1:
   exit;
   2:
   begin
   strsql:='select gysdm from gysdmk where jianch='+''''+trim(node.Text)+'''';
   adoexect(adoquery2,strsql);
   gysdm:=trim(adoquery2.fieldbyname('gysdm').AsString);
   strsql:='select wldm as 物料代码,wldm_gys as 客物料代码,gysdm as 供应商代码,wlmc as 物料名称,'+
   'wlys as 颜色,wlsh as 色号,cgdw as 单位,dj as 单价,djr as 操作,srrq as 日期 from material_gys '+
   'where gysdm='+''''+gysdm+''''+' order by wldm asc';
   end;
end;
adoexect(adoquery1,strsql);
RzPageControl1.ActivePageIndex:=0;
end;

procedure Tfrmgysgywl.DBGridEh1DblClick(Sender: TObject);
begin
RzBitBtn6Click(self);
RzPageControl1.ActivePageIndex:=1;
end;

procedure Tfrmgysgywl.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;
form3.frReport1.Preview := Form3.frPreview1;
if form3.frReport1.PrepareReport then
  begin
    form3.frReport1.ShowPreparedReport;
  end;
form3.ShowModal;
end;

procedure Tfrmgysgywl.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;
form3.frReport1.DesignReport;
end;

procedure Tfrmgysgywl.RzBitBtn5Click(Sender: TObject);
begin
addedit:=true;
adoquery1.Append;
edit1.Text:='';
edit2.Text:='';
edit3.Text:='';
edit4.Text:='';
edit5.Text:='';
edit6.Text:='';
RzBitBtn5.Enabled:=false;
RzBitBtn6.Enabled:=false;
RzBitBtn8.Enabled:=true;
dbedit15.Text:=username;
dbedit16.Text:=datetostr(date);
RzPageControl1.ActivePageIndex:=1;
end;

procedure Tfrmgysgywl.RzBitBtn6Click(Sender: TObject);
begin
if adoquery1.Recordset.eof and adoquery1.Recordset.BOF then exit;
addedit:=false;
adoquery1.edit;
id:=trim(adoquery1.fieldbyname('物料代码').AsString);
strsql:='select * from wldmk where wldm='+''''+id+''''+' order by wldm asc';
adoexect(adoquery4,strsql);
RzBitBtn5.Enabled:=false;
RzBitBtn6.Enabled:=false;
RzBitBtn8.Enabled:=true;
dbedit15.Text:=username;
dbedit16.Text:=datetostr(date);
RzPageControl1.ActivePageIndex:=1;
csh;
end;

procedure Tfrmgysgywl.RzBitBtn8Click(Sender: TObject);
begin
strsql:='select * from material_gys where wldm='+''''+trim(dbedit14.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(dbedit14.Text)) then
   begin
   showmessage('该物料代码在该供应商库已经存在');
   exit;
   end;
adoquery1.post;
RzBitBtn5.Enabled:=true;
RzBitBtn6.Enabled:=true;
RzBitBtn8.Enabled:=false;
RzPageControl1.ActivePageIndex:=0;
end;

procedure Tfrmgysgywl.RzBitBtn9Click(Sender: TObject);
begin
adoquery1.CancelUpdates ;
RzBitBtn5.Enabled:=true;
RzBitBtn6.Enabled:=true;
RzBitBtn8.Enabled:=false;
RzPageControl1.ActivePageIndex:=0;
end;

procedure Tfrmgysgywl.RzToolbarButton2Click(Sender: TObject);
begin
wldm:='';
frmwllb.ShowModal;
dbedit14.Text:=wldm;
if wldm='' then exit;
strsql:='select * from wldmk where wldm='+''''+wldm+''''+' order by wldm asc';
adoexect(adoquery4,strsql);
csh;
end;

procedure Tfrmgysgywl.RzToolbarButton1Click(Sender: TObject);
begin
if adoquery1.State in[dsedit] then exit;
lbname:='';
frmgyslb:=tfrmgyslb.create(self);
frmgyslb.showmodal;
dbedit13.Text:=lbname;
end;

procedure Tfrmgysgywl.DBGrid3DblClick(Sender: TObject);
begin
RzBitBtn6Click(self);
RzPageControl1.ActivePageIndex:=1;
end;

procedure Tfrmgysgywl.RzBitBtn1Click(Sender: TObject);
begin
frmcx:=tfrmcx.Create(self);
frmcx.adocx:=adoquery1;
frmcx.ShowModal;
adoquery1:=frmcx.adocx;
ADOquery1.Requery();
end;

procedure Tfrmgysgywl.DBEdit8DblClick(Sender: TObject);
begin
dbedit8.Text:=edit2.Text;
end;

procedure Tfrmgysgywl.DBEdit9DblClick(Sender: TObject);
begin
dbedit9.Text:=edit3.Text;
end;

procedure Tfrmgysgywl.DBEdit11DblClick(Sender: TObject);
begin
dbedit11.Text:=edit4.Text;
end;

procedure Tfrmgysgywl.DBEdit10DblClick(Sender: TObject);
begin
dbedit10.Text:=edit5.Text;
end;

procedure Tfrmgysgywl.DBEdit12DblClick(Sender: TObject);
begin
dbedit12.Text:=edit6.Text;
end;

procedure Tfrmgysgywl.RzBitBtn7Click(Sender: TObject);
begin
if adoquery1.Recordset.EOF and adoquery1.Recordset.bof then exit;
if messagebox(handle,'是否真的要删除该记录?','询问',mb_yesno+mb_iconquestion)=idyes then
   begin
   adoquery1.Delete;
   end;
end;

end.

⌨️ 快捷键说明

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