以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]表达式列统计报错 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=47468) |
-- 作者:lwj396086371 -- 发布时间:2014/3/10 23:25:00 -- [求助]表达式列统计报错 统计报错,不知咋解决,说明如下: 1、<销售订单>与<销售订单明细>为关联表 2、<销售订单明细>表中【金额】列为表达式列 3、因同种型号商品在销售时有可能单价不一样,所以统计时无法通过 【统计数量】*【单价】 计算,我的功能想实现该型号商品总共销售多少数量及总金额 碰到问题为:在代码中把<销售订单明细表>中【金额】列加入统计列就报错,取消【金额】列就好了 现附代码如下: Dim b As New SQLGroupTableBuilder("汇总统计","销售订单明细") b.Groups.AddDef("提货机型") 此主题相关图片如下:销售订单.png 此主题相关图片如下:销售订单明细.png |
-- 作者:sloyy -- 发布时间:2014/3/10 23:37:00 -- 表达式列无法直接统计,要换一种方式统计 |
-- 作者:有点酸 -- 发布时间:2014/3/11 8:25:00 -- Dim b As New SQLGroupTableBuilder("汇总统计","销售订单明细") b.Groups.AddDef("提货机型")
帮助有介绍表达式列的处理: http://www.foxtable.com/help/topics/1626.htm
[此贴子已经被作者于2014-3-11 8:25:03编辑过]
|
-- 作者:lwj396086371 -- 发布时间:2014/3/11 9:28:00 -- 关键是同种商品销售时单价不一样 |
-- 作者:狐狸爸爸 -- 发布时间:2014/3/11 9:34:00 -- 不影响统计结果的准确性,因为表达式计算的时候,是将每个订单明细的数量和单价相乘,得出金额,然后累计金额。
你可以测试一下 |
-- 作者:Bin -- 发布时间:2014/3/11 9:35:00 -- 金额列不要用表达式列,改为在DataColChanged用代码计算.即可. if e.datacol.name="单价" orElse e.datacol.name="数量" then if e.datarow.isnull("单价")=false andalso e.datarow.isnull("数量")=false then e.datarow("金额")=e.datarow("单价")*e.datarow("数量") end if end if
|
-- 作者:jnletao -- 发布时间:2014/3/11 9:38:00 -- 一句题外话建议,楼主 申请帮助时请在 标题里注明你 问题的关键词,这样即便于老师们提前预知,也便于将来各们同学遇到类似问题时搜索。 |
-- 作者:lwj396086371 -- 发布时间:2014/3/11 9:54:00 -- 改为表达式列,测试时,金额列出现了但是是空值【解决了】 [此贴子已经被作者于2014-3-11 9:56:10编辑过]
|
-- 作者:Bin -- 发布时间:2014/3/11 9:55:00 -- 上例子吧,或者考虑6楼的方案. |
-- 作者:lwj396086371 -- 发布时间:2014/3/11 10:21:00 -- 当某一种商品销售单价不是固定,在统计报表中又不想反映每一个销售单号,是不是表达式列就无法进行统计,表达式列只能用代码实现 |