以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  统计出现偏差  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=107682)

--  作者:13868960029
--  发布时间:2017/10/7 18:46:00
--  统计出现偏差
老师好,,

如图  月发电量列的值比发电总量列的值要大,,怎么回事呢?当月应该是相等的
图片点击可在新窗口打开查看此主题相关图片如下:11.png
图片点击可在新窗口打开查看

--  作者:有点甜
--  发布时间:2017/10/7 20:17:00
--  
Select Case e.DataCol.Name
    Case "名称","月期"
        If e.DataRow.IsNull("名称") = False AndAlso e.DataRow.IsNull("月期") = False Then
            Dim d As Date = e.DataRow("月期")
            Dim fd As Date = new Date(d.Year,d.Month,1)
            Dim ld As Date = fd.AddMonths(1)
            Dim filter As String = "名称=\'" & e.DataRow("名称") & "\' and 日期 >= #" & fd & "# and 日期 < #" & ld & "#"
            e.DataRow("发电总量") = DataTables("电站录入").Compute("Sum(日发电)","名称=\'" & e.DataRow("名称") & "\'")
            e.DataRow("月发电量") = DataTables("电站录入").Compute("Sum(日发电)", filter)
            e.DataRow("当月发电天数") = DataTables("电站录入").GetValues("日期", filter).count
            e.DataRow("当月最高发电量") = DataTables("电站录入").Compute("max(日发电)", filter)
            If e.DataRow("当月发电天数") > 0 Then
                e.DataRow("月均发电量") = e.DataRow("月发电量") / e.DataRow("当月发电天数")
            End If
            Dim fdr = DataTables("电站录入").find(filter, "日发电 desc")
            If fdr IsNot Nothing Then
                e.DataRow("当月最高发电日期") = fdr("日期")
            Else
                e.DataRow("当月最高发电日期") = Nothing
            End If
        End If
End Select

--  作者:13868960029
--  发布时间:2017/10/7 20:39:00
--  
老师 所有统计都没有了
图片点击可在新窗口打开查看此主题相关图片如下:1100.png
图片点击可在新窗口打开查看

--  作者:13868960029
--  发布时间:2017/10/7 21:00:00
--  统计全空

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

图片点击可在新窗口打开查看此主题相关图片如下:11000.png
图片点击可在新窗口打开查看
老师,,,我把事件写入到
图片点击可在新窗口打开查看此主题相关图片如下:1100.png
图片点击可在新窗口打开查看

--  作者:有点甜
--  发布时间:2017/10/7 21:32:00
--  

重置列即可

 

图片点击可在新窗口打开查看