起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 845|回复: 0

[分享]客户端刷新服务端的组织机构缓存

[复制链接]
发表于 2007-10-30 15:19:59 | 显示全部楼层 |阅读模式
背景知识:代码创建组织单元  平台上文件系统

平台上按照文件系统的方式来存储组织机构的,为了提高客户端的运行效率,组织机构在客户端做了缓存,因此客户端对组织机构的各种操作需要考虑到缓存的影响。

代码创建组织单元(比如:创建一个人员),不能在缓存上创建,必须直接在服务端组织机构上创建,因此需要在执行创建操作之前先关闭组织机构缓存,调用
fsmngr.OrgSystemManager.UseLocalCache := False
对组织机构的创建、删除、分配等操作都需要首先执行上面的代码来关闭缓存。如果不关闭缓存,会出现错误“操作代码:10,异常信息:无效的命令:TCreateFileAction[10]”

因为有缓存的存在,虽然组织机构已经修改,但是服务端的缓存文件没有更新,客户端连接服务器下载的都是缓存文件,这样就跟实际的组织机构不一致了,可以通过执行下面的代码来使服务器刷新缓存文件
var
  Server: TFileSystemCacheServer;
begin
  Server := TFileSystemCacheServer.Create;
  try
    Server.AddURLs(';', SysSrv.SysService.ServerURL);
    Server.EnsureOrgSystem(BizSys.BizSystem.ClientAccount);
  finally
    Server.Free;
  end;
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2024-5-8 22:13 , Processed in 0.043763 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表