一(yī).概述

(1)TJScript是圖久智能控制系統平台腳本編程語言;

(2)适應TJSmart智能集成控制系統Web端監控;
(3)采用JavaScript語法,運行在浏覽器上;
(4)是爲TJSmart系統智能集成控制編寫;
(5)在JavaScript的基礎上擴充了控制函數、集成函數;
(6)依托TJSmart智能控制系統平台運行;
(7)語法大(dà)小(xiǎo)寫敏感,以TJScript:标識代碼開(kāi)始,平台在接受到該标識後,自動進行解析運行後面代碼;

(8)目前版本是V1.2,後期會根據随着産品升級持續更新;

二.全局變量

•每個窗口定義了50個全局變量,以數組形式存在,變量名稱爲pageVars,50個變量序号爲pageVars[0]…pageVars[49],在程序中(zhōng)可以使用中(zhōng)間任意一(yī)個傳遞參數;
•50個變量爲組态監控窗口變量,屬于每一(yī)個窗口,無法跨窗口使用,窗口切換或關閉後失效;
•用法舉例:
•在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);

                  }


三.函數

       内部函數是基于JavaScript基礎上擴展集成、控制的函數,用于TJSmart智能控制編程,主要函數如下(xià):

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

給指定IO賦值,參數:客戶ID,分(fēn)組ID,控制器地址,IO序号,IO值

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

IO輸出控制,支持多個組合輸出,具體(tǐ)說明如下(xià):

參數:客戶ID,分(fēn)組ID

SMCID:  數組,1個或多個,多個時用[]括住

IOIndex:數組,1個或多個,多個時用[]括住

IOValue:數組,1個或多個,多個時用[]括住

具體(tǐ)用法:

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變量需要在組态工(gōng)具窗口屬性中(zhōng)添加窗口變量,隻能對添加過的窗口變量操作,變量會與服務器實現同步,1秒從服務器中(zhōng)獲取1次

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

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

cID:客戶ID;gID:分(fēn)組ID;Role:權限,0浏覽查看,1爲控制權限;

isExtURL:是否是外(wài)部鏈接,0内部窗口,1外(wài)部鏈接;

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

LinkNav:内部窗口導航名稱

LinkURL:内部窗口名稱或外(wài)部鏈接

說明:開(kāi)發者可以通過本函數定制自己的導航、菜單,然後鏈接打開(kāi)組态窗口。

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

說明:返回當前系統的年、月、日、星期(1-7)、是否是閏年、時、分(fēn)、秒

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

向設備發送數據,接口設備爲組态工(gōng)具上定義的設備,可用于中(zhōng)控集成。

參數說明:

•DeviceID:Server定義的接口設備ID
•dataType:數據類型,1:16進制 2:ASCII
•data爲數據,參數傳遞時以字符串形式輸入,16進制每個值占2字符,如:01,0A,AB...
•datalen數據長度,data的長度,16進制是字節數(注意2個字符1byte),ASCII碼就是字符串長度

•IP,Port可選參數,用于标識發送串口/IP,端口/波特率,一(yī)般UDP設備使用

(7)SetWinObjectValue(name,type,value)

   設置當前窗口組态元素值、圖片、狀态等,可以通過該函數設置web窗口圖片、文字等。

name:窗口元素ID

type:設置類型,說明如下(xià): 

1,2:用于圖片類型的組态元素圖片替換;1表示用images下(xià)面的其它圖片替換, 2:用遠程URL圖片替換;

3:标簽文本内容設置成value值  4:編輯框文本  設置成value值;3、4中(zhōng)可以是數值也可以是字符文本

5:設置界面元素顯示或者隐藏,true顯示 false不顯示

6:觸發界面元素的動作,用于模拟鼠标動作  value:1:click

Value:根據type值确定,可以是圖片文件、文本、數值、事件等。

(8)SetIOValueToDefault(SMCID,StartIO,IONum)

   把指定控制器的IO當前值保存爲默認值,一(yī)般上電運行參數需要。

SMCID:控制器/設備地址;

StartIO:需要保存的起始IO; 

IONum:從起始IO起,所需要連續保存的IO數量。

使用時,可以在界面上通過輸入框等元件把指定的IO值先設定,然後通過圖片、按鈕元件執行本函數,實現默認值保存。

(9)PrintObject(name)

     打印指定對象,name爲空表示打印當前窗口,否則爲指定的ID名稱的對象,一(yī)般情況下(xià),用于打印表格、曲線、查詢統計結果。

(10)ExportObjectToWord(name)

    導出指定對象到word文檔,name爲空表示導出當前窗口,否則爲指定的ID名稱的對象,一(yī)般情況下(xià),用于導出表格、曲線、查詢統計結果。