📄 gl_enter_docket.pas
字号:
unit Gl_Enter_Docket;
Interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Base_Outer, Menus, ExtPrintReport, Db, ActnList, AdODB, Grids, DBGridEh,
StdCtrls, ExtCtrls, ComCtrls, ToolWin;
Type
TFrm_Gl_Enter_Docket = Class(TFrm_Base_Outer)
AdoQry_MainDocketId: TAutoIncField;
AdoQry_MainDocketCode: TStringField;
AdoQry_MainDocketName: TStringField;
AdoQry_MainKmCode: TStringField;
AdoQry_MainKmName: TStringField;
procedure Act_DeleteExecute(Sender: TObject);
private
{ Private declarations }
public
procedure InitForm(AdOConnection:TAdOConnection;ReadOnly:Boolean);Override;
{ Public declarations }
end;
var
Frm_Gl_Enter_Docket: TFrm_Gl_Enter_Docket;
implementation
uses Gl_Enter_Docket_D, Sys_Global;
{$R *.DFM}
{ TFrm_Gl_Enter_Docket }
procedure TFrm_Gl_Enter_Docket.InitForm(AdOConnection: TAdOConnection;
ReadOnly: Boolean);
begin
inherited;
SelectFromSql:=' Select Gl_Docket.*,Gl_AccountSubject.KmName '
+' From Gl_Docket '
+' Join Gl_AccountSubject '
+' On Gl_Docket.KmCode=Gl_AccountSubject.KmCode ';
GetData;
Frm_Sys_Detail:=TFrm_Gl_Enter_Docket_D.Create(Application);
end;
procedure TFrm_Gl_Enter_Docket.Act_DeleteExecute(Sender: TObject);
var
DocketId:String;
begin
// inherited;
if(not AdoQry_Main.IsEmpty)and
(DispInfo(' 真的删除当前记录吗? ',2)='y')then
begin
try
DbConnect.beginTrans;
AdoQry_Tmp.Close;
AdoQry_Tmp.sql.clear;
AdoQry_Tmp.SQL.Text := ' Select DocketId From Gl_Docket '
+' Where DocketCode='''+AdoQry_Main.fieldbyname('DocketCode').AsString+''' ';
AdoQry_Tmp.Open;
DocketId := AdoQry_Tmp.fieldbyname('DocketId').AsString;
AdoQry_Tmp.Close;
AdoQry_Tmp.SQL.clear;
AdoQry_Tmp.SQL.Text:= ' Insert into Gl_DocketHistory '
+' (DocketId,DocketCode,DocketName,KmCode,ChgEmployeeCode,ChgTime,ChgType ) '
+' Values('
+''''+DocketId+''', '
+''''+AdoQry_Main.fieldbyname('DocketCode').AsString+''','
+''''+AdoQry_Main.fieldbyname('DocketName').AsString+''','
+''''+AdoQry_Main.fieldbyname('KmCode').AsString+''','
+ QuotedStr(UserCode)+','
+' GetDate(),'
+''''+'删除'+''' '
+')';
AdoQry_Tmp.ExecSQL;
AdoQry_Tmp.Close;
AdoQry_Tmp.sql.clear;
AdoQry_Tmp.SQL.Text := ' Delete Gl_Docket '
+' Where DocketId='''+DocketId+''' ' ;
AdoQry_Tmp.ExecSQL;
DbConnect.CommitTrans;
AdoQry_Main.Delete;
except
DbConnect.RollBackTrans ;
DispInfo(' 无法删除当前记录,可能已经被其他数据表引用!',1);
Abort;
end;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -