z62678667
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 39 個
工控威望: 146 點
下載積分: 945 分
在線時間: 80(小時)
注冊時間: 2017-05-18
最后登錄: 2024-09-27
查看z62678667的 主題 / 回貼
樓主  發(fā)表于: 2017-10-10 11:12
用組態(tài)王事件命令控制自動生成報表時發(fā)現(xiàn)問題
預(yù)期效果是:每到整點時間,報表自動讀取歷史數(shù)據(jù),生成報表,并保存到文件夾。
實際效果是:必須把組態(tài)王打開到報表界面時,當(dāng)整點時間一到自動生成報表并保存文件,處于其他界面時(比如控制界面),整點時間到不能生成報表。
但是實際生產(chǎn)過程中不可能一直處于報表界面,另外有兩個報表界面,即使一直處于一個報表,另一個也不能生成。效果還不如在報表界面用控件生成。
請教各位是否有解決方案

————————————————————————
事件命令如下:
條件:\\本站點\$分==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);
shixinhua
我可以不贏,但我不可以再輸
級別: 工控俠客
精華主題: 0
發(fā)帖數(shù)量: 321 個
工控威望: 3068 點
下載積分: 824 分
在線時間: 483(小時)
注冊時間: 2017-03-24
最后登錄: 2024-11-13
查看shixinhua的 主題 / 回貼
1樓  發(fā)表于: 2017-10-10 16:48
補充:報表的畫面要打開一遍,否則報表不運行
本帖最近評分記錄:
  • 下載積分:+1(z62678667) 真誠感謝!