组态王日报表例程

合集下载

组态王历史报表、

组态王历史报表、

创建历史数据报表历史数据报表创建过程如下:1、新建一価面,名押为:历史数据报表iffli面.2、选择工具箱中的工1工具,在颅而上输入文字:历史数据报表。

3、选择工具箱中的悟1工具,在岡面上绘制一历史数据报表窗口,控件名称为:Reports,并设计表格,如图8・17所 _______________________________________________A i「1 肋史2 09 瑕料输覆桂3456图8-17历史数据报表查询利用组态王提供的ReportSetHistData?的数町从组态王记录的历史库中按折定的赴始时间和时间间隔査询指定变虽的数据,设置过程如下:1、在価面中添加一按饥,按伍文本为:历史数据报表査询.2、在按粗的弹起爭件中输入如下命令ifi言.如图8JS所示:3.设置完毕后单击“文件"菜单中的“全部存”命令.保存您所作的设置。

4、单击“文件”菜单中的“切换到XTEW”命令,运厅此紳面・笊击“历史数据报表査询”按钮.弹出报表历史査询对话框.如图&19所示,报表历史査询对话框分二个履性页:报表属性页、时何属性页.变虽属性页.报表属性页:在报表属性页中您可以设置报表査询的显示恪式,此属性页设置如图8-19 所示。

时间属性页:在时间屈性页中您町以设置査询的起止时间以及査询的时间间隔.如图所示:图8・19图8-20变量属性页:在变虽叫性页中您可以选择欲査询历史数据的变忙.如图8・21所示:5. 设置完毕后单击•确定”按钮.原料油液位变虽的历史数据即可显示在历史数摇报 表控件中.从而达到了历史数据吉询的目的.如图8-22所示:图 8-22历史数据报表的其它应用一、1分钟数据报表演示利用报表窗口丁具结合组态王提供的命令语育可实现一个1分钟的数据报表•设置过程 如下:0*06/11/12 06/11/12 06/11/12 06/1142 06/1212 06/11/12柿16:24:44 15:25:44 15:26:44 15:27:44 15:28:44 15:29:44历史效抿报表用 S-211、新建一fli面.名松为:1分钟数据报表画面・2、选择工具箱中的工1工具,在曲而上输入文字:1分钟数据报表。

组态王软件详细教程 第七讲 报表系统

组态王软件详细教程  第七讲 报表系统

第七讲报表系统第一节组态王内嵌数据报表➢本讲介绍报表系统的创建和格式设置➢介绍报表函数➢介绍报表系统的组态➢介绍报表模板数据报表的用途数据报表是反应生产过程中的数据、状态等,并对数据进行记录的一种重要形式。

是生产过程必不可少的一个部分。

它即能反应系统实时的生产情况,也能对长期的生产过程进行统计、分析,使管理人员能够实时掌握和分析生产情况。

组态王提供内嵌式报表系统,工程人员可以任意设置报表格式,对报表进行组态。

组态王为工程人员提供了丰富的报表函数,实现各种运算、数据转换、统计分析、报表打印等。

即可以制作实时报表,也可以制作历史报表。

另外,工程人员还可以制作各种报表模板,实现多次使用,以免重复工作。

制作实时数据报表在组态王工具箱内选择“报表窗口”工具,在报表画面上绘制报表。

如下图所示: 双击报表窗口的灰色部分(表格单元格区域外没有单元格的部分),弹出“报表设计”对话框,对话框定义如下图所示:→在“报表控件名”对话框中输入报表控件名称:实时数据报表,这个控件名会在报表函数中引用。

→在行数对话框中输入所要制作的报表的大致行数15→在列数对话框中输入所要制作的报表的大致列数6单击对话框的“确认”按钮。

则组态王报表画面如下图所示:设置表头格式设计表头:选中“b1”到“e2”的单元格区域,从报表工具箱上单击“合并单元格”按钮,在报表工具箱的编辑框里输入文本“实时数据报表”,单击“输入”按钮;或双击合并的单元格,使输入光标位于该单元格中,然后输入上述文本。

单击报表工具箱中的“设置单元格格式”按钮,设置单元格格式如下:数字—常规;字体—隶书、规则、一号、红色;对齐方式:水平—居中,垂直—居中;图案—设置单元格底纹颜色为灰色。

如下图所示。

设计报表时间在单元格“d3”中显示当前日期,双击该单元格,然后输入函数“=Date($年,$月,$日)”。

“e3”中显示当前时间,双击该单元格,然后输入“=Time($时,$分,$秒)”。

组态王历史报表、

组态王历史报表、

创建历史数据报表历史数据报表创建过程如下:1、新建一価面,名押为:历史数据报表iffli面.2、选择工具箱中的工1工具,在颅而上输入文字:历史数据报表。

3、选择工具箱中的悟1工具,在岡面上绘制一历史数据报表窗口,控件名称为:Reports,并设计表格,如图8・17所 _______________________________________________A i「1 肋史2 09 瑕料输覆桂3456图8-17历史数据报表查询利用组态王提供的ReportSetHistData?的数町从组态王记录的历史库中按折定的赴始时间和时间间隔査询指定变虽的数据,设置过程如下:1、在価面中添加一按饥,按伍文本为:历史数据报表査询.2、在按粗的弹起爭件中输入如下命令ifi言.如图8JS所示:3.设置完毕后单击“文件"菜单中的“全部存”命令.保存您所作的设置。

4、单击“文件”菜单中的“切换到XTEW”命令,运厅此紳面・笊击“历史数据报表査询”按钮.弹出报表历史査询对话框.如图&19所示,报表历史査询对话框分二个履性页:报表属性页、时何属性页.变虽属性页.报表属性页:在报表属性页中您可以设置报表査询的显示恪式,此属性页设置如图8-19 所示。

