|
[B]我在系统初始化功能上写好了读取当前操作者退出时间的代码:[/B]
static procedure TINIT.Uninit;
var
F: TForm;
lQuery : TQuery;
// lOprName,lOprDept,lLogID,lOprID,MaxID,lID:string;
// dsMySet:TSQLDataSet;
begin
if FInitInstance <> nil then
begin
TSystemCore.FuncManager.TerminateAllFuncs(True);
F := FInitInstance.MainForm;
FInitInstance.MainForm := nil;
if F <> nil then
F.Free;
Forms.Application.ProcessMessages;
end;
lQuery := TQuery.Create(nil);
lQuery.ConnectionString := 'DATABASEURL=Biz:OPERATIONOPERATIONDB.DATABASE';
lQuery.CommandText :='Select * From DLRZB Where DLRZB_ID='''+getid+'''';
lQuery.Open;
lQuery.Edit;
lQuery.FieldByName('DLRZB_TCSJ').AsString :=Sysutils.DateTimeToStr(Sysutils.Now) ;
lQuery.ApplyUpdates;
lQuery.Free;
BizRtSrvr.BusinessRuntimeServer.UnregisterMethod(CreateFunc);
CreateFunc.Free;
// CommonComponentLibrary.TCommonComponentLibrary.Uninit; {兼容性保留}
TComponentsLib.Uninit;
TSystemCore.Uninit;
end;
[B]DLRZB 表是自动填充的。 [/B]
MaxID :=dsMaxSet.FieldByName['DLRZB_ID'].AsString;
if MaxID='' then
begin
MaxID :='1000';
end else
begin
MaxID :=SysUtils.IntToStr(SysUtils.StrToInt(MaxID)+1);
end;
问题是在这里的退出写上代码后。在STUDIO中运行功能,窗体的退出代码(self.close)j就抱我DLRZB 表错。在平台是不抱错了。。怎么解决?
|
|