这样的小计功能,用什么办法实现。最好在grid中实现这样的功能。别人的程序我在后台查看数据库语句是一样的
,但别人的程序选择小计功能就会出现上图的效果。这个有没有高手做过。。

解决方案 »

  1.   

    用cxGrid控件可以做到。
      

  2.   

    用cxTreeList也不错,和cxGrid一样方便
      

  3.   

    还可以用语句+filter实现。
      

  4.   

    数据库中生成需要的内容(包括小计、总计).我后来也是想的这个办法,但不知道如何生成。我只会把小计,和总计,单独生成一个表。但如何顺序显示到一个表或grid,就不会了。楼上的能给个实列,或提示不。
      

  5.   

    cxgrid 我现在能做到这个差不多的效果。但遇到两个问题,第一个是,借货在数据库都是正数,用cxgrid的sksum后是直接相加的。这样数据不对,我变通了,把贷改为负数到,相加是对了,但显示的时候又带个负号(-)这个-不知道在显示的时候能不能去了。还有就是我按两个列分组的。下面那个合计框上的提示文本不知道如何设置为不同的。我设计后,上下两组的提示都是小计,我想要的效果是,里面是小计,外面是总计
      

  6.   

    自己写SQL语句吧.是什么数据库,ORACLE 有函数可以使用的  
      

  7.   

    with #t1 (a001,a002,a003,a004,a005,a006)
    as
    (
    select '020008' a001, '0204167' a002, '单位' a003, '未包干工程' a004, '贷' a005, 1318.71 a006 
    union all 
    select '020008' a001, '0312805' a002, '分表到户' a003, '包干工程' a004, '借' a005, 17600 a006 
    union all 
    select '020008' a001, 'C200508418' a002, '分表到户' a003, '包干工程' a004, '借' a005, 12650 a006 
    union all 
    select '020008' a001, 'C200610576' a002, '分表到户' a003, '包干工程' a004, '借' a005, 30800 a006 
    )select * from (
    select a001 a000, a001, a002, a003, a004, a005, a006 from #t1
    union all
    select '合计' a000, a001, null a002, null a003, null a004, a005, sum(a006) a006 from #t1 group by a001, a005
    union all
    select '总计' a000, a001, null a002, null a003, null a004, null a005, sum(case when a005 = '贷' then 0 - a006 else a006 end) a006 from #t1 group by a001
    )aa
    order by a001, case when a000 = '总计' then 1 else 0 end, a005, case when a000 = '合计' then 1 else 0 end