起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 302|回复: 10

【搞定】【紧急】运行中修改字段查找属性报指针错误**

[复制链接]
发表于 2007-10-18 15:09:21 | 显示全部楼层 |阅读模式
错误信息【Access violation at address 027CBD2C in module 'CLRModel.bpl'. Read of address 0000002C】

代码案例:
procedure TGHTDOBJECTESTAPPLYBILLINFO.ProjectSortChange(Sender: TDataField); //立项类别变化改变项目名称输入方式
var
  lSort : string;
  lProjectField : TDataField;
  lProjField : TBizField;
begin
  lSort := Sender.AsString;
  lProjectField :=  Sender.DataSet.FieldByName('ProjectName');
  lProjField := DataSetGHTDObjectEstApplyBill.BizFieldByName('ProjectName');
  if (lSort = '1') or (lSort = '') then //计划内
  begin
    lProjField.LookupDef.Kind := TLookupKind.lkDataValues;
    lProjField.LookupDef.ValidateKind   := TLookupValidateKind.vkMust;
  end;
  if lSort = '2' then //计划外
  begin
    lProjField.LookupDef.Kind := TLookupKind.lkNone;
//    lProjField.LookupDef.ValidateKind   := TLookupValidateKind.vkAutoAdd;
  end;

end;

procedure TGHTDOBJECTESTAPPLYBILLINFO.DataSetGHTDObjectEstApplyBillAfterOpen(DataSet: TDataSet);
begin
  DataSet.FieldByName('Sort2').OnChange := ProjectSortChange;
end;
回复

使用道具 举报

 楼主| 发表于 2007-10-18 15:10:06 | 显示全部楼层
选择计划外时,每输入一个字符就报错一次!
回复 支持 反对

使用道具 举报

发表于 2007-10-18 15:22:25 | 显示全部楼层
哪句代码报错?
回复 支持 反对

使用道具 举报

发表于 2007-10-18 15:24:40 | 显示全部楼层
不是代码出错 是录入数据时 就报错 录入一个字母都不行
回复 支持 反对

使用道具 举报

发表于 2007-10-18 15:30:58 | 显示全部楼层
检查一下当选1和2时,环境中的查找定义是否正常。
回复 支持 反对

使用道具 举报

发表于 2007-10-18 15:33:38 | 显示全部楼层
你可以把上面的代码组织一个环境测试一下 是编译以后 在运行的时候 录入数据是出现指针错误
回复 支持 反对

使用道具 举报

发表于 2007-10-18 16:17:06 | 显示全部楼层
晕了,才反应过来。你修改了查找定义后要重新关闭打开数据集阿大哥。
回复 支持 反对

使用道具 举报

发表于 2007-10-18 16:19:38 | 显示全部楼层
我的需求不能关闭数据集 也不能刷新
回复 支持 反对

使用道具 举报

发表于 2007-10-18 16:21:55 | 显示全部楼层
修改数据集上的定义后必须重新打开数据集。否则会报指针错。
此路不通。
调整需求或者换个设计思路吧。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-19 08:22:03 | 显示全部楼层
从业务角度上讲,这个需求是非常有意义的,请把这个问题作为需求提交给开发部!
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-6-28 23:54 , Processed in 0.041955 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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