以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  如何将主表设置为当前表?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=27458)

--  作者:sunsenfeng
--  发布时间:2013/1/1 19:35:00
--  如何将主表设置为当前表?

在改造菜单的过程中,发现syscmd.Row.AddNew()对当前表起作用。我设计的表单是关联主表和明细表,需要菜单按钮只对主表起作用,请问如何写代码?因为有很多这样的主副表,所以代码要有通用性,不需要根据表的名称做判断。只要对主表追加行就行了。

 


--  作者:sunsenfeng
--  发布时间:2013/1/1 20:04:00
--  
再说明白一点,就是当焦点在明细表的情况下,只要执行按扭动作,也一定要离开明细表,将焦点设置到主表,追加主表记录
--  作者:程兴刚
--  发布时间:2013/1/1 20:06:00
--  
datatables("主表").addnew()
--  作者:sunsenfeng
--  发布时间:2013/1/1 20:19:00
--  

程老师,这个主表名是不知道的,我们只能用maintable和currenttable来判断,是主表还是明细表

 


--  作者:nblwar
--  发布时间:2013/1/1 20:25:00
--  
If CurrentTable.Name.Contains(".") = False Then
syscmd.Row.AddNew()
Else
XXXXXXXXXXXXXXXXXXXXXXXXX
End If
[此贴子已经被作者于2013-1-1 20:26:19编辑过]

--  作者:sunsenfeng
--  发布时间:2013/1/1 20:39:00
--  

关键就是xxxxxxxxxxxxxxxxxxxxxxxxxxxx这部分代码,就是当前表是明细表的时候,如何将主表设置为当前表

就是CurrentTable=MainTable如何实现


--  作者:nblwar
--  发布时间:2013/1/1 20:58:00
--  
If CurrentTable.Name.Contains(".") = False Then
    syscmd.Row.AddNew()
Else
    Dim Parts() As String = CurrentTable.Name.Split(".")
    Tables(Parts(0)).Select()
End If

--  作者:sunsenfeng
--  发布时间:2013/1/1 21:02:00
--  

不行,焦点在明细表时,不能转到主表


--  作者:nblwar
--  发布时间:2013/1/1 21:03:00
--  
其实你没有必要设置这种权限吧???
--  作者:nblwar
--  发布时间:2013/1/1 21:05:00
--  
我这边测试可以的,不知道你什么情况