用组态王事件命令控制自动生成报表时发现问题
预期效果是:每到整点时间,报表自动读取历史数据,生成报表,并保存到文件夹。
实际效果是:必须把组态王打开到报表界面时,当整点时间一到自动生成报表并保存文件,处于其他界面时(比如控制界面),整点时间到不能生成报表。
但是实际生产过程中不可能一直处于报表界面,另外有两个报表界面,即使一直处于一个报表,另一个也不能生成。效果还不如在报表界面用控件生成。
请教各位是否有解决方案
————————————————————————
事件命令如下:
条件:\\本站点\$分==0
命令:
long StartTime;
StartTime=HTConvertTime(\\本站点\$年,\\本站点\$月,\\本站点\$日,0,0,0);
{
ReportSetHistData("日报","\\本站点\一号温度1", StartTime,3600, "b4:b27");
ReportSetHistData("日报","\\本站点\一号温度2", StartTime,3600, "c4:c27");
ReportSetHistData("日报","\\本站点\一号温度3", StartTime,3600, "d4:d27");
ReportSetHistData("日报","\\本站点\一号温度4", StartTime,3600, "e4:e27");
string datatime;
datatime=StrFromTime( StartTime,1);
string strtime;
long hang;
hang=4;
while (hang<=27)
{strtime=StrFromTime( StartTime, 3);
ReportSetCellString("日报",hang, 1, strtime);
hang=hang+1;
StartTime=StartTime+3600;}
}
\\本站点\year=StrFromInt(\\本站点\$年, 10 );
if (\\本站点\$月<10)
{
\\本站点\month="0"+StrFromInt(\\本站点\$月,10 );
}
else
{
\\本站点\month=StrFromInt(\\本站点\$月,10 );
}
if (\\本站点\$日<10)
{
\\本站点\data="0"+StrFromInt(\\本站点\$日, 10 );
}
else
{
\\本站点\data=StrFromInt(\\本站点\$日, 10 );
}
string filename1="d:\报表\"+\\本站点\year+\\本站点\month+\\本站点\data+"一号日报表.xls";
string filename2="d:\报表\"+\\本站点\year+\\本站点\month+\\本站点\data+"一号日报表.rtl";
ReportSaveAs("日报",filename1);
ReportSaveAs("日报",filename2);