Foxtable(狐表)用户栏目专家坐堂 → [求助]SQLtable重复数据删除&数据填充


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

主题:[求助]SQLtable重复数据删除&数据填充

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/9/24 15:14:00 [显示全部帖子]

 已上传,看附件,测试有效。

 
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:sqltable重复数据删除.table



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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/9/26 17:29:00 [显示全部帖子]

 回复楼上,弄好了。

 
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:sqltable重复数据删除.table



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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/9/27 10:02:00 [显示全部帖子]

 先说第一个问题,错误是因为没有给字符串初始值。

 Dim merge As String = ""

 第二个问题,看了很久,还是没有看明白是什么意思……

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/9/27 10:50:00 [显示全部帖子]

 嗯嗯,欠考虑,下面是最后的代码

Forms("检测流程流转记录表").open()
Dim bh As String = e.Form.Controls("TextBox12").Text
Dim t As Table = Tables("检测流程流转记录表_Table1")
t.Fill("select * from {检测流程流转记录表} where 委托编号 = '" & bh & "' order by 样品编号, 检测依据","FQTlxh", True)
t.SetColVisibleWidth("样品编号|70|样品名称|70|样品数量|60|检测项目|220|检测依据|150|检测部门|60|制表人|60|制表时间|70|发表时间|70|要求完成时间|70")
t.AllowEdit = True

Dim merge As String = ""
For i As Integer = 1 To t.Rows.Count - 1
    merge = merge & "," & t.Rows(i)("检测项目")
    t.Rows(i)("检测项目") = Nothing
    If t.Rows(i-1)("样品编号") <> t.Rows(i)("样品编号") OrElse t.Rows(i-1)("检测依据") <> t.Rows(i)("检测依据") Then
        merge = merge.Trim(",")
        t.Rows(i-1)("检测项目") = merge
        merge = ""
    End If
Next
merge = merge.Trim(",")
t.Rows(t.Rows.Count - 1)("检测项目") = merge

t.Filter = "检测项目 is not null"
[此贴子已经被作者于2012-9-27 11:00:00编辑过]

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/9/27 11:41:00 [显示全部帖子]

以下是引用lxhmax在2012-9-27 11:04:00的发言:
太感谢你了~

麻烦你再帮我看个问题,在中间按钮栏哪里有个“添加项目”,当样品信息表”检测项目“列有”农残21项检测“的时候,按照道理是根据检测项目表里的”加载明细项目“在检测项目结果表生成21条数据,可是现在却只能生成一条数据,麻烦你帮我看看是哪里出问题了!

呵呵,楼主,看了很久,还是未明白你要表达的,还有你想达到的。

因为逻辑较为复杂,楼主最好基于例子说明问题。还有就是最好截图。

我比较蠢。

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/9/27 14:21:00 [显示全部帖子]

 是这句代码写错了

dr = DataTables("检测项目结果").Find("样品编号 = '" & Ary(0) & "' and 加载明细项目 = '" & Values(i) & "'")

 换成

dr = DataTables("检测项目结果").Find("样品编号 = '" & Ary(0) & "' and 加载明细项目 = '" & Values(i) & "' And 检测项目 = '" & Ary1(0) & "'")

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/9/27 16:12:00 [显示全部帖子]

这个应该行了吧。

Forms("检测流程流转记录表").open()
Dim bh As String = e.Form.Controls("TextBox12").Text
Dim t As Table = Tables("检测流程流转记录表_Table1")
t.Fill("select * from {检测流程流转记录表} where 委托编号 = '" & bh & "' order by 样品编号, 检测依据","FQTlxh", True)
t.SetColVisibleWidth("样品编号|70|样品名称|70|样品数量|60|检测项目|220|检测依据|150|检测部门|60|制表人|60|制表时间|70|发表时间|70|要求完成时间|70")
t.AllowEdit = True

Dim merge As String = t.Rows(0)("检测项目")
t.Rows(0)("检测项目") = Nothing
For i As Integer = 1 To t.Rows.Count - 1
    If t.Rows(i-1)("样品编号") <> t.Rows(i)("样品编号") OrElse t.Rows(i-1)("检测依据") <> t.Rows(i)("检测依据") Then
        merge = merge.Trim(",")
        t.Rows(i-1)("检测项目") = merge
        merge = ""
    End If
    merge = merge & "," & t.Rows(i)("检测项目")
    t.Rows(i)("检测项目") = Nothing
Next
merge = merge.Trim(",")
t.Rows(t.Rows.Count - 1)("检测项目") = merge

t.Filter = "检测项目 is not null"
[此贴子已经被作者于2012-9-27 16:15:17编辑过]

 回到顶部