时间属性页:在时间屈性页中您町以设置査询的起止时间以及査询的时间间隔.如图所示:图8・19图8-20变量属性页:在变虽叫性页中您可以选择欲査询历史数据的变忙.如图8・21所示:5. 设置完毕后单击•确定”按钮.原料油液位变虽的历史数据即可显示在历史数摇报 表控件中.从而达到了历史数据吉询的目的.如图8-22所示:图 8-22历史数据报表的其它应用一、1分钟数据报表演示利用报表窗口丁具结合组态王提供的命令语育可实现一个1分钟的数据报表•设置过程 如下:0*06/11/12 06/11/12 06/11/12 06/1142 06/1212 06/11/12柿16:24:44 15:25:44 15:26:44 15:27:44 15:28:44 15:29:44历史效抿报表用 S-211、新建一fli面.名松为:1分钟数据报表画面・2、选择工具箱中的工1工具,在曲而上输入文字:1分钟数据报表。

组态王软件详细教程第七讲报表系统

组态王软件详细教程第七讲报表系统

组态王软件详细教程第七讲报表系统(总9页)-CAL-FENGHAI.-(YICAI)-Company One1-CAL-本页仅作为文档封面,使用请直接删除第七讲报表系统第一节组态王内嵌数据报表数据报表的用途数据报表是反应生产过程中的数据、状态等,并对数据进行记录的一种重要形式。

是生产过程必不可少的一个部分。

它即能反应系统实时的生产情况,也能对长期的生产过程进行统计、分析,使管理人员能够实时掌握和分析生产情况。

组态王提供内嵌式报表系统,工程人员可以任意设置报表格式,对报表进行组态。

组态王为工程人员提供了丰富的报表函数,实现各种运算、数据转换、统计分析、报表打印等。

即可以制作实时报表,也可以制作历史报表。

另外,工程人员还可以制作各种报表模板,实现多次使用,以免重复工作。

制作实时数据报表在组态王工具箱内选择“报表窗口”工具,在报表画面上绘制报表。

如下图所示:双击报表窗口的灰色部分(表格单元格区域外没有单元格的部分),弹出“报表设计”对话框,对话框定义如下图所示:在“报表控件名”对话框中输入报表控件名称:实时数据报表,这个控件名会在报表函数中引用。

在行数对话框中输入所要制作的报表的大致行数15本讲介绍报表系统的创建和格式设置介绍报表函数介绍报表系统的组态介绍报表模板在列数对话框中输入所要制作的报表的大致列数6单击对话框的“确认”按钮。

则组态王报表画面如下图所示:设置表头格式设计表头:选中“b1”到“e2”的单元格区域,从报表工具箱上单击“合并单元格”按钮,在报表工具箱的编辑框里输入文本“实时数据报表”,单击“输入”按钮;或双击合并的单元格,使输入光标位于该单元格中,然后输入上述文本。

单击报表工具箱中的“设置单元格格式”按钮,设置单元格格式如下:数字—常规;字体—隶书、规则、一号、红色;对齐方式:水平—居中,垂直—居中;图案—设置单元格底纹颜色为灰色。

如下图所示。

设计报表时间在单元格“d3”中显示当前日期,双击该单元格,然后输入函数“=Date($年,$月,$日)”。

组态王中的数据报表制作与保存.docx

组态王中的数据报表制作与保存.docx

组态王中的数据报表制作与保存组态王中的数据报表制作与保存摘要 : 本文主要介绍如果使用组态王来构建数据报表,并以EXCEL的格式在指定的文件路径保存。

关键字 : 组态王历史库数据报表制作保存一、引言数据报表是反应生产过程中的数据、状态等,并对数据进行记录的一种重要形式。

它既能反映系统实时的生产情况,也能对长期的生产过程进行统计、分析,使管理人员能够实时掌握和分析生产情况。

组态王提供内嵌式报表系统,工程人员可以任意设置报表格式,对报表进行组态。

组态王为工程人员提供了丰富的报表函数,实现各种运算、数据转换、统计分析、报表打印等。

既可以制作实时报表,也可以制作历史报表。

组态王还支持运行状态下单元格的输入操作,在运行状态下通过鼠标拖动改变行高、列宽。

另外,工程人员还可以制作各种报表模板,实现多次使用,以免重复工作。

二、数据报表的制作数据报表分为实时数据报表和历史数据报表 2 类。

报表的构建方法如下:在画面内,使用工具箱中的报表窗口按钮创建一个报表窗口,如图 1 所示。

图 1 创建后的报表窗口用鼠标双击报表窗口的灰色部分,弹出“报表设计”对话框,该对话框主要设置报表的名称、报表表格的行列数目以及选择套用表格的样式。

1 、制作实时数据报表实时数据报表是实时显示相关变量的数据值,在报表窗口的单元格中直接引用变量来实现。

在报表的单元格中直接输入“=变量名”,既可在运行时在该单元格中显示该变量的数值,当变量的数据发生变化时,单元格中显示的数值也会被实时刷新。

2、制作历史数据报表历史数据报表是从组态王的历史库中查询相关变量的历史数据,并在历史数据报表内显示,因此对历史数据报表要查询的数据必须设置历史记录属性。

在组态王中,离散型、整型和实型变量支持历史记录,字符串型变量不支持历史记录。

组态王的历史记录形式可以分为数据变化记录、定时记录( 最小单位为 1分钟 ) 和备份记录。

记录形式的定义通过变量属性对话框中提供的选项完成。

用组态王报表

用组态王报表

用组态王报表实现显示设备启动、停止时间和运行时长的方法在对设备的状态进行监控中,往往要取得一些参数来记录和分析设备的运行状况。

这其中就包括设备的启动时间、停止时间和运行的时长。

当然,组态软件不会有这样的功能,让我们轻易实现。

不过,通过组态软件的报表功能,再通过二次开发,写一些脚本语言。

