起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 1171|回复: 24

【结贴】查找属性无法清除

[复制链接]
发表于 2010-4-28 20:40:44 | 显示全部楼层 |阅读模式
用代码写生成数据字典时,设置了查找属性;lbizfielditem.lookupdef.sql.text:='select * from nd_bd_shujub'当生成数据字典后,想清空数据字典的查找属性就是无法清除。请解决
回复

使用道具 举报

发表于 2010-4-29 08:36:11 | 显示全部楼层
请问你是怎么清空的呢?把代码贴出来看看
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-4-29 21:01:15 | 显示全部楼层
清空的时候没有用代码,而是在数据字典中点查找属性--》数据查找--》设计--》全部移除--->点确定,但移除不了,在点设计,里面还有。
生成数据字典代码如下:

procedure TMainForm.Button1Click(Sender: TObject);
var
  I: Integer;
  lDesc: TTableDefDesc;
  lBizFieldItem: TBizFieldItem;
  lCreator: TTableDefCreator;
  url_str:TBizURL  ;
  temp:string;
begin
  lDesc := TTableDefDesc.Create(nil);
  lDesc.FileName := 'SJB1.Table';
  lDesc.DisplayName := '数据表1';

  lDesc.CreateMode:=business.Forms.TCreateMode.cmRecreate;
  lDesc.LanguageExt := '.pas';

  lBizFieldItem := TBizFieldItem.Create(nil);
  lBizFieldItem.ID := 'ZD1';
  lBizFieldItem.DisplayName := '字段2';

  lBizFieldItem.DataType := TDataType.dtString;
  lBizFieldItem.Size := 32;
  lBizFieldItem.EditStyleID:='Text';
  lBizFieldItem.IsPrimaryKey := true;

   lBizFieldItem.LookupDef.Filtered:=true;
   lBizFieldItem.LookupDef.Kind:=TLookupKind.lkDataValues;

   lBizFieldItem.LookupDef.DataBase.URL:='Biz:\NDAQSCXXXT\NDSJK.Database';

   lBizFieldItem.LookupDef.KeyField:='sid';
   lBizFieldItem.LookupDef.DisplayField:='BDZMC';
   lBizfielditem.LookupDef.SQL.SetText('select * from nd_bd_bdzb');
   lBizFieldItem.LookupDef.DropDownButton:=true;
   lBizFieldItem.LookupDef.AutoRefresh:=true;
  lDesc.TableDef.FieldDefs.Add(lBizFieldItem);
  temp:=lDesc.GetNamePath;
  lCreator := TTableDefCreator.Create;
  try
    lCreator.Execute(Business.Model.BizSys.ObjectInfo('Biz:\NDAQSCXXXT\NDSJK.Database').BizURL, lDesc,BizSys.GlobalContext);
    lCreator.Save;
  finally
    lCreator.Free;
  end;
  jsdialogs.ShowMsg('完成','提示');
end;
回复 支持 反对

使用道具 举报

发表于 2010-4-30 09:07:34 | 显示全部楼层
我这里测试是正常的,
楼主你的版本是多少,我的是3088?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-5-3 22:47:37 | 显示全部楼层
我的是3002,就是建好数据字典后,在业务空间中找到数据库,在找到数据表1,这时查找属性已经设置好了,但想清除,怎么也清除不掉,因为用代码设置了查找nd_bd_bdzb表,我想换成其他的表,也换不了,只能查nd_bd_bdzb这一张表,但显示字段和关键字段能改成这张表其他的字段,也可以设成不查找,但设成不查找后,再设成查找,点设计,就会出现查找的还是nd_bd_bdzb这张表。不知我描述清楚了没?
回复 支持 反对

使用道具 举报

发表于 2010-5-4 09:25:33 | 显示全部楼层
我能连接上去看看吗?
657944664
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-5-5 22:35:15 | 显示全部楼层
不行,我们上不了外网,你能告诉我,编辑sql存在哪了吗?
lBizfielditem.LookupDef.SQL.SetText('select * from nd_bd_bdzb');
也就是这句中的select * from nd_bd_bdzb存在哪了吗?
回复 支持 反对

使用道具 举报

发表于 2010-5-6 08:14:29 | 显示全部楼层
存放在文件系统表中,但你看不到原始的东东,是以序列号存储的。

要不你表这个表的定义传上来,我看看。或者搞个能重现的例子传上来,我恢复环境看看
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-5-12 11:36:00 | 显示全部楼层
你好,今天我知道问题出在哪了,但不知怎么改,问题出在用代码生产数据字典后,查找属性中的sql语句无法修改。当然也就无法删除了。请问怎么解决?
你想恢复环境看看的话,只要用3002然后随便用代码生成一个数据字典,并生成查找属性,查找属性中的sql都不能修改或移除
回复 支持 反对

使用道具 举报

发表于 2010-5-12 14:28:59 | 显示全部楼层
我能连接上去看看吗?你加QQ:657944664
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-9 16:27 , Processed in 0.044844 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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