以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  窗口上副表增加行问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=26331)

--  作者:kmzb56
--  发布时间:2012/11/30 14:29:00
--  窗口上副表增加行问题
窗口上做了副表,
CurrentChanged也做了
Dim dr As DataRow = e.Table.current.DataRow()
Dim wz As Integer = Tables("客户资料").FindRow(dr)
If wz >=0 Then
     Tables("客户资料").Position = wz
End If

增加行做了:
Forms("客户登记").open()
Tables("客户导入_table1").AddNew( )

如果不查询,可以正常使用:
如果我查询了过滤了表时:再按增加行按钮时:会发现:客户登记窗口关联的并不是关联的新增空行,而是查询过后选定的一行,请问这是什么原因?

--  作者:lin_hailun
--  发布时间:2012/11/30 14:39:00
--  
Dim dr As DataRow = e.Table.current.DataRow()
Dim wz As Integer = Tables("客户资料").FindRow(dr)
If wz >=0 Then
     Tables("客户资料").Position = wz
End If

可以简化成

Tables("客户资料").Position = e.Table.Current.Position

---------------------------------

最后,未明白楼主的意思,看不懂。

--  作者:kmzb56
--  发布时间:2012/11/30 14:45:00
--  
   我的窗口上做得有查询窗口,正常时按增加按钮,副表最后一行会新增一行,同时打开一个录入窗口,这个录入窗口关联了客户资料字段,这样是空白的,让我们录入。但是:::如果我在窗口上使用了查询功能后,副表不再显示的完整数据,而是一部分数据,这时再按增加按钮时会打开的录入窗口不再是空白的,而是定位到一个数据行,查询结果的最后也没有增加空白行。
--  作者:kmzb56
--  发布时间:2012/11/30 14:50:00
--  
我到是想了一个办法,在新增行时先用 Tables("客户导入_table1").Filter="" 这样就可以。 但是我总觉得这样不好
[此贴子已经被作者于2012-11-30 14:50:35编辑过]

--  作者:lin_hailun
--  发布时间:2012/11/30 14:52:00
--  
 哦哦,明白,因为你对这个表设置了筛选条件,新增的行自然是不满足这个筛选条件的,自然不会显示……

 你筛选的条件最好允许为空的行。

--  作者:kmzb56
--  发布时间:2012/11/30 15:15:00
--  
怎么允许为空行?
--  作者:lin_hailun
--  发布时间:2012/11/30 15:19:00
--  
 比如,筛选的时候,设置条件的时候,设置成

Tables("").Filter = "xxxxxxxxxxxxxx Or xxx Is Null"