Foxtable(狐表)用户栏目专家坐堂 → [求助]根据不同的条件对不同行进行累计


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

主题:[求助]根据不同的条件对不同行进行累计

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/10 14:09:00 [显示全部帖子]

 你累计根据什么计算?

 

 参考流水账 http://www.foxtable.com/help/topics/1572.htm

 


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/10 14:45:00 [显示全部帖子]

  这个意思?DataCochanged事件

 

Select Case e.DataCol.Name
    Case "生产计划id", "本车数量"
        Dim drs As List(of DataRow)
        Dim Filter As String
        Filter = "[_SortKey] >= " & e.DataRow("_SortKey") & " And [生产计划id] = '" & e.DataRow("生产计划id") & "'"
        drs = e.DataTable.Select(Filter)
        For Each dr As DataRow In drs
            Filter = "[_SortKey] <= " & dr("_SortKey") & " And [生产计划id] = '" & dr("生产计划id") & "'"
            Dim Val1 As Double = e.DataTable.Compute("Sum(本车数量)",Filter)
            dr("累计数量") = Val1
        Next
        If e.DataCol.Name = "生产计划id" AndAlso e.OldValue IsNot Nothing AndAlso e.OldValue <> e.NewValue Then
            Filter = "[_SortKey] > " & e.DataRow("_SortKey") & " And [生产计划id] = '" & e.OldValue & "'"
            drs = e.DataTable.Select(Filter)
            For Each dr As DataRow In drs
                Filter = "[_SortKey] <= " & dr("_SortKey") & " And [生产计划id] = '" & dr("生产计划id") & "'"
                Dim Val1 As Double = e.DataTable.Compute("Sum(本车数量)",Filter)
                dr("累计数量") = Val1
            Next
        End If
End Select


 回到顶部