EXTJS. Grid总计+oracle小计合计
2017-06-21 18:06
197 查看
1. 直接在客户端统计,动态的修改Grid(js 操作)。
实现代码function GridSum(grid)
{
var sum = 0;
grid.store.each(function(record){
sum += Number(record.data.money);
});
var n = grid.getStore().getCount();// 获得总行数
var p = new Ext.data.Record({
id: ’总计:’,
money:sum
});
grid.store.insert(n, p);// 插入到最后一行
}
//加载数据
store.load({
callback: function(r,options,success) {
if(!success)
alert(”数据加载失败!”);
GridSum(grid);
}
});
代码说明:
a). store为Ext.data.Store,取数据部分代码在这里就省略了;grid是Ext.grid.GridPanel,同上。
b). 注意GridSum不要写到load方法之后,否则数据还没加载完就动态插入一行,会看见闪一下就没有的现象,一定要注意加载完成后再调用统计的方法。
2. SQL内容拼接实现
select s_id, s_xh, s_zb_id, s_rylx,
uf_getNamebyID(‘ryxm’,s_rydm) s_rydm, s_gz, uf_getNamebyID(‘gw’,s_gw) s_gw, s_gznr, s_gzwcqk, n_sl, n_fz, sum(N_SL*n_fz) n_zf from RZ_GZRZDJ_CB2
group by s_id, s_xh, s_zb_id, s_rylx, s_rydm, s_gz, s_gw, s_gznr, s_gzwcqk, n_sl, n_fz
select ” s_id, ” s_xh, ” s_zb_id, ” s_rylx, ” s_rydm, ” s_gz, ‘合计:’ s_gw, ” s_gznr, ” s_gzwcqk, null n_sl, null n_fz,sum(N_SL*n_fz) n_zf from RZ_GZRZDJ_CB2
3. SQL小计+合计实现,这个SQL小计的是每个job有多少数量:
select decode(grouping(job) + grouping(deptno), 1, ‘小计’, 2, ‘总计’, job) job,sum(sal) sal, sum(nvl(comm, 0)) comm, decode(grouping(deptno), 1, count(*) || '条', deptno) deptno
from emp
group by rollup(job, deptno);
相关文章推荐
- SQL 数据增加 小计 及 合计行
- sql实现报表加小计、合计
- 用SQL实现统计报表中的"小计"与"合计"的方法详解
- 添加小计合计的数据行
- oracle 小计,合计的算法
- ------------------合计、小计的用法-----------------
- Sql分组合计小计查询
- 【转】 C#给DataTable添加序号、C#给DataTable添加合计、小计
- 一条语句轻松写出一个报表(含明细、小计、合计、总计)
- Oracle分组扩展函数的使用(主要增加小计及合计金额)
- T-SQL多个小计+合计,分类汇总
- 用SQL实现统计报表中的“小计”和“合计”
- SQL 数据增加 小计 及 合计行
- 用grouping求小计和合计
- Oracle 使用分析函数实现小计合计
- 用SQL实现统计报表中的(小计)和(合计)
- sql 查询数据小计 合计
- oracle 小计合计之 group by grouping sets
- sql 小计合计排序
- SQLSERVER 使用 ROLLUP 汇总数据,实现分组统计,合计,小计