以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  报错Value was either too large or too small for a Decimal  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=163029)

--  作者:ouyangfenghuan
--  发布时间:2021/4/21 12:03:00
--  报错Value was either too large or too small for a Decimal
Value was either too large or too small for a Decimal
今天填写送货单号时突然出现了这个报错,估计是鼠标选中 自动计算时的问题.要怎么改呢?

--  作者:ouyangfenghuan
--  发布时间:2021/4/21 12:05:00
--  
输入的数据是:
20210420E256

--  作者:有点蓝
--  发布时间:2021/4/21 12:07:00
--  
输入的数值超过了高精度类型Decimal值所能表示的范围,把送货单号改为字符列
--  作者:ouyangfenghuan
--  发布时间:2021/4/21 12:21:00
--  
这列已经是字符列了66的长度
图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20210421122148.png
图片点击可在新窗口打开查看

[此贴子已经被作者于2021/4/21 12:22:27编辑过]

--  作者:ouyangfenghuan
--  发布时间:2021/4/21 12:30:00
--  
检查代码如下图,而且已经注释计算代码了还是能计算
图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20210421122848.png
图片点击可在新窗口打开查看

--  作者:ouyangfenghuan
--  发布时间:2021/4/21 12:43:00
--  
找到原因了,原来代码太简单了.
老师要怎么加个判断呢?

\'Dim str1 As String = ""
\'Dim t As Table = CurrentTable
\'Str1 = Str1 & "计数:" & t.Aggregate(AggregateEnum.Count, t.TopRow, t.LeftCol, t.BottomRow, t.RightCol) & " "
\'Str1 = Str1 & "累计:" & t.Aggregate(AggregateEnum.Sum, t.TopRow, t.LeftCol, t.BottomRow, t.RightCol) & " "
\'Str1 = Str1 & "平均:" & t.Aggregate(AggregateEnum.Average, t.TopRow, t.LeftCol, t.BottomRow, t.RightCol) & " "
\'Str1 = Str1 & "最大:" & t.Aggregate(AggregateEnum.Max, t.TopRow, t.LeftCol, t.BottomRow, t.RightCol) & " "
\'Str1 = Str1 & "最小:" & t.Aggregate(AggregateEnum.Min, t.TopRow, t.LeftCol, t.BottomRow, t.RightCol) & " "
\'StatusBar.Message3 = str1
[此贴子已经被作者于2021/4/21 12:44:11编辑过]

--  作者:有点蓝
--  发布时间:2021/4/21 13:36:00
--  
放到try catch里http://www.foxtable.com/webhelp/topics/2070.htm