|
[B]我在标准风格主窗体上获取了登陆时间等:看代码:[/B]
lLogID :=TSystemCore.Operator.Positions[0].Operator.LoginID;
lOprID :=TSystemCore.Operator.Positions[0].PersonMember.ID;
lOprName :=TSystemCore.Operator.Positions[0].PersonMember.DisplayName;
lOprDept :=TSystemCore.Operator.Positions[0].PositionMember.Parent.DisplayName;
lOprPos :=TSystemCore.Operator.Positions[0].PositionMember.DisplayName;
dsMySet :=TSQLDataSet.Create(Self);
dsMaxSet :=TSQLDataSet.Create(Self);
try
dsMaxSet.Database.URL :='Biz:OABGZDHXTBGZDHSJK.DATABASE';
dsMaxSet.Close;
dsMaxSet.SQL.Text :='Select Max(DLRZB_ID) as DLRZB_ID from DLRZB';
dsMaxSet.Open;
MaxID :=dsMaxSet.FieldByName['DLRZB_ID'].AsString;
if MaxID='' then
begin
MaxID :='1000';
end else
begin
MaxID :=SysUtils.IntToStr(SysUtils.StrToInt(MaxID)+1);
end;
lID :=MaxID;
dsMySet.Database.URL :='Biz:OABGZDHXTBGZDHSJK.DATABASE';
dsMySet.Close;
dsMySet.SQL.Text :='Select * From DLRZB';
dsMySet.Open;
dsMySet.Insert;
dsMySet.FieldValues['DLRZB_XZ'] :=0; //选择
dsMySet.FieldValues['DLRZB_ID'] :=lID; //ID
dsMySet.FieldValues['DLRZB_XM'] :=lOprName; //姓名
dsMySet.FieldValues['DLRZB_BM'] :=lOprDept; //部门
dsMySet.FieldValues['DLRZB_GW'] :=lOprPos; //岗位
dsMySet.FieldValues['DLRZB_DLZH'] :=lLogID; //
dsMySet.FieldValues['DLRZB_IPDZ'] :=JSSysUtils.GetLocalIPStr; //IP地址
dsMySet.FieldValues['DLRZB_DLSJ'] :=Business.Data.SysSrv.SysService.Time; //登陆时间
dsMySet.ApplyUpdates;
[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;
end;
Forms.Application.ProcessMessages;
lQuery := TQuery.Create(nil);
lQuery.ConnectionString := 'DATABASEURL=Biz:OPERATIONOPERATIONDB.DATABASE';
lQuery.CommandText :='Select * From DLRZB';
lQuery.Open;
lQuery.Edit;
// lQuery.Append;
//lQuery.FieldByName('DLRZB_ID').AsString :='222';
lQuery.FieldByName('DLRZB_TCSJ').AsString :=Sysutils.DateTimeToStr(Sysutils.Now) ;
lQuery.Close;
// lQuery.Post;
lQuery.ApplyUpdates;
lQuery.Free;
BizRtSrvr.BusinessRuntimeServer.UnregisterMethod(CreateFunc);
CreateFunc.Free;
// CommonComponentLibrary.TCommonComponentLibrary.Uninit; {兼容性保留}
TComponentsLib.Uninit;
TSystemCore.Uninit;
end;
这样的话就只能给1条记录有退出时间。其他记录都没退出时间。。我认为是以下的代码有问题:
lQuery.ConnectionString := 'DATABASEURL=Biz:OPERATIONOPERATIONDB.DATABASE';
lQuery.CommandText :='Select * From DLRZB';
应该该为:lQuery.CommandText :=?????;这里该写什么?
|
|