📄 wzzd.pas
字号:
unit WZZD;
interface
uses
Windows, SysUtils, Variants, Classes, Controls, Forms, Dialogs, DB, Grids,
DBGrids, StdCtrls, ExtCtrls, WZGLCommon, WZZDEDIT, ADODB, ComCtrls;
type
TWZZDForm = class(TForm)
dsWZZD: TDataSource;
adotWZZD: TADOTable;
pnlRight: TPanel;
pnlToolBar: TPanel;
btAdd: TButton;
btDel: TButton;
dbWZZD: TDBGrid;
pnlLeft: TPanel;
tvLb: TTreeView;
pnlWzlb: TPanel;
Splitter: TSplitter;
adoqWzlb: TADOQuery;
procedure btAddClick(Sender: TObject);
procedure btDelClick(Sender: TObject);
procedure tvLbChange(Sender: TObject; Node: TTreeNode);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure dsWZZDDataChange(Sender: TObject; Field: TField);
private
{ Private declarations }
public
{ Public declarations }
constructor Create(AOwner: TComponent); reintroduce;
end;
var
WzzdForm: TWzzdForm;
implementation
{$R *.dfm}
constructor TWZZDForm.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
// 初始化类别Treeview
with adoqWzlb do
begin
Connection := AdoWzgl;
SQL.Text := 'Select * From WZLB Order By ID';
Open;
end;
FillTreeView(tvLb, adoqWzlb, 'ID', 'PID', 'LBMC');
with adotWzzd do
begin
Connection := AdoWzgl;
Open;
end;
end;
procedure TWZZDForm.btAddClick(Sender: TObject);
begin
with TWZZDEDITForm.Create(Self) do
try
ShowModal;
if ModalResult = mrOK then
with adotWzzd, FWZRec do
begin
Append;
FieldByName('BM').AsString := BM;
FieldByName('MC').AsString := MC;
FieldByName('GG').AsString := GG;
FieldByName('DW').AsString := DW;
FieldByName('DJ').AsFloat := DJ;
FieldByName('ID').AsInteger := Integer(tvLb.Selected.Data);
Post;
end;
finally
free;
end;
end;
procedure TWZZDForm.btDelClick(Sender: TObject);
begin
if Application.MessageBox('是否删除?', '确认', 1) = 1 then
//判断当前物资如果被引用,则不能删除
with TAdoQuery.Create(nil) do
try
Connection := AdoWzgl;
Sql.Text := 'Select Bm From RKXX Where BM = ' +
QuotedStr(Trim(adotWzzd.FieldByName('BM').AsString));
Open;
if RecordCount = 0 then
adotWzzd.Delete
else
ShowMessage('当前物资已有入库信息,不能删除!');
finally
Free;
end;
end;
procedure TWZZDForm.tvLbChange(Sender: TObject; Node: TTreeNode);
begin
// 切换节点,刷新物资字典表格
with adotWzzd do
begin
Filtered := False;
Filter := 'ID = ' + IntToStr(Integer(tvLb.Selected.Data));
Filtered := True;
end;
end;
procedure TWZZDForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
WzzdForm := nil;
end;
procedure TWZZDForm.FormDestroy(Sender: TObject);
begin
if adoqWzlb.Active then adoqWzlb.Close;
if adotWzzd.Active then adotWzzd.Close;
end;
procedure TWZZDForm.dsWZZDDataChange(Sender: TObject; Field: TField);
begin
btDel.Enabled := not (adotWzzd.Bof and adotWzzd.Eof);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -