Ext.onReady(function () {

               Ext.define('personInfo', {

                   extend: 'Ext.data.Model',

                   fields: ['name', 'salary', 'country']

               });

               var datas = [//memory类型的Proxy中有一个配置项data,对应的值是可选的纪录的数组,用数组定义一条纪录中的各个item

                   ['刘一', 2500, 'China'],//因此就是利用了二维数组来定义。JS中定义数组有两种方式,利用Array定义和字面值定义,字面值

                   ['黄小珠', 1500, 'China'],//即是利用[]来定义数组变量值与Object变量的定义方式利用{}来定义是不同的。

                   ['李凡达', 2000, 'USA'],

                  ['柳小刀', 3000, 'India'],//

                ['杨宇', 2000, 'French']//





               ];

               var firstStore = Ext.create('Ext.data.Store', {

                   storeId: 'store1',

                   groupField: 'country',

                   model: 'personInfo',

                   proxy: {

                       type: 'memory',

                       data: datas,

                       reader: 'array'

                   },

                   autoLoad: true

               });

               var grid = Ext.create('Ext.grid.Panel', {

                   renderTo: Ext.getBody(),

                   width: 400,

                   height: 400,

                   title: '表格分组汇总特性',

                   frame: true,

                   store: Ext.data.StoreManager.lookup("store1"),

                   // selModel: { selType: 'checkboxmodel' },

                   //multiSelect: true,

                   tbar: [

                       {

                           text: '表格分组汇总特性',

                           handler: function () {

                               var msg = '';

                               var msg1 = { hobby: "fish" };

                               var rows = grid.getSelectionModel().getSelection();//返回值是Ext.data.Model[]

                               for (var i = 0; i < rows.length; i++) {

                                   msg = msg + rows[i].get('name') + '\n';//rows[i]是某条记录,利用Model的get函数取出记录中

                               }//指定字段的值。

                               //alert(msg);

                           }

                       }],

                   features: [Ext.create('Ext.grid.feature.GroupingSummary', {

                       groupByText: '用本字段分组', showGroupsText: '显示分组',

                       groupHeaderTpl: '国籍:{name} ({rows.length})', startCollapsed: true//设置初始渲染页面时收缩分组

                       //groupHeaderTpl中[name}即是分组根据字段名。rows.length就是每个分组中记录个数

                   })],





























                   columns: [

                     {

                         header: '姓名', dataIndex: 'name', width: 100, sortable: true,summaryType:'count',

                         summaryRenderer: function (value) { return "人数为:"+value}





                     },

                    {

                        header: '薪资', dataIndex: 'salary', flex: 1, summaryType: 'average',

                        summaryRenderer: function (value) { return "平均工资是:"+value}





                    },

                    { header: '国籍', dataIndex: 'country', flex: 1 }

                   ]

               });





           });