实现起来倒也不难。

以下,以组态王为例,是对操作过程的描述,希望能够对需要的人有一些帮助。

总体思路:以一个项目为例。

在这个工程中,有21台设备的运行状态需要记录,他们的运行状态依次记录在报表中。

报表中的每一行都表示,此设备的一个运行周期。

由于设备状态在报表中依次排列,因此需要相应的变量来保存该设备状态所在的行数。

这样,当停止该设备时,才能将“停止时间”和“运行时长”填充到正确的位置。

这样,就需要建立21个内存整形变量。

由于报表中的记录依次排列,因此还需要一个变量来保存报表中最后一条记录的行数,这样才能顺序填充记录。

1、新建报表,并命名为“报表1”。

2、创建内存整形变量。

21个内存变量分别保存21个设备状态所在的行数。

1个内存变量保存报表中最后一条记录的行数。

3、编写自定义函数,好处是减少代码量,修改方便。

脚本内容具体如下//"var"是变量的名称,"name"是要显示在报表中的字符串,"varRow"是保存记录的行数//用年月日,时分秒,系统变量来组合形成日期。

//不用日期变量,因为其格式长度不确定,在后来的分解中会很麻烦。

string strY=StrFromInt(\本站点$年, 10 );string strM=StrFromInt(\本站点$月, 10 );string strD=StrFromInt(\本站点$日, 10 );string strH=StrFromInt(\本站点$时, 10 );string strMi=StrFromInt(\本站点$分, 10 );string strS=StrFromInt(\本站点$秒, 10 );//确定日期的格式,并使长度和位置固定if(\本站点$月<10) strM="0"+strM;if(\本站点$日<10) strD="0"+strD;if(\本站点$时<10) strH="0"+strH;if(\本站点$分<10) strMi="0"+strMi;if(\本站点$秒<10) strS="0"+strS;//组合,定义格式string str=strY+"-"+strM+"-"+strD+" "+strH+":"+strMi+":"+strS;//启动设备时,将“序号”、“名称”、“启动时间”填充到报表中if(var==1){long num=报表当前行-1;string id=StrFromInt(num, 10 );ReportSetCellString("报表1", 报表当前行, 1, id);//序号ReportSetCellString("报表1", 报表当前行, 2, name);//名称ReportSetCellString("报表1", 报表当前行, 3, str);//开始时间varRow=报表当前行;//所在行=报表当前行报表当前行=报表当前行+1;}//停止设备时else{string startStr=ReportGetCellString("报表1", varRow, 3);//从报表中取得开始时间//开始时间转换秒 2011-05-06 12:23:34string midY=StrMid(startStr, 1, 4 );string midM=StrMid(startStr, 6, 2 );string midD=StrMid(startStr, 9, 2 );string midH=StrMid(startStr, 12, 2 );string midMi=StrMid(startStr, 15, 2 );string midS=StrMid(startStr, 18, 2 );long lY=StrToInt(midY);long lM=StrToInt(midM);long lD=StrToInt(midD);long lH=StrToInt(midH);long lMi=StrToInt(midMi);long lS=StrToInt(midS);long startTime= HTConvertTime(lY,lM,lD,lH,lMi,lS);long endTime= HTConvertTime(\本站点$年,\本站点$月,\本站点$日,\本站点$时,\本站点$分,\本站点$秒);//结束时间转换秒//计算时间差long timeLength=endTime-startTime;//单位秒//秒转换为小时//timeLength=timeLength/3600;string endStr=StrFromInt(timeLength, 10 )+"秒";//将“停止时间”和“运行时长”填充到报表中ReportSetCellString("报表1", varRow, 4, str);//结束时间ReportSetCellString("报表1", varRow, 5, endStr);//时间长度}4、建立设备启动或停止的运行事件命令。

组态王报表演示说明

组态王报表演示说明

组态王报表演示说明报表演示说明1、本演示分为日报、月报、年报2、日报的生成:对于日报可以每小时输入一个数据,然后进行统计后每天生成一个报表日报生成的命令语言见事件命令语言的条件为:$分==0 && $秒==0,消失时注意:a、报表函数命令执行时报表控件所在的画面必须打开,因此对于画面不多的情况下可以在工程运行时将后台处理画面打开并隐含起来,同时所有其它的画面属性都应为覆盖式。

