起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 725|回复: 26

帮忙看看这段代码哪里有问题??谢谢 **

[复制链接]
发表于 2005-12-24 16:31:25 | 显示全部楼层 |阅读模式
我想通过代码来实现根据部门获取部门下的所有人员的功能(包含子部门),但是一直实现不了,帮我看看代码有问题没??谢谢!!

procedure TAsset_Card_Info.DataSetAsset_Card_DataSetFieldText(DataSet: TDataSet; Field: TDataField; const Text: string);
var
lFilter : string ;
lsql : string ;
ltext : string ;
begin
  if Field.FieldName = 'DeptId' then
  begin
    lFilter := 'where fpath like ''%\'+ Text +'.dpt%'' and fkind = ''.psm''';
    DataSetAsset_Card_Data.Open ;
//   lsql := 'select torgsystem.fid , torgsystem.fdisplayname from torgsystem where  fpath like ''%\'+ Text +'.dpt%'' and fkind = ''.psm''' ;
    TSQLDataSet(DataSetAsset_Card_Data).BizFieldByName('UseMan').LookupDef.SQL.Text :=
    TSQLDataSet(DataSetAsset_Card_Data).BizFieldByName('UseMan').LookupDef.SQL.Text + lFilter ;
    ltext := TSQLDataSet(DataSetAsset_Card_Data).BizFieldByName('UseMan').LookupDef.SQL.Text ;
    TSQLDataSet(DataSetAsset_Card_Data).GetLookupData('UseMan').Refresh ;
  end ;
end;
回复

使用道具 举报

 楼主| 发表于 2005-12-26 11:27:43 | 显示全部楼层
顶。。。。。。。。。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-12-26 14:55:51 | 显示全部楼层
有人没有啊???? 急啊。。
回复 支持 反对

使用道具 举报

发表于 2005-12-26 15:34:52 | 显示全部楼层
你总得说说什么错误信息,错误现象是什么吧!
回复 支持 反对

使用道具 举报

发表于 2005-12-26 15:38:01 | 显示全部楼层
是编译通不过?还是运行报错? 有没有单步跟踪? 单步跟踪是哪一行有问题?
回复 支持 反对

使用道具 举报

发表于 2005-12-26 15:44:32 | 显示全部楼层
"通过代码来实现根据部门获取部门下的所有人员的功能"就不是现在的这种做法,应该用组织机构表达式来做,具体使用手册283页有参考例子. 
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-12-26 15:52:41 | 显示全部楼层
代码都执行了,没有错误,但是并没有把我需要的数据过滤出来

得到的结果还是按照默认的查找定义过滤的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-12-28 14:15:54 | 显示全部楼层
还没解决那。。等着
回复 支持 反对

使用道具 举报

发表于 2005-12-28 14:33:53 | 显示全部楼层
试试TSQLDataSet(DataSetAsset_Card_Data).open;
必须重新打开当前的数据集(lookdef),不是查找的数据集
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-12-28 15:31:09 | 显示全部楼层
没有 Open 事件  :(
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-1-11 17:49 , Processed in 0.038608 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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