一.概述
(1)TJScript是圖久智能控制系統(tǒng)平臺腳本編程語言;
(2)適應(yīng)TJSmart智能集成控制系統(tǒng)Web端監(jiān)控;
(3)采用JavaScript語法,運(yùn)行在瀏覽器上;
(4)是為TJSmart系統(tǒng)智能集成控制編寫;
(5)在JavaScript的基礎(chǔ)上擴(kuò)充了控制函數(shù)、集成函數(shù);
(6)依托TJSmart智能控制系統(tǒng)平臺運(yùn)行;
(7)語法大小寫敏感,以TJScript:標(biāo)識代碼開始,平臺在接受到該標(biāo)識后,自動進(jìn)行解析運(yùn)行后面代碼;
(8)目前版本是V1.2,后期會根據(jù)隨著產(chǎn)品升級持續(xù)更新;
二.全局變量
if (pageVars[0]) {
pageVars[0]=0;
OutIO(1,1,1,20,0);
}
else {
pageVars[0]=1;
OutIO(1,1,1,20,1);
}
內(nèi)部函數(shù)是基于JavaScript基礎(chǔ)上擴(kuò)展集成、控制的函數(shù),用于TJSmart智能控制編程,主要函數(shù)如下:
(1)SetIOValue(ClientID,GroupID,SMCID,IOIndex,IOValue)
給指定IO賦值,參數(shù):客戶ID,分組ID,控制器地址,IO序號,IO值
(2)OutIO(ClientID,GroupID,SMCID,IOIndex,Value)
IO輸出控制,支持多個組合輸出,具體說明如下:
參數(shù):客戶ID,分組ID
SMCID:數(shù)組,1個或多個,多個時用[]括住
IOIndex:數(shù)組,1個或多個,多個時用[]括住
IOValue:數(shù)組,1個或多個,多個時用[]括住
具體用法:
SMCID[1,2,3] IOIndex[100,101,190] IOValue=1,則給(1,100)、(2,101)、(3,190) 輸出1
SMCID[1,2,3] IOIndex=100 IOValue=1,則給(1,100)、(2,100)、(3,100) 輸出1
SMCID[1,2,3] IOIndex=100 IOValue[1,0,100],則給(1,100)輸出1、(2,100)輸出0、(3,100) 輸出100
SMCID=1 IOIndex[100,101,190] IOValue[1,0,100],則給(1,100)輸出1、(1,101)輸出0、(1,190) 輸出100
SMCID=1 IOIndex[100,101,190] IOValue=1,則給(1,100)輸出1、(1,101)輸出1、(1,190) 輸出1
(3)GetIOValue(ClientID,GroupID,SMCID,IOIndex)
獲取IO變量值,該IO變量需要在組態(tài)工具窗口屬性中添加窗口變量,只能對添加過的窗口變量操作,變量會與服務(wù)器實現(xiàn)同步,1秒從服務(wù)器中獲取1次
(4)OpenLinkURL(cID,gID,Role,isExtURL, isPop,LinkNav,LinkURL)
打開鏈接,參數(shù):
cID:客戶ID;gID:分組ID;Role:權(quán)限,0瀏覽查看,1為控制權(quán)限;
isExtURL:是否是外部鏈接,0內(nèi)部窗口,1外部鏈接;
isPop:是否彈出窗口,0嵌入,1彈出
LinkNav:內(nèi)部窗口導(dǎo)航名稱
LinkURL:內(nèi)部窗口名稱或外部鏈接
說明:開發(fā)者可以通過本函數(shù)定制自己的導(dǎo)航、菜單,然后鏈接打開組態(tài)窗口。
(5)GetHour() GetMinute() getSecond()時間函數(shù):GetYear() GetMonth() GetDay() getWeekDay() isLeapYear()
說明:返回當(dāng)前系統(tǒng)的年、月、日、星期(1-7)、是否是閏年、時、分、秒
(6)SendDataToExtDevice(DeviceID,datType,data,len,IP,Port)
向設(shè)備發(fā)送數(shù)據(jù),接口設(shè)備為組態(tài)工具上定義的設(shè)備,可用于中控集成。
參數(shù)說明:
?DeviceID:Server定義的接口設(shè)備ID
?dataType:數(shù)據(jù)類型,1:16進(jìn)制 2:ASCII
?data為數(shù)據(jù),參數(shù)傳遞時以字符串形式輸入,16進(jìn)制每個值占2字符,如:01,0A,AB...
?datalen數(shù)據(jù)長度,data的長度,16進(jìn)制是字節(jié)數(shù)(注意2個字符1byte),ASCII碼就是字符串長度
?IP,Port可選參數(shù),用于標(biāo)識發(fā)送串口/IP,端口/波特率,一般UDP設(shè)備使用
(7)SetWinObjectValue(name,type,value)
設(shè)置當(dāng)前窗口組態(tài)元素值、圖片、狀態(tài)等,可以通過該函數(shù)設(shè)置web窗口圖片、文字等。
name:窗口元素ID
type:設(shè)置類型,說明如下:
1,2:用于圖片類型的組態(tài)元素圖片替換;1表示用images下面的其它圖片替換, 2:用遠(yuǎn)程URL圖片替換;
3:標(biāo)簽文本內(nèi)容設(shè)置成value值 4:編輯框文本 設(shè)置成value值;3、4中可以是數(shù)值也可以是字符文本
5:設(shè)置界面元素顯示或者隱藏,true顯示 false不顯示
6:觸發(fā)界面元素的動作,用于模擬鼠標(biāo)動作 value:1:click
Value:根據(jù)type值確定,可以是圖片文件、文本、數(shù)值、事件等。
(8)SetIOValueToDefault(SMCID,StartIO,IONum)
把指定控制器的IO當(dāng)前值保存為默認(rèn)值,一般上電運(yùn)行參數(shù)需要。
SMCID:控制器/設(shè)備地址;
StartIO:需要保存的起始IO;
IONum:從起始IO起,所需要連續(xù)保存的IO數(shù)量。
使用時,可以在界面上通過輸入框等元件把指定的IO值先設(shè)定,然后通過圖片、按鈕元件執(zhí)行本函數(shù),實現(xiàn)默認(rèn)值保存。
(9)PrintObject(name)
打印指定對象,name為空表示打印當(dāng)前窗口,否則為指定的ID名稱的對象,一般情況下,用于打印表格、曲線、查詢統(tǒng)計結(jié)果。
(10)ExportObjectToWord(name)
導(dǎo)出指定對象到word文檔,name為空表示導(dǎo)出當(dāng)前窗口,否則為指定的ID名稱的對象,一般情況下,用于導(dǎo)出表格、曲線、查詢統(tǒng)計結(jié)果。