页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

...

如:关闭数据库连接,文件流等,一般没有的话,不管它。

单列的演示的例子

代码块
languagejs
title单列的演示例子
linenumberstrue
importPackage(Packages.java.sql);

...


importPackage(Packages.smartbi.jjyh.module);

...

 
/**

...


服务器先调用init初始化,获取参数与输出字段

...


返回参数与输出字段的声明对象

...


*/

...


function init() {

...


	return {

...


		//参数列表

...


		params: [{

...


			id: 'ParamId', //参数ID

...


			name: 'ParamName', //参数名称

...


			alias: 'ParamAlias', //参数别名

...


			desc: 'ParamDesc', //参数描述

...


			nullable: true, //参数是否允许是空

...


			valueType: 'STRING' //参数数据类型:INTEGER | DOUBLE | LONG | STRING | DATETIME

...


			}],

...


		//输出字段

...


		fields: [{

...


			id: 'FieldId', //字段ID

...


			name: 'FieldName', //字段名称

...


			alias: 'FieldAlias', //字段别名

...


			desc: 'FieldDesc', //字段描述

...


			valueType: 'STRING' //字段数据类型:INTEGER | DOUBLE | LONG | STRING | DATETIME

...


			}]

...


	};

...


}

...

 
/**

...


获取数据,以二维数组返回。每个元素包含value属性

...


也可以返回smartbi.freequery.querydata.GridData对象

...


@param paramValues 参数值

...


@param from 开始行

...


@param count 返回的行数

...


@result 返回数据

...


*/

...


function getGridData(paramValues, from, count) {

...


	//通过 paramValues.get("参数ID") 获取参数值对象(包含value与displayValue属性)

...


	var val = paramValues.get("ParamId");

...

 
	//下面根据参数值取数

...


	//根据key取出它的值,并且key的value是一个集合

...


	var key = "categories"; //每个字段对应一个key

...


	var data = RedisService.getSet(key);

...

 
	var dataAry = [];

...


	dataAry = data.split("#");

...


	var dataLen = dataAry.length;

...

 
	var ret = [];

...


	for (var i = 1; i < dataLen; i++) {

...


		var tmp = [];

...


		var json = {

...


		value: dataAry[i]

...


		};

...


		if (val && val.value == dataAry[i]) {

...


			tmp.push(json);

...


			ret.push(tmp);

...


			}
	}
	if(ret.length == 0){

...


		ret = [[{}]];

...


	}

...


	return ret;

...


}

...

 
/**

...


获取总行数,只在usePaging=true时会被调用,若无法获取总行数则不要定义这个方法

...


*/

...


/*

...


function getRowCount() {

...


	return 10000;

...


}

...


*/

...

 
/**

...


关闭查询对象

...


*/

...


function close() {

...

 
}


多列的演示例子

代码块
languagejs
title多列的演示例子
linenumberstrue
importPackage(Packages.java.sql);

...


importPackage(Packages.smartbi.jjyh.module);

...

 
/**

...


服务器先调用init初始化,获取参数与输出字段

...


返回参数与输出字段的声明对象

...


*/

...


function init() {

...


	return {

...


		//参数列表

...


		params: [{

...


			id: 'ParamId', //参数ID

...


			name: 'ParamName', //参数名称

...


			alias: 'ParamAlias', //参数别名

...


			desc: 'ParamDesc', //参数描述

...


			nullable: true, //参数是否允许是空

...


			valueType: 'STRING' //参数数据类型:INTEGER | DOUBLE | LONG | STRING | DATETIME

...


			}],

...


		//输出字段

...


		fields: [{

...


				id: 'FieldId', //字段ID

...


				name: 'FieldName', //字段名称

...


				alias: 'FieldAlias', //字段别名

...


				desc: 'FieldDesc', //字段描述

...


				valueType: 'STRING' //字段数据类型:INTEGER | DOUBLE | LONG | STRING | DATETIME

...


			}, {

...


				id: 'FieldId1', //字段ID

...


				name: 'FieldName1', //字段名称

...


				alias: 'FieldAlias1', //字段别名

...


				desc: 'FieldDesc1', //字段描述

...


				valueType: 'STRING' //字段数据类型:INTEGER | DOUBLE | LONG | STRING | DATETIME

...


			}]

...


	};

...


}

...

 
/**

...


获取数据,以二维数组返回。每个元素包含value属性

...


也可以返回smartbi.freequery.querydata.GridData对象

...


@param paramValues 参数值

...


@param from 开始行

...


@param count 返回的行数

...


@result 返回数据

...


*/

...


function getGridData(paramValues, from, count) {

...


	//通过 paramValues.get("参数ID") 获取参数值对象(包含value与displayValue属性)

...


	var val = paramValues.get("ParamId");

...

 
	//下面根据参数值取数

...


	//根据key取出它的值,并且key的value是一个集合

...


	var key = "categories"; //每个字段对应一个key

...


	var key1 = "categories"; //每个字段对应一个key

...

 
	var data = RedisService.getSet(key);

...


	var data1 = RedisService.getSet(key1);

...


	var dataAry = [];

...


	var dataAry1 = [];

...


	dataAry = data.split("#");

...


	dataAry1 = data1.split("#");

...


	var dataLen = dataAry.length;

...


	var dataLen1 = dataAry1.length;

...


	var len = 0;

...


	if(dataLen > dataLen1){//取长度最短的作为数据的条数,否则越界

...


		len = dataLen1;

...

 
	}else{

...


		len = dataLen;

...

 
	}
	var ret = [];

...

 
	for (var i = 1; i < len; i++) {

...


	var tmp = [];

...


	var json = {

...


		value: dataAry[i]

...


	};

...


	var json1 = {

...


		value: dataAry1[i]

...


		};

...


	if(val && val.value == dataAry[i]){//数据筛选

...


		tmp.push(json);

...


		tmp.push(json1);

...


		ret.push(tmp);

...


		} 
	} 
	if(ret.length < 1) {

...


		return [

...


		[{}, {}]

...


		]
	}
	return ret;
} 
/**

...


获取总行数,只在usePaging=true时会被调用,若无法获取总行数则不要定义这个方法

...


*/

...


/*

...


function getRowCount() {

...


	return 10000;

...


}

...


*/

...

 
/**

...


关闭查询对象

...


*/

...


function close() { 
}

} 

取数方法介绍

取redis中List

RedisService.getList(key)

...