1、 报表演示说明1、本演示分为日报、月报、年报2、日报的生成: 对于日报可以每小时输入一个数据,然后进行统计后每天生成一个报表 日报生成的命令语言见事件命令语言的条件为:$分=0 & $秒=0,消失时 注意: a、报表函数命令执行时报表控件所在的画面必须打开,因此对于画面不多的 情况下可以在工程运行时将后台处理画面打开并隐含起来,同时所有其它的画 面属性都应为覆盖式。如果画面较多无法全部将画面属性设为覆盖式则可以在 报表命令语言执行前执行打开画面的命令 b、在新的一天开始时需要使用新的报表文件,因此需要在调用前需要判断当 天的报表文件是否已经创建,如果没有创建则需要进行创建 c、对于日报的统计主
2、要针对每天持续运行的情况,对于不能保证持续运行的 现场可以参照月报的统计方式 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=Info
3、AppDir()+报表日报.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=本站点$
4、时+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, 本站点NO
5、2);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、月报的生成 月报中需要每天的统计数据,该数据为每天的平均值,如果需要其它的统计数 据也
6、可照此方法进行处理。 月报生成的命令语言函数讲事件命令语言的条件为:$时=23,消失时,即当每天 结束时将当天的统计数据从日报表中读取后将其输入月报中对应的行中,并从月 报中读取汇总数据求出平均值写入平均值计算行 注意: a、计算平均值时有一个关键计算变量为:日计数,该变量统计实际每月记录的日期天数,该数据需要在每月开始时赋值为0 b、报表的查询在日报查询页,可以对报表文件进行读取、删除等操作 c、由于月报操作每天进行一次,因此月报后台处理画面只需操作时打开执行报表函数并在执行完成后关闭 d。月报表的生成还可以采用年报表的生成方式产生,具体方法将年报表相关命令语言string reportna
7、me2=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)
8、;FileName=InfoAppDir()+月报+ reportname2;Reportsaveas(Roport7,FileName);本站点日计数=0;/如果当月的月报文件还没有产生则调入月报.rtl文件并按规定格式保存报表文件FileName=InfoAppDir()+月报+StrFromReal( 本站点$年, 0, f )+StrFromReal(本站点$月, 0, f )+.rtl;ReportLoad(Report7,FileName);long hang;hang= $日+5;本站点日计数=本站点日计数+1;string str;long Value;str=ReportGe
9、tCellString(Report5, 3, 10);ReportSetCellString(Report7, hang, 1, str);Value=ReportGetCellValue(Report5, 30, 2);ReportSetCellValue(Report7, hang, 2, Value);Value=ReportGetCellValue(Report5, 30, 3);ReportSetCellValue(Report7, hang, 3, Value);Value=ReportGetCellValue(Report5, 30, 4);ReportSetCellValue
10、(Report7, hang, 4, Value);Value=ReportGetCellValue(Report5, 30, 5);ReportSetCellValue(Report7, hang, 5, Value);Value=ReportGetCellValue(Report5, 30, 6);ReportSetCellValue(Report7, hang, 6, Value);Value=ReportGetCellValue(Report5, 30, 7);ReportSetCellValue(Report7, hang, 7, Value);Value=ReportGetCell
11、Value(Report5, 30, 8);ReportSetCellValue(Report7, hang, 8, Value);Value=ReportGetCellValue(Report5, 30, 9);ReportSetCellValue(Report7, hang, 9, Value);Value=ReportGetCellValue(Report5, 30, 10);ReportSetCellValue(Report7, hang, 10, Value);Value=ReportGetCellValue(Report5, 30, 11);ReportSetCellValue(R
12、eport7, hang, 11, Value);/将日报表中的统计数据(平均值)输入到月报表中Value=ReportGetCellValue(Report7, 39, 2);Value=Value/本站点日计数;ReportSetCellValue(Report7, 37, 2, Value);Value=ReportGetCellValue(Report7, 39, 3);Value=Value/本站点日计数;ReportSetCellValue(Report7, 37, 3, Value);Value=ReportGetCellValue(Report7, 39, 4);Value=V
13、alue/本站点日计数;ReportSetCellValue(Report7, 37, 4, Value);Value=ReportGetCellValue(Report7, 39, 5);Value=Value/本站点日计数;ReportSetCellValue(Report7, 37, 5, Value);Value=ReportGetCellValue(Report7, 39, 6);Value=Value/本站点日计数;ReportSetCellValue(Report7, 37, 6, Value);Value=ReportGetCellValue(Report7, 39, 7);V
14、alue=Value/本站点日计数;ReportSetCellValue(Report7, 37, 7, Value);Value=ReportGetCellValue(Report7, 39, 8);Value=Value/本站点日计数;ReportSetCellValue(Report7, 37, 8, Value);Value=ReportGetCellValue(Report7, 39, 9);Value=Value/本站点日计数;ReportSetCellValue(Report7, 37, 9, Value);Value=ReportGetCellValue(Report7, 39
15、, 10);Value=Value/本站点日计数;ReportSetCellValue(Report7, 37, 10, Value);Value=ReportGetCellValue(Report7, 39, 11);Value=Value/本站点日计数;ReportSetCellValue(Report7, 37, 11, Value);/将累计值转换为平均值Reportsaveas(Report7,FileName);ClosePicture(后台月报);4、年报的生成: 年报中需要每月的统计数据,该数据为每月的平均值,如果需要其它的统计数 据也可照此方法进行处理。 由于年报查询次数较少
16、,因此可以采用时候需要时手动生成的方式,将相关的月报调出然后将月报中的平均值读出依次输入到年报中即可 注意: a、年报生成的命令语言函数在年报输入画面的确定按钮中,将月报数据从1到12结束进行判断 b.按钮设置在实际工程中应考虑到误删除或覆盖等操作string FileName;string str;string FileName1;float Value;FileName1=InfoAppDir()+报表年报.rtl;ReportLoad(年报,FileName1);long hang;float month;long fanhui;hang= 6;month=1;ShowPicture(后
17、台月报);HidePicture(后台月报);while(month=12)FileName=InfoAppDir()+月报+StrFromReal(本站点查询年, 0, f )+StrFromReal(month, 0, f )+.rtl;fanhui=InfoFile( Filename,1, 本站点$分 );if(fanhui=1)ReportLoad(Report7,FileName);str=StrFromReal(本站点查询年, 0, f )+年+StrFromReal(month, 0, f )+月;ReportSetCellString(年报, hang, 1, str);Va
18、lue=ReportGetCellValue(Report7, 37, 2);ReportSetCellValue(年报, hang, 2, Value);Value=ReportGetCellValue(Report7, 37, 3);ReportSetCellValue(年报, hang, 3, Value);Value=ReportGetCellValue(Report7, 37, 4);ReportSetCellValue(年报, hang, 4, Value);Value=ReportGetCellValue(Report7, 37, 5);ReportSetCellValue(年报
19、, hang, 5, Value);Value=ReportGetCellValue(Report7, 37, 6);ReportSetCellValue(年报, hang, 6, Value);Value=ReportGetCellValue(Report7, 37, 7);ReportSetCellValue(年报, hang, 7, Value);Value=ReportGetCellValue(Report7, 37, 8);ReportSetCellValue(年报, hang, 8, Value);Value=ReportGetCellValue(Report7, 37, 9);R
20、eportSetCellValue(年报, hang, 9, Value);Value=ReportGetCellValue(Report7, 37, 10);ReportSetCellValue(年报, hang, 10, Value);Value=ReportGetCellValue(Report7, 37, 11);ReportSetCellValue(年报, hang, 11, Value);hang=hang+1;/将月报表中的统计数据(平均值)输入到年报表中month=month+1;hang=hang-6;Value=ReportGetCellValue(年报, 21, 2);V
21、alue=Value/hang;ReportSetCellValue(年报, 19, 2, Value);Value=ReportGetCellValue(年报, 21, 3);Value=Value/hang;ReportSetCellValue(年报, 19, 3, Value);Value=ReportGetCellValue(年报, 21, 4);Value=Value/hang;ReportSetCellValue(年报, 19, 4, Value);Value=ReportGetCellValue(年报, 21, 5);Value=Value/hang;ReportSetCellV
22、alue(年报, 19, 5, Value);Value=ReportGetCellValue(年报, 21, 6);Value=Value/hang;ReportSetCellValue(年报, 19, 6, Value);Value=ReportGetCellValue(年报, 21, 7);Value=Value/hang;ReportSetCellValue(年报, 19, 7, Value);Value=ReportGetCellValue(年报, 21, 8);Value=Value/hang;ReportSetCellValue(年报, 19, 8, Value);Value=R
23、eportGetCellValue(年报, 21, 9);Value=Value/hang;ReportSetCellValue(年报, 19, 9, Value);Value=ReportGetCellValue(年报, 21, 10);Value=Value/hang;ReportSetCellValue(年报, 19, 10, Value);Value=ReportGetCellValue(年报, 21, 11);Value=Value/hang;ReportSetCellValue(年报, 19, 11, Value);/将年报中的各月平均值计算后输入到年报平均值中FileName1=
24、InfoAppDir()+年报report+StrFromReal( 本站点查询年, 0, f )+.rtl;Reportsaveas(年报,FileName1);/按照固定路径格式保存年报ClosePicture(后台月报);listClear(报表查询);ListLoadFileName( 报表查询, FileName1 );/刷新列表ClosePicture(年报输入);5、注意:在工程路径下有四个关键文件夹,报表、日报、月报、年报日报按钮功能:(1) 刷新列表string FileName;FileName=InfoAppDir()+日报+*.rtl;listClear(报表查询);L
25、istLoadFileName( 报表查询, FileName );(2) 删除报表string FileName;FileName=InfoAppDir()+日报+本站点报表名;FileDelete( Filename );string FileName1;FileName1=InfoAppDir()+日报*.rtl;listClear(报表查询);ListLoadFileName( 报表查询, FileName1 );(3)查询日报string FileName;FileName=InfoAppDir()+日报+本站点报表名;ReportLoad(Report1,FileName);(4)
26、打印ReportPrint2(Report1);/ReportPrint2(Report1,0);可以在打印前弹出打印机选择窗口(5)页面设置ReportPageSetup(Report1);(6)报表预览ReportPrintSetup(Report1);月报按钮功能:(1)刷新列表string FileName;FileName=InfoAppDir()+月报+*.rtl;listClear(月报查询);ListLoadFileName( 月报查询, FileName );(2)删除报表string FileName;FileName=InfoAppDir()+月报+本站点报表名;File
27、Delete( Filename );string FileName1;FileName1=InfoAppDir()+月报*.rtl;listClear(月报查询);ListLoadFileName( 月报查询, FileName1 );(3)月报查询string FileName;FileName=InfoAppDir()+月报+本站点报表名;ReportLoad(月报,FileName);年报按钮功能:(1)刷新列表string FileName1;FileName1=InfoAppDir()+年报+*.rtl;listClear(报表名);ListLoadFileName( 报表名, F
28、ileName1 );(2)读取报表string FileName;FileName=InfoAppDir()+年报+本站点报表名;ReportLoad(年报,FileName);(3)删除报表string FileName;FileName=InfoAppDir()+年报+本站点报表名;FileDelete( Filename );string FileName1;FileName1=InfoAppDir()+年报+*.rtl;listClear(报表名);ListLoadFileName( 报表名, FileName1 );(4)生成新年报string FileName;string str;string FileName1;float Value;FileName1=InfoAppDir()+报表年报.rtl;ReportLoad(年报,FileName1);long hang;float month;long fanhui;hang= 6;month=1;ShowPicture(后台月报);HidePicture(后台月报);while(month=12)FileName=InfoAppDir()+月报+StrFromReal(本站点查询年, 0, f )+StrFromReal(month, 0, f )+.rtl;fanhu
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2