如果画面较多无法全部将画面属性设为覆盖式则可以在报表命令语言执行前执行打开画面的命令 b、在新的一天开始时需要使用新的报表文件,因此需要在调用前需要判断当天的报表文件是否已经创建,如果没有创建则需要进行创建 c、对于日报的统计主要针对每天持续运行的情况,对于不能保证持续运行的现场可以参照月报的统计方式b、报表的查询在日报查询页,可以对报表文件进行读取、删除等操作{string FileName1=InfoAppDir()+\日报\\\本站点\\$年, 0, \本站点\\$月, 0, \本站点\\$日, 0, \//自定义变量long return01=InfoFile( Filename1, 1, \\\\本站点\\$分 ); //判断日报目录下是否已经有当天的报表文件了 if (return01==0) {string FileName=InfoAppDir()+\报表\\日报.rtl\ReportLoad(\FileName=InfoAppDir()+\日报\\\本站点\\$年, 0, \月, 0, \日, 0, \ReportSaveAs(\}//如果没有报表文件则从报表目录下调取模板创建报表文件 ReportLoad(\ReportSetCellString(\本站点\\$日期); long hang=\\\\本站点\\$时+6;string timestr=time(\\\\本站点\\$时,0,0);ReportSetCellString(\ReportSetCellValue(\本站点\\颗粒物); ReportSetCellValue(\本站点\\颗粒物折算); ReportSetCellValue(\本站点\\SO2); ReportSetCellValue(\本站点\\SO2折算);ReportSetCellValue(\本站点\\NO2); ReportSetCellValue(\本站点\\NO2折算); ReportSetCellValue(\本站点\\流量); ReportSetCellValue(\本站点\\O2); ReportSetCellValue(\本站点\\温度); ReportSetCellValue(\本站点\\水分); ReportSaveAs(\}3、月报的生成月报中需要每天的统计数据,该数据为每天的平均值,如果需要其它的统计数据也可照此方法进行处理。

组态王 SCADA3.0报表例程

组态王 SCADA3.0报表例程

北京亚控科技发展有限公司
4
“报表系统应用例程”说明文档
图 7 日期时间控件属性 再添加文本“Text3”,模拟值输入和模拟值输出动画链接关联变量\\local\StepTime, 如图 8 所示。图 8 动画连接北京亚控科技发展有限公司
5
“报表系统应用例程”说明文档
第三步:添加、设置按钮 1)查询按钮: 打开图库精灵,在画面上添加一按钮,在按钮上再添加文本为:查询,该按钮按下 命令语言如下: long year1; long month1; long day1; long hour1; long minute1; long second1; long year2; long month2; long day2; long hour2; long minute2; long second2; long StartTime; long EndTime; year1=UIDateTime1.Year; month1=UIDateTime1.Month; day1=UIDateTime1.Day; hour1=UIDateTime1.Hour; minute1=UIDateTime1.Minute; second1=UIDateTime1.Second; year2=UIDateTime2.Year; month2=UIDateTime2.Month; day2=UIDateTime2.Day; hour2=UIDateTime2.Hour; minute2=UIDateTime2.Minute; second2=UIDateTime2.Second; string str=InfoAppDir()+"Report\model.rtl"; Report0.ReportLoad(str); Report0.SetCellString(2,4,\\local\$Date); //填写日期 StartTime=ConvertTimeToSecond(year1,month1,day1,hour1,minute1,second1,0); EndTime=ConvertTimeToSecond(year2,month2,day2,hour2,minute2,second2,0); Report0.SetTime(StartTime,EndTime,\\local\StepTime); Report0.SetHistData("\\local\temperature",2); Report0.SetHistData("\\local\pressure",3); Report0.SetHistData("\\local\flow",4); Report0.Query();

组态王报表功能实现方法

组态王报表功能实现方法

一种简单的组态王报表功能实现方法2010年04月24日星期六 15:18前段时间用组态王6.53做了一个小的画面组态,其中用到了KVADODBGrid控件来做报表,现总结如下。

一、准备工作第一步:在组态王工程管理器中新建一个项目,项目路径为D:\实验项目。

第二步:新建一个ACCESS数据库1、在“D:\实验项目”路径下新建一个 Microsoft Office Access 应用程序并命名为mydatabase.mdb;2、打开“控制面板\管理工具\ODBC数据源管理器”选择“系统DS N”选项;3、点击“添加”按钮创建新数据源,选择“Microsoft Access Driver(*.mdb)”;4、在数据源名处填下“mydata”,并选择数据库路径为“D:\实验项目\mydatabase.mdb”。

第三步:创建表格模板点击工程浏览器左侧的“SQL访问管理器”下的“表格模板”,新建一个表格并命名为Table。

在Table中添加所需记录的变量及日期参数,其中“日期”为定长字符串型,字符长度为10;其它诸如年、月、日、时、分则为浮点型,字符长度为1。

第四步:创建记录体点击工程浏览器左侧的“SQL访问管理器”下的“记录体”,新建一个表格并命名为Record,在Record中添加所需记录的变量及日期参数。

记录体用来定义Access数据表格字段与组态王变量之间的对应关系。

二、连接数据库第一步:在工程浏览器左侧的“数据库”下的“数据字典”中定义一个内存整型变量,并命名为ConnectID。

第二步:创立组态王与mydata数据源的连接,并以“表格模板”Table的格式在数据库中建立名为“TheDate”的表格,命令如下:SQLConnect( ConnectID, "dsn=mydata;uid=;pwd=");SQLCreateTable(ConnectID, "TheDate", "Table" );将上面两条命令填入“工程浏览器\命令语言\应用程序命令语言”下的“启动时”选项中。

组态王日报表例程资料讲解

组态王日报表例程资料讲解

组态王日报表的实现例程配置参考文档北京亚控科技发展有限公司技术部目录一、功能概述 (3)一、功能概述 (3)二、工程实例 (3)三、操作步骤: (3)1、定义设备: (3)2、定义变量: (3)3.制作画面: (4)3.1) 创建报表: (4)3.2) 创建日历控件: (6)4.进入运行系统: (10)四、注意事项 (11)图表图一报表 (4)图二报表设计 (5)图三日报表 (5)图四日历控件 (6)图五控件事件函数 (8)图六保存报表 (8)图七打印报表 (9)图八打印报表 (9)图九运行系统 (10)图十打印预览 (11)一、功能概述常规需求:很多工业现场会用到报表功能,而日报是其中最基本的一种报表形式。

日报表一般为每天整点的数据,每一个变量有24个数据。

组态王中的实现方法:利用组态王内置报表以及报表的函数来实现对日数据的查询生成日报表。

组态王内置报表的操作类似excel,操作简单、方便,并且组态王提供了大量的报表函数来实现各种复杂功能。

二、工程实例我们举一个例子来说明日报表的实现方法。

在此例程中我们定义五个变量,分别为“压力”、“温度”、“密度”、“电流”、“电压”,运行系统运行后记录历史数据,查询日报表数据时自动从历史数据中查询整点数据生成报表,并可以保存、打印报表。

下面就以此为例来演示完成这一要求的具体步骤。

三、操作步骤:1、定义设备:根据工程中实际使用得设备进行定义,本例程使用亚控的仿真PLC设备,使用“PLC-亚控-仿真PLC-串口”驱动,定义设备名称为”PLC”。

