📄 utype.pas
字号:
unit uType;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, XPMenu, StdCtrls, Grids, DBGrids, DB, ADODB, DBCtrls, Mask,DBGridEh,
Buttons, ExtCtrls;
type
TfrmType = class(Tform)
dsadmin: TDataSource;
aqAdmin: TADOQuery;
aqAdminuid: TWideStringField;
aqAdminpwd: TWideStringField;
Panel1: TPanel;
dgAdmin: TDBGridEh;
Panel2: TPanel;
lbluid: TLabel;
lblpwd: TLabel;
deBh: TDBEdit;
deName: TDBEdit;
btnAdd: TBitBtn;
btnEdit: TBitBtn;
btnDel: TBitBtn;
btnClose: TBitBtn;
Panel3: TPanel;
lbladmin: TLabel;
procedure btnEditClick(Sender: TObject);
procedure btnAddClick(Sender: TObject);
procedure btnDelClick(Sender: TObject);
procedure btnCloseClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
{ Private declarations }
procedure SetState(ViewState: Boolean);
public
{ Public declarations }
end;
var
frmType: TfrmType;
implementation
uses uDM, uGlobal;
var
aqCheck: TADOQuery;
{$R *.dfm}
procedure TfrmType.FormCreate(Sender: TObject);
begin
Log.Write('进入办公用品类别模块');
aqCheck := TADOQuery.Create(Self);
SetState(True);
DM.OpenQuery(aqAdmin, 'select * from typeTable');
end;
procedure TfrmType.FormDestroy(Sender: TObject);
begin
aqCheck.Free;
end;
procedure TfrmType.SetState(ViewState: Boolean);
var
sColor: TColor;
begin
deBh.ReadOnly := ViewState;
deName.ReadOnly := ViewState;
dgAdmin.Enabled := ViewState;
btnDel.Visible := ViewState;
if ViewState then
begin
btnEdit.Caption := '编 辑';
btnAdd.Caption := '添 加';
sColor := ViewColor;
end
else
begin
if aqAdmin.State = dsEdit then
btnEdit.Caption := '确 定'
else btnEdit.Caption := '提 交';
btnAdd.Caption := '取 消';
deBh.SetFocus;
sColor := clWindow;
end;
deBh.Color := sColor;
deName.Color := sColor;
end;
procedure TfrmType.btnEditClick(Sender: TObject);
begin
if btnEdit.Caption = '编 辑' then
begin
aqAdmin.Edit;
SetState(False);
end
else
begin
if deBh.Text = '' then
begin
MessageBox(Handle, '请输入类别编号!', '提示', mb_IconInformation + mb_Ok);
deBh.SetFocus;
Abort;
end;
if aqAdmin.State = dsInsert then
begin
DM.OpenQuery(aqCheck, 'select bh from typeTable where bh=' + QuotedStr(deBh.Text));
if not aqCheck.Eof then
begin
MessageBox(Handle, '此类别编号已存在,请另输入!', '提示', mb_IconInformation + mb_Ok);
deBh.SetFocus;
Abort;
end;
end;
try
if aqAdmin.State = dsInsert then
Log.Write('添加办公用品类别' + aqAdmin.FieldByName('name').AsString)
else
Log.Write('更新办公用品类别' + aqAdmin.FieldByName('name').AsString);
aqAdmin.UpdateBatch();
SetState(True);
except
MessageBox(Handle, '办公用品类别更新失败!', '提示', mb_IconInformation + mb_Ok);
end;
end;
end;
procedure TfrmType.btnAddClick(Sender: TObject);
begin
if btnAdd.Caption = '添 加' then
begin
aqadmin.Append;
SetState(False);
end
else
begin
aqAdmin.CancelBatch();
SetState(True);
end;
end;
procedure TfrmType.btnDelClick(Sender: TObject);
begin
DM.OpenQuery(aqCheck, 'select count(id) as acount from typeTable');
if aqCheck.FieldByName('acount').AsInteger >= 1 then
begin
if MessageBox(handle, '真的要删除此办公用品类别吗?', '提示', mb_IconQuestion + mb_OkCancel) = idOk then
begin
Log.Write('删除办公用品类别' + aqAdmin.FieldByName('name').AsString);
aqAdmin.Delete;
aqAdmin.UpdateBatch();
end;
end;
end;
procedure TfrmType.btnCloseClick(Sender: TObject);
begin
Close();
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -