Foxtable(狐表)用户栏目专家坐堂 → [求助]新手求助~~跨表引用


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

主题:[求助]新手求助~~跨表引用

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


加好友 发短信
等级:婴狐 帖子:21 积分:487 威望:0 精华:0 注册:2012/2/13 10:42:00
[求助]新手求助~~跨表引用  发帖心情 Post By:2015/1/7 14:16:00 [只看该作者]

麻烦各位路过的大神帮忙看一下  谢谢
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:华岳.rar


问题:1、想通过在“明细表”中的"混凝土强度等级","集料"列中输入相关内容后,再从"至20140816止信息价表"找出对应产品的单价。但是无法实现。
   2、怎么加一个条件让日期小等于2014.8.16的读取"至20140816止信息价表",日期大于2014.8.16的读取“从20140817起信息价表”

Select Case e.DataCol.Name
    Case "混凝土强度等级","集料"
        Dim dr As DataRow = e.DataRow
        Dim pr As DataRow
        If dr.IsNull("混凝土强度等级") OrElse dr.IsNull("集料") Then
            dr("基准_信息价") = Nothing
        Else
            Dim filter As String
            filter = "混凝土强度等级 = '" & dr("混凝土强度等级") & "' And 集料 = '" & dr("集料") & "'"
            pr = DataTables("至20140816止信息价表").Find(filter)
            If pr IsNot Nothing Then
                dr("基准_信息价") = pr("单价")
            End If
        End If
End Select

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


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

多加个判断
dim d as date = "2014-08-16"

if e.datarow("日期") < d  then
else
end if

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


加好友 发短信
等级:婴狐 帖子:21 积分:487 威望:0 精华:0 注册:2012/2/13 10:42:00
  发帖心情 Post By:2015/1/7 14:27:00 [只看该作者]

还是不行   版主能不能帮忙看下  我上面粘帖的代码是不是写错了   

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


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

没反应,说明没有符合条件的行.

尝试学习一下调试

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


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

Select Case e.DataCol.Name
    Case "混凝土强度等级","集料"
        Dim dr As DataRow = e.DataRow
        Dim pr As DataRow
        If dr.IsNull("混凝土强度等级") OrElse dr.IsNull("集料") Then
            dr("基准_信息价") = Nothing
        Else
            Dim filter As String
            Dim d As Date = "2014-08-16"
            filter = "混凝土强度等级 = '" & dr("混凝土强度等级") & "' And 集料 = '" & dr("集料") & "'"
           
            If e.DataRow("供应日期") < d  Then
                pr = DataTables("至20140816止信息价表").Find(filter)
            Else
                pr = DataTables("从20140817起信息价表").Find(filter)
            End If
           
            If pr IsNot Nothing Then
                dr("基准_信息价") = pr("单价")
            End If
        End If
End Select

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


加好友 发短信
等级:婴狐 帖子:21 积分:487 威望:0 精华:0 注册:2012/2/13 10:42:00
  发帖心情 Post By:2015/1/7 14:42:00 [只看该作者]

解决了   谢谢楼上两位大侠   
现在的错误提示真的很好用

 回到顶部