2、定义变量:在组态王中定义三个变量:压力(IO实数类型)、温度(IO实数类型)、密度(IO实数类型)。

压力变量:最小值0,最大值100,最小原始值0,最大原始值100,连接设备PLC,寄存器INCREA100,数据类型short,读写属性为只读,采集频率1000。

记录和安全区选择“数据变化记录”,变化灵敏度选择“0”。

组态王中的数据报表制作与保存

组态王中的数据报表制作与保存

组态王中的数据报表制作与保存组态王是一款常用的工业自动化软件,在工控领域内得到广泛应用。

在组态王中,可以通过界面配置的方式来实现自动化设备的运行控制和数据采集。

而对于数据的处理和展示,组态王提供了丰富的功能,其中数据报表的制作和保存是其中的重要功能之一。

本文将对组态王中数据报表制作和保存进行详细介绍。

1. 数据报表的制作在组态王中,数据报表的制作需要经过以下几个步骤:1.1 选择数据源首先,在组态王中选择需要展示的数据源,可以选择历史数据、实时数据、手动输入等多种数据源。

选择不同的数据源,会对后续报表的展示和数据处理产生不同的影响。

1.2 新建数据报表在选择了数据源之后,可以在组态王中新建数据报表。

新建数据报表的方法可以通过菜单栏“文件-新增-报表”来实现。

在新建报表时,需要指定报表的名称、报表的类型、和报表的模板。

报表的类型包括静态报表和动态报表,静态报表通常用于展示历史数据,而动态报表则用于实时展示实时数据和控制信息。

而报表的模板,则可以根据需要选择不同的报表样式,或者自定义报表模板。

1.3 设计报表模板在选择了报表模板之后,进入报表设计环节。

在报表设计环节中,需要完成以下几项工作:•将数据源字段拖放到报表中,以实现数据的展示。

•设计报表格式和样式,包括报表标题、表格格式、图表样式等。

•添加报表数据的筛选、过滤及排序方式,以满足不同场景下的数据展示需求。

•配置报表的输出方式,包括输出到本地、邮件、FTP等多种方式。

在完成了以上的工作之后,数据报表的制作就完成了。

此时,可以预览和调试报表,对格式进行微调等操作。

2. 数据报表的保存在组态王中,数据报表的保存可以分为两个部分:前端和后端。

2.1 前端保存在报表制作完成之后,可以通过菜单栏“报表-保存”或者快捷键CTRL + S来完成前端报表的保存。

前端保存包括以下内容:•报表的设计配置信息,包括字段、格式、样式、筛选排序等配置信息。

•报表的数据展示内容,例如表格、图表中的数据展示。

组态王报表功能实现方法

组态王报表功能实现方法

一种简单的组态王报表功能实现方法2010年04月24日星期六 15:18前段时间用组态王做了一个小的画面组态,其中用到了KVADODBGrid控件来做报表,现总结如下。

一、准备工作第一步:在组态王工程管理器中新建一个项目,项目路径为D:\实验项目。

第二步:新建一个ACCESS数据库1、在“D:\实验项目”路径下新建一个 Microsoft Office Access 应用程序并命名为;2、打开“控制面板\管理工具\ODBC数据源管理器”选择“系统DSN”选项;3、点击“添加”按钮创建新数据源,选择“Microsoft Access Driver(*.mdb)”;4、在数据源名处填下“mydata”,并选择数据库路径为“D:\实验项目\”。

第三步:创建表格模板点击工程浏览器左侧的“SQL访问管理器”下的“表格模板”,新建一个表格并命名为Table。

在Table中添加所需记录的变量及1日期参数,其中“日期”为定长字符串型,字符长度为10;其它诸如年、月、日、时、分则为浮点型,字符长度为1。

第四步:创建记录体点击工程浏览器左侧的“SQL访问管理器”下的“记录体”,新建一个表格并命名为Record,在Record中添加所需记录的变量及日期参数。

记录体用来定义Access数据表格字段与组态王变量之间的对应关系。

二、连接数据库第一步:在工程浏览器左侧的“数据库”下的“数据字典”中定义一个内存整型变量,并命名为ConnectID。

第二步:创立组态王与mydata数据源的连接,并以“表格模板”Table的格式在数据库中建立名为“TheDate”的表格,命令如下:SQLConnect( ConnectID, "dsn=mydata;uid=;pwd=");SQLCreateTable(ConnectID, "TheDate", "Table" );将上面两条命令填入“工程浏览器\命令语言\应用程序命令语言”下的“启动时”选项中。

组态王日报表制作

组态王日报表制作

组态王日报表制作步骤一、定义设备二、定义变量三、制作画面3.1添加画面3.2添加文本与报表3.3添加日历控件并在事件中编辑closeup插入通过控件,如图所示:选择后画到画面上,双击控件,在“常规”选项卡中为控件命名为“ADate”,点击“确定”,保存画面。

