extjs分组查询
<script type="text/jscript">
var grid;
Ext.onReady(function () {
Ext.QuickTips.init();
var reader = new Ext.data.Record.create([
{ name: 'DWDM', type: 'string' }
, { name: 'AZFS', type: 'string' }
, { name: 'ND', type: 'string' }
, { name: 'MXMC', type: 'string' }
, { name: 'ZX', type: 'string' }
, { name: 'ZD', type: 'string' }
, { name: 'PJZ', type: 'string' }
, { name: 'TQJG', type: 'string' }
, { name: 'TBZJL', type: 'string' }
, { name: 'SL', type: 'string' }
, { name: 'SR', type: 'string' }
]);
var views = new Ext.grid.GroupingView({
groupTextTpl: '{text} ({[values.rs.length]} {[values.rs.length > 1 ? "条" : "条"]})',
startCollapsed: true
});
//Ext.getBody().mask("数据重新加载中,请稍等");
//Ext.getBody().unmask();//去除MASK var store = cs(new Ext.data.GroupingStore({})); //首次加载的数据源
function cs(url) {
var store = new Ext.data.GroupingStore({
proxy: new Ext.data.HttpProxy({ url: url }),
sortInfo: { field: "MXMC", direction: "ASC" },
groupField: "MXMC",
reader: new Ext.data.JsonReader({
totalProperty: 'total',
root: 'rows',
successProperty: 'success',
fields: ['DWDM', 'AZFS', 'ND', 'MXMC', 'ZX', 'ZD', 'PJZ', 'TQJG', 'TBZJL', 'SL', 'SR']
})
});
store.addListener({
beforeload: function (store, records, options) {
Ext.getBody().mask("数据重新加载中,请稍等");
}
});
store.load({ params: { start: 0, limit: 100000 }, callback: function (records, options, success) { Ext.getBody().unmask(); } });
return store;
}
function cs_(url) {
var store = new Ext.data.GroupingStore({
proxy: new Ext.data.HttpProxy({ url: url }),
sortInfo: { field: "ND", direction: "ASC" },
groupField: "ND",
reader: new Ext.data.JsonReader({
totalProperty: 'total',
root: 'rows',
successProperty: 'success',
fields: ['DWDM', 'AZFS', 'ND', 'MXMC', 'ZX', 'ZD', 'PJZ', 'TQJG', 'TBZJL', 'SL', 'SR']
})
});
store.addListener({
beforeload: function (store, records, options) {
Ext.getBody().mask("数据重新加载中,请稍等");
}
});
store.load({ params: { start: 0, limit: 100000 }, callback: function (records, options, success) { Ext.getBody().unmask(); } });
return store;
} //总和
var summary = new Ext.ux.grid.GridSummary();
//墓型销售全局变量
var MXXSTOTAL = "";
var cm = new Ext.grid.ColumnModel([
{ header: "陵园代码", hidden: true, sortable: true, dataIndex: 'DWDM', width: 100 }
, { header: "安葬方式", sortable: true, dataIndex: 'AZFS', width: 100 }
, { header: "年度", sortable: true, hidden: true, dataIndex: 'ND', width: 100 }
, { header: "墓型名称", sortable: true, hidden: true, dataIndex: 'MXMC', width: 100
, summaryType: 'count',
summaryRenderer: function (val, params, data) {
return val ? ((val == 0 || val > 0) ? '<span style="font-weight:bold;font-size:15;color:#0000FF" >合计:共(' + val + ')条' : '(1)') : '' + '</span>';
MXXSTOTAL = val;
}
}
, { header: "最小值", sortable: true, dataIndex: 'ZX', width: 100 }
, { header: "最大值", sortable: true, dataIndex: 'ZD', width: 100 }
, { header: "平均值", sortable: true, dataIndex: 'PJZ', width: 100 }
, { header: "去年同期", sortable: true, dataIndex: 'TQJG', width: 100 }
, { header: "同比增率", sortable: true, dataIndex: 'TBZJL', width: 100 }
, { header: "本年数量", sortable: true, dataIndex: 'SL', width: 100 }
, { header: "本年收入", sortable: true, dataIndex: 'SR', width: 100 }
]);
var cm_ = new Ext.grid.ColumnModel([
{ header: "陵园代码", sortable: true, dataIndex: 'DWDM', width: 100 }
, { header: "安葬方式", sortable: true, dataIndex: 'AZFS', width: 100 }
, { header: "年度", sortable: true, hidden: true, dataIndex: 'ND', width: 100 }
, { header: "墓型名称", sortable: true, hidden: true, dataIndex: 'MXMC', width: 100
, summaryType: 'count',
summaryRenderer: function (val, params, data) {
return val ? ((val == 0 || val > 0) ? '<span style="font-weight:bold;font-size:15;color:#0000FF" >合计:共(' + val + ')条' : '(1)') : '' + '</span>';
MXXSTOTAL = val;
}
}
, { header: "最小值", sortable: true, dataIndex: 'ZX', width: 100 }
, { header: "最大值", sortable: true, dataIndex: 'ZD', width: 100 }
, { header: "平均值", sortable: true, dataIndex: 'PJZ', width: 100 }
, { header: "去年同期", sortable: true, dataIndex: 'TQJG', width: 100 }
, { header: "同比增率", sortable: true, dataIndex: 'TBZJL', width: 100 }
, { header: "本年数量", sortable: true, dataIndex: 'SL', width: 100 }
, { header: "本年收入", sortable: true, dataIndex: 'SR', width: 100 }
]);
//单位查询下拉框Store
var store_DW = new Ext.data.JsonStore({
url: "/YWBLDJ/SelectDWMC_Data"
, totalProperty: 'total'
, root: 'rows'
, fields: [{ name: 'DWDM' }, { name: 'DWMC'}]
});
//单位查询
var combDW = new Ext.form.ComboBox({
emptyText: '请选择'
, id: 'comb_DWCX'
, width: 200
, triggerAction: 'all'
, lazyRender: true
, valueField: 'DWDM'
, displayField: 'DWMC'
, store: store_DW
, allowBlank: false
, lazyRender: true
, listClass: 'x-combo-list-small'
})
grid = new Ext.grid.GridPanel({
labelAlign: 'center',
plugins: [summary],
store: store,
cm: cm,
frame: true,
view: views,
tbar: [
{ xtype: 'tbtext', text: '单位名称:' }, combDW, '-',
{ text: '墓型', pressed: true, handler: function () { query("mx"); }, iconCls: 'searchIcon' }
, '-'
, { text: '年度', pressed: true, handler: function () { query("date"); }, iconCls: 'searchIcon' }
],
width: document.documentElement.clientWidth,
height: document.documentElement.clientHeight,
title: '墓碑价格分析表',
loadMask: { msg: '正在加载数据,请稍侯……' },
renderTo: 'grid',
loadMask: true
}); function query(typ) {
var lymc = Ext.getCmp("comb_DWCX").getValue();
if (lymc == "") {
var r = window.confirm("没有输入查询条件,这样可能造成查询时间超长,确认查询?");
if (!r) { return; }
}
var url = "/MXJGFX/GetMXND?" + "lymc=" + lymc + "";
if (typ == "mx") {
store = cs(url);
grid.reconfigure(store, cm);
} else { store = cs_(url);
grid.reconfigure(store, cm_);
} }
});
</script>
extjs分组查询的更多相关文章
- MySQL时间分组查询
表TESTER 字段:id -- INT date -- TIMESTAMP 1.如何按年.月.日分组查询? select DATE_FORMAT(date,'%Y-%m-%d') time, ...
- 关系数据库SQL之基本数据查询:子查询、分组查询、模糊查询
前言 上一篇关系数据库常用SQL语句语法大全主要是关系型数据库大体结构,本文细说一下关系型数据库查询的SQL语法. 语法回顾 SELECT [ALL|DISTINCT] <目标列表达式>[ ...
- Hibernate 分组查询 子查询 原生SQL
分组查询: 使用group by关键字对数据分组,使用having关键字对分组数据设定约束条件,从而完成对数据分组和统计 1.1 聚合函数:常被用来实现数据统计功能 ① count() 统计记录条数 ...
- mysql 分组查询问题 group_concat
这几天在做购物车的时候.购物车内的商品为一个商品占一行,结果再从数据库读出的时候,没有分组,而是循环所有的内容出来,然后进行判断.如果一样的话就把他保存到一个变量中.但是自己逻辑没搞清楚.一直出bug ...
- mongodb 分组查询
数据的保存 include_once 'mDB.class.php'; $m=new mDB(); $m->setDB('mydb'); // $m->save('stu',['dept' ...
- 08章 分组查询、子查询、原生SQL
一.分组查询 使用group by关键字对数据分组,使用having关键字对分组数据设定约束条件,从而完成对数据分组和统计 1.1 聚合函数:常被用来实现数据统计功能 ① count() 统计记录条数 ...
- Mongodb for C# 分组查询
#region 排序获取集合 static List<BsonDocument> GetPagerWithGroup(string connectionString, string dat ...
- SQL分组查询group by
注意:select 后的字段,必须要么包含在group by中,要么包含在having 后的聚合函数里. 1. GROUP BY 是分组查询, 一般 GROUP BY 是和聚合函数配合使用 group ...
- SQL group by分组查询(转)
本文导读:在实际SQL应用中,经常需要进行分组聚合,即将查询对象按一定条件分组,然后对每一个组进行聚合分析.创建分组是通过GROUP BY子句实现的.与WHERE子句不同,GROUP BY子句用于归纳 ...
随机推荐
- Android Studio 单刷《第一行代码》系列 04 —— Activity 相关
前情提要(Previously) 本系列将使用 Android Studio 将<第一行代码>(书中讲解案例使用Eclipse)刷一遍,旨在为想入坑 Android 开发,并选择 Andr ...
- SQL优化之索引
最近碰到一个问题,因数据量越来越大,然后存储过程查询过慢!后来发现没有加索引列导致的!从这里让我开始慢慢去了解索引的原理及作用!以下是我的总结,个人理解只供参考: SQL SERVER提供了两种索引: ...
- Excel 隐藏功能区命令
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)"
- CSS样式表引用方式
最近讲课中,有些学员对调用样式表老是有含糊不清?大体说来有四种方式: 1.外部文件引用方式;(推荐使用) 2.使用@import引用外部CSS文件; 3.内部文档头方式也叫内嵌法调用; 4.直接插入式 ...
- Hibernate关系级别注解
最近在学习Hibernate的相关知识,这一站学习的是Hibernate的注解相关的操作和知识.在这里标注以下为以后查阅和需要帮助的朋友提供便利. 一. 开发环境的搭建: 1. 需要的jar包配置: ...
- [转载]iframe跨域
最近做的一个项目中需要ajax跨域取得数据,如果是在本域中确实没有问题,但是放到二级域和其他域下浏览器直接就弹出提示框:“该页正在访问其控制范围之外的数据,这有些危险,是否继续" 1.什么引 ...
- 认识FiddlerScript
FiddlerScript 是Fiddler 的一项非常强大的功能,它允许你增强Fiddler UI,添加新的特性,修改请求与响应内容等等... 1.编写FiddlerScript FiddlerSc ...
- HDU4608+模拟
简单的模拟题. 暴力枚举 /* 模拟 */ #include<algorithm> #include<iostream> #include<string.h> #i ...
- Java将整个文件夹里的文本中的字符串替换成另外一个字符串(可用于项目复制,变成另一个项目)
import org.junit.Test; import java.io.*; /** * User: HYY * Date: 13-8-18 * Time: 下午8:11 * To change ...
- 哈希值识别工具hash-identifier
Hash Identifier可以用来识别各种类型的哈希值.在kali上使用方法很简单 (1)搜索hash-identifier (2)在HASH后面输入要识别的hash内容 (3)识别成功 wind ...