![dvubb 图片点击可在新窗口打开查看](skins/default/filetype/jpg.gif)
此主题相关图片如下:新版foxtable之结果.jpg
![dvubb 图片点击可在新窗口打开查看](UploadFile/2021-6/20216246104331927.jpg)
![dvubb 图片点击可在新窗口打开查看](skins/default/filetype/jpg.gif)
此主题相关图片如下:旧版foxtable结果.jpg
![dvubb 图片点击可在新窗口打开查看](UploadFile/2021-6/2021624611118494.jpg)
偶然的原因发现2021.5.29版本当中datatable.getvalues方法有bug,有时候不能区分大小写,导致提取的值有重复的,以至于据此生成的报表也产生了错误。
我比较了旧的2020.5.1版本的计算结果,用同样的代码,链接同样的数据库(sql server),报表结果是不一样的。旧版的结果是对的。
诡异之处似乎并不是所有的大小写单词都不能区分,只有个别情况有问题。请仔细查查吧,估计你们不会很容易复现的,但请不要轻易放过了。这个bug带来的后果挺严重,会计年报都给做错了。
我把我的报表结果源代码附上,问题肯定出在Dim CustomerIDs As List (of String) = DTB.GetValues("CustomerID", , "CustomerID asc") 的代码上。
另外我手工读了数据库,把customerID="Wyatt"名下的记录都看了个遍,并没有发现有小写字母开头的记录。所以这个报表结果就更诡异了一些。
[此贴子已经被作者于2021/6/24 6:15:45编辑过]