组态王报表演示说明教学教材
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
报表演示说明
1、本演示分为日报、月报、年报
2、日报的生成:
对于日报可以每小时输入一个数据,然后进行统计后每天生成一个报表
日报生成的命令语言见事件命令语言的条件为:$分==0 && $秒==0,消失时注意:
a、报表函数命令执行时报表控件所在的画面必须打开,因此对于画面不多的情况下可以在工程运行时将后台处理画面打开并隐含起来,同时所有其它的画面属性都应为覆盖式。如果画面较多无法全部将画面属性设为覆盖式则可以在报表命令语言执行前执行打开画面的命令
b、在新的一天开始时需要使用新的报表文件,因此需要在调用前需要判断当天的报表文件是否已经创建,如果没有创建则需要进行创建
c、对于日报的统计主要针对每天持续运行的情况,对于不能保证持续运行的现场可以参照月报的统计方式
b、报表的查询在日报查询页,可以对报表文件进行读取、删除等操作{string FileName1=InfoAppDir()+"日报\"+ StrFromReal( \\本站点\$年, 0, "f" )+"y"+StrFromReal(\\本站点\$月, 0, "f" )+"m"+StrFromReal(\\本站点\$日, 0, "f" )+".rtl";
//自定义变量
long return01=InfoFile( Filename1, 1, \\本站点\$分 );
//判断日报目录下是否已经有当天的报表文件了
if (return01==0)
{
string FileName=InfoAppDir()+"报表\日报.rtl";
ReportLoad("Report5",FileName);
FileName=InfoAppDir()+"日报\"+StrFromReal( \\本站点\$年, 0,
"f" )+"y"+StrFromReal( $月, 0, "f" )+"m"+StrFromReal( $日, 0, "f" )+".rtl";
ReportSaveAs("Report5",FileName);
}
//如果没有报表文件则从报表目录下调取模板创建报表文件
ReportLoad("Report5",FileName1);
ReportSetCellString("report5", 3,10, \\本站点\$日期);
long hang=\\本站点\$时+6;
string timestr=time(\\本站点\$时,0,0);
ReportSetCellString("report5", hang,1, timestr);
ReportSetCellValue("report5", hang,2,\\本站点\颗粒物); ReportSetCellValue("report5", hang,3,\\本站点\颗粒物折算); ReportSetCellValue("report5", hang,4, \\本站点\SO2); ReportSetCellValue("report5", hang,5, \\本站点\SO2折算);
ReportSetCellValue("report5", hang,6, \\本站点\NO2); ReportSetCellValue("report5", hang,7, \\本站点\NO2折算); ReportSetCellValue("report5", hang,8, \\本站点\流量); ReportSetCellValue("report5", hang,9, \\本站点\O2); ReportSetCellValue("report5", hang,10, \\本站点\温度); ReportSetCellValue("report5", hang,11, \\本站点\水分); ReportSaveAs("Report5",FileName1);
}
3、月报的生成
月报中需要每天的统计数据,该数据为每天的平均值,如果需要其它的统计数据也可照此方法进行处理。
月报生成的命令语言函数讲事件命令语言的条件为:$时==23,消失时,即当每天
结束时将当天的统计数据从日报表中读取后将其输入月报中对应的行中,并从月
报中读取汇总数据求出平均值写入平均值计算行
注意:
a、计算平均值时有一个关键计算变量为:日计数,该变量统计实际每月记录的日期天数,该数据需要在每月开始时赋值为0
b、报表的查询在日报查询页,可以对报表文件进行读取、删除等操作
c、由于月报操作每天进行一次,因此月报后台处理画面只需操作时打开执行报表函数并在执行完成后关闭
d。月报表的生成还可以采用年报表的生成方式产生,具体方法将年报表相关命令语言
{string reportname2=StrFromReal( \\本站点\$年, 0, "f" )+StrFromReal( \\本站点\$月, 0, "f" )+".rtl";
//====================
string FileName;
//自定义变量
FileName=InfoAppDir()+"月报\"+reportname2;
long return02=InfoFile( Filename, 1, \\本站点\$分 );
ShowPicture("后台月报");
HidePicture("后台月报");
//判断月报目录下是否已经有当月的报表文件了
if (return02==0)
{
FileName=InfoAppDir()+"报表\月报.rtl";
ReportLoad("Roport7",FileName);
FileName=InfoAppDir()+"月报\"+ reportname2;
Reportsaveas("Roport7",FileName);
\\本站点\日计数=0;
}