以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关联表删除子表数据问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=154144)

--  作者:第一次学软件
--  发布时间:2020/9/5 0:14:00
--  关联表删除子表数据问题
执行按钮,把关联表的【档案记载1】列中的重复数据删除,删除的时候不是删除的关联数据,而是把子表上相同的数据都删除了,兰老师,该怎么编码?
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目2.table


[此贴子已经被作者于2020/9/5 0:14:35编辑过]

--  作者:chnfo
--  发布时间:2020/9/5 8:20:00
--  
Dim t1 As Table = e.Form.Controls("Table1").Table
Dim t2 As Table = e.Form.Controls("Table2").Table

If t1.Current IsNot Nothing Then
    
    t2.Filter = ""
    t2.RepeatFilter("档案记载1", 2)
    For  i As Integer = t2.Rows.Count - 1 To 0 step - 1 
        t2.Rows(i).Delete
    Next
    
    t2.Filter = ""
End If
[此贴子已经被作者于2020/9/5 8:52:55编辑过]

--  作者:有点蓝
--  发布时间:2020/9/5 8:40:00
--  
For  i As Integer = t2.Rows.Count - 1 To 0 step -1
--  作者:第一次学软件
--  发布时间:2020/9/5 14:01:00
--  
不起作用啊,有间隔的重复数据,好像删除不了

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目2.table

[此贴子已经被作者于2020/9/5 14:02:32编辑过]

--  作者:有点蓝
--  发布时间:2020/9/5 14:21:00
--  
加个排序:
……
    t2.Filter = ""
    t2.sort = "档案记载1"
    t2.RepeatFilter("档案记载1", 2)
……

--  作者:第一次学软件
--  发布时间:2020/9/5 20:39:00
--  

蓝老师,如果用查询表和模拟关联,则失去效果,研究了一下午,无结果

传上实例帮我看看

谢谢了,老师

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目2.table


--  作者:有点蓝
--  发布时间:2020/9/6 19:50:00
--  
这种情况要保留筛选条件,不要使用:t2.Filter = ""

Dim t1 As Table = e.Form.Controls("Table1").Table
Dim t2 As Table = e.Form.Controls("Table2").Table

If t1.Current IsNot Nothing Then
    t2.sort = "出生年月"
    t2.RepeatFilter("出生年月", 2)
    For  i As Integer = t2.Rows.Count - 1 To 0 Step - 1 
        t2.Rows(i).Delete
    Next
    t1.RaiseCurrentChanged
End If