再次双击日历控件,选择“事件”选项卡,点击在“事件”选项卡中点击CloseUp事件,弹出控件事件函数编辑窗口,在函数声明中为此函数命名:CloseUp()在编辑窗口中编写脚本程序,在编写脚本程序之前在数据词典中定义字符串变量“选择日期”双击日历控件设置属性如下图程序如下:float Ayear;float Amonth;float Aday;long x;long y;long Row;long StartTime;string temp; Ayear=ADate.Year; Amonth=ADate.Month; Aday=ADate.Day;temp=StrFromInt( Ayear, 10 );if(Amonth<10)temp=temp+"-0"+StrFromInt(Amonth,10);elsetemp=temp+"-"+StrFromInt(Amonth,10);if(Aday<10)temp=temp+"-0"+StrFromInt(Aday,10);elsetemp=temp+"-"+StrFromInt(Aday,10);\\本站点\选择日期=temp;ReportSetCellString2("Report1",4,1,27,6,"");//清空单元格ReportSetCellString("Report1",2,2,temp);//填写日期StartTime=HTConvertTime(Ayear,Amonth,Aday,0,0,0);ReportSetHistData("Report1","\\本站点\IO实数1",StartTime,3600,"B4:B27");//ReportSetHistData("Report1","\\本站点\压力",StartTime,3600,"B4:B27");ReportSetHistData("Report1","\\本站点\温度",StartTime,3600,"C4:C27");ReportSetHistData("Report1","\\本站点\密度",StartTime,3600,"D4:D27");ReportSetHistData("Report1","\\本站点\电流",StartTime,3600,"E4:E27");ReportSetHistData("Report1","\\本站点\电压",StartTime,3600,"F4:F27");x=0;while(x<24){row=4+x;y=StartTime+x*3600;temp=StrFromTime(y,2);ReportSetCellString("Report1",row,1,temp);x=x+1;}添加选择日期变量如下图所示3.4添加打印和保存保存的程序如下:string filename;filename=InfoAppDir()+\\本站点\选择日期+".xls"; ReportSaveAs("Report0",filename);打印预览的程序如下ReportPrintSetup("Report0");详细设置请查看保存和打印文档四、进入运行系统运行系统结果如下图所示:。

组态王软件详细教程--第七讲-报表系统

组态王软件详细教程--第七讲-报表系统

组态王软件详细教程--第七讲-报表系统第七讲报表系统第⼀节组态王内嵌数据报表数据报表的⽤途数据报表是反应⽣产过程中的数据、状态等,并对数据进⾏记录的⼀种重要形式。

是⽣产过程必不可少的⼀个部分。

它即能反应系统实时的⽣产情况,也能对长期的⽣产过程进⾏统计、分析,使管理⼈员能够实时掌握和分析⽣产情况。

组态王提供内嵌式报表系统,⼯程⼈员可以任意设置报表格式,对报表进⾏组态。

组态王为⼯程⼈员提供了丰富的报表函数,实现各种运算、数据转换、统计分析、报表打印等。

即可以制作实时报表,也可以制作历史报表。

另外,⼯程⼈员还可以制作各种报表模板,实现多次使⽤,以免重复⼯作。

制作实时数据报表8 在组态王⼯具箱内选择“报表窗⼝”⼯具,在报表画⾯上绘制报表。

如下图所⽰:8 双击报表窗⼝的灰⾊部分(表格单元格区域外没有单元格的部分),弹出“报表设计”对话框,对话框定义如下图所⽰:è 在“报表控件名”对话框中输⼊报表控件名称:实时数据报表,这个控件名会在报表函数中引⽤。

本讲介绍报表系统的创建和格式设置介绍报表函数介绍报表系统的组态介绍报表模板è在⾏数对话框中输⼊所要制作的报表的⼤致⾏数15è在列数对话框中输⼊所要制作的报表的⼤致列数68 单击对话框的“确认”按钮。

则组态王报表画⾯如下图所⽰:8 设置表头格式设计表头:选中“b1”到“e2”的单元格区域,从报表⼯具箱上单击“合并单元格”按钮,在报表⼯具箱的编辑框⾥输⼊⽂本“实时数据报表”,单击“输⼊”按钮;或双击合并的单元格,使输⼊光标位于该单元格中,然后输⼊上述⽂本。

单击报表⼯具箱中的“设置单元格格式”按钮,设置单元格格式如下:数字—常规;字体—⾪书、规则、⼀号、红⾊;对齐⽅式:⽔平—居中,垂直—居中;图案—设置单元格底纹颜⾊为灰⾊。

如下图所⽰。

8 设计报表时间在单元格“d3”中显⽰当前⽇期,双击该单元格,然后输⼊函数“=Date($年,$⽉,$⽇)”。

组态王日报表例程

组态王日报表例程

组态王日报表的实现例程配置参考文档北京亚控科技发展有限公司技术部目录一、功能概述 (3)一、功能概述 (3)二、工程实例 (3)三、操作步骤: (3)1、定义设备: (3)2、定义变量: (3)3.制作画面: (4)3.1) 创建报表: (4)3.2) 创建日历控件: (6)4.进入运行系统: (12)四、注意事项 (13)图表图一报表 (5)图二报表设计 (5)图三日报表 (6)图四日历控件 (7)图五控件事件函数 (10)图六保存报表 (10)图七打印报表 (11)图八打印报表 (11)图九运行系统 (12)图十打印预览 (13)一、功能概述常规需求:很多工业现场会用到报表功能,而日报是其中最基本的一种报表形式。

日报表一般为每天整点的数据,每一个变量有24个数据。

组态王中的实现方法:利用组态王内置报表以及报表的函数来实现对日数据的查询生成日报表。

组态王内置报表的操作类似excel,操作简单、方便,并且组态王提供了大量的报表函数来实现各种复杂功能。

二、工程实例我们举一个例子来说明日报表的实现方法。

在此例程中我们定义五个变量,分别为“压力”、“温度”、“密度”、“电流”、“电压”,运行系统运行后记录历史数据,查询日报表数据时自动从历史数据中查询整点数据生成报表,并可以保存、打印报表。

下面就以此为例来演示完成这一要求的具体步骤。

三、操作步骤:1、定义设备:根据工程中实际使用得设备进行定义,本例程使用亚控的仿真PLC设备,使用“PLC-亚控-仿真PLC-串口”驱动,定义设备名称为”PLC”。

2、定义变量:在组态王中定义三个变量:压力(IO实数类型)、温度(IO实数类型)、密度(IO实数类型)。

压力变量:最小值0,最大值100,最小原始值0,最大原始值100,连接设备PLC,寄存器INCREA100,数据类型short,读写属性为只读,采集频率1000。

