用組態王事件命令控制自動生成報表時發現問題
預期效果是:每到整點時間,報表自動讀取歷史數據,生成報表,并保存到文件夾。
實際效果是:必須把組態王打開到報表界面時,當整點時間一到自動生成報表并保存文件,處于其他界面時(比如控制界面),整點時間到不能生成報表。
但是實際生產過程中不可能一直處于報表界面,另外有兩個報表界面,即使一直處于一個報表,另一個也不能生成。效果還不如在報表界面用控件生成。
請教各位是否有解決方案
————————————————————————
事件命令如下:
條件:\\本站點\$分==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);