Foxtable(狐表)用户栏目专家坐堂 → [求助]不建立表关连能否自动引用其他表的数据


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

主题:[求助]不建立表关连能否自动引用其他表的数据

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


加好友 发短信
等级:婴狐 帖子:53 积分:380 威望:0 精华:0 注册:2017/7/25 12:53:00
[求助]不建立表关连能否自动引用其他表的数据  发帖心情 Post By:2017/7/27 11:54:00 [只看该作者]

老师,你好,

如附件“销售单表”,想把此表的“销售单号”根据生产批号卷号自动输入到“复卷表”上的销售单号列上,是否可以实现。

备注:因“销售单号”是在有“生产批号卷号”后才给定的,不是在有“生产批号卷号”前给定,即先有“产批号卷号”后有“销售单号”,所以按传统方法建立表关连,实现不了,是否可以通过其他办法实现呢?


图片点击可在新窗口打开查看此主题相关图片如下:销售单表.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:复卷表.png
图片点击可在新窗口打开查看

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


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


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


加好友 发短信
等级:婴狐 帖子:53 积分:380 威望:0 精华:0 注册:2017/7/25 12:53:00
  发帖心情 Post By:2017/7/27 14:00:00 [只看该作者]

老师,你好

我是新手,输入下面代码后,不会自动从销售单调取“销售单号”,请帮忙看看是哪里有问题。谢谢!

 

 

 

If e.DataCol.Name = "生产批号卷号" Then 
    If e.NewValue Is Nothing Then
        e.DataRow("销售单号") = Nothing
    Else
         Dim dr  As  DataRow   '
         dr =  DataTables("销售单").Find("[生产批号卷号] = '" & e.NewValue &  "'")
         If dr IsNot Nothing Then 
             e.DataRow("销售单号") = dr("销售单号")
         End  If
     End  If
 End If


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


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

销售单表的datacolchanged事件,加上代码

 

If e.DataCol.Name = "生产批号卷号" OrElse e.DataCol.Name = "销售单号" Then 
    DataTables("复卷").DataCols("生产批号卷号").RaiseDataColChanged("[生产批号卷号] = '" & e.datarow("生产批号卷号") &  "'")

End If

 

或者,可以直接在销售单表datacolchanged写代码

 

If e.DataCol.Name = "生产批号卷号" OrElse e.DataCol.Name = "销售单号" Then  
      DataTables("复卷").ReplaceFor("销售单号", e.DataRow("销售单号"), "[生产批号卷号] = '" & e.datarow("生产批号卷号") &  "'")
End If

[此贴子已经被作者于2017/7/27 18:18:17编辑过]

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


加好友 发短信
等级:婴狐 帖子:53 积分:380 威望:0 精华:0 注册:2017/7/25 12:53:00
  发帖心情 Post By:2017/7/27 16:52:00 [只看该作者]

我试了两周方法加上去,都不行。

 

就是在销售单表上输入生产批号卷号和销售单号后,在复卷表的销售单能根据销售单表上的生产批号卷号判断,自动输入销售单号。

 

我上传了整个项目文件夹,老师能否帮我看看。谢谢!


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


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

 没看到你上传的文件,直接在销售单表datacolchanged写代码

 

If e.DataCol.Name = "生产批号卷号" OrElse e.DataCol.Name = "销售单号" Then  
      DataTables("复卷").ReplaceFor("销售单号", e.DataRow("销售单号"), "[生产批号卷号] = '" & e.datarow("生产批号卷号") &  "'")
End If

 

 最后,记得重置列 http://www.foxtable.com/webhelp/scr/1469.htm

 

[此贴子已经被作者于2017/7/27 18:18:05编辑过]

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


加好友 发短信
等级:婴狐 帖子:53 积分:380 威望:0 精华:0 注册:2017/7/25 12:53:00
  发帖心情 Post By:2017/7/27 18:36:00 [只看该作者]

已解决,非常感谢!

 回到顶部