📄 syswatch.pas
字号:
unit SysWatch;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Grids, DBGrids, Db, DBTables, ComCtrls, StdCtrls, ExtCtrls, DBCtrls,
CheckLst, ConstDef, FieldDef;
type
TFrmSysWatch = class(TForm)
DataSourceCust: TDataSource;
TabCust: TTable;
Session1: TSession;
GrpBoxCust: TGroupBox;
DBGridCust: TDBGrid;
DBNavSysW: TDBNavigator;
BtnCancel: TButton;
GroupBoxTable: TGroupBox;
ListBoxSrvTableName: TListBox;
procedure TabCustBeforeOpen(DataSet: TDataSet);
procedure TabCustAfterClose(DataSet: TDataSet);
procedure BtnCancelClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ListBoxSrvTableNameClick(Sender: TObject);
procedure DBNavSysWClick(Sender: TObject; Button: TNavigateBtn);
procedure TabCustBeforePost(DataSet: TDataSet);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FrmSysWatch: TFrmSysWatch;
implementation
{$R *.DFM}
procedure TFrmSysWatch.BtnCancelClick(Sender: TObject);
begin
ModalResult:=mrCancel;
end;
procedure TFrmSysWatch.FormShow(Sender: TObject);
begin
Session.GetTableNames(DefSrvAlias,'*.db',False,
False,ListBoxSrvTableName.Items);
DBGridCust.ReadOnly:=True;
end;
procedure TFrmSysWatch.ListBoxSrvTableNameClick(Sender: TObject);
begin
if ListBoxSrvTableName.Items.Count<1 then begin
wFunShowError('系统数据库中没有数据表',[mbOK]); Exit;
end;
try
with ListBoxSrvTableName do begin
TabCust.Active:=False;
TabCust.DatabaseName:=DefSrvAlias;
TabCust.TableName:=Items.Strings[ItemIndex];
TabCust.Active:=True;
end;
except
wFunShowError('系统数据表打开失败!',[mbOK]);
end;
end;
procedure TFrmSysWatch.TabCustBeforeOpen(DataSet: TDataSet);
begin
if TabCust.TableName = 'Buy' then
Session.AddPassword(Psw_Buy)
else if TabCust.TableName = 'Cust' then
Session.AddPassword(Psw_Cust)
else if TabCust.TableName = 'EMeterInfo' then
Session.AddPassword(Psw_EMeterInfo)
else if TabCust.TableName = 'EMKind' then
Session.AddPassword(Psw_EMKind)
else if TabCust.TableName = 'EPKind' then
Session.AddPassword(Psw_EPKind)
else if TabCust.TableName = 'Log' then
Session.AddPassword(Psw_Log)
else if TabCust.TableName = 'SoftInfo' then
Session.AddPassword(Psw_SoftInfo);
end;
procedure TFrmSysWatch.TabCustAfterClose(DataSet: TDataSet);
begin
if TabCust.TableName = 'Buy' then
Session.RemovePassword(Psw_Buy)
else if TabCust.TableName = 'Cust' then
Session.RemovePassword(Psw_Cust)
else if TabCust.TableName = 'EMeterInfo' then
Session.RemovePassword(Psw_EMeterInfo)
else if TabCust.TableName = 'EMKind' then
Session.RemovePassword(Psw_EMKind)
else if TabCust.TableName = 'EPKind' then
Session.RemovePassword(Psw_EPKind)
else if TabCust.TableName = 'Log' then
Session.RemovePassword(Psw_Log)
else if TabCust.TableName = 'SoftInfo' then
Session.RemovePassword(Psw_SoftInfo);
end;
procedure TFrmSysWatch.DBNavSysWClick(Sender: TObject;
Button: TNavigateBtn);
begin
if (Button=nbEdit) or (Button=nbInsert)
then DBGridCust.ReadOnly:=False;
end;
procedure TFrmSysWatch.TabCustBeforePost(DataSet: TDataSet);
begin
if wFunShowASK('确定要修改此项记录吗?',[mbYes]+[mbNo])<>mrYes
then begin
DBNavSysW.BtnClick(nbCancel); Abort;
end;
DBGridCust.ReadOnly:=True;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -