起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 102|回复: 2

修改DataSet.SQL.Text后,报指针错误**

[复制链接]
发表于 2008-8-15 11:08:12 | 显示全部楼层 |阅读模式
数据集dsTest:       
        SQL.Text设置为:select A, B from TTest1
        字段编辑器增加了所有字段

执行代码:       
        dsTest.DisableControls;
        dsTest.Close;
        dsTest.SQL.Text := 'select AA as A, BB as B from TTest1 where A = 1'
        dsTest.Open;
        DataSetCXSJJ.EnableControls;

        dsTest.DisableControls;
        dsTest.Close;
        dsTest.SQL.Text := 'select AA as A, BB as B from TTest2 where A = 1'
        dsTest.Open;
        DataSetCXSJJ.EnableControls;

问题:        1、执行上述代码后,显示不正常(如字段A的查找属性没有、报指针错误)
        2、当去掉第2个dsTest.DisableControls后,再执行,一切又正常了
回复

使用道具 举报

发表于 2008-8-15 16:11:38 | 显示全部楼层
正在处理,有结果马上跟帖告知
回复 支持 反对

使用道具 举报

发表于 2008-8-15 16:57:23 | 显示全部楼层
楼主,经过测试没有能重现你说的问题,我测试的代码如下
begin
  DataSetBZSJJ1.DisableControls;
  DataSetBZSJJ1.Close;
  DataSetBZSJJ1.SQL.Text := 'select ZD1 as A, ZD2 as B from SJB1 where ZD1 = ''22''';
  DataSetBZSJJ1.Open;
  DataSetBZSJJ1.EnableControls;
  if DataSetBZSJJ1.IsEmpty then
  begin
    DataSetBZSJJ1.DisableControls; // 这句不管是屏蔽还是不屏蔽数据都能正常显示出来
    DataSetBZSJJ1.Close;
    DataSetBZSJJ1.SQL.Text := 'select ZD1 as A, ZD2 as B from SJB11 where ZD1 = ''22''';
    DataSetBZSJJ1.Open;
    DataSetBZSJJ1.EnableControls;
  end;
end;

楼主,你这样做一个功能,就只有这一点代码,然后运行看看效果,是否跟其他的地方有些冲突了
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-20 14:34 , Processed in 0.041476 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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