Foxtable(狐表)用户栏目专家坐堂 → 如何实现表表比对输出不同到临时表?


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

主题:如何实现表表比对输出不同到临时表?

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


加好友 发短信
等级:五尾狐 帖子:1107 积分:10586 威望:0 精华:0 注册:2014/2/19 16:32:00
如何实现表表比对输出不同到临时表?  发帖心情 Post By:2015/2/9 17:08:00 [只看该作者]

“订单表”的项目编号字段与“项目表”的编号字段做对比(即订单表项目编号字段去项目表编号字段去搜索)如果在项目表中找不到则把找不到的记录信息列到“对比表”中相应字段。如何实现请老师帮忙,见例子。

 

 

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

 


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

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


加好友 发短信
等级:五尾狐 帖子:1107 积分:10586 威望:0 精华:0 注册:2014/2/19 16:32:00
  发帖心情 Post By:2015/2/9 17:09:00 [只看该作者]

注:在对比前项目编号字段多了两个前辍(XM),如何去掉前缀后再对比?

[此贴子已经被作者于2015/2/9 17:09:34编辑过]

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/2/9 17:13:00 [只看该作者]

Find的时候.SUbstring(2,str.lenght-2) 去掉前缀就好了

你原本是怎么做的,把代码发上来.给你修改一下即可

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


加好友 发短信
等级:五尾狐 帖子:1107 积分:10586 威望:0 精华:0 注册:2014/2/19 16:32:00
  发帖心情 Post By:2015/2/9 17:18:00 [只看该作者]

去掉前缀有点思路,但对比功能没做过麻烦老师帮忙改一下例子我学习一下。


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/2/9 17:24:00 [只看该作者]

是要互相找呢,还是项目表找订单表没有的

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


加好友 发短信
等级:五尾狐 帖子:1107 积分:10586 威望:0 精华:0 注册:2014/2/19 16:32:00
  发帖心情 Post By:2015/2/9 17:29:00 [只看该作者]

订单表找项目表


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/2/9 17:30:00 [只看该作者]

但是你项目表的数据比订单表多啊.说反了吧?

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


加好友 发短信
等级:五尾狐 帖子:1107 积分:10586 威望:0 精华:0 注册:2014/2/19 16:32:00
  发帖心情 Post By:2015/2/9 17:31:00 [只看该作者]

订单表去项目表中搜索,没有的列到窗口的虚拟表中

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/2/9 17:33:00 [只看该作者]

Dim dt2 As DataTable = DataTables("项目表")
Dim dt1 As DataTable = DataTables("订单表")
Dim dt3 As DataTable = DataTables("对比表")

For Each dr As DataRow In dt2.Select("", "编号")
    Dim filter As String = "项目编号 like '%" & dr("编号") & "'"
    Dim fdr As DataRow = dt1.Find(filter)
    If fdr Is Nothing Then
        Dim ndr As DataRow = dt3.AddNew
        ndr("pnumber") = dr("编号")     
       
    End If
Next


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/2/9 17:35:00 [只看该作者]

For Each dr As DataRow In DataTables("订单表").DataRows
    Dim drr As DataRow = DataTables("项目表").Find("编号='" & dr("项目编号").Substring(2,dr("项目编号").length-2) & "'")
    If drr Is Nothing Then
        Dim dr2 As DataRow = DataTables("对比表").addnew
        dr2("列名")=dr("列名")
    End If
Next

 回到顶部
总数 14 1 2 下一页