起步软件技术论坛-X3

 找回密码
 立即注册
搜索
楼主: dragonsoft

在组织机构上设置的数据语义策略,工作台中如何起作用?**

[复制链接]
发表于 2007-3-27 14:15:29 | 显示全部楼层
要代码在岗位环境上创建这个信息,直接设置隔离级不可以
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-3-27 14:27:13 | 显示全部楼层
天,这么麻烦,我还是找其它办法好了。

不过,有点狠不理解:
工作台也是业务功能
我自己建的也是业务功能
这2个有不同的吗?
为什么自己的功能可以应用到组织机构策略,而工作台功能就不行呢?
回复 支持 反对

使用道具 举报

发表于 2007-3-27 14:55:45 | 显示全部楼层
当然不同,区别就在于环境了
回复 支持 反对

使用道具 举报

发表于 2007-3-27 14:56:45 | 显示全部楼层
其实不复杂,只要
TYWXX1.Create(Operator.....Context)
通过Operator找到执行所需要的岗位环境就可以了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-3-29 17:02:28 | 显示全部楼层
最初由 alang 发布
[B]其实不复杂,只要
TYWXX1.Create(Operator.....Context)
通过Operator找到执行所需要的岗位环境就可以了 [/B]


能否说得具体些?


比如,已经建好了 [业务信息1],业务信息1下有[文档1],而[文档1]用到业务信息1的数据集。
系统默认的[我的工作台],要在工作台中用到[文档1]

我要怎么写代码才能使 [工作台]引用的业务信息会有策略应用到呢?
回复 支持 反对

使用道具 举报

发表于 2007-3-30 10:07:02 | 显示全部楼层
在功能窗体上设置 InforBroker的自动代理属性为FAlse
然后在代码中创建这个信息,对InforBroker赋值
procedure TMainForm.BizFormCreate(Sender: TObject);
var
  lPosition: TOperatorPosition;
  lInfoURL: String;
begin

  lPosition := SystemCore.TSystemCore.Operator.DefaultPosition;
  if not Assigned(lPosition) then
  lPosition := SystemCore.TSystemCore.Operator.Positions[0];
  InfoBrokerDMCJXX.Info := TInfo(lPosition.Context.GetBizObject(InfoBrokerDMCJXX.BizClassRef));
  InfoBrokerDMCJXX.Info.DataSets[0].Open;
end;
回复 支持 反对

使用道具 举报

发表于 2007-3-30 10:09:18 | 显示全部楼层
或者用
  InfoBrokerDMCJXX.Info := DMCJXX.TDMCJXX.Create(lPosition.Context);
代替上面的
  InfoBrokerDMCJXX.Info := TInfo(lPosition.Context.GetBizObject(InfoBrokerDMCJXX.BizClassRef));
也是一样的
回复 支持 反对

使用道具 举报

发表于 2007-3-30 10:10:08 | 显示全部楼层
这里就是用用户登陆时选择的岗位,如果没有选择岗位(选择了自动岗位的话),用第一个岗位
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-3-30 19:26:07 | 显示全部楼层
非常感谢,可以实现过滤了

lPosition := SystemCore.TSystemCore.Operator.DefaultPosition;
不过这句编译不通过,我的版本是 3.0.6
有没其它替代的方法?
回复 支持 反对

使用道具 举报

发表于 2007-3-31 09:27:33 | 显示全部楼层
小版本号是多少。
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-6-18 17:54 , Processed in 0.043605 second(s), 13 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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