Grid分组汇总的更多相关文章

  1. gridpanel分组汇总

    [ExtJS5学习笔记]第三十节 sencha extjs 5表格gridpanel分组汇总 2015-05-31     86 本文地址:http://blog.csdn.net/sushengmi ...

  2. MongoDB分组汇总操作,及Spring data mongo的实现

    转载请在页首注明作者与出处 一:分组汇总 1.1:SQL样例 分组汇总的应用场景非常多,比如查询每个班级的总分是多少,如果用关系形数据库,那么sql是这样子的 ),class from score g ...

  3. 8第八章CTE递归及分组汇总高级部分(多维数据集)(转载)

    8第八章CTE递归及分组汇总高级部分(多维数据集) 这里贴图太麻烦...算了 UNION 等集合操作符: UNION 等以第一个 SELECT  的 列明 作为 整个结果集的列明,整个结果集 唯一认可 ...

  4. tidyverse|数据分析常规操作-分组汇总(sumamrise+group_by)

    | 本文首发于 “生信补给站” https://mp.weixin.qq.com/s/tQt0ezYJj3H7x3aWZmKVEQ 使用tidyverse进行简单的数据处理: 盘一盘Tidyverse ...

  5. Grid分组特性

    Ext.onReady(function () {                Ext.define('personInfo', {                    extend: 'Ext. ...

  6. 第八章 CTE 递归 及 分组汇总 高级部分(多维数据集)

    UNION 等集合操作符: UNION 等以第一个 SELECT  的 列明 作为 整个结果集的列明,整个结果集 唯一认可的 唯一逻辑处理阶段 是 ORDER BY  这个意思是说 只有 ORDER ...

  7. [ExtJS5学习笔记]第三十节 sencha extjs 5表格gridpanel分组汇总

    本文地址:http://blog.csdn.net/sushengmiyan/article/details/42240531 本文作者:sushengmiyan ------------------ ...

  8. SQL-26 (二次分组)汇总各个部门当前员工的title类型的分配数目,结果给出部门编号dept_no、dept_name、其当前员工所有的title以及该类型title对应的数目count

    题目描述 汇总各个部门当前员工的title类型的分配数目,结果给出部门编号dept_no.dept_name.其当前员工所有的title以及该类型title对应的数目countCREATE TABLE ...

  9. oracle分析函数系列之sum(col1) over(partition by col2 order by col3):实现分组汇总或递增汇总

    语法:sum(col1) over(partition by col2 order by col3 )  准备数据: DEPT_ID    ENAME          SAL1 1000       ...

随机推荐

  1. openerp 常见问题 OpenERP为什么选择了时区后时间还是不对?(转载)

    OpenERP为什么选择了时区后时间还是不对? 原文地址:http://cn.openerp.cn/%E4%B8%BA%E4%BB%80%E4%B9%88%E9%80%89%E6%8B%A9%E4%B ...

  2. python os模块使用方法

    os.path模块 basename('文件路径')    去掉目录路径,返回fname文件名  1 import os 2 os.path.basename('/Volumes/1.mp4')   ...

  3. python Django 学习笔记(三)—— 模版的使用

    模版基本介绍 模板是一个文本,用于分离文档的表现形式和内容. 模板定义了占位符以及各种用于规范文档该如何显示的各部分基本逻辑(模板标签). 模板通常用于产生HTML,但是Django的模板也能产生任何 ...

  4. 6.24AppCan移动开发者大会价值30万的展示机会归了谁?

    最近,小编的邮箱都被挤爆了! 来自开发者的邮件一封封涌进邮箱,VIP展位申请,TOP30 APP评选,感谢大家的积极参与,展位有限,APP名额有限,开发者的热情无限. 经过谨慎筛选.综合评定后,以下5 ...

  5. [整理]Selector、shape详解

    Selector.shape详解(一) Selector的结构描述: <?xml version="1.0" encoding="utf-8"?> ...

  6. 使用VMDepot镜像快速部署CKAN开放数据门户

    最新发布的CKAN VMDepot镜像针对中国用户强化了中文支持,提升了与MS Office办公软件的互操作性,并集成了常用插件和最佳实践配置参数. 使得CKAN原本十分复杂繁琐的部署流程变得非常简单 ...

  7. .net mvc通过ucenter和 discuz的整合,nopcommerce ucenter 插件的方式实现

    discuz无疑是目前市面上最好的论坛之一,对于大多数公司来说,用discuz搭建一个论坛肯定是最节约成本的选择,然而我们的会员想要和discuz进行整合的话,只有两种荀泽,一种直接选用discuz的 ...

  8. MYSQL 一些用法

    LOAD DATA LOCAL INFILE 'C:/xampp/htdocs/test/file/sample.csv' INTO TABLE sample1 FIELDS TERMINATED B ...

  9. licens 问题 Error (292028): Specified license is not valid for this machine

    集成网卡调试的时候坏了,造成了quartus 不可以用,MAC地址不对应了... 应该怎么解决呢??.

  10. Objective-C面向对象(四)

    1.协议(protocol)和委托 1.1 规范.协议与接口 OC中协议的作用就相当于其他语言中接口的作用.协议定义的是多个类共同的公共行为规范,协议通常定义一组公用方法,但不提供实现. 1.2 定义 ...