Foxtable(狐表)用户栏目专家坐堂 → 请教跨表引用


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

主题:请教跨表引用

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


加好友 发短信
等级:幼狐 帖子:118 积分:745 威望:0 精华:0 注册:2012/9/18 16:23:00
请教跨表引用  发帖心情 Post By:2012/10/31 20:19:00 [只看该作者]

If e.DataCol.Name = "规格" OrElse e.DataCol.Name = "管制号" Then
    Dim dr As DataRow
    dr = DataTables("车床").Find("[姓名] = '" & e.DataRow("车床") & "'")
    If dr IsNot Nothing Then
        e.DataRow("车床") = dr("姓名")
            Else
        e.DataRow("车床") = Nothing
            End If
End If
想实现在订单明细表编辑规格,从车床表提取姓名到订单明细表车床列(管制号和规格两列相同),在输入规格时车床表还没数据,要审核完成后才复制到车床表,车床表审核后的数据不加载,请指导怎么写代码,谢谢!!!!

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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33957 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2012/10/31 20:24:00 [只看该作者]

就你要求的代码而言应该是下面的这样。

dr = DataTables("车床").Find("[规格] = '" & e.DataRow("规格") & "' And 管制号 = '" & e.DataRow("管制号") & "'")

 

但你所说的输入规格时车床没数据,这个就不知道怎么查找了。


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


加好友 发短信
等级:幼狐 帖子:118 积分:745 威望:0 精华:0 注册:2012/9/18 16:23:00
  发帖心情 Post By:2012/10/31 20:36:00 [只看该作者]

因订单明细表要经过审核(逻辑列)才将数据复制到车床表的,车床表是管控那个员工来加工订单明细表里的零件,意思是在车床表姓名列输入操作员的姓名,要在订单明细表车床列(相对应管制号和规格行)显示操作员的姓名,以便查询是谁在做这个零件。请指教,谢谢!!!

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


加好友 发短信
等级:五尾狐 帖子:1088 积分:8247 威望:0 精华:4 注册:2012/3/31 18:08:00
  发帖心情 Post By:2012/10/31 22:06:00 [只看该作者]

路过没有理解

 回到顶部
帅哥,在线噢!
狐狸爸爸
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/11/1 8:54:00 [只看该作者]

我也理解不了,做个例子发上来看看。


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


加好友 发短信
等级:幼狐 帖子:118 积分:745 威望:0 精华:0 注册:2012/9/18 16:23:00
  发帖心情 Post By:2012/11/1 13:39:00 [只看该作者]

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


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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/11/1 13:54:00 [只看该作者]

 楼主是不是想说,点击明细表的审核列,就把该行数据新增到车床表;点击车床表的审核列,就把该行的姓名写到明细表对应的行?
[此贴子已经被作者于2012-11-1 13:54:46编辑过]

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/11/1 14:04:00 [只看该作者]

 如果如楼上所说,你把两个表关联一下,然后明细表的车床列用表达式就可以了。

 至于审核后的数据不加载,设置一下Filter不久可以了?

 Tables("车床").Filter = "审核 = False"

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


加好友 发短信
等级:幼狐 帖子:118 积分:745 威望:0 精华:0 注册:2012/9/18 16:23:00
  发帖心情 Post By:2012/11/1 14:53:00 [只看该作者]

是想在车床表姓名列输入操作员姓名,就把该行的姓名写到明细表对应的行。不知可否有代码可以实现,因用表达式又要使用关联,数据不能隐蔽,运行时间长了可能对系统有影响,不知还有其它办法没有。 

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/11/1 15:01:00 [只看该作者]

 用代码就这样写吧。

select case e.datacol.name
    case "审核"
        dim dr as datarow = Datatables("订单明细").Find([规格] = '" & e.DataRow("规格") & "' And 管制号 = '" & e.DataRow("管制号") & "'")
        dr("车床") = e.DataRow("姓名")
        DataTables("车床").LoadFilter = "审核 = False"
        DataTables("车床").Load
end select

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