Intouch報(bào)表-EXCEL報(bào)表制作_第1頁
Intouch報(bào)表-EXCEL報(bào)表制作_第2頁
Intouch報(bào)表-EXCEL報(bào)表制作_第3頁
Intouch報(bào)表-EXCEL報(bào)表制作_第4頁
Intouch報(bào)表-EXCEL報(bào)表制作_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

用E*CEL打印報(bào)表原理首先根據(jù)報(bào)表要求,用INTOUCH的HISTDATA軟件形成一個(gè)有規(guī)定數(shù)據(jù)的.CSV文件〔逗號分隔文件,可用E*CEL翻開〕。這個(gè).CSV文件是英文的,不符合一般報(bào)表的要求,只能提供數(shù)據(jù)。所以需要另設(shè)計(jì)一個(gè)空的E*CEL報(bào)表模版,再將.CSV文件的數(shù)據(jù)復(fù)制到報(bào)表中,形成完整的報(bào)表。通過INTOUCH可以自動(dòng)產(chǎn)生.CSV,再通過E*CEL的宏程序打印報(bào)表,可以完成招呼打印和定時(shí)自動(dòng)打印。如果有多個(gè)報(bào)表,需要形成多個(gè).CSV文件和設(shè)計(jì)多個(gè)E*CEL報(bào)表。大致步驟如下:設(shè)計(jì)報(bào)表,確定一個(gè)報(bào)表的開場時(shí)間、時(shí)間總長度、個(gè)數(shù)據(jù)之間數(shù)據(jù)采樣間隔,報(bào)表參數(shù)所對應(yīng)得的標(biāo)記名等設(shè)計(jì)報(bào)表,確定一個(gè)報(bào)表的開場時(shí)間、時(shí)間總長度、個(gè)數(shù)據(jù)之間數(shù)據(jù)采樣間隔,報(bào)表參數(shù)所對應(yīng)得的標(biāo)記名等〔如日報(bào)表的開場時(shí)間為0點(diǎn),時(shí)間長度為24小時(shí),數(shù)據(jù)采樣間隔時(shí)間為小時(shí)〕在InTouch中,按報(bào)表的需要,用腳本給一組專用的標(biāo)記名賦值在InTouch中,按報(bào)表的需要,用腳本給一組專用的標(biāo)記名賦值〔如HDWSTARTTIME規(guī)定日報(bào)表的開場時(shí)間,HDWDBDIR規(guī)定歷史紀(jì)錄文件的目錄,HDWTAGS規(guī)定報(bào)表內(nèi)涵的標(biāo)記名在InTouch腳本中,用在InTouch腳本中,用HDWWRITEFILE=1形成一個(gè).CSV文件用E*CEL設(shè)計(jì)報(bào)表的模版。在E*CEL中,用記錄宏程序,將形成的用E*CEL設(shè)計(jì)報(bào)表的模版。在E*CEL中,用記錄宏程序,將形成的.CSV文件中的數(shù)據(jù)導(dǎo)入E*CEL報(bào)表模版的數(shù)據(jù)區(qū),然后打印。最后在E*CEL中將該宏程序設(shè)置為自動(dòng)執(zhí)行宏程序在生成.CSV文件的InTouch腳本中,參加StartApp函數(shù),啟動(dòng)E*CEL在生成.CSV文件的InTouch腳本中,參加StartApp函數(shù),啟動(dòng)E*CEL印報(bào)表生成.CSV文件Step1:自動(dòng)生成需要的標(biāo)記名在INTOUCH開發(fā)環(huán)境中,將向?qū)熘衆(zhòng)趨勢\歷史趨勢向?qū)А睭istData〕放入窗口。這將自動(dòng)形成假設(shè)干標(biāo)記名〔Tag〕。有關(guān)標(biāo)記名以HDW開頭加上它們的DDE的ITEM命名。這些標(biāo)記名說明如下:HDWDATADIR消息型歷史數(shù)據(jù)文件的目錄的路徑名,可用函數(shù)賦值例如HDWDataDir=HTGetLogDirectory();HDWDBDIR消息型InTouch標(biāo)記名字典的目錄的路徑名,可用函數(shù)賦值例如HDWDBDir=InfoInTouchAppDir();HDWSTARTDATE消息型與$DateString一樣格式的數(shù)據(jù)采樣開場日期HDWSTARTTIME消息型使用24小時(shí)時(shí)鐘的HH:MM:SS格式的數(shù)據(jù)采樣開場時(shí)間HDWDURATION消息型數(shù)據(jù)時(shí)間長度〔報(bào)表時(shí)間總長度〕可以用星期,天時(shí),分,秒,等來表示下面是有效的字符:w星期,d天,h小時(shí),m分,s秒。允許使用小數(shù)值例如擴(kuò).5s表示500毫秒假設(shè)只需一個(gè)樣本請將DURATION設(shè)為0零HDWINTERVAL消息型采樣間隔的時(shí)間長度可以用星期日小時(shí)分和秒來表示例如1W表示一星期允許使用小數(shù)值例如用.25d來表示6小時(shí)有效字符與HDDURATION一樣注意DURATION和INTERVAL允許的最大時(shí)間長度均為6周這適用于所有請求類型日秒等例如如果使用日則最大值為42,7天*6周=42HDWTAGS消息型歷史數(shù)據(jù)的標(biāo)記名列表〔報(bào)表中需要的標(biāo)記名〕以TagA,TagB,TagZ格式輸入,此外采樣日期和或時(shí)間可以通過使用部系統(tǒng)標(biāo)記名$Date和$Time來請求例如"$Date,TagA,TagB"或"$Time,TagA,TagB"或"$Date,$Time,TagA,TagB"HDWTAGS1,TAGS2,....消息型HDWTAGS字符串在WindowViewer中的長度可以為131個(gè)字符在E*cel中的長度可以為255個(gè)字符字符串,可以通過迭加標(biāo)記名工程Tags1Tags2等來延長以適應(yīng)更長字符串的要求,如果標(biāo)記名需附加額外的標(biāo)記名文本請?jiān)谧址┹斎胍粋€(gè)加號〔+〕例如,TAGS="$Date,ProdLevel,ProdTemp,+"TAGS1="ReactLevel,Temp,GasLevel,+"TAGS2="MotorStatus"注意不允許使用重復(fù)標(biāo)記名,每個(gè)標(biāo)記字符串的最大長度為512字節(jié)HDWFILENAME消息型規(guī)定生成的.CSV文件的路徑和名稱例如,C:\INTOUCH\HDFILE.CSVHDWWRITEFILE整型當(dāng)設(shè)置為1時(shí)HistData會將請求數(shù)據(jù)寫入由FILENAME工程名指定的文件,當(dāng)文件更新完成后WRITEFILE會自動(dòng)重置為0零STATUS離散型顯示最后一次操作的狀態(tài)1表示成功,0零表示出錯(cuò)ERROR消息型包含上次錯(cuò)誤說明的字符串,如STATUS為1則顯示無,如STATUS為0零則顯示錯(cuò)誤消息字符串前9個(gè)TAG規(guī)定數(shù)據(jù)的容,HDWWRITEFILE=1是寫.CSV文件的命令,最后兩個(gè)用于檢查狀態(tài)和錯(cuò)誤。寫腳本時(shí)應(yīng)注意:HDWDBDir、HDWDataDir這兩個(gè)標(biāo)記名是規(guī)定路徑的,可以用函數(shù)賦值。可以寫在應(yīng)用程序腳本。HDWFilename這個(gè)標(biāo)記名是規(guī)定.CSV文件的路徑和文件名。如果只打一種報(bào)表,也可以寫在應(yīng)用程序腳本,否則應(yīng)在形成.CSV文件前指定。HDWTags和后續(xù)的HDWTags1、HDWTags2這些標(biāo)記名是規(guī)定.CSV文件的包含的標(biāo)記名。如果只打一種報(bào)表,也可以寫在應(yīng)用程序腳本,否則應(yīng)在形成.CSV文件前指定。HDWStartDate、HDWStartTime這兩標(biāo)記名是規(guī)定.CSV文件數(shù)據(jù)的起始日期和起始時(shí)間的。如果是招呼打印報(bào)表,人工輸入時(shí)格式一定要正確。如果是自動(dòng)打印報(bào)表可以計(jì)算得到,一般可以在條件腳本規(guī)定。HDWInterval、HDWDuratione這兩標(biāo)記名是規(guī)定.CSV文件的數(shù)據(jù)時(shí)間間隔和數(shù)據(jù)時(shí)間的總長度,如日報(bào)表分別為:1H〔小時(shí)〕和1D〔1天〕。HDWWRITEFILE=1為生成.CSV文件,只有上述標(biāo)記名義賦值后,才執(zhí)行他。ERROR這個(gè)標(biāo)記名可以顯示生成.CSV文件時(shí)是否有錯(cuò)誤,調(diào)試時(shí)非常重要。例如:下面腳本生成一個(gè)日期由StartDate1規(guī)定,包括兩個(gè)標(biāo)記名PI-101,TI-101,日報(bào)表??梢詮?fù)制在你的腳本中,修改一下就可以形成所需的.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;時(shí)間控件名稱HDWStartTime="00:00:00";開場時(shí)間HDWFilename="C:\REPORT.csv";HDWTags="$Date,$Time,zj_AO1,zj_AO2";HDWInterval="1H";HDWDuration="1D";HDWWRITEFILE=1;Step2:招呼打印報(bào)表的情況如果是招呼打印〔不定期打印,人工輸入打印日期和時(shí)間的報(bào)表打印〕,則可以在INTOUCH中開一個(gè)窗口輸入HDWStartDate1,HDWStartTime,HDWInterval,HDWDuration的參數(shù)。并做一個(gè)按鈕,在動(dòng)作腳本中給固定的參數(shù)賦值和最后令HDWWRITEFILE=1;腳本的例子形成的.CSV文件的例子Step3:定時(shí)自動(dòng)打印的情況如果是定時(shí)自動(dòng)打印,需要在條件腳本〔或數(shù)據(jù)改變腳本〕中寫代碼完成。這里需要特別注意起始日期和時(shí)間。如:日報(bào)表示在0點(diǎn)以后打印的,所以需要通過計(jì)算得到前一天的日期,可以用下面語句HDWStartDate=StringFromTime(($Date-1)*86400,1)。舉例:Step4:運(yùn)行INTOUCH,檢查生成的.CSV文件。建立E*CEL報(bào)表Step1:設(shè)計(jì)一個(gè)報(bào)表格式。例如:先畫出報(bào)頭在E*CEL導(dǎo)入相應(yīng).CSV文件。找到相應(yīng).CSV文件,一步步導(dǎo)入 選逗號分割,指定導(dǎo)入?yún)^(qū)域起點(diǎn)單元, 為了更直觀,可以用E*CEL的功能加一個(gè)趨勢圖。Step2:做一個(gè)宏選菜單工具\(yùn)宏\錄制新宏,起一個(gè)宏名〔如mr1〕,確認(rèn)。由于E*CEL不允許在有數(shù)據(jù)的區(qū)域?qū)霐?shù)據(jù),所以先刪除前面導(dǎo)入的數(shù)據(jù)。選擇數(shù)據(jù)區(qū),按Del鍵在E*CEL重新導(dǎo)入相應(yīng).CSV文件。重復(fù)剛剛的步驟打印和保存〔報(bào)表需要打印時(shí)〕或另存(報(bào)表不需要打印時(shí))。停頓記錄宏寫VBA腳本,讓宏自動(dòng)執(zhí)行菜單工具\(yùn)宏\VB編輯器雙擊ThisWorkBook在代碼區(qū)選WorkBook在PrivateSub_Open()函數(shù)中,參加Run(“宏名〞)Application.Quit關(guān)閉VB編輯器,返回Workbook,確定報(bào)表的路徑和文件名(如c:\report1.*ls),保存報(bào)表。這樣,我們的報(bào)表就完成了。一翻開這個(gè)報(bào)表,就會執(zhí)行宏,然后退出。在調(diào)試時(shí),可以迅速按Atrl+Break鍵停頓宏執(zhí)行。注:在另存的情況下,在宏中找到另存的路徑和文件名,用date,tim等變量加到文件名中。Step3:用INTOUCH翻開報(bào)表在INTOUCH的相應(yīng)腳本中加一條語句,啟動(dòng)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是報(bào)表的路徑和文件名,之間有一個(gè)空格。一個(gè)日報(bào)表的例子。語句說明:1〕規(guī)定報(bào)表起

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論