《润乾报表使用手册(可编辑修改word版).pdf》由会员分享,可在线阅读,更多相关《润乾报表使用手册(可编辑修改word版).pdf(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、报表使用手册 报表使用手册 XX 股份有限公司中国 济南 自定义报表使用手册-1-目录 1 概述.-3-2 安装.-3-2.1 准备好安装程序.-3-2.2 安装中的选项.-3-2.3 授权文件配置.-4-3 报表制作.-5-3.1 报表制作要求.-5-3.2 制作一张报表的步骤.-5-3.3 启动报表设计器.-6-3.4 连接数据源.-7-3.4.1 数据源对话框.-7-3.4.2 编辑数据源.-7-3.4.3 注意事项.-9-3.5 设计报表格式.-10-3.5.1 格式设计.-10-3.5.2 需注意事项.-11-3.6 定义参数.-11-3.6.1 参数的编辑.-11-3.6.2 常用
2、参数举例.-12-3.7 定义宏.-12-3.7.1 宏的编辑.-12-3.7.2 常用宏举例.-13-3.8 建立数据集.-13-3.8.1 数据集的编辑.-13-3.8.2 常用数据集举例.-14-3.9 设置单元格属性.-16-3.9.1 数据集在单元格中应用.-16-3.9.2 显示格式.-16-3.9.3 设置预警条件.-16-3.9.4 增加动态背景色.-17-3.9.5 按参数隐藏列.-17-3.9.6 主格应用.-17-3.10 报表预览.-18-3.11 报表发布.-18-4 报表部署.-19-4.1 部署位置.-19-4.2 Web 中显示.-19-5 重要概念.-20-5
3、.1 数据源.-20-5.2 数据集.-20-5.3 参数.-20-5.4 宏定义.-21-自定义报表使用手册-2-5.5 单元格.-22-5.6 主格.-22-6 常用函数.-24-6.1 数据集函数.-24-6.1.1 select().-24-6.1.2 select1().-24-6.1.3 count().-25-6.2 单元格函数.-25-6.2.1 if().-25-6.2.2 row().-25-6.2.3 value().-25-6.3 字符串函数.-25-6.3.1 pos().-25-6.3.2 mid().-25-6.4 数据类型转换函数.-25-6.4.1 dateT
4、ime().-25-6.4.2 str().-25-自定义报表使用手册-3-1 概述 该文档主要满足 iES-E200 电量采集系统中自定义报表制作编写。2 安装 2.1 准备好安装程序 2.2 安装中的选项 点击安装程序,安装过程中会出现一下选择界面,请注意选择;自定义报表使用手册-4-2.3 授权文件配置 启动报表设计器(启动方式参加 3.2),点击“系统/数据源”菜单,弹出窗口如下图所示:自定义报表使用手册-5-3 报表制作 使用自定义报表的一个显著特点需要显示的对象具有某一项相同的属性,若没有相同属性可以人工设置相同属性;方法一:对对象进行编码设置(可以利用母线、变压器编码信息进行人工
5、设置相同属性);方法二:可以将对象添加到其他电量公式中;3.1 报表制作要求 支持非自然日查询;支持非自然月查询;支持表码异常提示;日、多日、月报表通用;表码小数位数显示为 4 位;3.2 制作一张报表的步骤 自定义报表使用手册-6-定义数据源连接 连接数据源 设计报表格式 定义参数 定义宏 定义数据集 定义单元格表达式 预览报表 发布报表 3.3 启动报表设计器 启动报表设计器的方式有三种方法:方法一:在安装目录(比如默认的安装目录:C:Program FilesreportHomebin)寻找startup.bat 的程序文件,双击运行即可;方法二:从程序组中选择:开始-程序-润乾报表-润
6、乾报表设计器 方法三:安装完润乾报表之后,在桌面上会出现润乾报表设计器的快捷方式,双击即可。打开设计器 自定义报表使用手册-7-润乾报表设计器的主界面,如下图所示:3.4 连接数据源 3.4.1 数据源对话框 点击“配置/数据源”菜单,进入以下对话框:3.4.2 编辑数据源 如果有已编辑好的数据源,点击“连接”按钮。如果没有已编辑好的数据源,点击“新建”按钮,增加一个数据源,数据源的编辑界面如下:自定义报表使用手册-8-选择“关系型数据库”,点击“确定”按钮,进入下面的页面:在这里,我们将数据源名称命名为 jdbc/RCCEEI,数据库类型选择 ORACLE,客户端字符集选择 GBK,数据字符
7、集选择 GBK,驱动程序选择 oracle.jdbc.driver.OracleDriver,数据源 URL 为 jdbc:oracle:thin:数据库 IP:1521:db,用户为 XXX,密码为?,点击“确定”按钮,建立此数据源.自定义报表使用手册-9-至此,数据源建立完毕,点击“配置数据源”,选中要连接的数据源,点击“连接”按钮,连接词数据源。3.4.3 注意事项 需要和 tomcat 连接池配置一致:3.5 设计报表格式 3.5.1 格式设计 方法一:新建报表 新建报表并根据客户需求设计报表格式包含标题、报表头、数据区,如下图:自定义报表使用手册-10-方法二:导入 Excel 文件
8、 点击“文件/打开”菜单,弹出窗口如下图所示:选择客户提供的报表,点击打开。方法三:根据现有报表修改 打开现有的报表文件,修改该文件使其符合客户要求;3.5.2 需注意事项 边框设置 对齐设置(字符左对齐,数字右对齐,标题、序号居中)隐藏不显示的单元格(行属性和单元格属性向冲突时行属性优先)删除没有用到的单元格 3.6 定义参数 3.6.1 参数的编辑 点击“配置/参数”菜单,弹出窗口如下图所示:自定义报表使用手册-11-可以对参数进行添加、修改、删除等操作;参数的值是从网页传递过来,此处参数名称 应和网页一致;3.6.2 常用参数举例 st:starttime 简拼表示报表显示数据的开始时间
9、,目前用秒数表示;et:endtime 简拼表示报表显示数据的结束时间,目前用秒数表示;substaid:substationid 简 拼 表 示 变 电 站 ID;strhour:非自然日的开始时间的分钟数,8:00 表示为:480;strdatetype:报表的时间类型,1 为日报表,2 为月报表,3 为多日;lst:laststarttime 简拼表示报表显示数据的开始时间的去年同期时间,目前用秒数表示;let:lastendtime 简拼表示报表显示数据的结束时间的去年同期时间,目前用秒数表示;yearsecs:表示报表显示数据的开始时间的年初时间,目前用秒数表示;lyearsecs:
10、表示报表显示数据的开始时间的上一年的年初时间,目前用秒数表示;3.7 定义宏 3.7.1 宏的编辑 点击“配置/宏”菜单,弹出窗口如下图所示:自定义报表使用手册-12-可以对宏进行添加、修改、删除等操作;宏的赋值可以使用具体的数字、参数或者表达 式;3.7.2 常用宏举例 1、对参数进行处理的宏 startyear=mid(str(dateTime(st*1000),0,4);表示开始时间的年份。endyear=mid(str(dateTime(et*1000),0,4);表示开始时间的月份。startmonth=mid(str(dateTime(st*1000),5,7);表示结束时间的年份
11、。endmonth=mid(str(dateTime(et*1000),5,7);表示结束时间的月份。2、在数据集中进行替换的宏 3.8 建立数据集 3.8.1 数据集的编辑 点击“配置/数据集”菜单,弹出窗口如下图所示:自定义报表使用手册-13-可以对数据集进行添加、删除、修改等操作;常见数据集包括描述信息和历史数据数据集;描述信息数据集:计量点数据集、母线数据集、主变数据集、线路数据集、CT 数据集等;历史数据数据集:表码数据集、电量数据集等;3.8.2 常用数据集举例 母线供电量开关数据集:select a.id as id,a.name,a.parts_id as cparts_id,
12、b.parts_type,b.parts_id as parts_id,c.name as switch_name,b.start_date,b.end_date,c.voltage_level as voltage_level,b.parts_para as parts_para,b.cal_sign as cal_sign,d.voltage_level as gvoltage_level from calc_desc a,calc_para b,switch c,generatrix d where a.id=b.calc_id and a.parts_type=9 and a.part
13、s_id=d.id and a.parts_para=0 and c.id=b.parts_id and d.substation_id=$substaid and(b.start_date=$starttime)or(b.start_date=$endtime)CT 数据集:select mp_id,run_date,coef from ct where run_date=$starttime and mp_id in(select b.parts_id as parts_id from calc_desc a,calc_para b,switch c,generatrix d where
14、a.id=b.calc_id and a.parts_type=9 母线公式中的计量点 and a.parts_id=d.id and c.id=b.parts_id and d.substation_id=$substaid and(/公式时效判断 自定义报表使用手册-14-(b.start_date=$starttime)or(b.start_date=$endtime)order by run_date desc 电量数据集:SELECT mp_id,power_type,sum(total_value)as total_value from(select mp_id,mod(power
15、_type,10)+10 as power_type,sum(total_value)as total_value from mp_day_e$year WHERE datetime=$starttime and datetime$endtime and power_type20090101,false,true),即可按照输入参数隐藏列。3.9.6 主格应用 主要说明在同一张报表中有几个同一类型数据区(如在一张报表中分别显示该变电站能所有母线的计算分量的详细信息);可以根据实际情况分别对多条母线分别设置单元格属性,更方便的是采用人工干预主格的方式实现;以下图为例说明:1.首先在 A16 单元
16、格中设置需要显示的母线的 ID;2.在 17 行到 27 行完成一条母线的各类数据的赋值;3.从 17 行到 27 行设置左主格为 A16;3.10 报表预览 报表预览主要用于验证报表是否正确,点击工具栏中的预览图标,自定义报表使用手册-17-弹出参数赋值对话框,根据实际情况对各个参数赋值后,点击“确定”按钮;如果预览界面正常,说明我们报表建立成功 3.11 报表发布 参见报表部署。自定义报表使用手册-18-4 报表部署 4.1 部署位置 目前在下放置一些常见的报表模板部署时可以根据实际情况进行删减;目录结构-dayreport/放置日报表模板 -company/放置不需要选择厂站的日报表模板
17、 -substation/放置需要选择厂站的日报表模板 -monthreport/放置月报表模板 -company/放置需要选择厂站的月报表模板 -substation/放置需要选择厂站的月报表模板 4.2 Web 中显示 在 web 菜单“数据浏览”项中的“应用日报表”对应自定义日报表的显示、“应用月报表”对应自定义月报表的显示;自定义报表使用手册-19-5 重要概念 5.1 数据源 顾名思义,数据的来源。在数据源中存储了所有建立数据库连接的信息。就象通过指定文件名你可以在文件系统中找到文件一样,通过提供正确的数据源名称,你可以找到相应的数据库连接。数据源标准属性包括:1、databaseN
18、ame String 数据库名称,即数据库的 SID。2、dataSourceName String 数据源接口实现类的名称。3、description String 对数据源的描述。4、networkProtocol String 和服务器通讯使用的网络协议名。5、password String 用户登录密码。6、portNumber 数据库服务器使用的端口。7、serverName String 数据库服务器名称。8、user String 用户登录名。如果数据是水,数据库就是水库,数据源就是连接水库的管道,终端用户看到的数据集是管道里流出来的水。5.2 数据集 数据集是包含数据表的对象,
19、可以在这些数据表中临时存储数据以便在应用程序中使用。如果应用程序要求使用数据,则可以将该数据加载到数据集中,数据集在本地内存中为应用程序提供了待用数据的缓存。即使应用程序从数据库断开连接,也可以使用数据集中的数据。数据集维护有关其数据的更改的信息,因此可以跟踪数据更新,并在应用程序重新连接时将更新发送回数据库。5.3 参数 在我们设计一张报表的时候,很少有里面的数据是固定不变的,常常需要根据一些条件来过滤出我们想要的数据。这就需要通过参数的形式控制报表中的数据。下面,根据前面的报表,我们加入参数使它变成一张更灵活的报表。第一步:单击主菜单中的【配置】-【参数】。自定义报表使用手册-20-弹出“
20、参数编辑”窗体,如下图所示:第二步:点击【增加】按钮,新增一个参数,默认名称为“arg1”,名称可根据自己的需要来命名。这里我们把【名称】和【描述】分别改成“name”和“员工姓名”,【数据类型】我们选择默认的“字符串”。如下图所示:同样的方法增加一个“奖金”参数,【数据类型】设置为“数值型”。同样的方法增加一个“出生日期”参数,【数据类型】设置为“日期型”。同样的方法增加一个“性别”参数,【数据类型】设置为“字符串”。注:参数名称尽量用英文,中文容易在部署的时候出现乱码,徒增烦恼。在sql语句中不能使用参数 5.4 宏定义 自定义报表使用手册-21-宏是一个没有数据类型的字符串标识,在报表运
21、算之前,系统会全面搜索整张报表的表达式定义,将所有的宏名替换成宏值。利用宏可以在报表中动态的进行表达式的替换,根据用户传入的不同宏值,在报表中可以计算出不同的表达式结果,从而得到不同的报表信息,这样用户就不用根据不同的情况编制许多不同的报表了,大大减轻了用户的工作量。此外我们还可以利用宏来实现按一个数据集的任意字段查询,这是利用参数所不能实现的。其中:填报属性、数据集属性中的参数值,这两个地方目前不能用宏,其它地方的表达式都可以使用 属性值不能用宏,宏只能用在表达式中 表达式中的引用方法为$宏名 宏不能写在引号里面 5.5 单元格 任意选中一个单元格,在设计器的右边就会出现该单元格的属性列表,
22、大家可以看到,每个属性都有属性值和表达式两种,如下图所示:这两种有什么区别呢?首先,属性值和表达式是互斥的,定义了属性值,就不必定义表达式,定义了表达式,就不必定义属性值。其次,属性值是在编辑报表时就写死了的,在报表运行时不必经过运算,也不会被改变。例如:你在单元格的背景色的属性值中定义了红色,那么报表运行时,它就是红色,不会被运算,不会被改变。而属性的表达式在报表运行时,会被运算,该属性的最终属性值取决于表达式的运算结果值。例如:你在单元格的背景色的属性的表达式中编辑条件表达式,则满足不同的条件显示不同的颜色。在属性表达式中可以用“value()”来指代当前单元格的数据值。5.6 主格 根格
23、(报表首格)报表左上角的灰色单元格称为报表首格,也称为根格。它用于存储描述整个报表的属性。如下图所示:自定义报表使用手册-22-根格(报表首格)的书写规则为:0 这里要强调的是 0 而不是0 主格和附属格 单元格进行扩展的过程中,缺省情况下,相对于其右(下)边的单元格而言,扩展格是主动复制的,被称为其它格(其右/下的格)的主格,而其右(下)的单元格是被动跟随复制的,被称为扩展格的附属格或子格。主格和附属格是相对的概念,即某格是另一格的主格或附属格,不存在单独的主格和附属格。从主格的定义中看,显然只有扩展格才能是其它格的主格!要注意的是,在缺省情况下,扩展格左(上)的格并不是其附属格,只有右(下
24、)的格才是其附属格。特别地,某个单元格的主格属性可以人为被改变。自定义报表使用手册-23-6 常用函数 系统提供各种类型的函数,下面就常用的函数进行介绍;其他函数可以通过系统提供的帮助来学习。6.1 数据集函数 6.1.1 sel ect()从数据集的当前行集中选取符合条件的记录,例 1:ds1.select(name)从数据源 ds1 中选取 name 字段列的所有值,不排序 例 2:ds1.select(#2,true)从数据源 ds1 中选取第二个字段列的所有值并降序排列 例 3:ds1.select(name,false,sex=1)从数据源 ds1 中选取性别为男性(1)的 name
25、 字段列的值并升序排列 例 4:ds1.select(name,true,sex=1,id)从数据源 ds1 中选取性别为男性的 name 字段列的值并按 id 字段降序排列 6.1.2 sel ect 1()从数据集中按顺序检索到符合过滤条件的第一条记录,返回其 selectExp 值例 1:ds1.select1(name)自定义报表使用手册-24-返回数据集 ds1 中第一条记录的 name 字段值 例 2:ds1.select1(name,score90)从数据集 ds1 中检索出成绩大于 90 的记录,返回第一条记录的 name 字段值 6.1.3 count()计算数据集当前记录行
26、集中,满足条件的记录数 6.2 单元格函数 6.2.1 if()例 1:if(value()100,-65536,value()80,-16776961,-14336)表示当前格的值大于 100 时,返回-65536 颜色值,当前格的值小于等于 100 且大于 80 时,返回-16776961 颜色值,否则返回-14336 颜色值 6.2.2 row()取得当前单元格所在行的行号 6.2.3 val ue()取得当前单元格的值 6.3 字符串函数 6.3.1 pos()查找母串中子串的位置 例 1:pos(abcdef,def)返回:3 例 2:pos(abcdefdef,def,5)返回:6
27、 6.3.2 m i d()返回字符串的子串 例 1:mid(abcde,0)返回:abcde 例 2:mid(abcde,1,2)返回:b 例 3:mid(abcde,3)返回:de 6.4 数据类型转换函数 6.4.1 dat e Ti m e()将字符串或长整数转换成日期时间 例 1:dateTime(2006-01-01 10:20:30)返回:2006-01-01 10:20:30 例 2:dateTime(2006-01-01 10:20:30:111)返回:2006-01-01 10:20:30 例 3:dateTime(12345)返回:1970-01-01 08:00:12 6.4.2 str()自定义报表使用手册-25-将对象转换成字符型,转换过程中可以进行格式化例 1:str(123)返回值:123 例 2:str(arg1,yyyy 年 MM 月 dd 日),其中 arg1 为日期型参数,值为 1972-09-09,返回值:1972 年 09 月 09 日 例 3:str(3456.9876,¥#,#0.00)返回值:¥3,456.99