《组态王软件详细教程第七讲报表格系统.doc》由会员分享,可在线阅读,更多相关《组态王软件详细教程第七讲报表格系统.doc(9页珍藏版)》请在课桌文档上搜索。
1、word第七讲报表系统第一节组态王嵌数据报表 本讲介绍报表系统的创建和格式设置 介绍报表函数 介绍报表系统的组态 介绍报表模板数据报表的用途数据报表是反应生产过程中的数据、状态等,并对数据进行记录的一种重要形式。是生产过程必不可少的一个部分。它即能反应系统实时的生产情况,也能对长期的生产过程进行统计、分析,使管理人员能够实时掌握和分析生产情况。组态王提供嵌式报表系统,工程人员可以任意设置报表格式,对报表进行组态。组态王为工程人员提供了丰富的报表函数,实现各种运算、数据转换、统计分析、报表打印等。即可以制作实时报表,也可以制作历史报表。另外,工程人员还可以制作各种报表模板,实现多次使用,以免重复
2、工作。制作实时数据报表8在组态王工具箱选择“报表窗口”工具,在报表画面上绘制报表。如下图所示:8双击报表窗口的灰色部分(表格单元格区域外没有单元格的部分),弹出“报表设计”对话框,对话框定义如下图所示:在“报表控件名”对话框中输入报表控件名称:实时数据报表 ,这个控件名会在报表函数中引用。在行数对话框中输入所要制作的报表的大致行数 15在列数对话框中输入所要制作的报表的大致列数 68单击对话框的“确认”按钮。则组态王报表画面如下图所示:8设置表头格式设计表头:选中“b1”到“e2”的单元格区域,从报表工具箱上单击“合并单元格”按钮,在报表工具箱的编辑框里输入文本“实时数据报表”,单击“输入”按
3、钮;或双击合并的单元格,使输入光标位于该单元格中,然后输入上述文本。单击报表工具箱中的“设置单元格格式”按钮,设置单元格格式如下:数字常规;字体隶书、规则、一号、红色;对齐方式:水平居中,垂直居中;图案设置单元格底纹颜色为灰色。如下图所示。8设计报表时间在单元格“d3”中显示当前日期,双击该单元格,然后输入函数“=Date($年,$月,$日)”。“e3”中显示当前时间,双击该单元格,然后输入“=Time($时,$分,$秒)”。设置单元格“d3”的格式为:常规日期(YYYY年MM月DD日)。设置单元格“e3”的格式为:常规时间(XX时XX分XX秒)。设置如下图所示:8设计报表格式显示变量的实时值
4、1、利用数据改变命令语言和报表函数。在a4单元格中输入“原料油液位”文本值,再选中b4单元格,然后在组态王的“数据改变命令语言”对话框中输入:注意“实时数据报表”是报表控件名称而不是画面名称。催化剂液位,成品油液位的实时值同样设置。则报表设计样式如下图所示:2、直接引用变量。在单元格直接插入变量,在该变量前加一个“”。如果没有等号会认为是个字符串。8 保存报表在开发状态下,在报表工具箱中点击保存按钮:,则弹出对话框如下图所示:选择保存路径,输入要保存的文件名,如上图所示。点击“保存”按钮,则实时数据报表就保存为实时数据报表.rtl 文件。这样保存的报表可供下次需要时调用。8运行组态王,则报表画
5、面如下图所示:这样,一个简单的实时数据报表就生成了。8报表打印 在画面中建一个打印按钮,在弹起时命令语言中输入如图所示:点击“确认”即可。保存画面,运行组态王,则单击“打印报表”,数据报表即可打印出来。注:报表单元格支持输入函数(比如数学函数和日期函数)和变量,但是前面必须有等号。制作历史数据报表组态王历史报表的创建和表格样式设计与实时数据报表方法是一样的,并可以通过调用历史报表查询函数加以实现。8表格设计根据实时数据报表的设计方法,设计的历史报表样式如下图所示:8 建立查询函数在组态王历史报表画面中建一个“报表查询”的按钮,在时命令语言中输入历史查询函数如下图所示:8查询历史数据运行组态王,
6、打开历史报表画面,点击“报表查询”按钮,弹出对话框如下图所示:在对话框中输入合适的查询参数值,然后单击“确定”按钮;依次查询催化剂液位、成品油液位。最后生成的历史数据报表如下图所示:注:组态王提供了丰富的报表函数以实现对历史数据的多种处理方法,用户可以根据实际要求设计需要的报表。除了前面所述,常用报表函数如下:ReportPageSetup 此函数在运行系统中对指定的报表进行页面设置。Reportprint此函数用于将指定数据报告文件(不是报表)输出打印机配置设定的打印口上。ReportPrint2(EV_STRING, EV_LONG|EV_STRING|EV_ANALOG|EV_DISC)
7、第二个参数为真,函数自动打印,否则弹出打印对话框ReportPrintSetup 此函数对指定的报表进行打印预览并且可输出到打印配置中指定的打印机上进行打印。ReportGetCellString获取指定报表的指定单元格的文本。ReportGetCellValue获取指定报表的指定单元格的数值。ReportGetColumns获取指定报表的列数。ReportGetRows获取指定报表的行数。ReportLoad将指定路径下的报表读到当前报表中来。ReportSaveAs将指定报表按照所给的文件名存储到指定目录下。ReportSetCellString将指定报表的指定单元格设置为给定字符串。Re
8、portSetCellString2将指定报表的指定单元格区域设置为给定字符串。ReportSetCellValue将指定报表的指定单元格设置为给定值。ReportSetCellValue2将指定报表的指定单元格区域设置为给定值。ReportSetHistData按照用户给定的参数查询历史数据。报表函数的详细使用请参看组态王函数速查手册或在线帮助。第二节用EXCEL作报表输出用户除了可以用组态王嵌报表进行报表的设计输出外,亚控公司还提供了用excel作历史报表输出的例子: kintable.xls文件。用户可以从组态王的安装路径下找到该文件。如组态王为默认安装路径c:programfilesk
9、ingview,则在该路径下可以找到kintable.xls文件。8双击kintable.xls ,弹出如下对话框:8单击“启用宏”按钮,进入到报表excel的报表画面,如下图所示:8点击画面中的菜单工具宏Visual Basic编辑器,则进入vba编程环境,如下图所示:点击菜单下方右边的过程列表框,选择“auto_open”项,如上图所示,则光标停在相应的子程序段,其中 ret = INI_HistoryRecord(0, 0, C:Program FilesKingviewExampleKingdemo2, 0, C:Program FilesKingviewExampleKingdemo
10、2)的INI_HistoryRecord( )函数用于初始化查询子系统,函数中第三个参数表示组态王的历史库路径,最后一个参数表示组态王的工程路径,用户只需要修改这两个路径为自己的工程设置即可,例:当前培训工程在“E:临时测试工程培训工程”下面,历史库路径也为当前工程路径,则函数设置为:ret = INI_HistoryRecord(0, 0, d:培训工程, 0, d:培训工程)保存所作的操作。保存完毕后,关闭编程环境,回到excel表的环境。8点击画面中的菜单报表历史报表项,弹出如下对话框,在对话框中输入要查询变量的起始时间、结束时间、时间间隔、然后点击“增加”按钮,输入所要查询的组态王变量:设置完后,按下“确定”按钮,则相应时间的历史数据变量在sheet1表中就生成了。9 / 9