组态王日月年报脚本详解

1.日报

事件命令语言
$Minute0 && $Second0



ShowPicture("后台处理");
HidePicture("后台处理");
string FileName;
FileName=InfoAppDir()+"日报\"+ StrFromReal( \\local\$Year, 0, "f" )+""+StrFromReal(\\local\$Month, 0, "f" )+""+StrFromReal(\\local\$Day, 0, "f" )+""+".rtl";
//如果日报路径下没有当天的文件就清空后台日报,并保存报表到日报路径下
long return01=InfoFile( Filename, 1, \\local\$Minute );
if (return01==0)
{
ReportSetCellString2("Report5", 6, 1,29,11, "");
ReportSaveAs("Report5",FileName);
}
else
{
ReportLoad("Report5",FileName);
}
//后台日报填充数值
ReportSetCellString("Report5", 3,10, \\local\$Date);
long hang=\\local\$Hour+6;
string timestr=time(\\local\$Hour,0,0);
ReportSetCellString("Report5", hang,1, timestr);
ReportSetCellValue("Report5", hang,2,\\local\颗粒物);
ReportSetCellValue("Report5", hang,3,\\local\颗粒物折算);
ReportSetCellValue("Report5", hang,4, \\local\SO2);
ReportSetCellValue("Report5", hang,5, \\local\SO2折算);
ReportSetCellValue("Report5", hang,6, \\local\NO2);
ReportSetCellValue("Report5", hang,7, \\local\NO2折算);
ReportSetCellValue("Report5", hang,8, \\local\流量);
ReportSetCellValue("Report5", hang,9, \\local\O2);
ReportSetCellValue("Report5", hang,10, \\local\温度);
ReportSetCellValue("Report5", hang,11, \\local\水分);
ReportSaveAs("Report5",FileName);

在这里插入图片描述

2.月报

事件命令语言
\local$Hour23&&$Minute0 && $Second==0




```c
ShowPicture("后台处理");
ShowPicture("后台处理");
ShowPicture("后台月报");
HidePicture("后台月报");
string FileName;
FileName=InfoAppDir()+"月报\"+ StrFromReal( \\local\$Year, 0, "f" )+"年"+StrFromReal(\\local\$Month, 0, "f" )+"月"+".rtl";
判断月报目录下是否已经有当月的报表文件了
long return02;
return02=InfoFile( Filename, 1, \\local\$Minute );
if (return02==0)
{
ReportSetCellString2("Report7", 6, 1, 36, 11, "");
Reportsaveas("Report7",FileName);
\\local\日计数=0;
}
long hang;
hang= $Day+5;
\\local\日计数=\\local\日计数+1;
//获取后台日报的数据填充到后台月报中
string str;
long Value;
str=ReportGetCellString("Report5", 3, 10);
Trace('test = %2s', str);
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("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=ReportGetCellValue("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("Report7", hang, 11, Value);
//将累计值转换为平均值
Value=ReportGetCellValue("Report7", 39, 2);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 2, Value);
Value=ReportGetCellValue("Report7", 39, 3);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 3, Value);
Value=ReportGetCellValue("Report7", 39, 4);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 4, Value);
Value=ReportGetCellValue("Report7", 39, 5);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 5, Value);
Value=ReportGetCellValue("Report7", 39, 6);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 6, Value);
Value=ReportGetCellValue("Report7", 39, 7);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 7, Value);
Value=ReportGetCellValue("Report7", 39, 8);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 8, Value);
Value=ReportGetCellValue("Report7", 39, 9);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 9, Value);
Value=ReportGetCellValue("Report7", 39, 10);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 10, Value);
Value=ReportGetCellValue("Report7", 39, 11);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 11, Value);

Reportsaveas("Report7",FileName);

在这里插入图片描述

3.年报
数据改变命令语言 \local$Month

ShowPicture("后台年报");
HidePicture("后台年报");
string FileName;
FileName=InfoAppDir()+"年报\"+ StrFromReal( \\local\$Year, 0, "f" )+""+".rtl";
判断月报目录下是否已经有当月的报表文件了
long return02;
return02=InfoFile( Filename, 1, \\local\$Minute );
if (return02==0)
{
ReportSetCellString2("Roport0", 6, 1, 18, 11, "");
Reportsaveas("Roport0",FileName);
\\local\日计数=0;
}
else
{
ReportLoad("Report0",FileName);
}
long hang;
hang= \\local\$Month+5;
\\local\日计数=\\local\日计数+1;
string str;
long Value;
str=ReportGetCellString("Report7", 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("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=ReportGetCellValue("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("Report7", hang, 11, Value);
Reportsaveas("Report7",FileName);
//将日报表中的统计数据(平均值)输入到月报表中

Value=ReportGetCellValue("Report7", 39, 2);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 2, Value);
Value=ReportGetCellValue("Report7", 39, 3);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 3, Value);
Value=ReportGetCellValue("Report7", 39, 4);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 4, Value);
Value=ReportGetCellValue("Report7", 39, 5);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 5, Value);
Value=ReportGetCellValue("Report7", 39, 6);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 6, Value);
Value=ReportGetCellValue("Report7", 39, 7);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 7, Value);
Value=ReportGetCellValue("Report7", 39, 8);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 8, Value);
Value=ReportGetCellValue("Report7", 39, 9);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 9, Value);
Value=ReportGetCellValue("Report7", 39, 10);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 10, Value);
Value=ReportGetCellValue("Report7", 39, 11);
Value=Value/\\local\日计数;
ReportSetCellValue("Report7", 37, 11, Value);
//将累计值转换为平均值

Reportsaveas("Report7",FileName);

日月年报实例工程下载


版权声明:本文为qinkaiword原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。