Foxtable(狐表)用户栏目专家坐堂 → 移除重复的行


  共有2348人关注过本帖树形打印复制链接

主题:移除重复的行

帅哥哟,离线,有人找我吗?
BG小白
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:603 积分:4090 威望:0 精华:0 注册:2019/11/14 23:06:00
移除重复的行  发帖心情 Post By:2020/6/23 22:04:00 [只看该作者]

Dim idx As String = "-1,"
Dim idx_temp As String = ""
Dim pdr As DataRow = Nothing
Dim count As Integer = 0
Dim cs As String = "SPDM,GG1DM"
For Each dr As DataRow In DataTables("SPCKB").Select("", "SPDM,GG1DM")
   
    Dim flag As Boolean = False
    If pdr IsNot Nothing Then
        For Each c As String In cs.split(",")
            If pdr(c) <> dr(c) Then
                flag = True
                Exit For
            End If
        Next
    End If
    If flag OrElse pdr Is Nothing Then
        If count > 1 Then
            idx &= idx_temp
        End If
        count = 1
        idx_temp = ""
    Else
        count += 1
        idx_temp &= dr("_Identify") & ","
    End If
   
    pdr = dr
Next

If count > 1 Then
    idx &= idx_temp
End If

Tables("SPCKB").filter = "_Identify in (" & idx.trim(",") & ")"

DataTables("SPCKB").RemoveFor("_Identify In (" & idx.trim(",") & ")")  '移除重复行

外部表,没有_Identify这个字段我
图片点击可在新窗口打开查看此主题相关图片如下:52.png
图片点击可在新窗口打开查看
该怎么修改呢

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107813 积分:548416 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/23 22:36:00 [只看该作者]

使用2个in,如:

Dim idx As String = "-1,"
Dim idx2 As String = "-1,"
Dim idx_temp As String = ""
Dim idx2_temp As String = ""
……
    Else
        count += 1
        idx_temp &= dr("SPDM") & ","
        idx2_temp &= dr("GG1DM") & ","
    End If
……
If count > 1 Then
    idx &= idx_temp
    idx2 &= idx2_temp
End If
Tables("SPCKB").filter = "SPDM in (" & idx.trim(",") & ") and GG1DM in (" & idx2.trim(",") & ")"
……

 回到顶部
帅哥哟,离线,有人找我吗?
BG小白
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:603 积分:4090 威望:0 精华:0 注册:2019/11/14 23:06:00
  发帖心情 Post By:2020/6/24 3:07:00 [只看该作者]

.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2020.5.29.8
错误所在事件:
详细错误信息:
未找到列 [AFBN004]。
这里会提示错误,什么原因呢?

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


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107813 积分:548416 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/24 8:44:00 [只看该作者]

字符列加上单引号

Dim idx As String = ""
Dim idx2 As String = ""



idx_temp &= dr("SPDM") & ","

改为

idx_temp = idx_temp & ",'" dr("SPDM") & "'"

 回到顶部
帅哥哟,离线,有人找我吗?
BG小白
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:603 积分:4090 威望:0 精华:0 注册:2019/11/14 23:06:00
  发帖心情 Post By:2020/6/24 15:53:00 [只看该作者]

保存的时候报错
图片点击可在新窗口打开查看此主题相关图片如下:1521.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2020/6/24 15:53:10编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107813 积分:548416 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/24 15:56:00 [只看该作者]

idx_temp = idx_temp & ",'" & dr("SPDM") & "'"

 回到顶部
帅哥哟,离线,有人找我吗?
BG小白
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:603 积分:4090 威望:0 精华:0 注册:2019/11/14 23:06:00
  发帖心情 Post By:2020/6/24 16:35:00 [只看该作者]

.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2020.5.29.8
错误所在事件:
详细错误信息:
语法错误:“,”运算符前缺少操作数。


 回到顶部
帅哥哟,离线,有人找我吗?
BG小白
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:603 积分:4090 威望:0 精华:0 注册:2019/11/14 23:06:00
  发帖心情 Post By:2020/6/24 16:37:00 [只看该作者]

我修改了一下idx_temp = idx_temp & ",'" & dr("SPDM") & "'"
把,删除了,就好了,没有问题吧
idx_temp = idx_temp & "'" & dr("SPDM") & "'"
[此贴子已经被作者于2020/6/24 16:37:21编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107813 积分:548416 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/24 16:45:00 [只看该作者]

逗号不能少

调试技巧:http://www.foxtable.com/webhelp/scr/1485.htm
msgbox("SPDM in (" & idx.trim(",") & ") and GG1DM in (" & idx2.trim(",") & ")")
Tables("SPCKB").filter = "SPDM in (" & idx.trim(",") & ") and GG1DM in (" & idx2.trim(",") & ")"

 回到顶部