记录和安全区选择“数据变化记录”,变化灵敏度选择“0”。

组态王软件详细教程第七讲报表系统

组态王软件详细教程第七讲报表系统

组态王软件详细教程第七讲报表系统(总9页)-CAL-FENGHAI.-(YICAI)-Company One1-CAL-本页仅作为文档封面,使用请直接删除第七讲报表系统第一节组态王内嵌数据报表数据报表的用途数据报表是反应生产过程中的数据、状态等,并对数据进行记录的一种重要形式。

是生产过程必不可少的一个部分。

它即能反应系统实时的生产情况,也能对长期的生产过程进行统计、分析,使管理人员能够实时掌握和分析生产情况。

组态王提供内嵌式报表系统,工程人员可以任意设置报表格式,对报表进行组态。

组态王为工程人员提供了丰富的报表函数,实现各种运算、数据转换、统计分析、报表打印等。

即可以制作实时报表,也可以制作历史报表。

另外,工程人员还可以制作各种报表模板,实现多次使用,以免重复工作。

制作实时数据报表在组态王工具箱内选择“报表窗口”工具,在报表画面上绘制报表。

如下图所示:双击报表窗口的灰色部分(表格单元格区域外没有单元格的部分),弹出“报表设计”对话框,对话框定义如下图所示:在“报表控件名”对话框中输入报表控件名称:实时数据报表,这个控件名会在报表函数中引用。

在行数对话框中输入所要制作的报表的大致行数15本讲介绍报表系统的创建和格式设置介绍报表函数介绍报表系统的组态介绍报表模板在列数对话框中输入所要制作的报表的大致列数6单击对话框的“确认”按钮。

则组态王报表画面如下图所示:设置表头格式设计表头:选中“b1”到“e2”的单元格区域,从报表工具箱上单击“合并单元格”按钮,在报表工具箱的编辑框里输入文本“实时数据报表”,单击“输入”按钮;或双击合并的单元格,使输入光标位于该单元格中,然后输入上述文本。

单击报表工具箱中的“设置单元格格式”按钮,设置单元格格式如下:数字—常规;字体—隶书、规则、一号、红色;对齐方式:水平—居中,垂直—居中;图案—设置单元格底纹颜色为灰色。

如下图所示。

设计报表时间在单元格“d3”中显示当前日期,双击该单元格,然后输入函数“=Date($年,$月,$日)”。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

组态王日报表的实现例程配置参考文档北京亚控科技发展有限公司技术部目录一、功能概述 (3)一、功能概述 (3)二、工程实例 (3)三、操作步骤: (3)1、定义设备: (3)2、定义变量: (3)3.制作画面: (4)3.1) 创建报表: (4)3.2) 创建日历控件: (6)4.进入运行系统: (12)四、注意事项 (13)图表图一报表 (5)图二报表设计 (5)图三日报表 (6)图四日历控件 (7)图五控件事件函数 (10)图六保存报表 (10)图七打印报表 (11)图八打印报表 (11)图九运行系统 (12)图十打印预览 (13)一、功能概述常规需求:很多工业现场会用到报表功能,而日报是其中最基本的一种报表形式。

日报表一般为每天整点的数据,每一个变量有24个数据。

组态王中的实现方法:利用组态王内置报表以及报表的函数来实现对日数据的查询生成日报表。

组态王内置报表的操作类似excel,操作简单、方便,并且组态王提供了大量的报表函数来实现各种复杂功能。

二、工程实例我们举一个例子来说明日报表的实现方法。

在此例程中我们定义五个变量,分别为“压力”、“温度”、“密度”、“电流”、“电压”,运行系统运行后记录历史数据,查询日报表数据时自动从历史数据中查询整点数据生成报表,并可以保存、打印报表。

下面就以此为例来演示完成这一要求的具体步骤。

三、操作步骤:1、定义设备:根据工程中实际使用得设备进行定义,本例程使用亚控的仿真PLC设备,使用“PLC-亚控-仿真PLC-串口”驱动,定义设备名称为”PLC”。

2、定义变量:在组态王中定义三个变量:压力(IO实数类型)、温度(IO实数类型)、密度(IO实数类型)。

压力变量:最小值0,最大值100,最小原始值0,最大原始值100,连接设备PLC,寄存器INCREA100,数据类型short,读写属性为只读,采集频率1000。

记录和安全区选择“数据变化记录”,变化灵敏度选择“0”。

温度变量:最小值0,最大值50,最小原始值0,最大原始值100,连接设备PLC,寄存器DECREA100,数据类型short,读写属性为只读,采集频率1000。

记录和安全区选择“数据变化记录”,变化灵敏度选择“0”。

密度变量:最小值0,最大值1,最小原始值0,最大原始值100,连接设备PLC,寄存器INCREA100,数据类型short,读写属性为只读,采集频率1000。

记录和安全区选择“数据变化记录”,变化灵敏度选择“0”。

电流变量:最小值30,最大值50,最小原始值0,最大原始值100,初始值为30,连接设备PLC,寄存器DECREA100,数据类型short,读写属性为只读,采集频率1000。

记录和安全区选择“数据变化记录”,变化灵敏度选择“0”。

电压变量:最小值180,最大值250,最小原始值0,最大原始值100,初始值220,连接设备PLC,寄存器DECREA100,数据类型short,读写属性为只读,采集频率1000。

记录和安全区选择“数据变化记录”,变化灵敏度选择“0”。

3.制作画面:3.1) 创建报表:新建画面,画面名称“日报表”。

在组态王工具箱按钮中,用鼠标左键单击“报表窗口”按钮,此时,鼠标箭头变为小“+”字形,在画面上需要加入报表的位置按下鼠标左键,并拖动,画出一个矩形,松开鼠标键,报表窗口创建成功,如图一所示。

