|
引言: 在(zai)工(gong)業(ye)控(kong)製(zhi)中(zhong),常(chang)常(chang)要(yao)從(cong)某(mou)些(xie)重(zhong)要(yao)數(shu)據(ju)的(de)曆(li)史(shi)中(zhong)發(fa)現(xian)問(wen)題(ti)和(he)分(fen)析(xi)問(wen)題(ti),保(bao)存(cun)曆(li)史(shi)數(shu)據(ju)就(jiu)顯(xian)得(de)十(shi)分(fen)重(zhong)要(yao)。紫(zi)金(jin)橋(qiao)實(shi)時(shi)數(shu)據(ju)庫(ku)支(zhi)持(chi)曆(li)史(shi)數(shu)據(ju)的(de)快(kuai)速(su)保(bao)存(cun)和(he)檢(jian)索(suo),它(ta)按(an)照(zhao)一(yi)定(ding)的(de)條(tiao)件(jian)把(ba)數(shu)據(ju)保(bao)存(cun)到(dao)曆(li)史(shi)庫(ku)中(zhong),用(yong)戶(hu)需(xu)要(yao)時(shi)可(ke)隨(sui)時(shi)從(cong)曆(li)史(shi)數(shu)據(ju)庫(ku)中(zhong)訪(fang)問(wen)曆(li)史(shi)數(shu)據(ju)。本(ben)篇(pian)文(wen)章(zhang)主(zhu)要(yao)介(jie)紹(shao)在(zai)曆(li)史(shi)數(shu)據(ju)檢(jian)索(suo)中(zhong)經(jing)常(chang)會(hui)用(yong)到(dao)的(de)曆(li)史(shi)查(zha)詢(xun)組(zu)件(jian)的(de)應(ying)用(yong)。希(xi)望(wang)對(dui)讀(du)者(zhe)有(you)所(suo)幫(bang)助(zhu)。
功能需求:
通過指定起始時間、時間範圍和采樣時間間隔進行曆史數據的檢索,並可將查詢結果顯示在報表中,然後可以導出到.txt或.csv文件中。
例:假定開始時間2012-05-24,8:00:00,時間範圍為4小時,數據間隔120秒。點擊“查詢”按鈕,則報表當中顯示從5月24日8:00:00開始,4個小時,數據間隔為120秒的數據顯示在報表中。

整體思路:
1. 利用曆史查詢組件按照指定的起始時間、時間範圍和個數將曆史數據檢索到組件內,檢索數據主要用到Start函數;
2. 然後利用報表和此組件支持的函數,將數據從曆史查詢組件中轉移到報表中靈活的加以顯示;
3. 最後利用報表的SaveAsEx函數將數據導出到.csv或.txt文件中。

曆史檢索的整體界麵
具體步驟:
新建曆史數據查詢組件,

雙擊進入屬性設置界麵

1) 選擇數據源,在下拉框中選擇要訪問的數據源。
2) 小數位數:輸入要顯示的小數位數。
3) 數據類型:可以是時間間隔內(由Start函數指定)的瞬時值或平均值。
4) 增加:在位號輸入框:輸入位號,或通過位號選擇按鈕選取位號。
單擊“增加”按鈕,將位號加入到左麵位號列表。
5) 刪除:單擊“刪除”按鈕,將位號從左麵位號列表中刪除。
6) 修改:在左麵位號列表中選擇好要修改的位號,在位號輸入框中輸入修改內容,單擊“修改”按鈕。
7) 運行時可見:選中該複選框,運行時將顯示曆史數據(這樣可以調試),一般情況下,不用選擇該複選框。
新建控製條,包括【起始時間】、【時間範圍】、【采樣間隔】、【查詢】和【數據導出】

在【查詢】按鈕的單擊腳本中
int nCount = #RangeTm.Time/IntervalTm;
#History.Start(#StartTm.Time,IntervalTm,nCount);
調用start函數進行曆史數據的檢索。
在【數據導出】按鈕中進行數據的導出操作
#sj.SaveAsEx("",1);
將曆史查詢組件中的數據顯示在報表中的腳本位於曆史查詢組件的腳本【檢索完成時】中

小結:
本(ben)文(wen)主(zhu)要(yao)介(jie)紹(shao)如(ru)何(he)利(li)用(yong)曆(li)史(shi)查(zha)詢(xun)組(zu)件(jian)進(jin)行(xing)曆(li)史(shi)數(shu)據(ju)的(de)查(zha)詢(xun)和(he)檢(jian)索(suo),並(bing)實(shi)現(xian)了(le)曆(li)史(shi)數(shu)據(ju)的(de)導(dao)出(chu)功(gong)能(neng),雖(sui)然(ran)簡(jian)單(dan),但(dan)在(zai)比(bi)較(jiao)常(chang)用(yong)。希(xi)望(wang)對(dui)讀(du)者(zhe)有(you)所(suo)幫(bang)助(zhu)。
|