Foxtable(狐表)用户栏目专家坐堂 → 判断引用多行


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

主题:判断引用多行

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


加好友 发短信
等级:童狐 帖子:214 积分:1770 威望:0 精华:0 注册:2013/5/20 23:54:00
判断引用多行  发帖心情 Post By:2013/12/23 17:40:00 [只看该作者]

老师,之前做过判断表达式,现在我想引用满足条件的多行?代码怎么写呢?

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


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

有具体的问题,才有具体的答复,泛泛而问很难帮上你.

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


加好友 发短信
等级:童狐 帖子:214 积分:1770 威望:0 精华:0 注册:2013/5/20 23:54:00
  发帖心情 Post By:2013/12/23 17:45:00 [只看该作者]

 If e.DataCol.Name = "产品编号" Then '发生变化的是产品编号吗?
    '在产品表找出该产品
   
Dim dr As DataRow
    dr =
DataTables("产品").Find("编号 = " & "'" & e.DataRow("产品编号") & "'" )
   
If dr IsNot Nothing '如果找到, 则设置各列内容
        e.
DataRow("品名")= dr("品名")
        e.
DataRow("型号")= dr("型号")
        e.
DataRow("规格")= dr("规格")
   
End If
End
If

这个是判断后引用一行,我想引用多行满足前面条件的的数据


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


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


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


加好友 发短信
等级:童狐 帖子:214 积分:1770 威望:0 精华:0 注册:2013/5/20 23:54:00
  发帖心情 Post By:2013/12/23 17:57:00 [只看该作者]

If e.DataCol.Name = "第一列" Then '发生变化的是产品编号吗?
    '在产品表找出该产品
    Dim dr As DataRow
    dr = DataTables("表A").Select("第一列 = " & "'" & e.DataRow("第一列") & "'" )
    If dr IsNot Nothing '如果找到, 则设置各列内容
        e.DataRow("第二列")= dr("第二列")
        e.DataRow("第三列")= dr("第三列")
        e.DataRow("第四列")= dr("第四列")
    End If
End If

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


加好友 发短信
等级:童狐 帖子:214 积分:1770 威望:0 精华:0 注册:2013/5/20 23:54:00
  发帖心情 Post By:2013/12/23 17:58:00 [只看该作者]

不可以啊


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


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

请看清楚帮助例子,你选择出来的是行集合,多行. 并不是单一的行

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


加好友 发短信
等级:童狐 帖子:214 积分:1770 威望:0 精华:0 注册:2013/5/20 23:54:00
  发帖心情 Post By:2013/12/24 10:13:00 [只看该作者]

If e.DataCol.Name = "第一列" Then '发生变化的是产品编号吗?
      Dim drs As List(Of DataRow)
    drs = DataTables("表A").Select("第一列 = " & "'" & e.DataRow("第一列") & "'" )
   For Each dr As DataRow In drs
        e.DataRow("第二列")= dr("第二列")
        e.DataRow("第三列")= dr("第三列")
        e.DataRow("第四列")= dr("第四列")
   Next
End If

老师,我修改了一下,可能哪里有点问题,只会借用最后一行


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


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

If e.DataCol.Name = "第一列" Then '发生变化的是产品编号吗?
      Dim drs As List(Of DataRow) '定义个行的集合
    drs = DataTables("表A").Select("第一列 = " & "'" & e.DataRow("第一列") & "'" )'把查询到的行放到drs这个集合去,此时如果有查询到的行,都存在这个集合中了.
   For Each dr As DataRow In drs   '循环遍历你查询引用到的所有行.
         '此时每次执行的DR都是不一样的, 第一次执行是你查询到的行里面的第一行,第二次执行为你查询到的行第二行,以此类推.
        e.DataRow("第二列")= dr("第二列")  
        e.DataRow("第三列")= dr("第三列")
        e.DataRow("第四列")= dr("第四列")
        '你每次都把查询到的行赋值给e.datarow  那后一次就把前一次给覆盖了,自然只有最后一次生效.
   Next
End If

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


加好友 发短信
等级:童狐 帖子:214 积分:1770 威望:0 精华:0 注册:2013/5/20 23:54:00
  发帖心情 Post By:2013/12/24 10:23:00 [只看该作者]

老师那后面的代码怎么写?集合我没懂。麻烦老师了

 回到顶部
总数 33 1 2 3 4 下一页