Foxtable(狐表)用户栏目专家坐堂 → [求助]跨表运算事件请教


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

主题:[求助]跨表运算事件请教

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


加好友 发短信
等级:婴狐 帖子:26 积分:254 威望:0 精华:0 注册:2015/10/17 19:44:00
  发帖心情 Post By:2017/4/13 17:24:00 [只看该作者]

老师,如果订单表中没有入库表的订单,就忽略报错!怎么处理?

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/4/13 17:34:00 [只看该作者]

以下是引用supernormalwu在2017/4/13 17:24:00的发言:
老师,如果订单表中没有入库表的订单,就忽略报错!怎么处理?

 

DataColChanging事件

 

If e.DataCol.Name.StartsWith("SIZE") Then
    Dim filter As String = "指令单号 = '" & e.DataRow("指令单号") & "' and 型体 = '" & e.DataRow("型体") & "'"
    Dim fdr As DataRow = DataTables("订单").Find(filter)
    If fdr IsNot Nothing Then
        Dim sum1 As Double = e.DataTable.Compute("sum(" & e.DataCol.name & ")", filter)
        If sum1 - e.OldValue + e.NewValue > fdr(e.DataCol.name) Then
            msgbox("超出了")
            e.cancel = True
        Else
           
        End If
    End If
End If


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


加好友 发短信
等级:婴狐 帖子:26 积分:254 威望:0 精华:0 注册:2015/10/17 19:44:00
  发帖心情 Post By:2017/4/13 17:56:00 [只看该作者]

如:欠数表中[指令单号]12333的SIZE1码=订单表中[指令单号]12333的SIZE1码减去整理入库表中[指令单号]12333的SIZE1码的和!
请老师指点如何写代码?谢谢!

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/4/13 18:06:00 [只看该作者]

If e.DataCol.Name.StartsWith("SIZE") Then
    Dim filter As String = "指令单号 = '" & e.DataRow("指令单号") & "' and 型体 = '" & e.DataRow("型体") & "'"
    Dim fdr As DataRow = DataTables("订单").Find(filter)
    If fdr IsNot Nothing Then
        Dim sum1 As Double = e.DataTable.Compute("sum(" & e.DataCol.name & ")", filter)
        If sum1 - e.OldValue + e.NewValue > fdr(e.DataCol.name) Then
            msgbox("超出了")
            e.cancel = True
            Return
        End If
        Dim dr = DataTables("欠数").Find(filter)
        If dr Is Nothing Then
            dr = DataTables("欠数").addnew
            dr("指令单号") = e.DataRow("指令单号")
            dr("型体") = e.DataRow("型体")
        End If
        dr(e.DataCol.name) = fdr(e.DataCol.name) - (sum1 - e.OldValue + e.NewValue)
    End If
End If

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


加好友 发短信
等级:婴狐 帖子:26 积分:254 威望:0 精华:0 注册:2015/10/17 19:44:00
  发帖心情 Post By:2017/4/13 20:24:00 [只看该作者]

谢谢老师!



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


加好友 发短信
等级:婴狐 帖子:26 积分:254 威望:0 精华:0 注册:2015/10/17 19:44:00
  发帖心情 Post By:2017/4/14 18:30:00 [只看该作者]

If e.DataCol.Name.StartsWith("SIZE") Then
    Dim filter As String = "指令单号 = '" & e.DataRow("指令单号") & "' and 型体 = '" & e.DataRow("型体") & "'"
    Dim fdr As DataRow = DataTables("订单").Find(filter)
    If fdr IsNot Nothing Then
        Dim sum1 As Double = e.DataTable.Compute("sum(" & e.DataCol.name & ")", filter)
        If sum1 - e.OldValue + e.NewValue > fdr(e.DataCol.name) Then
            msgbox("超出了")
            e.cancel = True
            Return
        End If
        Dim dr = DataTables("欠数").Find(filter)
        If dr Is Nothing Then
            dr = DataTables("欠数").addnew
            dr("指令单号") = e.DataRow("指令单号")
            dr("型体") = e.DataRow("型体")
        End If
        dr(e.DataCol.name) = fdr(e.DataCol.name) - (sum1 - e.OldValue + e.NewValue)
    End If
End If
老师你好!接上问题!如订单表中1井50双,入库表该单1码没有,为空,欠数表中就为空了!应该是50的才对!请老师解惑!谢谢!

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


加好友 发短信
等级:婴狐 帖子:26 积分:254 威望:0 精华:0 注册:2015/10/17 19:44:00
  发帖心情 Post By:2017/4/14 18:34:00 [只看该作者]

还有就是原订单和入库都有数据!而欠数表没有自动更新!

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


加好友 发短信
等级:婴狐 帖子:26 积分:254 威望:0 精华:0 注册:2015/10/17 19:44:00
  发帖心情 Post By:2017/4/14 18:49:00 [只看该作者]

如图:附件
图片点击可在新窗口打开查看此主题相关图片如下:1492166895948-2056710768.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:超级版主 帖子:107846 积分:548581 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/4/14 20:49:00 [只看该作者]

请重新上传例子测试

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


加好友 发短信
等级:婴狐 帖子:26 积分:254 威望:0 精华:0 注册:2015/10/17 19:44:00
  发帖心情 Post By:2017/4/15 8:01:00 [只看该作者]

接上问题上传实例!指令单号为1702054-1单!
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:订单生产欠数.rar


 回到顶部
总数 26 上一页 1 2 3 下一页