图一报表用鼠标双击报表窗口的灰色部分(表格单元格区域外没有单元格的部分),弹出“报表设计”对话框,如图二所示。

该对话框主要设置报表的名称、报表表格的行列数目以及选择套用表格的样式。

我们设置报表名称为“Report0”,行数为27,列数为6。

图二报表设计我们根据需要对报表的格式进行设置,如报表的表头,标题等。

我们选中单元格A1到F1,点击右键弹出快捷菜单,选择“合并单元格”,单元格合并后我们填写标题,如“监控系统日报表”,点击右键在快捷菜单中选择“设置单元格格式”,设置字体、对齐方式、边框等。

我们按照此方法设计日报表的格式,如图三所示:图三日报表3.2) 创建日历控件:我们按照日期进行历史数据的查询生成日报表,使用微软提供的通用控件“Microsoft Date and Time Picker Control ”,此控件在安装VB或者VC或者Office2000后会在通用控件中找到。

插入通过控件,如图四所示:选择后画到画面上,双击控件,在“常规”选项卡中为控件命名为“ADate”,点击“确定”,保存画面。

再次双击日历控件,选择“事件”选项卡,点击在“事件”选项卡中点击CloseUp事件,弹出控件事件函数编辑窗口,在函数声明中为此函数命名:CloseUp();在编辑窗口中编写脚本程序,在编写脚本程序之前在数据词典中定义字符串变量“选择日期”,如图五所示:图四日历控件脚本程序如下:float Ayear;float Amonth;float Aday;long x;long y;long Row;long StartTime;string temp;Ayear=ADate.Year;Amonth=ADate.Month;Aday=ADate.Day;temp=StrFromInt( Ayear, 10 );if(Amonth<10)temp=temp+"-0"+StrFromInt( Amonth, 10 );elsetemp=temp+"-"+StrFromInt( Amonth, 10 );if(Aday<10)temp=temp+"-0"+StrFromInt( Aday, 10 );elsetemp=temp+"-"+StrFromInt( Aday, 10 );\\本站点\选择日期=temp;ReportSetCellString2("Report0", 4, 1, 27, 6, " "); //清空单元格ReportSetCellString("Report0", 2, 2, temp);//填写日期StartTime=HTConvertTime(Ayear,Amonth,Aday,0,0,0); ReportSetHistData("Report0", "\\本站点\压力", StartTime, 3600, "B4:B27");ReportSetHistData("Report0", "\\本站点\温度", StartTime, 3600, "C4:C27");ReportSetHistData("Report0", "\\本站点\密度", StartTime, 3600, "D4:D27");ReportSetHistData("Report0", "\\本站点\电流", StartTime, 3600, "E4:E27");ReportSetHistData("Report0", "\\本站点\电压", StartTime, 3600,"F4:F27");x=0;while(x<24){row=4+x;y=StartTime+x*3600;temp=StrFromTime( y, 2 );ReportSetCellString("Report0", row, 1, temp);x=x+1;}编辑完成后点击“确认”,完成对日历控件的设置。

下面我们对报表进行保存和打印。

在画面上添加两个按钮,按钮文本分别为“保存”、“打印”。

双击“保存”按钮,弹出“动画连接”,点击“命令语言连接”的“弹起时”,编写报表保存的脚本程序。

报表保存的格式为“xls”文件,如图六所示:脚本程序如下:string filename;filename=InfoAppDir()+\\本站点\选择日期+".xls"; ReportSaveAs("Report0",filename);双击“打印”按钮,弹出“动画连接”,点击“命令语言连接”的“弹起时”,编写报表打印的脚本程序。

如图七所示:脚本程序如下:ReportPrintSetup("Report0");图五控件事件函数图六保存报表图七打印报表完成按钮命令语言的编写后,保存画面。

画面如下图八所示:图八打印报表4. 进入运行系统:画面开发完成后在工程浏览器的“系统设置”中的“设置运行系统”中对“配置主画面”选项卡进行主画面的配置,设置“日报表”画面为主画面。

配置完成后点击工程浏览器的“View”按钮切换到运行系统。

系统运行后会将主画面打开,点击日历控件,选择我们要查询的日报表的日期,就可以查询出日报表的数据,如图九所示:图九运行系统点击“保存”按钮,可以将报表保存为xls格式文件,文件名称为日期,如“2007-04-20.xls”,文件的保存路径为工程所在的路径。

点击“打印”按钮,可以对报表进行打印输出,并且可以进行报表的打印预览,如图十所示:图十打印预览四、注意事项1.在此例程中所用到的函数请参考相关函数使用手册。

2.日历控件为微软提供,如果无法创建此控件可以考虑安装office2000或者VB、VC软件。

3.本演示工程只是简单的介绍日报表如何制作的例程,更深一步的学习使用请参考组态王使用手册、组态王帮助文档,或者参加组态王培训班。

如有问题请致电亚控公司技术部。

数据词典中变量的类型数据词典中存放的是应用工程中定义的变量以及系统变量。

变量可以分为基本类型和特殊类型两大类,基本类型的变量又分为内存变量和I/O 变量两种。

“I/O 变量”指的是组态王与外部设备或其它应用程序交换的变量。

这种数据交换是双向的、动态的,就是说在组态王系统运行过程中,每当I/O 变量的值改变时,该值就会自动写入外部设备或远程应用程序;每当外部设备或远程应用程序中的值改变时,组态王系统中的变量值也会自动改变。

所以,那些从下位机采集来的数据、发送给下位机的指令,比如反应罐液位、电源开关等变量,都需要设置成“I/O 变量”。

那些不需要和外部设备或其它应用程序交换,只在组态王内使用的变量,比如计算过程的中间变量,就可以设置成“内存变量”。

基本类型的变量也可以按照数据类型分为离散型、实型、整型和字符串型。

相关文档
最新文档