一.概述

(1)TJScript是圖久智能控制系統(tǒng)平臺(tái)腳本編程語(yǔ)言;

(2)適應(yīng)TJSmart智能集成控制系統(tǒng)Web端監(jiān)控;

(3)采用JavaScript語(yǔ)法,運(yùn)行在瀏覽器上;

(4)是為T(mén)JSmart系統(tǒng)智能集成控制編寫(xiě);

(5)在JavaScript的基礎(chǔ)上擴(kuò)充了控制函數(shù)、集成函數(shù);

(6)依托TJSmart智能控制系統(tǒng)平臺(tái)運(yùn)行;

(7)語(yǔ)法大小寫(xiě)敏感,以TJScript:標(biāo)識(shí)代碼開(kāi)始,平臺(tái)在接受到該標(biāo)識(shí)后,自動(dòng)進(jìn)行解析運(yùn)行后面代碼;

(8)目前版本是V1.2,后期會(huì)根據(jù)隨著產(chǎn)品升級(jí)持續(xù)更新;


二.全局變量

?每個(gè)窗口定義了50個(gè)全局變量,以數(shù)組形式存在,變量名稱(chēng)為pageVars,50個(gè)變量序號(hào)為pageVars[0]…pageVars[49],在程序中可以使用中間任意一個(gè)傳遞參數(shù);
?50個(gè)變量為組態(tài)監(jiān)控窗口變量,屬于每一個(gè)窗口,無(wú)法跨窗口使用,窗口切換或關(guān)閉后失效;
?用法舉例:
?在TJScript:pageVars[0]=1;

                   if (pageVars[0]) {

                     pageVars[0]=0;

                     OutIO(1,1,1,20,0);

                     }

                  else {

                       pageVars[0]=1;

                       OutIO(1,1,1,20,1);

                  }


三.函數(shù)

   內(nèi)部函數(shù)是基于JavaScript基礎(chǔ)上擴(kuò)展集成、控制的函數(shù),用于TJSmart智能控制編程,主要函數(shù)如下:

(1)SetIOValue(ClientID,GroupID,SMCID,IOIndex,IOValue)

給指定IO賦值,參數(shù):客戶(hù)ID,分組ID,控制器地址,IO序號(hào),IO值

(2)OutIO(ClientID,GroupID,SMCID,IOIndex,Value)

IO輸出控制,支持多個(gè)組合輸出,具體說(shuō)明如下:

參數(shù):客戶(hù)ID,分組ID

SMCID:數(shù)組,1個(gè)或多個(gè),多個(gè)時(shí)用[]括住

IOIndex:數(shù)組,1個(gè)或多個(gè),多個(gè)時(shí)用[]括住

IOValue:數(shù)組,1個(gè)或多個(gè),多個(gè)時(shí)用[]括住

具體用法:

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)工具窗口屬性中添加窗口變量,只能對(duì)添加過(guò)的窗口變量操作,變量會(huì)與服務(wù)器實(shí)現(xiàn)同步,1秒從服務(wù)器中獲取1次

(4)OpenLinkURL(cID,gID,Role,isExtURL, isPop,LinkNav,LinkURL)

打開(kāi)鏈接,參數(shù):

cID:客戶(hù)ID;gID:分組ID;Role:權(quán)限,0瀏覽查看,1為控制權(quán)限;

isExtURL:是否是外部鏈接,0內(nèi)部窗口,1外部鏈接;

isPop:是否彈出窗口,0嵌入,1彈出

LinkNav:內(nèi)部窗口導(dǎo)航名稱(chēng)

LinkURL:內(nèi)部窗口名稱(chēng)或外部鏈接

說(shuō)明:開(kāi)發(fā)者可以通過(guò)本函數(shù)定制自己的導(dǎo)航、菜單,然后鏈接打開(kāi)組態(tài)窗口。

(5)GetHour() GetMinute() getSecond()時(shí)間函數(shù):GetYear()  GetMonth()  GetDay() getWeekDay()  isLeapYear()

說(shuō)明:返回當(dāng)前系統(tǒng)的年、月、日、星期(1-7)、是否是閏年、時(shí)、分、秒

(6)SendDataToExtDevice(DeviceID,datType,data,len,IP,Port)

向設(shè)備發(fā)送數(shù)據(jù),接口設(shè)備為組態(tài)工具上定義的設(shè)備,可用于中控集成。

參數(shù)說(shuō)明:

   ?DeviceID:Server定義的接口設(shè)備ID

   ?dataType:數(shù)據(jù)類(lèi)型,1:16進(jìn)制 2:ASCII

   ?data為數(shù)據(jù),參數(shù)傳遞時(shí)以字符串形式輸入,16進(jìn)制每個(gè)值占2字符,如:01,0A,AB...

   ?datalen數(shù)據(jù)長(zhǎng)度,data的長(zhǎng)度,16進(jìn)制是字節(jié)數(shù)(注意2個(gè)字符1byte),ASCII碼就是字符串長(zhǎng)度

   ?IP,Port可選參數(shù),用于標(biāo)識(shí)發(fā)送串口/IP,端口/波特率,一般UDP設(shè)備使用

(7)SetWinObjectValue(name,type,value)

   設(shè)置當(dāng)前窗口組態(tài)元素值、圖片、狀態(tài)等,可以通過(guò)該函數(shù)設(shè)置web窗口圖片、文字等。

name:窗口元素ID

type:設(shè)置類(lèi)型,說(shuō)明如下: 

1,2:用于圖片類(lèi)型的組態(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ā)界面元素的動(dòng)作,用于模擬鼠標(biāo)動(dòng)作  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ù)量。

   使用時(shí),可以在界面上通過(guò)輸入框等元件把指定的IO值先設(shè)定,然后通過(guò)圖片、按鈕元件執(zhí)行本函數(shù),實(shí)現(xiàn)默認(rèn)值保存。

(9)PrintObject(name)

    打印指定對(duì)象,name為空表示打印當(dāng)前窗口,否則為指定的ID名稱(chēng)的對(duì)象,一般情況下,用于打印表格、曲線、查詢(xún)統(tǒng)計(jì)結(jié)果。

(10)ExportObjectToWord(name)

   導(dǎo)出指定對(duì)象到word文檔,name為空表示導(dǎo)出當(dāng)前窗口,否則為指定的ID名稱(chēng)的對(duì)象,一般情況下,用于導(dǎo)出表格、曲線、查詢(xún)統(tǒng)計(jì)結(jié)果。