📄 basemodule_func.pas
字号:
unit BaseModule_Func;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, BaseInfoBase, wwDialog, wwidlg, DB, ADODB, ActnList, ComCtrls,
ToolWin, ExtCtrls, Grids, DBGridEh, Menus;
type
TfrmBaseModule_Func = class(TfrmBaseInfoBase)
DBGridEh1: TDBGridEh;
DBGridEh2: TDBGridEh;
Splitter1: TSplitter;
QBaseInfofID: TIntegerField;
QBaseInfofName: TWideStringField;
qry_tfunction: TADOQuery;
ds_tfunction: TDataSource;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
PopupMenu1: TPopupMenu;
m1: TMenuItem;
qry_tfunctionfID: TIntegerField;
qry_tfunctionfModuleID: TIntegerField;
qry_tfunctionfActionName: TWideStringField;
qry_tfunctionfName: TWideStringField;
qry_tfunctionfRun: TBooleanField;
qry_tfunctionfInsert: TBooleanField;
qry_tfunctionfEdit: TBooleanField;
qry_tfunctionfDelete: TBooleanField;
qry_tfunctionfPrint: TBooleanField;
qry_tfunctionfConfirm: TBooleanField;
qry_tfunctionfCancel: TBooleanField;
qry_tfunctionfFind: TBooleanField;
qry_tfunctionfFilter: TBooleanField;
qry_tfunctionfExport: TBooleanField;
procedure acExitExecute(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure acModifyExecute(Sender: TObject);
procedure acSaveExecute(Sender: TObject);
procedure qry_tfunctionAfterPost(DataSet: TDataSet);
procedure ds_tfunctionStateChange(Sender: TObject);
procedure dsBaseInfoDataChange(Sender: TObject; Field: TField);
procedure acDeleteExecute(Sender: TObject);
procedure m1Click(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure acNewExecute(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure dsBaseInfoStateChange(Sender: TObject);
procedure ds_tfunctionDataChange(Sender: TObject; Field: TField);
procedure acFirstExecute(Sender: TObject);
procedure acPriorExecute(Sender: TObject);
procedure acNextExecute(Sender: TObject);
procedure acLastExecute(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmBaseModule_Func: TfrmBaseModule_Func;
implementation
{$R *.dfm}
procedure TfrmBaseModule_Func.acExitExecute(Sender: TObject);
var
i:Integer;
begin
//self.QBaseInfo.UpdateBatch();
//self.qry_tfunction.UpdateBatch();
if self.qry_tfunction.State in [dsEdit,dsInsert] then
self.qry_tfunction.Post;
Self.ADOQuery2.Close;
self.ADOQuery2.Open;
self.ADOQuery2.First;
//ShowMessage(self.ADOQuery2.Fields[4].FieldName);
//exit;
while not self.ADOQuery2.Eof do
begin
for i:=4 to self.ADOQuery2.Fields.Count-1 do
begin
if self.ADOQuery2.Fields[i].AsBoolean=True then
begin
end
else
begin
self.ADOQuery1.Close;
self.ADOQuery1.Parameters.ParamValues['cfFunctionID']:=self.ADOQuery2.FieldValues['fID'];
self.ADOQuery1.Prepared:=True;
self.ADOQuery1.Open;
self.ADOQuery1.First;
while not self.ADOQuery1.Eof do
begin
self.ADOQuery1.Edit;
Self.ADOQuery1.FieldByName(Trim(Self.ADOQuery2.Fields[i].FieldName)).AsBoolean:=False;
//self.ADOQuery1.Post;
self.ADOQuery1.Next;
end;
//self.ADOQuery1.UpdateBatch();
end;
end;
//self.ADOQuery1.UpdateBatch();
self.ADOQuery2.Next;
end;
//self.ADOQuery1.UpdateBatch();
inherited;
end;
procedure TfrmBaseModule_Func.FormCreate(Sender: TObject);
begin
inherited;
self.qry_tfunction.Close;
self.qry_tfunction.Open;
end;
procedure TfrmBaseModule_Func.acModifyExecute(Sender: TObject);
begin
//self.qry_tfunction.Edit;
//self.qry_tfunction.UpdateBatch();
//inherited;
//self.ds_tfunction.AutoEdit:=True;
//self.qry_tfunction.Edit;
self.qry_tfunction.Edit;
self.DBGridEh2.SetFocus;
end;
procedure TfrmBaseModule_Func.acSaveExecute(Sender: TObject);
begin
//self.QBaseInfo.UpdateBatch();
//if self.QBaseInfo.State in [dsEdit,dsInsert] then
QBaseInfo.Edit;
QBaseInfo.Post;
QBaseInfo.Edit;
inherited;
//self.qry_tfunction.UpdateBatch();
//self.ds_tfunction.AutoEdit:=False;
end;
procedure TfrmBaseModule_Func.qry_tfunctionAfterPost(DataSet: TDataSet);
begin
inherited;
//ShowMessage('jin');
end;
procedure TfrmBaseModule_Func.ds_tfunctionStateChange(Sender: TObject);
begin
inherited;
//self.tbtModify.Enabled:=self.qry_tfunction.State in [dsBrowse];
//self.tbtSave.Enabled:=self.qry_tfunction.State in [dsInsert,dsEdit];
if self.qry_tfunction.RecNo=1 then
self.tbtFirst.Enabled:=False
else
self.tbtFirst.Enabled:=True;
if self.qry_tfunction.RecNo=self.qry_tfunction.RecordCount then
self.tbtLast.Enabled:=False
else
self.tbtLast.Enabled:=True;
self.tbtPrior.Enabled:=self.tbtFirst.Enabled;
self.tbtNext.Enabled:=self.tbtLast.Enabled;
end;
procedure TfrmBaseModule_Func.dsBaseInfoDataChange(Sender: TObject;
Field: TField);
begin
//if self.qry_tfunction.Active then
//self.qry_tfunction.UpdateBatch();
//inherited;
end;
procedure TfrmBaseModule_Func.acDeleteExecute(Sender: TObject);
begin
//inherited;
{if QBaseInfo.RecordCount > 0 then
if MessageDlg('您确定要删除当前记录吗?', mtWarning, [mbOk, mbCancel], 0) = mrOk then
begin
QBaseInfo.Delete;
end;}
self.qry_tfunction.First;
while not self.qry_tfunction.Eof do
begin
self.qry_tfunction.Edit;
self.qry_tfunction.FieldValues['fRun']:=True;
self.qry_tfunction.FieldValues['fInsert']:=False;
self.qry_tfunction.FieldValues['fEdit']:=False;
self.qry_tfunction.FieldValues['fDelete']:=False;
self.qry_tfunction.FieldValues['fConfirm']:=False;
self.qry_tfunction.FieldValues['fCancel']:=False;
self.qry_tfunction.FieldValues['fFind']:=False;
self.qry_tfunction.FieldValues['fFilter']:=False;
self.qry_tfunction.FieldValues['fPrint']:=False;
self.qry_tfunction.FieldValues['fExport']:=False;
self.qry_tfunction.Post;
self.qry_tfunction.Next;
end;
end;
procedure TfrmBaseModule_Func.m1Click(Sender: TObject);
begin
if self.qry_tfunction.RecordCount > 0 then
if MessageDlg('您确定要删除当前记录吗?', mtWarning, [mbOk, mbCancel], 0) = mrOk then
begin
self.qry_tfunction.Delete;
end;
end;
procedure TfrmBaseModule_Func.FormDestroy(Sender: TObject);
begin
inherited;
frmBaseModule_Func:=nil;
end;
procedure TfrmBaseModule_Func.acNewExecute(Sender: TObject);
begin
//inherited;
//Include(self.DBGridEh2.AllowedOperations,alopUpdateEh);
self.qry_tfunction.First;
while not self.qry_tfunction.Eof do
begin
self.qry_tfunction.Edit;
self.qry_tfunction.FieldValues['fRun']:=True;
self.qry_tfunction.FieldValues['fInsert']:=True;
self.qry_tfunction.FieldValues['fEdit']:=True;
self.qry_tfunction.FieldValues['fDelete']:=True;
self.qry_tfunction.FieldValues['fConfirm']:=True;
self.qry_tfunction.FieldValues['fCancel']:=True;
self.qry_tfunction.FieldValues['fFind']:=True;
self.qry_tfunction.FieldValues['fFilter']:=True;
self.qry_tfunction.FieldValues['fPrint']:=True;
self.qry_tfunction.FieldValues['fExport']:=True;
self.qry_tfunction.Post;
self.qry_tfunction.Next;
end;
end;
procedure TfrmBaseModule_Func.ToolButton3Click(Sender: TObject);
begin
//inherited;
Self.QBaseInfo.Refresh;
self.qry_tfunction.Refresh;
end;
procedure TfrmBaseModule_Func.dsBaseInfoStateChange(Sender: TObject);
begin
//inherited;
end;
procedure TfrmBaseModule_Func.ds_tfunctionDataChange(Sender: TObject;
Field: TField);
begin
inherited;
self.ds_tfunctionStateChange(nil);
end;
procedure TfrmBaseModule_Func.acFirstExecute(Sender: TObject);
begin
//inherited;
self.qry_tfunction.First;
end;
procedure TfrmBaseModule_Func.acPriorExecute(Sender: TObject);
begin
//inherited;
Self.qry_tfunction.Prior;
end;
procedure TfrmBaseModule_Func.acNextExecute(Sender: TObject);
begin
//inherited;
self.qry_tfunction.Next;
end;
procedure TfrmBaseModule_Func.acLastExecute(Sender: TObject);
begin
//inherited;
self.qry_tfunction.Last;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -