




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
用E*CEL打印報表原理首先根據(jù)報表要求,用INTOUCH的HISTDATA軟件形成一個有規(guī)定數(shù)據(jù)的.CSV文件〔逗號分隔文件,可用E*CEL翻開〕。這個.CSV文件是英文的,不符合一般報表的要求,只能提供數(shù)據(jù)。所以需要另設計一個空的E*CEL報表模版,再將.CSV文件的數(shù)據(jù)復制到報表中,形成完整的報表。通過INTOUCH可以自動產生.CSV,再通過E*CEL的宏程序打印報表,可以完成招呼打印和定時自動打印。如果有多個報表,需要形成多個.CSV文件和設計多個E*CEL報表。大致步驟如下:設計報表,確定一個報表的開場時間、時間總長度、個數(shù)據(jù)之間數(shù)據(jù)采樣間隔,報表參數(shù)所對應得的標記名等設計報表,確定一個報表的開場時間、時間總長度、個數(shù)據(jù)之間數(shù)據(jù)采樣間隔,報表參數(shù)所對應得的標記名等〔如日報表的開場時間為0點,時間長度為24小時,數(shù)據(jù)采樣間隔時間為小時〕在InTouch中,按報表的需要,用腳本給一組專用的標記名賦值在InTouch中,按報表的需要,用腳本給一組專用的標記名賦值〔如HDWSTARTTIME規(guī)定日報表的開場時間,HDWDBDIR規(guī)定歷史紀錄文件的目錄,HDWTAGS規(guī)定報表內涵的標記名在InTouch腳本中,用在InTouch腳本中,用HDWWRITEFILE=1形成一個.CSV文件用E*CEL設計報表的模版。在E*CEL中,用記錄宏程序,將形成的用E*CEL設計報表的模版。在E*CEL中,用記錄宏程序,將形成的.CSV文件中的數(shù)據(jù)導入E*CEL報表模版的數(shù)據(jù)區(qū),然后打印。最后在E*CEL中將該宏程序設置為自動執(zhí)行宏程序在生成.CSV文件的InTouch腳本中,參加StartApp函數(shù),啟動E*CEL在生成.CSV文件的InTouch腳本中,參加StartApp函數(shù),啟動E*CEL印報表生成.CSV文件Step1:自動生成需要的標記名在INTOUCH開發(fā)環(huán)境中,將向導庫中\(zhòng)趨勢\歷史趨勢向導〔HistData〕放入窗口。這將自動形成假設干標記名〔Tag〕。有關標記名以HDW開頭加上它們的DDE的ITEM命名。這些標記名說明如下:HDWDATADIR消息型歷史數(shù)據(jù)文件的目錄的路徑名,可用函數(shù)賦值例如HDWDataDir=HTGetLogDirectory();HDWDBDIR消息型InTouch標記名字典的目錄的路徑名,可用函數(shù)賦值例如HDWDBDir=InfoInTouchAppDir();HDWSTARTDATE消息型與$DateString一樣格式的數(shù)據(jù)采樣開場日期HDWSTARTTIME消息型使用24小時時鐘的HH:MM:SS格式的數(shù)據(jù)采樣開場時間HDWDURATION消息型數(shù)據(jù)時間長度〔報表時間總長度〕可以用星期,天時,分,秒,等來表示下面是有效的字符:w星期,d天,h小時,m分,s秒。允許使用小數(shù)值例如擴.5s表示500毫秒假設只需一個樣本請將DURATION設為0零HDWINTERVAL消息型采樣間隔的時間長度可以用星期日小時分和秒來表示例如1W表示一星期允許使用小數(shù)值例如用.25d來表示6小時有效字符與HDDURATION一樣注意DURATION和INTERVAL允許的最大時間長度均為6周這適用于所有請求類型日秒等例如如果使用日則最大值為42,7天*6周=42HDWTAGS消息型歷史數(shù)據(jù)的標記名列表〔報表中需要的標記名〕以TagA,TagB,TagZ格式輸入,此外采樣日期和或時間可以通過使用部系統(tǒng)標記名$Date和$Time來請求例如"$Date,TagA,TagB"或"$Time,TagA,TagB"或"$Date,$Time,TagA,TagB"HDWTAGS1,TAGS2,....消息型HDWTAGS字符串在WindowViewer中的長度可以為131個字符在E*cel中的長度可以為255個字符字符串,可以通過迭加標記名工程Tags1Tags2等來延長以適應更長字符串的要求,如果標記名需附加額外的標記名文本請在字符串末輸入一個加號〔+〕例如,TAGS="$Date,ProdLevel,ProdTemp,+"TAGS1="ReactLevel,Temp,GasLevel,+"TAGS2="MotorStatus"注意不允許使用重復標記名,每個標記字符串的最大長度為512字節(jié)HDWFILENAME消息型規(guī)定生成的.CSV文件的路徑和名稱例如,C:\INTOUCH\HDFILE.CSVHDWWRITEFILE整型當設置為1時HistData會將請求數(shù)據(jù)寫入由FILENAME工程名指定的文件,當文件更新完成后WRITEFILE會自動重置為0零STATUS離散型顯示最后一次操作的狀態(tài)1表示成功,0零表示出錯ERROR消息型包含上次錯誤說明的字符串,如STATUS為1則顯示無,如STATUS為0零則顯示錯誤消息字符串前9個TAG規(guī)定數(shù)據(jù)的容,HDWWRITEFILE=1是寫.CSV文件的命令,最后兩個用于檢查狀態(tài)和錯誤。寫腳本時應注意:HDWDBDir、HDWDataDir這兩個標記名是規(guī)定路徑的,可以用函數(shù)賦值??梢詫懺趹贸绦蚰_本。HDWFilename這個標記名是規(guī)定.CSV文件的路徑和文件名。如果只打一種報表,也可以寫在應用程序腳本,否則應在形成.CSV文件前指定。HDWTags和后續(xù)的HDWTags1、HDWTags2這些標記名是規(guī)定.CSV文件的包含的標記名。如果只打一種報表,也可以寫在應用程序腳本,否則應在形成.CSV文件前指定。HDWStartDate、HDWStartTime這兩標記名是規(guī)定.CSV文件數(shù)據(jù)的起始日期和起始時間的。如果是招呼打印報表,人工輸入時格式一定要正確。如果是自動打印報表可以計算得到,一般可以在條件腳本規(guī)定。HDWInterval、HDWDuratione這兩標記名是規(guī)定.CSV文件的數(shù)據(jù)時間間隔和數(shù)據(jù)時間的總長度,如日報表分別為:1H〔小時〕和1D〔1天〕。HDWWRITEFILE=1為生成.CSV文件,只有上述標記名義賦值后,才執(zhí)行他。ERROR這個標記名可以顯示生成.CSV文件時是否有錯誤,調試時非常重要。例如:下面腳本生成一個日期由StartDate1規(guī)定,包括兩個標記名PI-101,TI-101,日報表??梢詮椭圃谀愕哪_本中,修改一下就可以形成所需的.CSV文件。HDWStartDate=StartDate1;HDWStartTime=〞00:00:00〞;HDWDBDir=InfoInTouchAppDir();HDWDataDir=HTGetLogDirectory();HDWFilename="C:\REPORT.csv";HDWTags="$Date,$Time,PI-101,TI-101";HDWInterval="1H";HDWDuration="1D";HDWWRITEFILE=1;HDWDataDir=HTGetLogDirectory();HDWDBDir=InfoInTouchAppDir();HDWStartDate=*DTPicker1.Value;時間控件名稱HDWStartTime="00:00:00";開場時間HDWFilename="C:\REPORT.csv";HDWTags="$Date,$Time,zj_AO1,zj_AO2";HDWInterval="1H";HDWDuration="1D";HDWWRITEFILE=1;Step2:招呼打印報表的情況如果是招呼打印〔不定期打印,人工輸入打印日期和時間的報表打印〕,則可以在INTOUCH中開一個窗口輸入HDWStartDate1,HDWStartTime,HDWInterval,HDWDuration的參數(shù)。并做一個按鈕,在動作腳本中給固定的參數(shù)賦值和最后令HDWWRITEFILE=1;腳本的例子形成的.CSV文件的例子Step3:定時自動打印的情況如果是定時自動打印,需要在條件腳本〔或數(shù)據(jù)改變腳本〕中寫代碼完成。這里需要特別注意起始日期和時間。如:日報表示在0點以后打印的,所以需要通過計算得到前一天的日期,可以用下面語句HDWStartDate=StringFromTime(($Date-1)*86400,1)。舉例:Step4:運行INTOUCH,檢查生成的.CSV文件。建立E*CEL報表Step1:設計一個報表格式。例如:先畫出報頭在E*CEL導入相應.CSV文件。找到相應.CSV文件,一步步導入 選逗號分割,指定導入?yún)^(qū)域起點單元, 為了更直觀,可以用E*CEL的功能加一個趨勢圖。Step2:做一個宏選菜單工具\宏\錄制新宏,起一個宏名〔如mr1〕,確認。由于E*CEL不允許在有數(shù)據(jù)的區(qū)域導入數(shù)據(jù),所以先刪除前面導入的數(shù)據(jù)。選擇數(shù)據(jù)區(qū),按Del鍵在E*CEL重新導入相應.CSV文件。重復剛剛的步驟打印和保存〔報表需要打印時〕或另存(報表不需要打印時)。停頓記錄宏寫VBA腳本,讓宏自動執(zhí)行菜單工具\宏\VB編輯器雙擊ThisWorkBook在代碼區(qū)選WorkBook在PrivateSub_Open()函數(shù)中,參加Run(“宏名〞)Application.Quit關閉VB編輯器,返回Workbook,確定報表的路徑和文件名(如c:\report1.*ls),保存報表。這樣,我們的報表就完成了。一翻開這個報表,就會執(zhí)行宏,然后退出。在調試時,可以迅速按Atrl+Break鍵停頓宏執(zhí)行。注:在另存的情況下,在宏中找到另存的路徑和文件名,用date,tim等變量加到文件名中。Step3:用INTOUCH翻開報表在INTOUCH的相應腳本中加一條語句,啟動E*CEL:StartApp"C:\ProgramFiles\MicrosoftOffice\Office\e*cel.e*ec:\report1.*ls";這里,C:\ProgramFiles\MicrosoftOffice\Office\e*cel.e*e是E*CEL的路徑和文件名,注意E*CEL的版本不同路徑不一樣。c:\report1.*ls是報表的路徑和文件名,之間有一個空格。一個日報表的例子。語句說明:1〕規(guī)定報表起
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基層選舉工作條例課件
- 初三道德與法治寬容包容品質試卷及答案
- 不同全麻方式復合硝普鈉控制性降壓對腎功能影響的深度剖析
- Leber遺傳性視神經(jīng)病變與中醫(yī)體質的關聯(lián)性探究:理論、臨床與展望
- 八年級數(shù)學統(tǒng)計圖表單元試卷及答案
- 基層員工安全知識培訓課件
- 新解讀《GB-T 39740-2020自然保護地勘界立標規(guī)范》
- 中醫(yī)洗頭測試題及答案
- 基礎燃燒學試題及答案
- 物業(yè)防疫試題及答案
- 職業(yè)年金政策講解
- 智聯(lián)獵頭企業(yè)薪酬調研白皮書-2025年年中盤點
- 基孔肯雅熱、登革熱等重點蟲媒傳染病防控技術試題
- 2025年事業(yè)單位教師考試公共基礎知識試題(含答案)
- 2025年可靠性工程師MTBF計算強化練習
- 乳房腫塊鑒別診斷
- 普速鐵路信號維護規(guī)則業(yè)務管理
- 架橋機安拆專項施工方案 (三)
- 2025年4月自考03346項目管理試題
- 艾梅乙反歧視培訓課件
- GA 1808-2022軍工單位反恐怖防范要求
評論
0/150
提交評論