以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  交叉统计汇总行出现小数溢出  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=7983)

--  作者:易服
--  发布时间:2010/8/26 16:51:00
--  交叉统计汇总行出现小数溢出

交叉统计汇总行出现小数溢出(分组统计不会)。有什么办法?


图片点击可在新窗口打开查看此主题相关图片如下:2010-8-26 16-34-15.png
图片点击可在新窗口打开查看

[此贴子已经被作者于2010-8-26 16:51:43编辑过]

--  作者:狐狸爸爸
--  发布时间:2010/8/26 17:11:00
--  

做个简单的例子传上来。


--  作者:易服
--  发布时间:2010/8/26 17:20:00
--  

是外部数据的做例子比较麻烦,不用红色部分就不会出现小数溢出,代码如下:

Dim g As New CrossTableBuilder("交叉统计", DataTables("总览"))
g.HGroups.AddDef("乡名")
g.VGroups.AddDef("造林年度","{0}年_总面积")
g.Totals.AddDef("保存面积","总面积")
g.HorizontalTotal = True
g.VerticalTotal = True

g.HorizontalProportion = True
g.VerticalProportion = True
g.Build()
MainTable = Tables("交叉统计")
Tables("交叉统计").Sort = "合计 DESC" \'降序
Tables("交叉统计").AutoSizeCols()  \'自动列宽
Tables("交叉统计").Cols.Frozen = 2  \'冻结前二列


--  作者:狐狸爸爸
--  发布时间:2010/8/26 17:26:00
--  
将总览这个数据表传上来
--  作者:易服
--  发布时间:2010/8/26 18:04:00
--  

有近13M传不了,已经发到你的信箱hehui@datasoft.com.cn


--  作者:狐狸爸爸
--  发布时间:2010/8/27 8:11:00
--  

谢了,17.8兆,确实很大,以后没有必要传整个系统,导出此表,保留少量能体现此错误的数据即可,压缩后传。


--  作者:易服
--  发布时间:2010/8/27 8:39:00
--  
以下是引用狐狸爸爸在2010-8-27 8:11:00的发言:

谢了,17.8兆,确实很大,以后没有必要传整个系统,导出此表,保留少量能体现此错误的数据即可,压缩后传。

之所以完整上传是为了你测试,难道小数溢出与数据源有关系吗?


--  作者:狐狸爸爸
--  发布时间:2010/8/27 9:11:00
--  

我按你3楼的代码,根本就无法运行,总览表哪里有"保存面积"和"总面积"这两列?

你应该给我能直接运行的东西给我。


--  作者:易服
--  发布时间:2010/8/27 9:27:00
--  

为了能说明问题上传主程序,只要是交叉统计就会出现问题,不一定要按三楼的代码。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:退耕还林数据管理系统.table

 

[此贴子已经被作者于2010-8-27 16:00:10编辑过]

--  作者:狐狸爸爸
--  发布时间:2010/8/27 9:32:00
--  

并非所有的交叉统计都有问题,而是统计某些列的时候有问题。

请直接给一段可以执行的统计代码。

要养成一个习惯,用最简单直观的方式,让其他人能够再现你所说的错误,否则太耽误时间了。

[此贴子已经被作者于2010-8-27 9:35:15编辑过]