Foxtable(狐表)用户栏目专家坐堂 → 当前表要修改成其它表要怎么写?


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

主题:当前表要修改成其它表要怎么写?

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


加好友 发短信
等级:二尾狐 帖子:515 积分:5051 威望:0 精华:0 注册:2017/9/1 23:28:00
当前表要修改成其它表要怎么写?  发帖心情 Post By:2020/11/5 13:52:00 [只看该作者]

我想要实现的是,当前表的“审核”字段发生变化,则统计入库数量到采购表,但是红色部分改不好,一直报错。图片点击可在新窗口打开查看
If e.DataCol.Name = "审核" Then 
    datatables(“采购单”).DataRow("已入库数量") = DataTables("入库明细").Compute("Sum(数量)","[产品名称] = '" & e.NewValue & "'")
End If


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


加好友 发短信
等级:超级版主 帖子:107135 积分:544918 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/11/5 13:55:00 [只看该作者]

If e.DataCol.Name = "审核" Then 
dim dr as datarow = datatables(“采购单”).find("单号='" & e.datarow("单号") & "'")
if dr isnot nothing then
    dr("已入库数量") = e.DataTable.Compute("Sum(数量)","[产品名称] = '" & e.NewValue & "'")
end if
End If

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


加好友 发短信
等级:二尾狐 帖子:515 积分:5051 威望:0 精华:0 注册:2017/9/1 23:28:00
  发帖心情 Post By:2020/11/5 13:57:00 [只看该作者]

谢谢蓝老师!

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


加好友 发短信
等级:二尾狐 帖子:515 积分:5051 威望:0 精华:0 注册:2017/9/1 23:28:00
  发帖心情 Post By:2020/11/9 1:52:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:关联表.table

蓝老师,这个代码的事件仍然无法触发,麻烦您再指点下。

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


加好友 发短信
等级:超级版主 帖子:107135 积分:544918 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/11/9 8:54:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:关联表.zip


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


加好友 发短信
等级:二尾狐 帖子:515 积分:5051 威望:0 精华:0 注册:2017/9/1 23:28:00
  发帖心情 Post By:2020/11/9 15:55:00 [只看该作者]

Select Case e.DataCol.Name
    Case "审核" ,"产品名称","入库数量","采购单号"
        Dim dr As DataRow = DataTables("采购明细").find("采购单号='" & e.DataRow("采购单号") & "' and 产品名称='" & e.DataRow("产品名称") & "'")
        If dr IsNot Nothing Then
            dr("已入库") = e.DataTable.Compute("Sum(入库数量)","采购单号='" & e.DataRow("采购单号") & "' and [产品名称] = '" & e.DataRow("产品名称") & "' and 审核='已审核'")
        End If
End Select
========================================================
谢谢蓝老师,没想到要这么复杂的代码!图片点击可在新窗口打开查看我还想请教下老师,上面的代码中
    Select Case e.DataCol.Name  
          Case "审核" ,"产品名称","入库数量","采购单号"
     这句是指当"审核" "产品名称""入库数量""采购单号"四个字段都发送变化的时候才触发事件,还是只要有一个字段变化就触发事件?我把代码改为
          Case "审核" 
也能统计,应该是只要一个条件改变就能触发,那么为什么要增加后面三个字段呢?学生愚钝,请老师指点迷津下,谢谢!


[此贴子已经被作者于2020/11/9 15:55:59编辑过]

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


加好友 发短信
等级:超级版主 帖子:107135 积分:544918 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/11/9 15:58:00 [只看该作者]

只要有一个字段变化就触发事件。

如果审核后"产品名称","入库数量","采购单号"3个列不能再修改,可以不用加这3个判断

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


加好友 发短信
等级:二尾狐 帖子:515 积分:5051 威望:0 精华:0 注册:2017/9/1 23:28:00
  发帖心情 Post By:2020/11/9 16:04:00 [只看该作者]

谢谢老师!我明白您为什么要加这三个条件了!图片点击可在新窗口打开查看
还是您经验丰富呀!我都没考虑到“即使审核后也有可能发送数量变化和产品名称变化的可能性”!这个确实太重要了!
拜谢老师图片点击可在新窗口打开查看

 回到顶部