以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]光标自动定位窗口中的表指定的单元格位置第一行代码出错  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=44716)

--  作者:南山翠松
--  发布时间:2014/1/7 15:01:00
--  [求助]光标自动定位窗口中的表指定的单元格位置第一行代码出错
在窗口中,付加了一个数据表,调用了表"项目跟踪表.报价产品",要实现的功能是
我按一下“新增”按键,Click事件的代码如下:

Tables("项目跟踪表.报价产品").AddNew()
Tables("项目跟踪表.报价产品").Select(Tables("项目跟踪表.报价产品").Current.Index,Tables("项目跟踪表.报价产品").Cols("型号").Index)
Tables("项目跟踪表.报价产品").StartEditing

数据窗中的表,自动把录入光标定位在当前新增的行,“型号”那一列的位置上。

如果数据表不是空内容,也就是已经有行,刚这个“按键”代码正常可以实现这个效果。
但如果是没有内容的,新增的是第一行的话,不会自动定位到第一行的“型号”这一例,并且报错。

求教,要怎么处理这个代码才正常?

[此贴子已经被作者于2014-1-7 15:02:39编辑过]

--  作者:Bin
--  发布时间:2014/1/7 15:07:00
--  
我用普通表测试 空表也不会出现问题啊. 你可以加入以下如下判断
Tables("项目跟踪表.报价产品").AddNew()
if Tables("项目跟踪表.报价产品").Current isnot nothing then
Tables("项目跟踪表.报价产品").Select(Tables("项目跟踪表.报价产品").Current.Index,Tables("项目跟踪表.报价产品").Cols("型号").Index)
Tables("项目跟踪表.报价产品").StartEditing
end if

--  作者:南山翠松
--  发布时间:2014/1/7 15:18:00
--  
感谢bin老师指导,
加了 非空这一句的判断的话,
第一行就成没有定位效果,再点一下增加,在第二行开始才正常。

我这个表是个关联表,有影响吗?

--  作者:Bin
--  发布时间:2014/1/7 15:20:00
--  
应该是关联表的原因,我在主表测试是没有这个问题的.