以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  删除多个相同编号的行  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=178387)

--  作者:swagger
--  发布时间:2022/7/2 16:22:00
--  删除多个相同编号的行
表A,表B都 有编号,金额,数量,删除四列, 



图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20220702162826.png
图片点击可在新窗口打开查看


如附件图,表A的2个编号101对应表B的2个编号101,怎么做到删除 表B灰色的一行,表A对应的一行(编号101,金额5,数量10) 的”删除“ 显示为true,而不是表A两行都显示为true

表B datacolchanged:

Select Case e.DataCol.Name 
    Case  "金额","数量","删除”
        Dim Filter As String = "[编号] = \'" & e.DataRow("编号") & "\'"
        DataTables("表A").ReplaceFor(e.DataCol.Name, e.NewValue, Filter)
End Select



删除B表行按钮代码:

\'If Tables("窗口1_table1").Current Is Nothing Then
\'e.Cancel = True



Tables("窗口1_table2").current("删除") = true
DataTables("表B").DataCols("删除").RaiseDataColChanged()

Tables("窗口1_table2").current.Delete


\'End If

\'Tables("窗口1_table2") 是表B的窗口副表

[此贴子已经被作者于2022/7/2 16:29:09编辑过]

--  作者:有点蓝
--  发布时间:2022/7/2 16:35:00
--  
查询的时候把金额,数量也加到条件里
--  作者:swagger
--  发布时间:2022/7/2 22:14:00
--  
我还以为要用到identify, 如果金额,数量等都一样那怎么办呢?另外,多条件也是不行,也是同样显示两行为true
   
  Select Case e.DataCol.Name 
    Case  "金额","数量","删除”
        Dim Filter As String = "[编号] = \'" & e.DataRow("编号") & "\'  and [数量] = \'" & e.DataRow("数量") &"\' "
        DataTables("表A").ReplaceFor(e.DataCol.Name, e.NewValue, Filter)

End Select       




--  作者:swagger
--  发布时间:2022/7/3 0:02:00
--  
解决了,在datarowdeleting Dim Filter As String = "[编号] = \'" & e.DataRow("编号") & "\'  and [数量] = \'" & e.DataRow("数量") &"\' "