Foxtable(狐表)用户栏目专家坐堂 → 跨表统计数据


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

主题:跨表统计数据

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


加好友 发短信
等级:三尾狐 帖子:600 积分:4339 威望:0 精华:0 注册:2013/11/2 18:22:00
  发帖心情 Post By:2022/3/22 11:30:00 [只看该作者]


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

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

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


加好友 发短信
等级:三尾狐 帖子:600 积分:4339 威望:0 精华:0 注册:2013/11/2 18:22:00
  发帖心情 Post By:2022/3/22 11:32:00 [只看该作者]

Dim d1  As  DataRow = e.DataRow
    Select Case e.DataCol.Name
        Case  "入库码单号"
            d1("码单重量") = DataTables("入库明细码单").Compute("Sum(码单重量)","[入库码单号] = '" & d1("入库码单号") & "'")
        End  Select

 

 

 

 

If e.DataCol.Name = "入库码单号"  Then
    If e.NewValue Is  Nothing  Then
        e.DataRow("品名") =  Nothing
        e.DataRow("材质") =  Nothing
        e.DataRow("规格") =  Nothing
        e.DataRow("长度") =  Nothing
        'e.DataRow("理计数量") =  Nothing
        'e.DataRow("理计重量") =  Nothing
        'e.DataRow("码单数量") =  Nothing
        'e.DataRow("码单重量") =  Nothing
        e.DataRow("厂发数量") =  Nothing
        e.DataRow("厂发重量") =  Nothing
        e.DataRow("厂发重量") =  Nothing
        e.DataRow("入库单号") =  Nothing
        e.DataRow("入库码单号") =  Nothing
    Else
        Dim dr As  DataRow
        dr =  DataTables("入库明细").Find("[入库码单号] = '" & e.NewValue &  "'")
        If dr IsNot Nothing
            e.DataRow("品名") = dr("品名")
            e.DataRow("材质") = dr("材质")
            e.DataRow("规格") = dr("规格")
            e.DataRow("产地") = dr("产地")
            e.DataRow("长度") = dr("长度")
            'e.DataRow("理计数量") = dr("理计数量")
            'e.DataRow("理计重量") = dr("理计重量")
            'e.DataRow("码单数量") = dr("码单数量")
            'e.DataRow("码单重量") = dr("码单重量")
            e.DataRow("厂发数量") = dr("厂发数量")
            e.DataRow("厂发重量") = dr("厂发重量")
            e.DataRow("入库单号") = dr("入库单号")
            e.DataRow("入库码单号") = dr("入库码单号")
        End  If
    End  If
ElseIf e.DataCol.Name = "码单重量"  Then
    Dim dr As  DataRow
    dr =  DataTables("入库明细").Find("[入库码单号] = '" & e.DataRow("入库码单号") &  "'")
    If dr IsNot Nothing Then
        DataTables("入库明细").DataCols("入库码单号").RaiseDataColChanged
    End If
End  If


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


加好友 发短信
等级:三尾狐 帖子:600 积分:4339 威望:0 精华:0 注册:2013/11/2 18:22:00
  发帖心情 Post By:2022/3/22 11:35:00 [只看该作者]

 If dr IsNot Nothing Then

 

加Then 和不加 意思是一样吗?去掉If dr IsNot Nothing 就不计算了


 回到顶部
帅哥,在线噢!
有点蓝
  24楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107479 积分:546674 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/3/22 11:52:00 [只看该作者]

加Then 和不加 意思是一样,这个不可能会影响代码的执行

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


加好友 发短信
等级:三尾狐 帖子:600 积分:4339 威望:0 精华:0 注册:2013/11/2 18:22:00
  发帖心情 Post By:2022/3/22 12:06:00 [只看该作者]

输入计算出的的数据为什么会清空,是用错了跨表自动更新?

 回到顶部
帅哥,在线噢!
有点蓝
  26楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107479 积分:546674 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/3/22 13:33:00 [只看该作者]

ElseIf e.DataCol.Name = "码单重量"  Then
    Dim dr As  DataRow
    dr =  DataTables("入库明细").Find("[入库码单号] = '" & e.DataRow("入库码单号") &  "'")
    If dr IsNot Nothing Then
        DataTables("入库明细").DataCols("入库码单号").RaiseDataColChanged(dr )
    End If
End  If

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


加好友 发短信
等级:三尾狐 帖子:600 积分:4339 威望:0 精华:0 注册:2013/11/2 18:22:00
  发帖心情 Post By:2022/3/22 21:42:00 [只看该作者]

谢谢老师,可以了,帮助看了不下5遍编程还是不顺畅

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


加好友 发短信
等级:三尾狐 帖子:600 积分:4339 威望:0 精华:0 注册:2013/11/2 18:22:00
  发帖心情 Post By:2022/3/23 10:53:00 [只看该作者]

入库明细表

DataColChanged


    Dim d1  As  DataRow = e.DataRow
    Select Case e.DataCol.Name
        Case  "入库码单号"
            d1("码单重量") = DataTables("入库明细码单").Compute("Sum(码单重量)","[入库码单号] = '" & d1("入库码单号") & "'")
            d1("码单数量") = DataTables("入库明细码单").Compute("Sum(码单数量)","[入库码单号] = '" & d1("入库码单号") & "'")
        End  Select

 

入库明细表码单

DataColChanged

Select Case e.DataCol.Name
    Case  "码单重量"
        If e.DataCol.Name = "码单重量"   Then
            Dim dr2 As  DataRow
            dr2 =  DataTables("入库明细").Find("[入库码单号] = '" & e.DataRow("入库码单号") &  "'")
            If dr2 IsNot Nothing Then
                DataTables("入库明细").DataCols("入库码单号").RaiseDataColChanged(dr2)
            End  If
        End  If
    Case  "码单数量"
        If e.DataCol.Name = "码单数量"   Then
            Dim dr1 As  DataRow
            dr1 =  DataTables("入库明细").Find("[入库码单号] = '" & e.DataRow("入库码单号") &  "'")
            If dr1 IsNot Nothing Then
                DataTables("入库明细").DataCols("入库码单号").RaiseDataColChanged(dr1)
            End If
        End  If
    End  Select

 

入库明细表统计 码单数量  和 码单重量    代码可以简化下吗?

 

 


 回到顶部
帅哥,在线噢!
有点蓝
  29楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107479 积分:546674 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/3/23 11:05:00 [只看该作者]

Select Case e.DataCol.Name
    Case  "码单重量","码单数量"
            Dim dr2 As  DataRow
            dr2 =  DataTables("入库明细").Find("[入库码单号] = '" & e.DataRow("入库码单号") &  "'")
            If dr2 IsNot Nothing Then
                DataTables("入库明细").DataCols("入库码单号").RaiseDataColChanged(dr2)
            End  If
    End  Select

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


加好友 发短信
等级:三尾狐 帖子:600 积分:4339 威望:0 精华:0 注册:2013/11/2 18:22:00
  发帖心情 Post By:2022/3/24 22:41:00 [只看该作者]

入库明细码单删除一行时,入库明细统计的至不变,正确是要减少,请问怎么用代码处理

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