📄 sjdw.pas
字号:
unit Sjdw;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, SUIForm, SUIDlg, ImgList, ActnList, SUIButton,
StdCtrls, Grids, DBGridEh, Mask, DBCtrls, SUIDBCtrls;
type
TFrmSjdw = class(TForm)
suiForm1: TsuiForm;
actlst1: TActionList;
actAdd: TAction;
actEdit: TAction;
actDel: TAction;
actUndo: TAction;
actSave: TAction;
actExit: TAction;
il1: TImageList;
suiMessageDialog1: TsuiMessageDialog;
grp1: TGroupBox;
DBGridEh1: TDBGridEh;
pnl2: TPanel;
Label3: TLabel;
pnl1: TPanel;
suiButton1: TsuiButton;
suiButton2: TsuiButton;
suiButton3: TsuiButton;
suiButton4: TsuiButton;
suiButton5: TsuiButton;
suiButton6: TsuiButton;
suiDBEdit1: TsuiDBEdit;
procedure FormCreate(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure actAddExecute(Sender: TObject);
procedure actEditExecute(Sender: TObject);
procedure actDelExecute(Sender: TObject);
procedure actUndoExecute(Sender: TObject);
procedure actSaveExecute(Sender: TObject);
procedure actExitExecute(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FrmSjdw: TFrmSjdw;
implementation
uses DataModule, PubUnit;
{$R *.dfm}
procedure TFrmSjdw.FormCreate(Sender: TObject);
begin
ChangeInterface(Self,suiForm1);
SetReadOnly(Self, True ,suiForm1.Color);
end;
procedure TFrmSjdw.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
Key := #0 ;
Perform(WM_NEXTDLGCTL,0,0);
end;
end;
procedure TFrmSjdw.actAddExecute(Sender: TObject);
begin
SetReadOnly(Self, False , clWhite);
DataModule1.tbl_Sjdwb.Append ;
suiDBEdit1.SetFocus ;
end;
procedure TFrmSjdw.actEditExecute(Sender: TObject);
begin
SetReadOnly(Self, False , clWhite);
DataModule1.tbl_Sjdwb.Edit ;
suiDBEdit1.SetFocus ;
end;
procedure TFrmSjdw.actDelExecute(Sender: TObject);
var Str : string;
begin
Str := DataModule1.tbl_Sjdwb.fieldByName('省级名称').AsString ;
with suiMessageDialog1 do
begin
Caption := suiForm1.Caption ;
ButtonCount := 2;
Button1Caption := '是';
Button2Caption := '否';
IconType := suiHelp ;
Text := '是否删除【'+Str+'】以及所属的所有销售单位?';
if ShowModal = mrCancel then Exit ;
end;
DataModule1.tbl_Sjdwb.Delete ;
SetReadOnly(Self, True, suiForm1.Color);
end;
procedure TFrmSjdw.actUndoExecute(Sender: TObject);
begin
DataModule1.tbl_Sjdwb.Cancel ;
SetReadOnly(Self, True, suiForm1.Color);
end;
procedure TFrmSjdw.actSaveExecute(Sender: TObject);
begin
with DataModule1 do
begin
tbl_Sjdwb.Next ;
if tbl_Sjdwb.UpdatesPending then
begin
try
db1.StartTransaction ;
tbl_Sjdwb.ApplyUpdates;
tbl_Sjdwb.CommitUpdates;
db1.Commit ;
SetReadOnly(Self, True, suiForm1.Color);
except
on E : Exception do
begin
with suiMessageDialog1 do
begin
Caption := suiForm1.Caption ;
ButtonCount := 1;
Button1Caption := '确定';
IconType := suiStop ;
Text := '数据错误无法保存'+Chr(10)+Chr(13)+E.Message ;
ShowModal ;
end;
tbl_Sjdwb.CancelUpdates ;
db1.Rollback;
end;
end;
end;
end;
end;
procedure TFrmSjdw.actExitExecute(Sender: TObject);
begin
Close ;
end;
procedure TFrmSjdw.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
with DataModule1 do
begin
tbl_Sjdwb.Next ;
if DataModule1.tbl_Sjdwb.UpdatesPending then
with suiMessageDialog1 do
begin
Caption := suiForm1.Caption ;
ButtonCount := 2;
Button1Caption := '是';
Button2Caption := '否';
IconType := suiHelp ;
Text := '是否保存所编辑的数据?';
if ShowModal = mrOk then actSave.Execute else tbl_Sjdwb.CancelUpdates ;
end;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -