列表页JS脚本模版:示例
('data23', 'data24', '--全部--');.
#end
3、数据对象建表方式
、按月建表
配置按月建表主要是数据量大后,按月分开数据可提高查询速度,但查询器按时间查询时不能跨月查询;
、非当前月 模式
当前月的表名为原始表名,其它月份为 ‘表名_201208’的形式;
、所有月 模式
都已 ‘表名_201208’ 的形式生成每个月份的表;
注意:设置完成后,都需要建立一个 数据表维护的 定时任务,并运行一下才会生成,如果当前数据对象已有数据,先将原表备份一下,生成的方式为:例如当前是8月份,会将原来带数据的表改名为 表名_201207 ,同时生成空数据的3张表(原始表名一个、表名_201209、表名_201210),需要做的工作有 将7月表中的8月数据导入到原始表名中,如果存在7月以前的数据,需要手动建立各个月份的表,并将相应月份的数据导入到表中。
配置管理级中添加 数据表维护 的定时任务:
查询器中from中的表名对应修改的方式:
crm_agt_rpt_${}_workorder_#cinDateFmt('yyyyMMdd', ${}, 'yyyyMM')
说明:适用于数据对象 按月建表模式为 所有月,call_date为条件中的日期字段;
#cinMonthTbl('cti_callstat', $parameterMap, 'rptTimeFrom', 'yyyyMMddHHmmss')
说明:适用于数据对象 按月建表模式为 非当前月,rptTime为条件中的日期字段;
、配置缓存表
可以对数据对象按1-7天的周期建立对应的缓存表,也需要添加 数据表维护的定时任务,查询器中from中的表名更改成缓存表的表名即可;
第三章:查询管理
查询器:就相当于一条select语句,实现对已存在的数据进行查询、统计,支持标准的mysql语法;
1、查询器注册
--基本信息--选项卡:
、标识
查询器的唯一标识,一般是数字,可以加字符;
、关键字
查询器对应的唯一key,标识查询器;
、数据源
对应数据库: 话单库(smp)、工单库(crm);
、名称
查询器显示的名称;
、FROM
组成查询语句的from,可以嵌套select语句;
常用模版示例:
crm_agt_rpt_${}_workorder_#cinDateFmt('yyyyMMdd', ${}, 'yyyyMM')
说明:适用于数据对象 按月建表模式为 所有月,call_date为条件中的日期字段;
#cinMonthTbl('cti_callstat', $parameterMap, 'rptTimeFrom', 'yyyyMMddHHmmss')
说明:适用于数据对象 按月建表模式为 非当前月,rptTime为条件中的日期字段;
注意:如果from中嵌入了比较复杂的多表查询时,最好把最外层的时间查询的值带入到内层的条件中,例如:
startTime >= '${}' and startTime <= '${}'
、WHERE
组成查询语句的条件,无特定条件时加上 1 = 1;
、GROUP
组成查询语句的分组条件;
、ORDER
组成查询语句的排序条件;
、操作列模版
对应显示数据页面 操作 栏中显示的 链接;
常用模版示例:注意涉及的参数名称一定要和查询器中字段取名一致,否则获取不到值,就存在问题了;
#set($fmtTime=\
.'))
查询器配置批量删除:
第一步:增加如下字段;
selectIds
stream_number
第二步:在查询器的js模版中添加如下代码
('OBJ_958888_1000', 'selectIds', '删除选中'); {}\id=\value=\'')\size=\maxlength=\
#end
SQL模版:
#if(${} == 'ROLE_CC_AGENT')
and (agent_id = '${}')
#else
#cinIfNotEmpty($value, '', '')
and (agent_id = '000010${}${value}')
#end
#end
结果页面截图:
查询条件字段实现模糊查询:
SQL模版:
#cinIfNotEmpty($value, '', '')
and (agent_id like '%${value}%')
#end
坐席只看自己的,班组长看本班组,质检看所有的条件,和上面结合使用:
设置 班组 条件的以下两项:
控件模版:
#if(${ != '' and (${} == 'ROLE_CC_AGENT' or ${} == 'ROLE_CC_MONITOR'))
${ == 'ROLE_CC_CHECKER')