📄 ufrmsupplier_info.pas
字号:
unit ufrmsupplier_info;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, RzButton, ComCtrls, ExtCtrls, RzPanel, RzSplit, Grids, DBGrids,
DBCtrls, DB, ADODB, StdCtrls, Mask, RzCmboBx, RzDBCmbo,
Buttons, FR_DSet, FR_DBSet, FR_Class;
type
Tfrmsupplier_info = class(TForm)
RzSizePanel1: TRzSizePanel;
Panel1: TPanel;
Panel2: TPanel;
Panel3: TPanel;
TreeView1: TTreeView;
RzBitBtn1: TRzBitBtn;
RzBitBtn2: TRzBitBtn;
RzBitBtn3: TRzBitBtn;
RzBitBtn4: TRzBitBtn;
RzBitBtn6: TRzBitBtn;
RzBitBtn5: TRzBitBtn;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
DBGrid1: TDBGrid;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
ADOQuery3: TADOQuery;
DataSource1: TDataSource;
DBNavigator1: TDBNavigator;
GroupBox1: TGroupBox;
Label1: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label8: TLabel;
Label11: TLabel;
Label12: TLabel;
DBEdit1: TDBEdit;
DBEdit3: TDBEdit;
DBEdit5: TDBEdit;
DBEdit7: TDBEdit;
DBEdit10: TDBEdit;
DBEdit11: TDBEdit;
DBEdit13: TDBEdit;
Label14: TLabel;
DBMemo1: TDBMemo;
Label15: TLabel;
DBEdit2: TDBEdit;
DBEdit4: TDBEdit;
RzBitBtn7: TRzBitBtn;
RzBitBtn8: TRzBitBtn;
Label17: TLabel;
DBEdit9: TDBEdit;
Label20: TLabel;
Label21: TLabel;
RzDBLookupComboBox2: TRzDBLookupComboBox;
Label22: TLabel;
RzDBLookupComboBox6: TRzDBLookupComboBox;
DBEdit6: TDBEdit;
RzMenuToolbarButton1: TRzToolbarButton;
ADOStoredProc1: TADOStoredProc;
Label2: TLabel;
DBEdit8: TDBEdit;
Label7: TLabel;
Label9: TLabel;
Label10: TLabel;
DBEdit12: TDBEdit;
DBEdit14: TDBEdit;
DBCheckBox1: TDBCheckBox;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure RzBitBtn1Click(Sender: TObject);
procedure RzBitBtn2Click(Sender: TObject);
procedure RzBitBtn7Click(Sender: TObject);
procedure PageControl1Change(Sender: TObject);
procedure RzBitBtn5Click(Sender: TObject);
procedure RzBitBtn8Click(Sender: TObject);
procedure TreeView1Change(Sender: TObject; Node: TTreeNode);
procedure RzBitBtn6Click(Sender: TObject);
procedure RzBitBtn3Click(Sender: TObject);
procedure RzBitBtn4Click(Sender: TObject);
procedure RzMenuToolbarButton1Click(Sender: TObject);
procedure DBEdit6Enter(Sender: TObject);
procedure DBEdit6Exit(Sender: TObject);
procedure DBGrid1TitleClick(Column: TColumn);
private
{ Private declarations }
strsql:string;
addedit:boolean;
id:string;
public
{ Public declarations }
end;
var
frmsupplier_info: Tfrmsupplier_info;
implementation
uses uconst,udm1,Unit_treepublic,ufunction, ucx,uarea,unit3;
{$R *.dfm}
procedure Tfrmsupplier_info.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
action:=cafree;
end;
procedure Tfrmsupplier_info.FormCreate(Sender: TObject);
begin
addedit:=false;
adoquery2.Connection:=DM1.ADOConnection1;
adostoredproc1.Connection:=dm1.ADOConnection1;
maketree(adoquery2,'area_class',treeview1,'供应商类别列表');
strsql:='select gysdm as 供应商代码,gysmc as 名称,fr as 地区,lxr as 联系人,'+
'cz as 传真,dh as 电话,wz as 网站,email,dz as 地址,djr as 操作,'+
'sfbg as 是否报关,bgwl as 报关物类,sldw as 单位,srrq as 日期,node as 备注,'+
'bb as 币别,fkfs as 付款方式,jianch as 简称 from gysdmk'+
' order by gysdm asc';
adoexect(adoquery1,strsql);
end;
procedure Tfrmsupplier_info.RzBitBtn1Click(Sender: TObject);
var
id:string;
begin
if not qxjc(userid,'jbzl_add') then exit;
addedit:=true;
RzBitBtn1.Enabled:=false;
RzBitBtn2.Enabled:=false;
RzBitBtn6.Enabled:=false;
RzBitBtn7.Enabled:=true;
PageControl1.ActivePageIndex:=1;
strsql:='select * from gysdmk order by gysdm asc';
adoexect(adoquery3,strsql);
adoquery1.Append;
dbedit2.Text:=userid;
dbedit4.Text:=datetostr(date);
dbedit1.SetFocus;
end;
procedure Tfrmsupplier_info.RzBitBtn2Click(Sender: TObject);
begin
if not qxjc(userid,'jbzl_edit') then exit;
if (adoquery1.Recordset.EOF) and (adoquery1.Recordset.BOF) then begin
messagebox(handle,'没有选择要修改的记录!','警告',mb_ok+mb_iconwarning);
exit;
end;
id:=trim(dbedit1.Text);
addedit:=true;
RzBitBtn1.Enabled:=false;
RzBitBtn2.Enabled:=false;
RzBitBtn6.Enabled:=false;
RzBitBtn7.Enabled:=true;
adoquery1.Edit;
dbedit2.Text:=userid;
dbedit4.Text:=datetostr(date);
PageControl1.ActivePageIndex:=1;
end;
procedure Tfrmsupplier_info.RzBitBtn7Click(Sender: TObject);
begin
if DBCheckBox1.Checked and ((dbedit12.text='') or (dbedit14.Text='')) then
begin
showmessage('如果该供应商需要报关,'+#10#13+'请填写完全资料');
dbedit12.SetFocus;
exit;
end;
if savedata(adoquery1,'gysdmk',trim(dbedit1.Text),id,'gysdm') then begin
if adoquery1.State in[dsedit] then
begin
strsql:='exec p_update_gysdm '+''''+id+''''+','+''''+trim(dbedit1.Text)+'''';
adodel(adoquery3,strsql);
adoquery3.Close;
end;
adoquery1.Post;
messagebox(handle,'操作成功!','信息',mb_ok+mb_iconinformation);
RzBitBtn1.Enabled:=true;
RzBitBtn2.Enabled:=true;
RzBitBtn6.Enabled:=true;
RzBitBtn7.Enabled:=false;
addedit:=false;
PageControl1.ActivePageIndex:=0;
end;
end;
procedure Tfrmsupplier_info.PageControl1Change(Sender: TObject);
begin
if addedit then
PageControl1.ActivePageIndex:=1
else
PageControl1.ActivePageIndex:=0;
end;
procedure Tfrmsupplier_info.RzBitBtn5Click(Sender: TObject);
begin
close;
end;
procedure Tfrmsupplier_info.RzBitBtn8Click(Sender: TObject);
begin
addedit:=false;
adoquery1.CancelUpdates;
RzBitBtn1.Enabled:=true;
RzBitBtn2.Enabled:=true;
RzBitBtn6.Enabled:=true;
RzBitBtn7.Enabled:=false;
PageControl1.ActivePageIndex:=0;
end;
procedure Tfrmsupplier_info.TreeView1Change(Sender: TObject;
Node: TTreeNode);
var
lbmc:string;
begin
lbmc:=trim(treeview1.Selected.Text);
strsql:='select gysdm as 供应商代码,gysmc as 名称,fr as 地区,lxr as 联系人,'+
'cz as 传真,dh as 电话,wz as 网站,email,dz as 地址,djr as 操作,'+
'srrq as 日期,node as 备注,bb as 币别,fkfs as 付款方式,jianch as 简称,'+
'sfbg as 是否报关,bgwl as 报关物类,sldw as 单位 from gysdmk'+
' where fr=' + ''''+ lbmc + '''' +' order by gysdm asc';
if node.level=0 then begin
strsql:='select gysdm as 供应商代码,gysmc as 名称,fr as 地区,lxr as 联系人,'+
'cz as 传真,dh as 电话,wz as 网站,email,dz as 地址,djr as 操作,'+
'srrq as 日期,node as 备注,bb as 币别,fkfs as 付款方式,jianch as 简称,'+
'sfbg as 是否报关,bgwl as 报关物类,sldw as 单位 from gysdmk'+
' order by gysdm asc';
end;
adoexect(adoquery1,strsql);
end;
procedure Tfrmsupplier_info.RzBitBtn6Click(Sender: TObject);
var
a:integer;
begin
if not qxjc(userid,'jbzl_del') then exit;
ADOStoredProc1.close;
adostoredproc1.Parameters.Clear;
adostoredproc1.ProcedureName:='p_check_gysdm';
adostoredproc1.Parameters.CreateParameter('@gysdm',ftstring,pdInput,10,1);
ADOStoredProc1.Parameters.ParamByName('@gysdm').Value:=trim(adoquery1.fieldbyname('供应商代码').AsString);
adostoredproc1.Parameters.CreateParameter('@isok',ftinteger,pdoutput,1,1);
ADOStoredProc1.prepared:=true;
ADOStoredProc1.ExecProc;
a:=ADOStoredProc1.Parameters.ParamValues['@isok'];
if a=1 then
begin
showmessage('对不起!该供应商已经使用了,不能删除');
exit;
end;
if messagebox(handle,'是否真的要删除该条记录?','询问',mb_yesno+mb_iconquestion)=idno then exit;
if (adoquery1.Recordset.EOF) and (adoquery1.Recordset.BOF) then begin
messagebox(handle,'没有选择要删除的记录!','警告',mb_ok+mb_iconwarning);
exit;
end;
adoquery1.Delete;
adoquery1.Requery();
end;
procedure Tfrmsupplier_info.RzBitBtn3Click(Sender: TObject);
begin
form3.frDBDataSet1.dataset:=adoquery1;
form3.frReport1.DoublePass := True;
form3.frReport1.Clear;
form3.frReport1.LoadFromFile(strpath+'/report/gysda.frf');
frVariables['username']:=username;
form3.frReport1.Preview := Form3.frPreview1;
if form3.frReport1.PrepareReport then
begin
form3.frReport1.ShowPreparedReport;
end;
form3.ShowModal;
end;
procedure Tfrmsupplier_info.RzBitBtn4Click(Sender: TObject);
begin
frmcx:=tfrmcx.Create(self);
frmcx.adocx:=adoquery1;
frmcx.ShowModal;
adoquery1:=frmcx.adocx;
ADOquery1.Requery();
dbgrid1.Refresh;
end;
procedure Tfrmsupplier_info.RzMenuToolbarButton1Click(Sender: TObject);
begin
lbname:='';
frmarea:=tfrmarea.Create(self);
frmarea.ShowModal ;
dbedit6.Text:=lbname;
end;
procedure Tfrmsupplier_info.DBEdit6Enter(Sender: TObject);
begin
RzMenuToolbarButton1.Visible:=true;
end;
procedure Tfrmsupplier_info.DBEdit6Exit(Sender: TObject);
begin
RzMenuToolbarButton1.Visible:=false;
end;
procedure Tfrmsupplier_info.DBGrid1TitleClick(Column: TColumn);
begin
dgridpx(adoquery1,DBGrid1,Column);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -