监控组态软件实验指导书
我们根据需要对报表的格式进行设置,如报表的表头,标题等。我们选中单元格A1到F1,点击右键弹出快捷菜单,选择“合并单元格”,单元格合并后我们填写标题,如“监控系统日报表”,点击右键在快捷菜单中选择“设置单元格格式”,设置字体、对齐方式、边框等。我们按照此方法设计日报表的格式,如图三所示:
图三 日报表
3.2创建日历控件
我们按照日期进行历史数据的查询生成日报表,使用微软提供的通用控件“Microsoft Date and Time Picker Control ”,此控件在安装VB或者VC或者Office2000后会在通用控件中找到。
插入通过控件,如图四所示:选择后画到画面上,双击控件,在“常规”选项卡中为控件命名为“ADate”,点击“确定”,保存画面。再次双击日历控件,选择“事件”选项卡,点击在“事件”选项卡中点击CloseUp事件,弹出控件事件函数编辑窗口,在函数声明中为此函数命名:CloseUp();在编辑窗口中编写脚本程序,在编写脚本程序之前在数据词典中定义字符串变量“选择日期”,如图五所示:
30
监控组态软件实验指导书
图四 日历控件
图五 控件事件函数
脚本程序如下: float Ayear; float Amonth;
31
监控组态软件实验指导书
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+\else
temp=temp+\
if(Aday<10)
temp=temp+\else
temp=temp+\\\\\本站点\\选择日期=temp;
ReportSetCellString2(\清空单元格 ReportSetCellString(\填写日期
StartTime=HTConvertTime(Ayear,Amonth,Aday,0,0,0);
ReportSetHistData(\本站点\\原料油液位\\
ReportSetHistData(\本站点\\催化剂液位\\
ReportSetHistData(\本站点\\成品油液位\\x=0;
while(x<24) {
32
监控组态软件实验指导书
row=4+x;
y=StartTime+x*3600;
temp=StrFromTime( y, 2 );
ReportSetCellString(\ x=x+1; }
编辑完成后点击“确认”,完成对日历控件的设置。下面我们对报表进行保存和打印。
在画面上添加两个按钮,按钮文本分别为“保存”、“打印”。双击“保存”按钮,弹出“动画连接”,点击“命令语言连接”的“弹起时”,编写报表保存的脚本程序。报表保存的格式为“xls”文件,如图六所示:
图六 保存报表
脚本程序如下: string filename;
filename=InfoAppDir()+\\\\本站点\\选择日期+\ReportSaveAs(\
双击“打印”按钮,弹出“动画连接”,点击“命令语言连接”的“弹起时”,编写报表打印的脚本程序。如图七所示:脚本程序如下: ReportPrintSetup(\
33
监控组态软件实验指导书
图七 打印报表
完成按钮命令语言的编写后,保存画面。画面如下图八所示:
图八 打印报表
4、进入运行系统
画面开发完成后在工程浏览器的“系统设置”中的“设置运行系统”中对“配置主画面”选项卡进行主画面的配置,设置“日报表”画面为主画面。配置完成后点击工程浏览器的“View”按钮切换到运行系统。
系统运行后会将主画面打开,点击日历控件,选择我们要查询的日报表的日期,就可以查询出日报表的数据,如图九所示:
34
监控组态软件实验指导书
图九 运行系统
点击“保存”按钮,可以将报表保存为xls格式文件,文件名称为日期,如“2013-11-23.xls”,文件的保存路径为工程所在的路径。
点击“打印”按钮,可以对报表进行打印输出,并且可以进行报表的打印预览,如图十所示:
图十 打印预览
四、注意事项
1、在此例程中所用到的函数请参考相关函数使用手册。 2、日历控件为微软提供,如果无法创建此控件可以考虑安装office2000或者VB、VC软件。
3、本工程只是简单的介绍日报表如何制作的例程,更深一步的学习使用请参考组态王使用手册、组态王帮助文档,或者参加组态王培训班。
35