功能介紹
# TARS 功能介紹
依據TARS使用手冊之界面介紹圖示,列舉每個功能詳細使用說明。
# 1. 界面、功能功能表
工具欄功能表包括:服務、語言、幫助。
服務: 服務選項中包含了啟動,停止服務等運行操作方式,點選以後會出現下拉功能表。
- 啟動服務: 當此按鈕處於非灰色狀態時,點選此功能表項后,開啟TARS中介軟體服務。
- 停止服務: 當此按鈕處於非灰色狀態時,點選此功能表項后,停止TARS中介軟體服務。
- 退出: 點選此按鈕,退出TARS。
語言: 設定選項中包含多語言設定,點選以後會出現下拉功能表。
語言選擇: 進行TARS界面內容多語言設定,在二級功能表中選擇語言型別來將程式的語言切換成對應選擇的語言選項。
新增語言: 點選此專案可新增一個新的語言專案。按下Enter按鍵換行設定多種語言。
語言配置: 點選此項打開多語言設定頁面,該頁面中可設定程式字幕在不同語言環境下顯示的多語言資訊。可設定的語言型別包括程式初始預設的語言型別(簡體中文、繁體中文、英語)以及自定義設定的語言型別。
語言翻譯器的功能表欄界面包括File
、Edit
、View
、Tools
等,Dictonary
與Help
功能表功能未實裝,點選無效。
File
功能表說明如下:
Load...
:選擇多語言配置檔案(*.sli)以載入多語言設定內容。Export...
:將目前的多語言設定導出為配置檔案(*.sli)。Close
:退出設定界面。Close Saved
:退出多語言設定界面同時儲存多語言設定。
Edit
功能表說明如下:
Undo
:撤銷上一步操作。Cut
:對當前選擇的專案內容進行剪下操作。Copy
:對當前選擇的專案內容進行復制操作。Paste
:將系統剪下板中的內容貼上至選擇的指定項中。Delete
:刪除目前選擇的專案行。Multiline Editor
:多行數據編輯器,對於需要執行多行編輯的專案,在選擇對應的專案后,選擇此選項可打開多行編輯器,其顯示結果與雙擊此專案相同。Comments
:提供註釋相關的內容。(目前版本暫不支援此內容)Add Row
:對於可以自行新增行的專案,在選擇專案后,點選此功能表項可增加新的一行。Remove Row
:對於可以自行新增行的專案,在選擇專案后,點選此功能表項可刪除目前選擇的行。Clear
:清除目前的所有專案,在清除前會有彈窗提示是否要進行刪除操作。Find
:查詢按鈕,打開查詢界面,輸入查詢的內容進行查詢操作。
View
功能表說明如下:
Display
:設定需要顯示內容的專案。All entries
:顯示所有的專案。Partially translated
:僅顯示有部分翻譯的專案。Untranslated
:僅顯示未進行任何翻譯的專案。All InComplete
:顯示所有未翻譯完全以及未翻譯的專案。
Sort
:設定顯示專案的顯示順序。by Component
:按照元件名稱的順序進行排序。by Simpleified Chinese
:按照簡體中文名稱的順序進行排序。by Traditional Chinese
:按照繁體中文名稱的順序進行排序。by English
:按照英語名稱的順序進行排序。- 除上述的語言排序外,如有其他的新增語言,也會在此處顯示。即按照選擇的語言名稱順序進行排序。
Tools
功能表說明如下:
Default Fonts...
:為語言項設定預設的字符集與字型。打開的界面顯示如下。Language
:填寫語言名稱,此語言名稱與語言列表中的要一致。Font Name
:選擇字型的名稱。Charset
:選擇字符集的名稱。[Add]
:選擇后,將填寫的專案新增至下方的列表中。[Replace]
:將修改後的內容替換掉目前選擇的字符集項。[Delete]
:刪除目前選擇的專案。[Clear]
:清除所有的專案。
Languages
:檢視語言名稱的列表。打開顯示如下圖。下側的列表點選可選擇語言名稱,在
Name
的編輯框中會顯示,可修改語言的名稱,修改完成後點選Modify
完成對語言名稱的修改。點選[OK]
按鈕確認,點選[Cancel]
按鈕取消並退出修改。Check Format Settings
:用於檢查格式設定是否正確。此選項僅在Strings
下可用。Find in source
:在原始碼中進行查詢。此選項僅在Strings
下可用。Delete Duplicates
:刪除在Strings
中的重複專案。Settings
:其他相關的設定選項。
幫助: 點選以後會出現下拉功能表。
點選
[關於…]
,顯示TARS的產品版本資訊。
界面的底部的狀態列,顯示目前的連線情況,伺服器的負載情況以及流量統計等相關資訊。
- 啟動時間:TARS啟動服務的時間。
- 活動時間:TARS服務的最近發生活動的時間。
- 通訊埠:TARS運行監聽服務的埠號。
- 連線總數:TARS伺服器目前連線的客戶端的數量。
- 請求次數:TARS接收到的服務請求的數量。
- 記憶體使用:目前TARS服務佔用的記憶體量。
- CPU使用:目前TARS服務佔用的CPU百分比。
- 數量流量:目前TARS服務使用的數據流量統計。
# 2. 功能說明
# 2.1. 日誌
顯示客戶端訪問服務端的各種日誌資訊。
其中的功能按鈕說明如下:
- 打開: 打開日誌資料夾,日誌資料夾中包含日誌歷史的文字檔案。
- 複製: 選擇一行需要複製的日誌資訊,點選此按鈕可將日誌資訊複製到系統剪下板。
- 清空: 清空螢幕顯示的所有日誌資訊。
- 滾動: 啟用該選項后,日誌在重新整理時會滾動顯示,即日誌會定位至最新的一條。
- 檢視: 選擇日誌后,點選此按鈕,打開日誌界面檢視詳細的日誌資訊。
日誌列表中的資訊說明如下:
- 序號: 日誌資訊的序號。
- 時間: 日誌資訊的產生時間。
- 內容: 日誌說明詳細資訊。
推送訊息界面顯示如下:
該功能需配合網頁端的WebSocket
功能來使用,TARS預設已打開訊息推送功能,此處可打開WebSocket測試網站 (opens new window)來進行相關測試。
在測試頁面的地址框中輸入TARS的地址,TARS本機的IP地址為127.0.0.1
,開放的埠號為8809
,訊息提示函式名稱為message
,則對應的WebSocket
地址設定為ws://127.0.0.1:8809/message
。點選[連線]
。待服務端迴應Hello,Web Socket Client!
時表示連線成功。此時可在網頁頁面底部的待發資訊欄中輸入要發送的資訊,點選[發送]
按鈕。
在日誌列表中會顯示此客戶端發送的訊息。
在WebSocket客戶端連線的情況下,我們在TARS的訊息推送界面的編輯框中輸入要推送的訊息,點選推送訊息
即可實現向此客戶端推送編輯的訊息。
# 2.2. 資料庫設定
管理資料庫連線配置,支援多種資料庫以及多聯方式。
圖中按鈕部分內容說明如下:
[新建]
打開編輯視窗新增資料庫連線設定。[編輯]
選擇列表中的連線設定,編輯資料庫連線設定。[刪除]
刪除選中的資料庫設定。[測試]
測試選中的資料庫設定是否正確。
列表中各表名稱釋義如下:
- 序號: 連線設定的序號名稱。
- 連線名稱: TARS的連線設定的名稱,此名稱作為連線參數使用,用於指定要連線的資料庫等資訊。
- 資料庫型別: 連線設定指定的此連線的資料庫的型別,例如
MySQL
、SQLite
等。 - 資料庫: 設定連線的資料庫的名稱。
- 連線池: 是否為此連線設定設立連線池,設定連線池可提高連線的利用率。
- 最大值: 連線池中允許的連線執行緒的最大數目。
- 刪除許可權: 該連線設定是否對資料庫有刪除許可權,當刪除許可權被禁用后,使用此連線設定連線的客戶端不能對錶執行
DELETE
語句操作。預存程序除外。 - 插入許可權: 該連線設定是否對資料庫有插入許可權,當插入許可權被禁用后,使用此連線設定連線的客戶端不能對錶執行
INSERT
語句操作。預存程序除外。 - 更新許可權: 該連線設定是否對資料庫有更新許可權,當插入許可權被禁用后,使用此連線設定連線的客戶端不能對錶執行
INSERT
語句操作。預存程序除外。 - DDL許可權: 該連線設定是否對資料庫是否有DDL(資料庫定義)許可權,比如建立表,刪除表,更改表結構等許可權,當此許可權被禁用后,使用此連線設定連線的客戶端不能對執行表結構更新的相關操作。預存程序除外。
- 啟用: 連線設定是否啟用,只有在啟用狀態下可以通過此連線涉資連線至資料庫。如果設定為禁用,則該連線設定不可用。
- 更新時間: 連線設定的更新時間,在經過編輯修改後時間會更新。
- 備註: 連線設定的備註資訊,在紡織印染業ERP中備註資訊會作為產品版本區分的依據。
# 2.2.1. 使用TARS連線至MSSQL Server
TARS支援 Microsoft SQL Server Standard 和 Express 版本 2000 及更高版本,以及 Microsoft SQL Azure。支援連線的MSSQL型別包括Microsoft SQL Server
與Microsofot SQL Server 2000
,這兩種資料庫型別均可使用以下的連線方式進行連線。
點選[新建]
按鈕,出現數據庫型別下拉功能表圖。
點選下拉選單中的資料庫型別,當選擇型別為Microsoft SQL Server
或者Microsoft SQL Server 2000
時,出現數據庫連線設定窗體圖,請根據對應參數進行設定即可。修改連線設定的名稱,標註紅色的專案為必填專案,其餘專案可視情況選擇填寫。填寫完成後,點選[確定]
按鈕以新增連線設定。
注意,每次新增或修改連線設定后,請先點選程式左上角的圖示以關閉TARS服務然後再點選此圖示重新啟動TARS服務使連線設定生效。
圖中部分內容說明如下:
連線:
- 連線名稱: 資料庫連線的別名,圖中顯示為
MSSQL20200725
的就是連線設定名稱的編輯庫,客戶端訪問資料庫時候,需要以此名稱作為唯一指定對象。 - 備註: 連線的備註,在紡織印染業ERP解決方案中,此項作為不同功能的產品區分參數。
- DriverID: 數據連線的型別,在選擇新建資料庫型別時建立,建立后不能修改。如果在建立時選擇的型別為
Microsoft SQL Server
,此處顯示的型別為MSSQL
,如果選擇的型別為Microsoft SQL Server 2000
,此處顯示的型別為MSSQL2000
。 - Pooled: 是否設定連線池,連線池的設定可以提高連線執行緒的利用率,提高運行效率。
- DataBase: 資料庫的名稱,需設定資料庫的連線。
- User_Name: 連線的資料庫使用者名稱稱。
- Password: 連線的資料庫使用者密碼。
- MonirotBy: 設定監控型別。
FlatFile
:將跟蹤輸出到純文字檔案。 當應用程式完成時,它會顯示產生的跟蹤檔案列表。Remote
:將跟蹤輸出到FDMonitor 實用程式並允許監視應用程式。 在啟用跟蹤輸出之前,FDMonitor必須正在運行。Custom
:將跟蹤輸出到自定義事件處理程式。
- Pool_Cleanup Timeout: 連線池清理的超時時間,以ms為單位。
- Pool_Expire Timeout: 連線池超時的時間,以ms為單位。
- POOL_MaximumItems: 連線池設定的最大連線數。
- ODBC_Advanced: 允許您指定ODBC連線參數,設定方式為 參數名稱=值,各取值對以";"分隔,MSSQL不需要設定此參數值。
- Login Timeout: 控制嘗試建立連線時應用程式超時之前的時間量(以秒為單位), 0 指定無限等待(預設值)。
- Server: 設定連線的伺服器的名稱。
- Network: 網路庫動態鏈接庫的名稱,該名稱不需要包含路徑,並且不得包含 .dll 副檔名。
- Address: 運行 SQL Server 實體的伺服器的網路地址。 地址通常是伺服器的網路名稱,但也可以是其他名稱,例如管道或 TCP/IP 埠和套接字地址。
- OSAuthent: 設定OS驗證。如果此項設定為
Yes
則在連線本地的使用使用者帳戶連線的資料庫時不需要提供使用者名稱和密碼。 - MARS: 設定資料庫是否使用連線複用。
- Workstation: 工作站 ID。通常為應用程式所在計算機的網路名稱(可不填)。 如果指定,此值儲存在
master.dbo.sysprocesses
列主機名中,並由sp_who
和Transact-SQL HOST_NAME
函式返回。 - Language: SQL Server 語言名稱(可選)。 連線到具有多種語言的 SQL Server 時,Language指定用於連線的訊息集。
- Encrypt: 設定網路連線是否進行加密。
Yes
:網路連線加密。No
:網路連線不加密。
- VariantFormat: 控制 SQL_VARIANT 數據型別表示。
String
:數據型別表示為 dtWideString。 字串值作為十六進制字串返回,數字作為字串返回,依此類推。 這是預設值。Binary
:數據型別表示為帶有原始數據表示的 dtByteString。 字串值作為具有原始編碼、二進制格式的數字等的字串返回。
- ExtendedMetaData: 設定查詢結果集的擴充套件描述。
True
:獲取除其他列屬性之外的欄位原始表和列。 將此選項設定為 True 可能會減慢數據集的打開速度。False
:使用有關查詢列的受限資訊。 這是預設值。
- ApplicationName: 應用程式的名稱。 如果指定,此值儲存在
master.dbo.sysprocesses
的列program_name
中,並由sp_who
和Transact-SQL APP_NAME
函式返回。 - MetaDefCatalog: 預設資料庫名稱。 如果目錄名稱等於 MetaDefCatalog,則設計時程式碼會從對像名稱中排除目錄名稱。
- MetaDefSchema: 預設架構名稱。 如果架構名稱等於 MetaDefSchema,則設計時程式碼會從對像名稱中排除架構名稱。預設的資料庫中架構名稱為
dbo
。 - MetaCurCatalog: 指定應用程式的當前目錄。 如果未指定,則從資料庫管理系統中接收其值。 如果應用程式要求提供後設資料而您沒有指定目錄名稱,則會隱式使用目前目錄。
- MetaCurSchema: 指定應用程式的當前架構。 如果未指定,則從資料庫管理系統中接收其值。 如果應用程式要求提供後設資料而您沒有指定架構名稱,則 FireDAC 會隱式使用目前架構。
- MetaCaseIns: 設定後設資料是否區分大小寫。
True
:使用不區分大小寫的後設資料搜索。False
:取決於資料庫的設定,此項為預設設定。
- MetaCaseInsCat: 設定 SQL Server 目錄名稱區分大小寫。
Choose
:自動監測目錄名稱區分大小寫,此項為預設值。False
:目錄名稱區分大小寫。True
:目錄名稱不區分大小寫
- EnableDelete: 啟用刪除許可權,如果此項被禁用,使用者在執行
DELETE
指令碼以刪除數據的操作時會被阻止執行。 - EnableInsert: 啟用插入許可權,如果此項被禁用,使用者在執行
INSERT
指令碼以插入數據的操作時會被阻止執行。 - EnableUpdate: 啟用更新許可權,如果此項被禁用,使用者在執行
UPDATE
指令碼以更新數據的操作時會被阻止執行。 - EnableDDL: 啟用表結構操作許可權,如果此項被禁用,使用者在執行表結構更新的操作時會被阻止執行。
- Available: 是否啟用此連線設定,如果此項被禁用,則使用者無法使用此連線設定連線至資料庫。
如果對連線設定中以上幾項的相關數據操作許可權進行禁用后,在客戶端執行相關操作時會提示更新失敗。
[恢復預設]
:當連線的參數需要清空時,點選此按鈕將參數恢復成預設的狀態。[確定]
:確認連線設定並儲存。[取消]
:取消連線設定的更改並退出頁面。
- 連線名稱: 資料庫連線的別名,圖中顯示為
資訊: 以文字列表方式顯示資料庫連線配置資訊。
SQL指令碼: 可以執行此連線設定下適用的SQL指令碼。
下圖則是SQL指令碼使用示例圖,三個操作按鈕從左至右依次為執行語句、執行下一條語句以及跳過下一條語句。
# 2.2.2. 使用TARS連線至MySQL Server
TARS支援連線的MySQL Server包括:
- MySQL Server Community, Enterprise, and Embedded editions version 3.21 以及更高版本。
- MariaDB 5.5以及更高版本。
點選[新建]
按鈕,出現數據庫型別下拉功能表圖。
點選下拉選單中的資料庫型別,當選擇型別為MySQL Server
時,出現數據庫連線設定窗體圖,請根據對應參數進行設定即可。標註紅色的專案為必填專案,其餘專案可視情況選擇填寫。注意,每次新增或修改連線設定后,請先關閉TARS服務然後再重新啟動TARS服務使連線設定生效。
連線:
- 連線名稱: 資料庫連線的別名,圖中顯示為
MySQL20210626
的就是連線設定名稱的編輯庫,客戶端訪問資料庫時候,需要以此名稱作為唯一指定對象。 - 備註: 連線的備註資訊。
- DriverID: 數據連線的型別,在選擇新建資料庫型別時建立,建立后不能修改。如果在建立時選擇的型別為
MySQL Server
,此處顯示的型別為MySQL
。 - Pooled: 是否設定連線池,連線池的設定可以提高連線執行緒的利用率,提高運行效率。
- DataBase: 資料庫的名稱,需設定資料庫的連線。
- User_Name: 連線的資料庫使用者名稱稱。
- Password: 連線的資料庫使用者密碼。
- MonirotBy: 設定監控型別。
FlatFile
:將跟蹤輸出到純文字檔案。 當應用程式完成時,它會顯示產生的跟蹤檔案列表。Remote
:將跟蹤輸出到FDMonitor 實用程式並允許監視應用程式。 在啟用跟蹤輸出之前,FDMonitor 必須正在運行。Custom
:將跟蹤輸出到自定義事件處理程式。
- Pool_Cleanup Timeout: 連線池清理的超時時間,以ms為單位。
- Pool_Expire Timeout: 連線池超時的時間,以ms為單位。
- POOL_MaximumItems: 連線池設定的最大連線數。
- Server: 設定連線的伺服器的名稱。
- Port: 設定連線的伺服器的埠資訊。
- Compress: 指定為
True
以啟用網路流量壓縮,False
表示為不啟用網路流量壓縮。 - UseSSL: 指定
True
以啟用SSL連線。 預設情況下,它設定為False
。 設定UseSSL=True
需要您額外指定連線定義參數:- SSL_key -- 金鑰檔案的路徑名。
- SSL_cert -- 證書檔案的路徑名。
- SSL_ca -- 證書頒發機構檔案的路徑名。
- SSL_capath -- 包含 pem 格式的可信 SSL CA 證書的目錄的路徑名。
- SSL_cipher -- 用於 SSL 加密的允許密碼列表。
- LoginTimeout: 設定嘗試建立連線時應用程式超時之前的時間量(以秒為單位)。
- ReadTimeout: 嘗試從伺服器讀取的超時時間(以秒為單位)。 每次嘗試都使用此超時值,並且在必要時進行重試,因此總有效超時值是選項值的三倍。 您可以設定該值,以便在
TCP/IP Close_Wait_Timeout
設定值的10 分鐘之前檢測到丟失的連線。 此選項僅適用於 TCP/IP 連線,並且在Windows 版本的MySQL 5.1.12 之前。 預設情況下該選項未設定。 - WriteTimeout: 嘗試寫入伺服器的超時(以秒為單位)。 每次嘗試都使用此超時值,如有必要,還會進行
net_retry_count
重試,因此總有效超時值是net_retry_count
乘以選項值。 此選項僅適用於 TCP/IP 連線,並且在Windows 版本的MySQL 5.1.12 之前。 預設情況下未設定。 - ResultMode: 對客戶端的結果集的獲取。 預設值為
Store
。Store
:在查詢執行后立即獲取所有行並將它們儲存在客戶端上,使伺服器程序為新請求做好準備。Use
:根據需要從客戶端獲取行。 在獲取結果集中的所有行之前,伺服器無法處理新請求。 它允許您減少非常大的結果集的記憶體使用量。Choose
:自動選擇一種模式。
- CharacterSet: 連線的預設字符集。 連線排序規則成為字符集的預設排序規則。 有關詳細資訊,請參閱MySQL
SET NAMES
語句。通常情況下此選項設定為utf8mb4
。 - TinyIntFormat: 設定 TinyInt(1)數據型別表示。 預設值為
Boolean
。Boolean
: TinyInt(1)列表示為dtBoolean
。Integer
:TinyInt(1) 列表示為dtSByte
或dtByte
。
- MetaDefCatalog: 預設資料庫名稱。 如果目錄名稱等於 MetaDefCatalog,則設計時程式碼會從對像名稱中排除目錄名稱。
- MetaCurCatalog: 指定應用程式的當前目錄。 如果未指定,則從 DBMS 接收其值。 如果應用程式要求提供後設資料而您沒有指定目錄名稱,則會隱式使用目前目錄。
- EnableDelete: 啟用刪除許可權,如果此項被禁用,使用者在執行
DELETE
指令碼以刪除數據的操作時會被阻止執行。 - EnableInsert: 啟用插入許可權,如果此項被禁用,使用者在執行
INSERT
指令碼以插入數據的操作時會被阻止執行。 - EnableUpdate: 啟用更新許可權,如果此項被禁用,使用者在執行
UPDATE
指令碼以更新數據的操作時會被阻止執行。 - EnableDDL: 啟用表結構操作許可權,如果此項被禁用,使用者在執行表結構更新的操作時會被阻止執行。
- Available: 是否啟用此連線設定,如果此項被禁用,則使用者無法使用此連線設定連線至資料庫。
如果對連線設定中以上幾項的相關數據操作許可權進行禁用后,在客戶端執行相關操作時會提示更新失敗。
[恢復預設]
:當連線的參數需要清空時,點選此按鈕將參數恢復成預設的狀態。[確定]
:確認連線設定並儲存。[取消]
:取消連線設定的更改並退出頁面。
- 連線名稱: 資料庫連線的別名,圖中顯示為
資訊: 以文字列表方式顯示資料庫連線配置資訊。
SQL指令碼: 可以執行此連線設定下適用的SQL指令碼。
下圖則是SQL指令碼使用示例圖,三個操作按鈕從左至右依次為執行語句、執行下一條語句以及跳過下一條語句。
提示
從MySQL 8.0 開始,預設的帳號認證方式改為 caching_sha2_password
,如果選用此認證方式,會導致 TARS 無法連線至 MySQL Server。
如需要修改爲傳統的使用者名稱密碼的認證方式,則先使用 MySQL Workbench 等管理工具登錄至 MySQL。運行以下SQL 指令。
--請將其中的 {username} 替換為 MySQL 的登錄使用者, {password} 修改爲登錄使用者的密碼
ALTER USER '{username}'@'localhost' IDENTIFIED WITH mysql_native_password BY '{password}';
FLUSH PRIVILEGES;
2
3
4
重新整理許可權表,更新快取后,可在客戶端使用使用者名稱密碼建立連線設定。
# 2.2.3. 使用TARS連線至SQLite
TARS本機驅動程式支援 SQLite 資料庫版本 3.0 及更高版本。
點選[新建]
按鈕,出現數據庫型別下拉功能表圖。
點選下拉選單中的資料庫型別,當選擇型別為SQLite
時,出現數據庫連線設定窗體圖,請根據對應參數進行設定即可。標註紅色的專案為必填專案,其餘專案可視情況選擇填寫。注意,每次新增或修改連線設定后,請先關閉TARS服務然後再重新啟動TARS服務使連線設定生效。
連線:
- 連線名稱: 資料庫連線的別名,圖中顯示為
SQLite20210626
的就是連線設定名稱的編輯庫,客戶端訪問資料庫時候,需要以此名稱作為唯一指定對象。 - 備註: 連線的備註資訊。
- DriverID: 數據連線的型別,在選擇新建資料庫型別時建立,建立后不能修改。如果在建立時選擇的型別為
SQLite
,此處顯示的型別為SQLite
。 - Pooled: 是否設定連線池,連線池的設定可以提高連線執行緒的利用率,提高運行效率。
- DataBase: 資料庫的路徑。 使用 ':memory:' 或空字串建立並連線到空的記憶體資料庫。 路徑可以包含路徑變數。
- User_Name: 連線的資料庫使用者名稱稱,SQLite中此項不需設定。
- Password: 指定加密資料庫的密碼。 該值可能具有以下形式:[ aes-128 | aes-192 | aes-256 | aes-ctr-128 | aes-ctr-192 | aes-ctr-256 | aes-ecb-128 | aes-ecb-192 | aes-ecb-256 :] <password> 可選字首控制要使用的密碼演算法。 預設值為空字串,表示未加密模式。
- MonirotBy: 設定監控型別。
FlatFile
:將跟蹤輸出到純文字檔案。 當應用程式完成時,它會顯示產生的跟蹤檔案列表。Remote
:將跟蹤輸出到FDMonitor 實用程式並允許監視應用程式。 在啟用跟蹤輸出之前,FDMonitor 必須正在運行。Custom
:將跟蹤輸出到自定義事件處理程式。
- Pool_Cleanup Timeout: 連線池清理的超時時間,以ms為單位。
- Pool_Expire Timeout: 連線池超時的時間,以ms為單位。
- POOL_MaximumItems: 連線池設定的最大連線數。
- OpenMode: 設定打開資料庫的模式:
CreateUTF8
:打開一個資料庫來讀或寫。 如果資料庫不存在,將使用 UTF8 預設編碼建立。CreateUTF16
:打開一個資料庫來讀或寫。 如果資料庫不存在,將使用 UTF16 預設編碼建立。ReadWrite
:打開一個資料庫來讀或寫。 如果資料庫不存在,則會引發異常。ReadOnly
:打開一個資料庫為只讀。 如果資料庫不存在,則會引發異常。
- Encrypt: 指定資料庫的預設加密模式。 可以使用可選的密碼字首覆蓋該模式。 如果未指定,則使用此參數指定的模式。 否則,使用
aes-256
。 - BusyTimeout: 當表被鎖定時設定一個毫秒時間使進入休眠狀態。 零意味著不等待。 預設值為 10000。
- CacheSize: 更改 SQLite 一次儲存在記憶體中的最大資料庫磁碟頁面數。 每個頁面使用大約 1.5K 的記憶體。 預設值為 10000。
- SharedCache: 啟用或禁用 SQLite 共享快取功能。預設值是
True
。 - LockingMode: 設定資料庫連線鎖定模式。 該值是以下之一:
Normal
:此模式允許多使用者訪問資料庫檔案。Exclusive
:此模式可提供最高效能。 預設值為Exclusive
,因為它允許您獲得單使用者應用程式的最大讀/寫速度。
- Synchronous: 設定記憶體快取與資料庫檔案的資料庫連線同步模式。 該值是以下之一:
Full
:在每一個關鍵時刻同步。Normal
:如上所述,但頻率較低。Off
:提供最佳效能。 這是預設值。
- JournalMode: 設定日誌模式。
Delete
: 預設模式。在該模式下,在事務結束時,日誌檔案將被刪除。Truncate
:日誌檔案被截斷為零位元組長度。Persist
:日誌檔案被留在原地,但頭部被重寫,表明日誌不再有效。Memory
: 日誌記錄保留在記憶體中,而不是磁碟上。WAL
:日誌記錄被單獨寫入至更改檔案中。Off
:關閉日誌檔案的功能。
- ForeignKeys: 當應用程式使用 SQLite v 3.6.19 或更高版本時,為資料庫連線啟用外來鍵使用。 該值是以下之一:
On
:啟用會話中的外來鍵。 這是預設值。Off
:會話中的外來鍵被禁用。
- StringFormat: 定義如何表示字串值:
Choose
:表示為ftString / ftWideString / ftMemo / ftWideMemo
,取決於聲明的數據型別名稱(預設);Unicode
:表示為ftWideString / ftWideMemo
;ANSI
:始終表示為ftString / ftMemo
。
- GUIDFormat: 定義如何儲存 GUID 值:
String
:將 GUID 儲存為字串值(預設)。Binary
:將 GUID 儲存為二進制字串值。
- DateTimeFormat: 定義如何儲存日期和時間值:
String
:使用 YYYY-MM-DD 和 HH:MM:SS.XXX 格式(預設)將日期和時間儲存為字串值。Binary
:將日期和時間儲存為實數,即儒略日期。DateTime
:將日期和時間儲存為一個實數,它是一個TDateTime
值。
- Extensions: 啟用、禁用或指定要載入的 SQLite 引擎擴充套件:
True
:啟用擴充套件。False
:禁用擴充套件(預設)。 否則,使用擴充套件列表以 <library>[=<entry point>][;...] 的形式載入。
- SQLiteAdvanced: 其他 SQLite 資料庫連線選項。參考SQLite參數說明 (opens new window)文件進行填寫。
- MetaDefCatalog: 預設資料庫名稱。 如果目錄名稱等於 MetaDefCatalog,則設計時程式碼會從對像名稱中排除目錄名稱。
- MetaCurCatalog: 指定應用程式的當前目錄。 如果未指定,則從資料庫管理系統中接收其值。 如果應用程式要求提供後設資料而您沒有指定目錄名稱,則會隱式使用目前目錄。
- EnableDelete: 啟用刪除許可權,如果此項被禁用,使用者在執行
DELETE
指令碼以刪除數據的操作時會被阻止執行。 - EnableInsert: 啟用插入許可權,如果此項被禁用,使用者在執行
INSERT
指令碼以插入數據的操作時會被阻止執行。 - EnableUpdate: 啟用更新許可權,如果此項被禁用,使用者在執行
UPDATE
指令碼以更新數據的操作時會被阻止執行。 - EnableDDL: 啟用表結構操作許可權,如果此項被禁用,使用者在執行表結構更新的操作時會被阻止執行。
- Available: 是否啟用此連線設定,如果此項被禁用,則使用者無法使用此連線設定連線至資料庫。
如果對連線設定中以上幾項的相關數據操作許可權進行禁用后,在客戶端執行相關操作時會提示更新失敗。
[恢復預設]
:當連線的參數需要清空時,點選此按鈕將參數恢復成預設的狀態。[確定]
:確認連線設定並儲存。[取消]
:取消連線設定的更改並退出頁面。
- 連線名稱: 資料庫連線的別名,圖中顯示為
資訊: 以文字列表方式顯示資料庫連線配置資訊。
SQL指令碼: 可以執行此連線設定下適用的SQL指令碼。
下圖則是SQL指令碼使用示例圖,三個操作按鈕從左至右依次為執行語句、執行下一條語句以及跳過下一條語句。
# 2.2.4. 使用TARS連線至Access
TARS本機驅動程式支援 Microsoft Access 95、97、2000、2003、2007 和 2010 資料庫。
點選[新建]
按鈕,出現數據庫型別下拉功能表圖。
點選下拉選單中的資料庫型別,當選擇型別為Microsoft Access
時,出現數據庫連線設定窗體圖,請根據對應參數進行設定即可。標註紅色的專案為必填專案,其餘專案可視情況選擇填寫。注意,每次新增或修改連線設定后,請先關閉TARS服務然後再重新啟動TARS服務使連線設定生效。
連線:
- 連線名稱: 資料庫連線的別名,圖中顯示為
MsAcc
的就是連線設定名稱的編輯庫,客戶端訪問資料庫時候,需要以此名稱作為唯一指定對象。 - 備註: 連線的備註資訊。
- DriverID: 數據連線的型別,在選擇新建資料庫型別時建立,建立后不能修改。如果在建立時選擇的型別為
Microsoft Access
,此處顯示的型別為MsAcc
。 - Pooled: 是否設定連線池,連線池的設定可以提高連線執行緒的利用率,提高運行效率。
- DataBase: MDB 檔案的路徑。 路徑可以包括路徑變數。
- User_Name: 連線的資料庫使用者名稱稱。
- Password: 指定加密資料庫的密碼。
- MonirotBy: 設定監控型別。
FlatFile
:將跟蹤輸出到純文字檔案。 當應用程式完成時,它會顯示產生的跟蹤檔案列表。Remote
:將跟蹤輸出到FDMonitor 實用程式並允許監視應用程式。 在啟用跟蹤輸出之前,FDMonitor 必須正在運行。Custom
:將跟蹤輸出到自定義事件處理程式。
- Pool_Cleanup Timeout: 連線池清理的超時時間,以ms為單位。
- Pool_Expire Timeout: 連線池超時的時間,以ms為單位。
- POOL_MaximumItems: 連線池設定的最大連線數。
- ODBCAdvanced: 允許您指定任何其他附加 ODBC 連線參數值。 預設值為「ExtendedAnsiSQL=1」。
- LoginTimeout: 設定嘗試建立連線時應用程式超時之前的時間量(以秒為單位)。
- SystemDB: 系統資料庫檔案的路徑。 路徑可以包括路徑變數。
- ReadOnly: 指定
True
以只讀模式打開資料庫。False
是預設值。 - StringFormat: 定義如何表示字串值:
Choose
:表示為ftString / ftWideString / ftMemo / ftWideMemo
,取決於聲明的數據型別名稱(預設);Unicode
:表示為ftWideString / ftWideMemo
;ANSI
:始終表示為ftString / ftMemo
。
- EnableDelete: 啟用刪除許可權,如果此項被禁用,使用者在執行
DELETE
指令碼以刪除數據的操作時會被阻止執行。 - EnableInsert: 啟用插入許可權,如果此項被禁用,使用者在執行
INSERT
指令碼以插入數據的操作時會被阻止執行。 - EnableUpdate: 啟用更新許可權,如果此項被禁用,使用者在執行
UPDATE
指令碼以更新數據的操作時會被阻止執行。 - EnableDDL: 啟用表結構操作許可權,如果此項被禁用,使用者在執行表結構更新的操作時會被阻止執行。
- Available: 是否啟用此連線設定,如果此項被禁用,則使用者無法使用此連線設定連線至資料庫。
如果對連線設定中以上幾項的相關數據操作許可權進行禁用后,在客戶端執行相關操作時會提示更新失敗。
[恢復預設]
:當連線的參數需要清空時,點選此按鈕將參數恢復成預設的狀態。[確定]
:確認連線設定並儲存。[取消]
:取消連線設定的更改並退出頁面。
- 連線名稱: 資料庫連線的別名,圖中顯示為
資訊: 以文字列表方式顯示資料庫連線配置資訊。
SQL指令碼: 可以執行此連線設定下適用的SQL指令碼。
下圖則是SQL指令碼使用示例圖,三個操作按鈕從左至右依次為執行語句、執行下一條語句以及跳過下一條語句。
# 2.3. 參數設定
包括常規設定、Web服務、訊息服務、MQTT服務、簡訊驗證、REST/SSL
、驅動型別、黑白名單、日誌、雪花演算法、微信公眾平臺、數據備份、日誌、其它等內容。
# 2.3.1. 常規設定
圖中內容說明如下:
[常規設定]
-常規- HTTP埠: HTTP協議代理伺服器埠,預設的埠號為9981。
- HTTTPS埠: HTTPS協議代理伺服器埠,只有在配置了SSL的情況下才可啟用該選項,預設的埠號為443。
- 數據壓縮級別: 數據壓縮后,客戶端呼叫數據相對會提高效率。可選擇項包括:不壓縮(
cNone
)、快速壓縮(cFast
)、預設壓縮(cDefault
)、最大壓縮(cMax
)4種。 - 執行緒池最大數: 設定數據連線的執行緒數目,通常設定為CPU個數 * 25,超過這個值系統的運行可能會不穩定(僅限於伺服器,普通PC的上限數值更低)。
- 下行最大速度: 設定下行數據傳輸的最大速率,預設設定為0,表示為不限制下行速率。
- IP版本: IP地址型別,包括:rct_IPv4、rct_IPvOS4、rct_IPv6、rct_IPvOS6。
- 最大連線數: 程式允許的客戶端同時線上連線數。
- 上行最大速度: 設定上行數據傳輸的最大速率,預設設定為0,表示為不限制上行速率。
- 客戶端空閑時間: 客戶端連線狀態保持時間。對於網路不穩定的環境可將數值設定小一些。
[常規設定]
-遠端函式- 模組檔名: 自定義的遠端模組函式名稱,預設為
/RemoteFunction
。 - 加密數據: 中介軟體進行數據互動時採用加密傳輸,預設未勾選。
- 通訊安全碼: 客戶端與中介軟體互動時,需要提供通訊安全碼。此項需要勾選
[加密數據]
才有效。 - 驗證使用者身份: 勾選表示客戶端與中介軟體互動時,需要進行身份驗證。
- 用戶數據庫: 指用驗證使用者所在資料庫的連線名稱。此項在
驗證使用者身份
勾選時可用。 - 全域性MD5鹽值: MD5加鹽值,使資料庫更加安全。
- Token有效期: Token是服務端產生的一串字串,以作客戶端進行請求的一個令牌,當第一次登錄后,伺服器產生一個Token便將此Token返回給客戶端,以後客戶端只需帶上這個Token前來請求數據即可,無需再次帶上使用者名稱和密碼。
- Token鎖型別: 設定Token鎖的型別,有無鎖(
SesNoLock
)、IP鎖(SesIPLock
)、請求鎖(SesFwdLock
)、倍乘鎖(SesIPFwdLock
)等型別。
- 模組檔名: 自定義的遠端模組函式名稱,預設為
[常規設定]
-檔案傳輸- 儲存目錄: 檔案根目錄。
- 檔案不超過MB: 可指定檔案大小限制,防止大檔案傳輸,造成伺服器壓力。
- 使用單一根目錄: 勾選此項,以檔案根目錄為檔案目錄。
[常規設定]
- FastERP 超級管理員帳號- 使用者名稱稱:FastERP 用作超級管理員登錄的使用者名稱稱。
- 使用者密碼:FastERP 用作超級管理員登錄的使用者密碼。
示例: 在上述常規設定完成後,可以使用客戶端來驗證連線的可用性。比如我們可以打開Smart的用戶界面,選擇
工具-資料庫設定
。
在TARS的標籤頁中的資料庫設定界面中,輸入相關的資訊,比如伺服器地址,埠號,使用者名稱、密碼,如果在TARS中選擇了連線加密並設定了通訊安全碼,則在此處也相應填寫相關內容。
填寫后,點選[獲取資料庫]
按鈕,如果能看到下拉選項框,則說明連線設定填寫正確,已與TARS伺服器連線成功。
[常規設定]
- FastERP超級管理員帳號- 使用者名稱稱: FastERP超級管理員使用者的名稱。
- 使用者密碼: FastERP超級管理員使用者的密碼。
# 2.3.2. Web服務
TARS的Web服務支援小型WEB網站架構,支援JS、HTML網頁。
圖中內容說明如下:
[Web服務]
-常用- 開啟Web服務: 勾選以啟用Web服務。
- 根目錄: Web網站內容目錄。
- 虛擬目錄: 設定網站虛擬目錄繫結的實際路徑位置。
- Response Headers: 填寫請求頭的型別。
[Web服務]
-內容型別- 預設首頁:設定自動打開的預設首頁的檔名稱型別。
- Content Types:設定顯示內容的型別。
示例: 按照以上方式開啟Web服務后,可將靜態的網頁專案檔案放置至
D:\IsoFace\TARS\Web
目錄下。然後打開本機瀏覽器,輸入http://localhost:8809/ (opens new window)打開對應的網頁頁面。頁面顯示類似如下。
# 2.3.3. WebSocket服務
WebSocket訊息服務。
圖中內容說明如下:
WebSocket訊息服務: 勾選啟用WebSocket訊息服務。
模組檔名稱: WebSocket訊息服務模組檔名,設定后,可使用
ws://<host>:<port>/message
來發起WebSocket連線。遠端函式訊息服務: 勾選啟用遠端函式訊息服務。
模組檔名稱: 遠端函式訊息服務模組檔名。
示例:
該功能需配合網頁端的WebSocket
功能來使用,此處可打開WebSocket測試網站 (opens new window)來進行相關測試。
在測試頁面的地址框中輸入TARS的地址,比如TARS本機的IP地址為127.0.0.1
,開放的埠號為8809
,訊息提示函式名稱為message
,則對應的WebSocket
地址設定為ws://127.0.0.1:8809/message
。點選[連線]
。待服務端迴應Hello,Web Socket Client!
時表示連線成功。此時可在網頁頁面底部的待發資訊欄中輸入要發送的資訊,點選[發送]
按鈕。
在日誌列表中會顯示此客戶端發送的訊息。
在WebSocket客戶端連線的情況下,我們在TARS的訊息推送界面的編輯框中輸入要推送的訊息,點選推送訊息
即可實現向此客戶端推送編輯的訊息。
註冊會話
連線至WebSocket伺服器后,需註冊會話才可使用WebSocket訊息傳送功能。註冊會話的格式如下:
{"action":"login","sid":"test"}
發送字串訊息
向其它連線的客戶端發送字串訊息,使用以下格式進行發送。
{"action":"msg","sid":"{SID}","text":"{TEXT}"}
{SID}
為目標客戶端的註冊會話ID,{TEXT}
為發送的文字資訊。目標客戶端接收的訊息內容為 {TEXT}
處填寫的內容。
# 2.3.4. MQTT服務
勾選開啟MQTT服務
,可啟動TARS中介軟體MQTT Broker,供MQTT Client連線使用,預設埠1883。
圖中內容說明如下:
開啟MQTT服務: 勾選是否開啟MQTT的服務,預設為開啟。
埠: MQTT服務的埠,預設為1883。
監視客戶端: 勾選後,可檢視連線的客戶端的狀態。
允許客戶端匿名訪問: 勾選後允許客戶端不提供使用者名稱密碼進行MQTT連線訪問。如取消勾選,則MQTT連線時需提供認證的使用者名稱與密碼。
開啟SSL: 啟用 SSL 訪問。如啟用 SSL 設定后,請退出 TARS 程序,並重新啟動 TARS 以使 SSL 設定生效。
- 證書檔案: SSL 證書檔案的名稱,建議置於 TARS 的安裝目錄中。
- 私鑰檔案: SSL 私鑰檔案的名稱,建議置於 TARS 的安裝目錄中。
- CA檔案: SSL CA檔案的名稱,建議置於 TARS 的安裝目錄中。
- 證書密碼: SSL 證書的密碼,如證書有設定密碼請在此處提供。
示例: 按照上述方式設定完成後,可使用Smart的MQTTClient控制元件使用範例進行MQTT的連線測試,運行範例后,將MQTT服務端的地址更改為TARS服務端的地址,點選
連線
啟用連線。輸入要發送的內容,點選下方的發送按鈕,如果彈出訊息提示框則MQTT連線成功。
注意
- 取消
允許客戶端匿名訪問
勾選,則需要在連線 MQTT 伺服器時提供使用者名稱與密碼,使用者名稱與密碼來源於 使用者管理 中設定的專案,其中密碼為經過 md5 加密後的32位密碼,如使用了鹽值,則需要使用加鹽的計算結果作為密碼。 - TARS MQTT 服務端 Client ID 最多支援 18 個字元,超出這個長度的 Client ID 的客戶端連線,會被視為無效連線。
# 2.3.5. 簡訊驗證
簡訊驗證採用新版的阿里云通訊簡訊介面,帳號申請、獲取Access Key Id 與Access Key Secret,以及簡訊模板的配置方式請在阿里云簡訊平臺文件 (opens new window)查閱。此處設定的內容后,在客戶端使用RFSmsSender
型別的控制元件時,如不填寫內容運行則預設使用此設定中的內容進行填充。
圖中內容說明如下:
[簡訊驗證]
-阿里云通訊- Access Key Id: 阿里通訊的AccessKey ID,在阿里云官方開通阿里通訊得到。
- Access Key Secret: 阿里通訊的AccessKey Secret,在阿里云官方網站得到。
- 簡訊模板ID: 阿里通訊簡訊模板的ID。
- 簡訊簽名: 阿里通訊簡訊簽名。
[簡訊驗證]
-阿里大於- App Key: 阿里大於的App Key,在阿里云官方開通阿里通訊得到。
- App Secret: 阿里大於的App Secret,在阿里云官方網站得到。
- 簡訊模板ID: 阿里大於簡訊模板的ID。
- 簡訊簽名: 阿里大於簡訊簽名。
示例:簡訊驗證設定完成後,可使用Smart中的簡訊發送範例來進行測試。在Smart中完成帳套設定的相關內容后,填寫接收的手機號碼,然後直接點選
[TARS發送簡訊]
,出現「簡訊下發成功」的提示時表示簡訊發送成功。
# 2.3.6. REST/SSL
使用SSL證書來加密通訊連線,保證通訊過程不被第三方竊聽。請自行查詢申請證書的方式有關內容。
圖中內容說明如下:
[REST/SSL]
-常規- 開啟REST: 勾選以後
[REST API外掛]
頁簽功能可顯示。 - 開啟使用者管理: 勾選以後
[使用者管理]
頁簽功能可顯示。 - 開啟預設SQL管理: 勾選以後
[預設SQL管理]
頁簽功能可顯示。
- 開啟REST: 勾選以後
[REST/SSL]
-REST資料庫- 訪問方式: 設定REST模式下使用者的訪問方式。
通過SQL命令(靈活性好)
:使用者在REST請求中可直接發送SQL指令碼來執行。通過SQL編號(安全性高)
:使用者在REST請求中發送SQL編號來執行相應的指令碼。根據使用者設定
:根據使用者管理中的使用者訪問方式設定來確定訪問方式。
- 訪問方式: 設定REST模式下使用者的訪問方式。
[REST/SSL]
-PFX證書- 根證書: 設定根證書檔案所在的地址。
- PFX證書: 設定PFX證書檔案所在的地址。
- PFX證書密碼: 設定PFX證書的密碼。
[REST/SSL]
-X509證書- X509證書: 設定X509證書檔案所在的地址。
- X509 Key證書: 設定X509 Key證書檔案所在的地址。
- 證書密碼: 設定X509證書的密碼。
示例:
TARS支援上述證書型別,接下來我們介紹如何產生這兩類證書以及運用至TARS中。
- 產生pfx證書:
下載pfx證書產生工具(點選下載 (opens new window)),解壓檔案。
使用滑鼠左鍵雙擊打開CertManager.exe
。
輸入組織相關的資訊。填寫的專案格式如下:
CN=<公司名稱> OU=<單位部門名稱> O=<證書持有人名稱> L=<地區> C=<國家>
例如:
CN=IsoFace OU=Tec O=IsoFace L=Jiaxing C=CN
2
3
4
5
輸入完成後,按下Enter按鍵,接下來提示要輸入pvk(私鑰)名稱,這個名稱可任意命名。
填寫完成後,按下Enter按鍵,接下來輸入cer(證書公鑰)的名稱,名稱也是任意命名。
輸入完成後,按下Enter按鍵,彈出對話方塊以建立私鑰的密碼,該密碼一定要記住,密碼以及確認密碼請輸入兩遍。
點選[確定]
按鈕,繼續提示要輸入剛才的密碼進行確認。
輸入spc(域名空間)名稱,此名稱也可任意進行設定。
輸入完成後,按下Enter按鍵,提示要輸入私鑰密碼,把剛才設定的私鑰密碼再次輸入。
設定pfx證書的名稱,可任意進行設定。
按下Enter按鍵,輸入pfx密碼,此密碼需要牢記,在TARS設定中需要使用。
輸入完成後,按下Enter按鍵,出現Succeed
字樣,表示證書已產生完成。
關閉頁面,在程式目錄的output目錄下可以找到剛才建立的證書。
打開TARS,點選參數設定-REST/SSL
,選擇pfx證書。依次選擇根證書、pfx證書所在目錄,設定剛才建立時使用的pfx密碼,點選[應用]
按鈕完成設定。
經過設定后,可使用https訪問指定的Web頁面。
# 2.3.7. 驅動型別
資料庫驅動型別管理,可自行勾選。以下專案勾選後可在資料庫設定新增時選擇。
# 2.3.8. 黑白名單
可設定黑名單IP限制使用者訪問中介軟體。每個IP地址設定一行。當指定的IP地址進入至黑名單后,此IP地址將不被允許接入至TARS伺服器中。
# 2.3.9. 雪花演算法
Twitter的分佈式雪花演算法 SnowFlake 每秒自增產生26個萬個可排序的ID。
圖中內容說明如下:
- Worker Id: 分佈式系統中機器地址的位數。
- Datacenter Id: 分佈式系統中集群地址的位數。
- 起始時間戳: 雪花演算法下的起始Id產生的時刻,建議選擇為中介軟體啟用日期。
注意
當中間件為資料庫啟用了雪花演算法用於產生主鍵后,請勿隨意更改頁面中的設定選項,否則會出現意想不到的錯誤。
- 示例:
在啟用雪花演算法后,可在Smart中使用此演算法來獲取ID。
dm.GetNewID;
# 2.3.10. 微信公眾平臺
勾選開啟微信公眾平臺並儲存設定后,會額外顯示微信公眾平臺
頁簽。
# 2.3.11. 數據備份
可設定資料庫定時自動備份功能,自動壓縮成壓縮包,可通過FTP上傳備份資料庫,還可通過郵件提醒使用者備份資訊。
圖中內容說明如下:
[數據備份]
-備份設定- 自動備份: 勾選此項開啟自動備份功能。
- 自動壓縮: 勾選此項開啟自動壓縮備份資料庫的功能,可將備份好的資料庫壓縮成壓縮包,方便轉移儲存。
- FTP上傳: 勾選此項開啟FTP上傳功能,可以將備份好的資料庫上傳到指定FTP目錄。
- 郵件發送: 勾選此項開啟備份資料庫以後發送備份成功的資訊到指定email。
- 備份路徑: 指定資料庫備份目錄,用於儲存備份好的資料庫檔案。
- 備份時間: 批定備份時間,伺服器時間到達指定的備份時間后,會啟動備份資料庫的功能。
- 備份天數: 指備份目錄下備份資料庫的保留天數,如指定6天,那麼在備份的時候會清除6天前的備份,以保證電腦儲存不會被塞滿。
- 資料庫列表: 資料庫列表資訊,來自與
資料庫設定
頁簽。 - 備份庫列表: 通過
資料庫列表
點選需要備份的資料庫到此處。 [立即備份]
:用於測試數據備份
設計有效性。
[數據備份]
-FTP配置- FTP地址: 指定一個用於上傳備份資料庫的FTP目錄。
- 埠: 指定FTP伺服器的埠號,預設21。
- 帳號: 指定FTP伺服器登錄帳號名稱,可向管理員獲取。
- 密碼: 指定FTP伺服器登錄帳號密碼,可向管理員獲取。
[測試上傳]
:用於測試FTP配置
設計有效性。
[數據備份]
-郵件配置- 郵件伺服器: 指定郵件伺服器地址,如:smtp.163.com。
- 埠: 指定郵件伺服器的埠號,預設25。
- 發件人: 指定一個發送郵件的發件人郵箱。
- 密碼: 指定一個發送郵件的發件人郵箱的密碼。
- 收件人: 指定一個接收郵件的收件人郵箱。
[測試郵件]
:用於測試郵件配置
設計有效性。
注意
選擇備份路徑時,請勿選擇已有檔案的目錄作為備份路徑,請自行建立一個空白的目錄作為備份路徑使用,否則可能會導致已有檔案丟失。
# 2.3.12. 日誌
可設定中介軟體顯示哪些型別的訊息日誌。
- 日誌快取大小(MB): 設定日誌快取的大小,超過快取大小后,日誌將會被寫入至日誌檔案中。
- 起始時間戳: 設定時間戳的起始數值。
- 日誌保留天數: 設定日誌資訊的保留天數。超過該天數以前的日誌資訊將會被刪除。
- 日誌型別: 設定顯示在日誌列表中的日誌型別。
提示資訊
:客戶端數據互動的相關資訊。警告資訊
:一些重要操作的提示資訊,比如服務停止等相關資訊。錯誤資訊
:錯誤提示的相關資訊,比如客戶端連線驗證錯誤的提示資訊。連線資訊
:客戶端連線請求發起的相關資訊。斷開資訊
:客戶端斷開連線的相關資訊。SQL資訊
:SQL服務端發起的相關資訊。其他資訊
:其他的一些日誌資訊。SQLMonitor
:SQL監控的相關資訊。當連線設定中SQLMonitorBy
的功能設定為Custom
時可用。Web請求
:客戶端發起的Web請求的相關資訊。
- SQL Monitor 事件型別: 設定監控的事件型別。以下的監控事項只有在
日誌型別
中的SQLMonitor
勾選時才可使用。ekLiveCycle
:生命週期事件。ekError
:錯誤事件。ekConnConnect
:SQL連線事件。ekConnTransact
:SQL事務事件。ekConnService
:SQL服務事件。ekCmdPrepare
:準備事件。ekCmdExecute
:執行事件。ekCmdDataIn
:數據傳入事件。ekCmdDataOut
:數據傳出事件。ekAdaptUpdate
:執行更新事件。ekVendor
:第三方執行事件。ekComponent
:元件事件。
- SQL日誌明細: 設定日誌顯示的明細資訊。
soDataSetParams
:數據集參數資訊。soResourceOptions
:資源選項資訊。soFetchOptions
:獲取選項資訊。soUpdateOptions
:更新選項資訊。soFormatOptions
:格式選項資訊。
# 2.3.13. 其他
軟體標題、自動啟動等一些參數設定。
軟體標題: 設定軟體顯示的標題名稱。
[設定密碼]
:為保持服務端正常運行,設定密碼以確保TARS服務不會被意外關閉。啟動后,最小化到系統托盤:在程式啟動之後,不會打開主界面,以界面最小化的方式運行,在系統托盤處顯示程式圖示。
關閉程式時,彈出確認對話方塊:在系統托盤處,找到TARS的圖示,使用滑鼠右鍵選擇
退出
關閉程式前,會有提示框彈出。最小化后不更新界面,重新整理間隔(秒):當TARS處於最小化運行的狀態時,不對系統日誌進行主動重新整理顯示。只保持定期時間間隔的重新整理方式。
顯示本機內外網IP地址:在程式的狀態列處顯示目前伺服器的本機IP地址以及與外網訪問對接的外網IP地址。
統計網路流量(犧牲一點效能):在狀態列處顯示目前的網路流量統計資訊。
隨Windows開機啟動:設定TARS是否跟隨Windows系統的啟動而自動啟動,以下有兩種啟動方式。
普通自啟(有界面,需登錄Windows)
:TARS以Windows程式的方式運行,在使用者登錄至Windows后啟動並運行。後臺自啟(無界面,無需登錄Windows)
:TARS以Windows服務的方式運行,在系統在啟動后就在後臺運行,使用者登陸后無法看到TARS的圖形管理界面。
定時檢查資料庫服務:TARS定期檢查各個資料庫設定的連線情況,對於無法連線的資料庫設定會彈出相關提示資訊。
# 2.4. 客戶端列表
顯示線上客戶端資訊列表,對客戶端可發信息、發文件、加黑名單、斷開等操作,同時顯示MQTT 客戶端連線資訊。
客戶端上相關按鈕的說明如下。
[發訊息]
:該按鈕僅對WebSocket客戶端有效,在客戶端列表中選擇WebSocket客戶端,點選此按鈕進入訊息編輯頁面。[發文件]
:該按鈕僅對WebSocket客戶端有效,在客戶端列表中選擇WebSocket客戶端,點選此按鈕進入檔案發送頁面。[斷開]
:選擇指定的客戶端項后,點選此按鈕清除選擇項客戶端的連線。[加黑名單]
:選擇指定的客戶端項后,點選此按鈕,將選擇項的IP地址加入至參數設定-黑白名單
中的黑名單中。之後來自此IP地址的TARS連線將被拒絕。常規選項卡表格說明:
- 序號:客戶端連線列表的序號名稱。
- 使用者名稱:如使用FastERP客戶端進行登錄,則此處顯示的使用者名稱為客戶端登錄時的使用者名稱稱,對於Smart或者PinToo等程式,預設的登錄使用者名稱為
admin
。 - 資料庫連線名稱:顯示目前客戶端連線使用的資料庫設定名稱。
- 地址:連線的地址源(包括IP地址以及埠號等資訊)。
- 來自:地址的來源,通常設定為區域網連線以及外網連線。
- 連線時間:首次與TARS服務端進行連線的時刻。
- 活動時間:與TARS服務端產生互動的總計運行時長。
- 請求:客戶端連線過程中合計發送的連線請求數目。
- WebSocket:目前連線的客戶端是否以WebSocket方式進行連線。
- SessionID:目前連線產生的會話ID,有服務端連線時產生。
- UserAgent:如果客戶端是以瀏覽器方式進行連線(Web服務或者WebSocket、RestAPI等方式在瀏覽器上進行連線)時,此項顯示瀏覽器使用者代理(UA)資訊。
MQTT選項卡表格說明:
- 序號:客戶端連線列表的序號名稱。
- ClientID:MQTT連線時客戶端指定的唯一ID名稱。
- 使用者名稱:客戶端連線使用的MQTT使用者名稱稱。
- IP地址:MQTT客戶端連線的源IP地址。
- 來自:客戶端連線的網路來源,分為區域網和網際網路兩種型別。
- 心跳:是否配置心跳包,心跳包的作用是定期發送數據包以監測MQTT是否還處於連線狀態。
- 連線時間:首次與TARS服務端進行連線的時刻。
- 活動時間:與TARS服務端產生互動的總計運行時長。
- 請求(Bytes):客戶端連線過程中合計發送的連線請求數據位元組數。
- 訂閱:客戶端訂閱的MQTT主題名稱。
- 遺囑:客戶端設定的遺囑主題資訊。當發生異常情況時可向其他客戶端發送相關主題資訊。
# 2.5. RESTful API
主要提供使用C#、JAVA、JS等非Delphi語言開發客戶端。客戶端和服務端使用JSON互動,通用性極好。內建了使用者登錄、數據查詢、更新、呼叫預存程序、簡訊驗證等等一些常用介面。支援使用DLL外掛進行擴充套件。詳情可參考TARS中介軟體RestAPI使用手冊。
表格中的說明如下。
- 名稱:呼叫的RestAPI名稱。
- 方法:RestAPI的呼叫方式。
- 檔名:呼叫RestAPI的URL路徑格式。
- 參數:呼叫RestAPI需要攜帶的參數資訊。
- 型別:RestAPI的引用型別。
- 描述:對RestAPI的詳細說明。比如參數的要求等相關資訊。
- 要求Token:呼叫參數是否需要攜帶Token資訊。Token由呼叫使用者登錄的方法獲取產生。
# 2.6. 使用者管理
使用者管理界面可對RestAPI使用者進行管理操作,包括新增、修改使用者設定,刪除使用者等功能。使用此功能前請將資料庫名稱選擇為TARS。
界面說明如下。
[新增]
:點選此按鈕,打開使用者管理界面並新增使用者。[編輯]
:在列表中選擇要進行編輯操作的使用者,點選打開使用者管理界面並載入使用者進行編輯。[刪除]
:在列表中選擇要進行刪除操作的使用者,點選以執行刪除操作。[重新整理]
:點選此按鈕以重新整理表格的顯示。[資料庫名稱]
:選擇要配置使用者資訊的連線設定名稱。
表格中的欄位說明如下。
使用者名稱
:設定的RestAPI使用者名稱稱,數據訪問方式
:為使用者設定的資料庫連線訪問的形式,主要有通過SQL命令
與通過SQL編號
兩種方式,詳見使用者管理編輯頁面的說明。Insert
:此使用者是否有插入數據的許可權。Delete
:此使用者是否有刪除數據的許可權。Update
:此使用者是否有更新數據的許可權。DDL
:此使用者是否有操作表的許可權。設備鎖
:通過設定,可限制帳號在設定的設備上登錄使用。Andorid通過繫結IMEI,PC通過唯一ID繫結,中介軟體提供設備唯一ID獲取介面。停用
:目前使用者是否暫停使用。AppSecret
:應用金鑰資訊,在設定使用者時會自動產生。建立時間
:使用者資料的建立時刻。更新時間
:使用者資料的最近更新時刻。
點選[新增]
,彈出使用者管理窗體,見下圖:
圖中內容說明如下:
使用者名稱
:客戶端使用者登錄名稱。密碼
:為使用MD5后的雜湊值,不儲存明文密碼。可在參數設定-常規設定
中增加全域性MD5鹽值
有效防止彩虹表撞庫,被暴力破解密碼。AppSecret
:借鑑阿里的安全機制,增加驗證簽名
時使用到,防止REST API呼叫過程中數據被黑客篡改,提高安全性。手機號碼
:使用者預留的手機號碼資訊。描述
:使用者的描述資訊。資料庫訪問方式
:支援通過SQL編號和SQL 命令訪問。如需要通過SQL編號方式,需要在預設SQL管理
中設定好 SQL編號的內容。通過SQL命令(靈活性好)
:可直接執行相關的SQL指令碼。具有較強的靈活性,在嚴格的使用者許可權管理中不建議使用這種訪問方式。通過SQL編號(安全性高)
:執行預設的SQL編號內容,這種方式的安全性較高。
查詢數據總行數
:限制客戶端一次查詢數據行數,如設定為0,則表示不限制查詢行數。檔案上傳最大值
:允許使用者上傳的檔案的最大數值,如設定為0,則表示不限制檔案大小。Insert許可權
:是否授予使用者向表中插入數據的許可權。Update許可權
:是否授予使用者更新表中數據的許可權。Delete許可權
:是否授予使用者刪除表中數據的許可權。DDL許可權,主要的命令有CREATE、ALTER、DROP等
:是否授予使用者對錶結構或資料庫進行操作。停用帳號
:暫停使用帳號。設備鎖(白名單)
:通過設定,可限制帳號在設定的設備上登錄使用。Andorid通過繫結IMEI,PC通過唯一ID繫結,中介軟體提供設備唯一ID獲取介面。
# 2.7. 預設SQL管理
預設SQL,可被RestAPI通過SQL編號進行呼叫,提高可複用性。
界面說明如下。
[新增]
:點選此按鈕,打開使用者管理界面並新增使用者。[編輯]
:在列表中選擇要進行編輯操作的使用者,點選打開使用者管理界面並載入使用者進行編輯。[刪除]
:在列表中選擇要進行刪除操作的使用者,點選以執行刪除操作。[重新整理]
:點選此按鈕以重新整理表格的顯示。[資料庫名稱]
:選擇要配置使用者資訊的連線設定名稱。
表格中的列說明如下。
SQL編號
:引用的SQL命令的編號名稱。資料庫連線名稱
:SQL編號對接使用的資料庫連線設定的名稱。描述
:對SQL編號的詳細描述資訊。建立時間
:SQL編號資訊的建立時間。更新時間
:SQL編號資訊最新的更新時間。SQL語句
:SQL編號對應使用的SQL語句資訊。
點選[新增]
,彈出預設SQL管理窗體,見下圖:
[編輯SQL]
用於定義預設SQL內容,該選項卡中內容說明如下:
- 資料庫連線名稱: 下拉選單內來自
[資料庫連線名稱]
。 - SQL編號: 預設SQL的編號,供RestAPI呼叫。
- 描述: 預設SQL描述說明
- SQL: 預設SQL的SQL語句內容。
[自動產生SQL]
快速產生預設SQL內容。點選[產生]
按鈕,可快速構建出Insert(向表中插入數據)、Modify(更新表中數據)、Delete(刪除表中數據)、FetchRow(查詢表)的SQL內容。點選[新增]
按鈕,可將選項卡下的SQL指令碼,回傳到預定SQL內容處。該選項卡中內容說明如下:
表名稱: 數據表名。
Insert: 插入數據SQL。
Modify: 更新數據SQL。
Delete: 刪除數據SQL。
FetchRow: 獲取SQL數據記錄。
示例:根據RestAPI的運行方式,我們按照TARS中提供的方式建立一個使用者,併爲其建立一個預設SQL,在RestAPI中呼叫此SQL編號來獲取數據資訊。
點選使用者管理
,切換至使用者管理界面,確認使用的資料庫為TARS
,點選[新增]
按鈕。
在使用者管理界面填寫設定使用的使用者名稱與密碼,比如可以設定登錄的使用者名稱為TARS
,密碼為123456
,數據訪問方式修改爲通過SQL編號(安全性高)
。App Secrect
為建立時自動產生,不需要進行修改。
按照上述方式填寫完成後,點選[儲存(S)]
以完成使用者的新增。
將TARS切換至預設SQL管理
,檢視目前選擇的資料庫名稱是否為TARS,如不是的話切換為TARS,然後點選[新增]
按鈕。
設定使用的資料庫連線名稱以及SQL編號,SQL資訊以及查詢的SQL語句。可按照下圖的方式進行設定。設定完成後點選[儲存(S)]
按鈕即可。
接下來使用瀏覽器進行RestAPI訪問。
TARS的頁簽切換至REST API外掛
,查詢可知首先要進行使用者登錄,使用到的訪問方式為/rest/user/login
,使用的參數為db_name
、user_name
、password
。
根據上述方式拼接完成後請求的URL示例如下:
http:/rest/user/login?db_name=TARS&user_name=TARS&password=e10adc3949ba59abbe56e057f20f883e
其中請求的地址中的地址以及埠號資訊請修改爲自己實際設定的地址。請求地址與請求參數之間使用?
進行分隔,各個請求參數之間使用&
進行分隔。password
參數的值為密碼經過md5加密後的數值,比如密碼123456
經過md5加密後的32位值為e10adc3949ba59abbe56e057f20f883e
,點選此處 (opens new window)可查詢密碼經md5加密後的數值。
將上述請求地址修改後置入瀏覽器位址列,訪問后可獲得以下資訊。其中的token
在後續的運行過程中會使用到,作為登錄的身份憑證使用。
接下來使用編號來查詢語句。
查詢REST API可知使用發方法為/rest/db/opensql
,參數為data
與token
。
一個請求的示例如下:
http:/rest/db/opensql?data={"db_name": "TARS","sql_command_id": "Customers","page_size": 10,"page_index": 0}&token=C25EE280FCC746E993BF155C9AE01E2B
其中的data
參數為json,其中的db_name
為連線設定的名稱,sql_command_id
為SQL編號的名稱,page_size
為每頁顯示的記錄數,page_index
為目前顯示頁的編號。
上述請求示例中請把請求的地址以及埠號改成自己伺服器的地址和埠號,token改為自己測試執行登錄時獲取的token資訊。參考執行的示例如下。
如果對解析以及其他型別的RestAPI使用方式有興趣可參考Smart示例TARS RestAPI應用,以及Restful API手冊。
# 2.8. 微信公眾號
微信公眾號功能用於管理微信公眾號、微信使用者、微信訊息模板、微信黑名單、公眾號功能表等內容。使用本頁面的功能前,請先在微信公眾號平臺 (opens new window)註冊微信公眾號,並參考微信公眾平臺開發文件獲得本節中有關內容資訊。
在TARS參數設定-微信公眾平臺
中勾選開啟微信公眾平臺
,應用設定后,會在標籤頁中顯示微信公眾平臺
,點選以進入頁面。
界面中的按鈕說明如下:
[新增]
:打開帳號管理界面,執行公眾號的新增操作。[編輯]
:打開帳號管理界面,執行公眾號的編輯操作。[刪除]
:選擇目前選中的公眾號,點選以執行刪除操作。[重新整理]
:重新整理目前顯示的公眾號頁面。資料庫名稱
:顯示目前選擇的資料庫的名稱。[開發文件]
:打開微信開發文件的頁面。[全域性返回碼]
:打開微信開發文件關於全域性返回碼的相關頁面。
表格中相關的資訊說明如下。
公眾號名稱
:自定義的公眾號的名稱。公眾號ID
:自定義的公眾號的編號名稱。每個引入的公眾號ID應當不能重複。型別
:使用的公眾號的型別(訂閱號、服務號)。主營行業
:公眾號內容的主要分類。AccessToken有效期
:當獲取到AccessToken后,此Token的可用時間截至點,在此時刻之後AccessToken失效,需要重新獲取。更新時間
:AccessToken獲取的時間。伺服器地址
:設定的伺服器的地址。狀態
:設定此公眾號是否處於啟用狀態。備註
:備註的相關資訊。
在公眾號管理欄,[新增]
、[編輯]
、[刪除]
按鈕用於維護公眾號資料。點選[新增]
按鈕,出現下面對話方塊界面:
圖中內容說明如下:
- 公眾號名稱: 公眾號的名稱。
- 型別: 公眾號型別,訂閱號、服務號、小程式。
- 主營行業: 公眾號適用在哪個行業。
- 副營行業: 公眾號適用在哪個副行業。
- 開發者ID(AppId): AppID來自到微信公眾號平臺,需要在微信公眾平臺註冊並開啟開發相關的功能。
- 公眾號ID: 給公眾號編號。
- 開發者密碼(AppSecret): 來自微信公眾號平臺。需要在微信公眾平臺註冊並開啟開發相關的功能。
- 伺服器地址(URL): 微信回撥地址。
- 令牌(Token): 與微信公眾號互動時用到的令牌。
- 訊息加密解密(EncodingAESKey): 在微信公眾號平臺中設定。用於加密,可保障資訊傳遞的安全性。
- 備註: 公眾號備註說明。
- 啟用: 勾選啟用公眾號。
# 2.8.1. 使用者管理
使用者管理頁面顯示目前選擇的公眾號所有關注的使用者資訊。
使用者分組界面的按鈕說明如下:
[新增]
:新增使用者分組。選擇分組中的一個專案,點選按鈕在其中增加一個分組。[編輯]
:選擇分組后,點選按鈕編輯分組名稱資訊。[刪除]
:選擇分組后,點選以刪除選擇的分組。[重新整理]
:選擇分組后,點選以重新整理顯示。
使用者列表界面的按鈕說明如下。
[編輯]
:打開使用者資訊頁面檢視使用者的相關資訊。[發訊息]
:向指定的使用者發送訊息。[拉黑]
:對使用者進行拉黑,拉黑後用戶無法在公眾號中進行互動操作。[重新整理]
:重新整理使用者列表的顯示。
表格中顯示的內容說明如下。
- 頭像:顯示關注使用者的頭像圖片。
- 昵稱:顯示關注使用者的微信名稱。
- 備註:關注使用者的備註資訊。
- 國家:關注使用者所屬的國家。
- 省份:關注使用者所屬的省份。
- 城市:關注使用者所屬的城市。
- 性別:關注使用者的性別。
- 標籤ID:關注使用者的標籤ID資訊。
- 是否訂閱:關注使用者是否訂閱公眾號。通常顯示為
已訂閱
。 - 關注來源:關注來源。比如有
公眾號搜索
、其他
、掃瞄二維碼
等。 - 關注時間:關注使用者的關注時間。
- 所屬公眾號:關注使用者關注的公眾號名稱。
- 更新時間:使用者列表的更新時間。
可通過[新增]
、[編輯]
、[刪除]
按鈕進行使用者分組資料的維護。
點選[拉黑]
按鈕,可將選中的使用者拉入黑名單。
選中使用者記錄,點選[編輯]
按鈕,或者直接點選顯示微信使用者資料編輯對話方塊,可對使用者的標籤、備註進行維護。
界面中的標籤說明如下。
- 昵稱:顯示關注使用者的微信名稱。
- 性別:關注使用者的性別。
- 地區:關注使用者所在的地區。
- 是否訂閱:目前使用者是否訂閱此公眾號。
- 來源:關注公眾號的方式。
- 關注時間:關注使用者的關注時間。
- 標籤:關注使用者的標籤資訊。
- 備註:關注使用者的備註資訊。
- OpenID:使用者的OpenID資訊,每個使用者都有此唯一ID,在使用者註冊微訊號后自動產生分配,是作為微信使用者的唯一標識使用。
# 2.8.2. 黑名單管理
黑名單中顯示的是在使用者管理中被拉黑的使用者,選擇使用者,點選[取消拉黑]
按鈕,可將選中微信的使用者恢復正常。
界面中的按鈕說明如下。
[取消拉黑]
:選擇對應的使用者,點選按鈕將此使用者從訂閱號黑名單中除名。[重新整理]
:重新整理顯示的黑名單內容。[幫助]
:打開微信開發文件黑名單部分的內容。
表格界面中的內容說明如下。
- 頭像:顯示關注使用者的頭像圖片。
- 昵稱:顯示關注使用者的微信名稱。
- 備註:關注使用者的備註資訊。
- 國家:關注使用者所屬的國家。
- 省份:關注使用者所屬的省份。
- 城市:關注使用者所屬的城市。
- 性別:關注使用者的性別。
- 語言:關注使用者使用的語言。
- 分組:關注使用者所在的分組。
- 關注時間:關注使用者的關注時間。
- 關注來源:關注來源。比如有
公眾號搜索
、其他
、掃瞄二維碼
等。 - 更新時間:最近更改黑名單資訊的時刻。
- OpenID:客戶的ID資訊。
# 2.8.3. 模板管理
模板為微信發動給使用者的訊息模板,此類訊息模板需經過微信公眾平臺進行建立。
點選[重新整理]
按鈕,可同步微信公眾號平臺新增的模板內容到本地。
點選[刪除]
按鈕,將選中的模板刪除,同時也將微信公眾號平臺中的模板也刪除。
界面中的按鈕說明如下。
[檢視]
:檢視模板資訊。[刪除]
:刪除目前選擇的模板資訊。[重新整理]
:重新整理顯示模板資訊。[幫助]
:打開微信開發文件模板管理的相關網頁。
界面中的表格欄位說明如下。
- 所屬公眾號:訊息模板所屬的公眾號。
- 模板ID:訊息模板的ID。
- 模板標題:訊息模板的標題。
- 模板內容:訊息模板的內容,包含顯示的格式內容等資訊。
# 2.8.4. 功能表管理
通過開發平臺,設定,可以為每一個使用者設定不同型別的功能表。
圖中內容說明如下:
[查詢功能表]
:下載微信公眾號的功能表,以json格式組成。[建立功能表]
:將json功能表內容上傳到微信公眾號。[建立個性功能表]
:可定製每個微信使用者的個性功能表。將json功能表內容賦予給指定的使用者[個性化功能表匹配結果]
:對比微信使用者個人功能表是否與目前編輯的功能表內容一致。[刪除個性化功能表]
:刪除微信使用者個人功能表。[刪除全部功能表]
:刪除微信公眾號全部功能表。
# 2.8.5. 使用示例
- 訊息推送
TARS微信公眾平臺的使用需要使用者擁有一個經過認證的微信公眾號,只有經過微信認證的公眾號才可以開啟開發相關的功能。如果暫時沒有相關的公眾號可使用的話可以使用測試號進行測試。
點選https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login (opens new window)根據頁面操作獲取測試帳號,並得到測試號資訊中的appID
與appsecret
。
點選微信公眾號列表界面的[新增]
按鈕,打開新增頁面,在頁面中輸入公眾號名稱
、開發者ID(AppId)
、開發者密碼(AppSecret)
,前者可任意起名,後兩者填寫在測試帳號中看到的資訊。
使用手機打開微信客戶端,掃一掃測試號的二維碼關注此測試號。
TARS點選至使用者管理界面,點選使用者列表的重新整理
按鈕重新整理剛才關注的使用者列表,選擇此使用者,點選發訊息
按鈕,打開發送界面。
在發送訊息
界面輸入訊息,點選[發送]
。在訊息列表中會看到此訊息提示。
以上僅用於測試微信公眾平臺的配置是否可用,微信公眾平臺的相關功能需結合其他產品一起使用。如有需要請查閱產品的微信公眾平臺對接示例。FastERP
由於微信公眾平臺的限制,公眾號只能主動回覆兩個小時內使用者回覆的訊息,因此如果是後續再次使用此功能進行測試的,需要使用對應使用者的微信帳號向此公眾號發送文字訊息后,才可以進行文字訊息發送的測試。
- 模板訊息推送
模板訊息是微信公眾號實現訊息推送的一個重要功能,我們還是以上面使用的測試號為例來說明模板訊息推送的完整流程。關於模板訊息推送的功能的具體實現方式可參考微信開放文件 (opens new window)。
首先需要製作一個模板訊息。打開https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login (opens new window),按照網頁指引登錄測試號並在模板訊息介面中點選新增測試模板
。
模板的標題可以起名為異常報警
。模板的內容根據參數說明進行排列設定。
在模板訊息中所有的參數需以{{
作為開頭,以.DATA}}
結尾。其他不在{{}}
內顯示的內容會被作為固定內容出現。
{{keyword.DATA}} //內容部分,其中的keyword可以替換為任意的內容,在後續提交的JSON要確保與此處設定的參數一致,根據需要可以設定多行
下面展示一個模板內容與預覽示例。
此處我們填寫以下示例的模板內容。將此部分的內容作為新增的模板訊息,模板標題為異常報警
,點選[提交]
。
{{first.DATA}}
訊息時間:{{keyword1.DATA}}
異常數據:{{keyword2.DATA}}
{{remark.DATA}}
2
3
4
在模板訊息列表中檢視模板ID,此模板ID會在後續的推送中使用。
接下來開始設定推送的JSON。推送的json格式如下。
{
"touser":"OPENID",
"template_id":"ngqIpbwh8bUfcSsECmogfXcV14J0tQlEpBO27izEYtY",
"url":"http://weixin.qq.com/download",
"miniprogram":{
"appid":"xiaochengxuappid12345",
"pagepath":"index?foo=bar"
},
"data":{
"first": {
"value":"恭喜你購買成功!",
"color":"#173177"
},
"keyword1":{
"value":"巧克力",
"color":"#173177"
},
"keyword2": {
"value":"39.8元",
"color":"#173177"
},
"keyword3": {
"value":"2014年9月22日",
"color":"#173177"
},
"remark":{
"value":"歡迎再次購買!",
"color":"#173177"
}
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
參數說明如下。
參數 | 是否必填 | 說明 |
---|---|---|
touser | 是 | 接收者的openid,測試號中在使用者列表界面可以檢視,也可以在TARS的微信公眾平臺中的使用者處檢視 |
template_id | 是 | 模板ID |
url | 否 | 模板跳轉鏈接(海外帳號沒有跳轉能力) |
miniprogram | 否 | 跳小程式所需數據,不需跳小程式可不用傳該數據 |
appid | 是 | 所需跳轉到的小程式appid(該小程式appid必須與發模板訊息的公眾號是繫結關聯關係,暫不支援小遊戲) |
pagepath | 否 | 所需跳轉到小程式的具體頁面路徑,支援帶參數,(示例index?foo=bar),要求該小程式已發佈,暫不支援小遊戲 |
data | 是 | 模板數據 |
color | 否 | 模板內容字型顏色,不填預設為黑色 |
註:url
和miniprogram
都是非必填欄位,若都不傳則模板無跳轉;若都傳,會優先跳轉至小程式。開發者可根據實際需要選擇其中一種跳轉方式即可。當用戶的微信客戶端版本不支援跳小程式時,將會跳轉至url
。
根據我們設定的模板訊息內容,將JSON設定為如下形式。請注意一定要將touser
與template_id
後面的參數修改爲你設定的接收推送訊息的使用者OpenID與模板ID。
{
"touser":"USEROPENID",
"template_id":"jtBGATt_SaV8ryGPRnxVHaA6oO94pI8g9g53ki8VLfo",
"data":{
"first": {
"value":"異常提醒",
"color":"#173177"
},
"keyword1":{
"value":"2021年12月31日 12:43:52",
"color":"#173177"
},
"keyword2": {
"value":"水溫異常,請及時檢查",
"color":"#173177"
},
"remark":{
"value":"點選此處檢視異常詳情!",
"color":"#173177"
}
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
接下來我們使用FastWeb來實現訊息推送的功能。使用管理員許可權登錄進FastWeb的開發模式,點選系統工具-模組列表(WEB)
,在打開的模組列表(WEB)
中點選[新增]
按鈕新增一個測試模組,然後選擇此測試模組,點選[模組設計]
按鈕進入至模組設計界面。
在設計界面放置TUgRFWechatMP
與TUgButton
,兩者分別位於伺服器
與標準
選項卡中。
點選UgButton01
,在屬性檢視器中為TUgButton
設定OnClick
事件,切換至指令碼編輯界面。
公共單元與許可權處(指令碼編輯頁面的右側)需勾選pub_js_tarslink
,指令碼UgButton01OnClick
中填寫的內容如下。
//JScript
function UgButton01OnClick(sender)
//填寫時請注意一定要將touser部分的OpenID與template_id改成您獲取到的。
{
var vJSON;
UgRFWechatMP01.Connection = UgRFConnection01;
//公眾號的名稱,需與TARS中設定的名稱一致
UgRFWechatMP01.AccountName = "測試號01";
vJSON = "{\"touser\":\"USEROPENID\",\"template_id\":\"jtBGATt_SaV8ryGPRnxVHaA6oO94pI8g9g53ki8VLfo\","+
"\"data\":{\"first\":{\"value\":\"異常提醒\",\"color\":\"#173177\"},\"keyword1\":{\"value\":\"2021年12月31日 12:43:52\",\"color\":"+
"\"#173177\"},\"keyword2\":{\"value\":\"水溫異常,請及時檢查\",\"color\":\"#173177\"},\"remark\":{\"value\":\"點選此處檢視異常詳情!" +
"\",\"color\":\"#173177\"}}}";
//發送模板訊息
UgRFWechatMP01.SendTemplateMessage(vJSON);
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//PasScript
procedure UgButton01OnClick(sender: tobject);
//填寫時請注意一定要將touser部分的OpenID與template_id改成您獲取到的。
var
vJSON: String;
begin
UgRFWechatMP01.Connection := GETRFERP;
//公眾號的名稱,需與TARS中設定的名稱一致
UgRFWechatMP01.AccountName := '測試號01';
vJSON := '{"touser":"USEROPENID","template_id":"jtBGATt_SaV8ryGPRnxVHaA6oO94pI8g9g53ki8VLfo",'+
'"data":{"first":{"value":"異常提醒","color":"#173177"},"keyword1":{"value":"2021年12月31日 12:43:52","color":'+
'"#173177"},"keyword2":{"value":"水溫異常,請及時檢查","color":"#173177"},"remark":{"value":"點選此處檢視異常詳情!' +
'","color":"#173177"}}}';
//發送模板訊息
UgRFWechatMP01.SendTemplateMessage(vJSON);
end;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// Make sure to add code blocks to your code group
運行示例,點選按鈕后,關注此測試號的目標使用者會接收到此訊息推送。
# 2.9. 物聯網
管理物聯網通訊協議、設備監控設備、監控異常及訊息推送管理。
# 2.9.1. 數據連線設定
設備物聯網連線資料庫、重新整理時間、顯示日誌等相關設定。
數據連線設定圖中說明如下:
- 連線名稱: 物聯網監控連線使用的資料庫。
- 即時數據重新整理時間: 監控數據即時顯示的頻率。
- 顯示即時數據日誌: 勾選,即時監控數據可顯示在日誌中。
- 自動啟動監控: 勾選,啟動TARS時自動啟動監控。
物聯網設定使用連線設定的資料庫為TARS
,其他的資料庫連線設定不支援數據監控功能。
# 2.9.2. 通訊協定設定
管理物聯網通訊協議,如通訊埠、Modbus、MQTT、OPC等。
通訊協議欄目中的按鈕說明如下。
[新增]
:點選新增通訊協議。[刪除]
:刪除目前選擇的通訊協議。[儲存]
:儲存通訊協議的設定。[重新整理]
:重新整理通訊協議列表的顯示。
通訊協議欄目中的說明如下:
- 協議編號: 定義協議的編號,方便管理。
- 協議型別: 可使用的通訊協議的型別,包括
ModBus RTU
、ModBus TCP
、OPC
、MQTT
、WIFI
、Bluetooth
。 - 協議名稱: 定義協議的描述名稱。
- 協議說明: 定義協議的其它說明。
下面展示各通訊協議的協議參數。
ModbusRTU
協議參數說明如下。
- 埠編號:指定用於通過序列網路傳輸的通訊埠,在更改此參數時要先停止監控的運行。比如如填寫2的表示為埠號COM2。
- RTS等待時間:指定時間段(以毫秒為單位),在發送完所有緩衝位元組后,在降低 RTS(請求發送) 線路之前應等待的時間段。 此屬性僅在
流量控制
設定為fcRtsToggle
時適用。 此屬性與某些依賴於 RTS 線切換進行數據傳輸的硬體訊號轉換器(例如 RS232 到 RS485)結合使用時非常有用。 - 傳輸速率:通訊埠通訊連線速率的設定值。爲了確定此屬性的正確值,請參閱您的客戶端/伺服器的參考手冊關於通訊埠通訊速率的相關資訊。 請注意,共享相同埠連線的所有遠端 Modbus 客戶端/伺服器必須使用此參數的相同值。
- Silent Interval:確定在通過序列網路傳輸 Modbus 幀期間兩個連續字元之間允許出現的最大時間間隔。在 Modbus 協議中,整個幀必須作為連續的字元流傳輸。預設值為4,表示如果在幀完成之前出現超過 4 個字元時間的靜默間隔,則接收器應重新整理未完成的幀。如果您在等待遠端伺服器的回覆時經常遇到傳輸錯誤,且調整過超時以及時延相關的參數后仍未解決問題的,增加此選項的值可能可以幫助您解決問題。
- 數據位數:指定每個序列字元要使用的數據位數。 預設值為8,爲了確定此屬性的正確值,請參閱您的客戶端/伺服器的參考手冊關於通訊數據位數相關的內容。
- 發送超時:指定通過序列網路將 Modbus 幀發送到遠端 Modbus 伺服器的總超時時間(以毫秒為單位)。 無論出於何種原因,在此期間未能發送幀都被視為傳輸錯誤。 預設值為 1000 毫秒(一秒)。
- 停止位:指定每個序列字元要使用的停止位數。 預設值為 1。爲了確定此屬性的正確值,請參閱您的客戶端/伺服器的參考手冊關於停止位的相關資訊。 請注意,共享相同 埠連線的所有遠端 Modbus 客戶端/伺服器必須使用此參數的相同值。一般來說,如果
校驗位
的值為psNone
,則應將此參數設定為2。 否則應設定為1。 - 接收超時:指定通過序列網路從遠端 Modbus 伺服器接收 Modbus 幀的總超時時間(以毫秒為單位)。 無論出於何種原因,在此期間未能接收到幀都被視為傳輸錯誤。 預設值為 1000 毫秒(一秒)。 為確保參數的值設定得足夠長,以涵蓋共享同一Modbus連線的所有遠端 Modbus 伺服器的最長可能事務處理時間。 如果您在等待遠端伺服器的回覆時遇到傳輸錯誤,並且之前的 Modbus 事務不是在廣播模式下啟動的,則增加此參數的值可能會幫助您消除問題。
- 校驗位:校驗位的檢驗方式,有無校驗(psNone)、奇校驗(psOdd)與偶校驗(psEven)三種類型。
- 更新等待時間:指定在執行每個 Modbus 事務之前插入的時間延遲(以毫秒為單位)。 部分設備在序列網路上接收和隨後發送 Modbus 幀之間至少存在最小間隙。 如果在等待遠端伺服器回覆時遇到傳輸錯誤,前提是可能有兩個或更多遠端 Modbus 伺服器共享同一個連線,並且前面的 Modbus 事務是快速連續發起的,增加此參數的值可以幫助您解決問題。
- 流量控制:設定通訊埠數據流量的控制方式。流量控制用於同步發送端與接收端的數據傳輸總體速率,降低有無流控(fcNone)、請求發送觸發流控(fcRtsToggle)、半雙工切換流控(fcRtsCts)、數據終端就緒/數據設定就緒(fcDtrDsr)。
- 最多更新次數:如果在執行期間重複檢測到傳輸錯誤,則確定此連線必須重新執行特定 Modbus 事務的次數。 此項接受任何大於零的整數值。 預設值為3,這意味著每個事務將最多執行三次,無論它在執行期間是如何進行的(即,即使它成功或失敗),此項僅適用於在本地客戶端模式下工作的情況。
- 查詢前先回復:如果該選項被勾選,則可用於處理 RS-232<->RS-485 轉換器的數據幀,轉換器在接收到數據幀(Modbus 查詢)后立即自動將其回送至發起事務的客戶端,預設情況下此項不需要勾選,部分RS-232<->RS-485 轉換器可能需要此項的支援。
- 廣播等待時間:指定發送 Modbus 廣播查詢后插入的時間延遲(以毫秒為單位),以允許任何遠端 Modbus 伺服器在發送新查詢之前處理當前查詢。 確保參數的值設定得足夠長,以涵蓋共享同一連線的所有遠端 Modbus 伺服器的最長可能事務處理時間。 如果您在等待遠端伺服器的回覆時遇到傳輸錯誤,則增加此項的值可能會幫助您消除問題。
- 可控制線:設定以是否開啟RTS(請求發送)功能。
ModbusTCP
協議參數說明如下。
- 連線超時:連線至Modbus設備的超時時間,以毫秒為單位。
- 讀取超時:讀取Modbus設備的超時時間,以毫秒為單位。
- 超時:設定的操作的總體超時時間,以毫秒為單位。
OPC
協議參數說明如下。
- OPC伺服器:OPC伺服器的名稱。通過點選下拉按鈕查詢位於本機的OPC伺服器。
[開始瀏覽]
:點選按鈕檢視選擇OPC伺服器中可用的數據型別。- 快速:
- 數據型別:OPC傳遞的數據的型別。如果OPC傳遞的數據型別為整數,選擇
vtI2
或者vtI4
,如果傳遞的數據型別為實數,選擇vtR4
或者vtR8
。 - 過濾:用於設定OPC的過濾條件。
- 讀取:是否開啟讀取功能。
- 寫入:是否開啟寫入功能。
MQTT
協議參數說明如下。
- 伺服器:MQTT伺服器所在的地址。
- 使用者名稱:MQTT連線使用的使用者名稱稱。
- SSL:是否啟用 SSL 協議的 MQTT 連線。
- 埠號:MQTT連線使用的埠號資訊。
- 密碼:MQTT連線使用的密碼資訊。
# 2.9.3. 設備監控設定
設備監控設定界面用於配置設備的通訊協定、監控站點、指令碼等配置。
通訊協議欄目中的按鈕說明如下。
[新增]
:點選新增通訊設備。[刪除]
:刪除目前選擇的通訊設備。[儲存]
:儲存通訊設備的設定。[重新整理]
:重新整理通訊設備列表的顯示。
通訊協議欄目中的說明如下:
- 設備編號: 定義的設備的編號。
- 設備名稱:定義的設備的名稱。
Modbus設定界面如上圖所示,其中的參數說明如下。
設備資訊
設備編號
:使用設備的編號資訊。是否可用
:當選項被勾選時,設備會進入至監控列表實施定時採集。設備名稱
:設定使用設備的名稱。從機號
:在ModbusRTU
中使用,對於連線在同一個埠的硬體設備,在ModbusRTU
通訊中使用此編號來區分不同的設備,在Modbus通訊幀中置入從機編號,由對應的從機來反饋結果。通訊協定
:設定設備使用的通訊協定設定名稱。IP地址
:在ModbusTCP
中使用,設定連線的設備的IP地址資訊。埠號
:在ModbusTCP
中使用,設定連線的設備的埠號資訊。所屬設備
:監控設備所監控的生產設備的名稱。設備說明
:對監控設備的相關說明。
站點設定:
站點名稱
:監控設備監控的參數名稱。比如溫度、濕度、電壓等。數據型別
:監控設備採集的數據的型別。Binary
:二進制數據。Boolean
:布林值,當爲0時表示為False
,1表示為True
。Integer
:整形值。Float
:浮點數值。String
:字串型別的取值。
功能程式碼
:Modbus的功能碼,代表不同的取值方式。01ReadCoils(0x)
:讀取線圈的狀態。02ReadInputStatus(1x)
:讀取離散輸入暫存器的狀態。03ReadHoldingRegisters(4x)
:讀取保持暫存器。04ReadInputRegisters(3x)
:讀取輸入暫存器。
數據地址
:設定讀取暫存器的起始地址,在ModbusTCP
中,讀取的地址以1開始,在ModbusRTU
中,讀取的地址以0開始。數據長度
:設定從數據地址位開始讀取的暫存器的數據位元組數。活動率
:數據採集過程中響應返回數據與發送數據的比率。監控時間
:設定監控活動發生的時間範圍,監控僅在此時間範圍內工作。監控週期
:監控設備進行數據採集工作的週期數值,即每隔多長時間進行一次數據採集。儲存頻率
:對採集的數據資訊進行儲存的時間間隔,即每隔多長時間進行數據的儲存。監控記錄
:設定是否對採集的數據進行儲存操作。數據上限
:設定採集的數據的警報上限,超過此上限的數據將觸發警報。數據下限
:設定採集的數據的警報下限,低於此下限的數據將觸發警報。偏移量
:如果採集的數據與實際值是有固定的加減關係的,該值可用於消除兩者之間的差異值。實時傳值
:此項勾選時,不管檢測的數據與上次相比是否發生變化都會傳值,否則只在數據發生變化時進行傳值操作。備註說明
:對採集的數據資訊的說明。儀表型別
:設定採集數據的設備型別。監測型別
:設定設備採集的數據的種類型別。上限警報
:觸發數據採集上限的警報的等級。此項會與監控警報中對應設備的警報等級進行比較,如果此處設定的警報等級大於監控警報中的等級,則會觸發警報。下限警報
:觸發數據採集下限的警報的等級。此項會與監控警報中對應設備的警報等級進行比較,如果此處設定的警報等級大於監控警報中的等級,則會觸發警報。站點型別
:站點的數據操作型別,如果需要進行數據採集,此處設定為Read
(讀),如果需要實現控制,此處需設定為Write
(寫)。[更新設備]
:更新監控設備的參數資訊,在更新設備前要先暫停監控設備的運行。[暫停監控]
:暫時停止監控設備的運行。[重啟設備]
:重新啟動對設備的監控。數據指令碼
:部分數據需要在處理后才可以轉換為正確的取值,可通過指令碼進行轉換。訊息指令碼
:用於觸發部分訊息推送的指令碼資訊。數據轉存
:用於設定數據轉存至其他資料庫的方式。
數據轉存標籤頁中可設定轉存的資料庫以及轉存的SQL語句。首先需點選 重新整理
按鈕重新整理資料庫列表,然後選擇要轉存的目標資料庫。
圖中示例說明如下:
資料庫
:設定轉存的資料庫連線的名稱。重新整理
:重新整理資料庫連線設定列表並顯示。可用
:設定是否啟用數據轉存功能。[儲存]
:儲存數據轉存設定。SQL語句
:轉存使用的 SQL 語句。Modbus 模式中提供下列參數可供使用:
參數名稱 | 參數列達語句 | 參數說明 |
---|---|---|
ModuleNo | :ModuleNo | 設備編號 |
ModuleName | :ModuleName | 設備名稱 |
Site | :Site | 站點 |
BeginTime | :BeginTime | 開始時間 |
EndTime | :EndTime | 結束時間 |
DataUpper | :DataUpper | 最大上限值 |
DataLower | :DataLower | 最小下限值 |
Offset | :Offset | 偏移量 |
DataType | :DataType | 數據型別 |
DataValue | :DataValue | 目前值 |
LastValue | :LastValue | 上次值 |
RegValues | :RegValues | 數位字串 |
BitValues | :BitValues | 類比字串 |
在MySQL中,參數的使用方式示例如下:
INSERT INTO nodered_data
(id, time, type, value)
VALUES (UUID(), NOW(), 'elec', :DataValue)
2
3
其中的 :DataValue
作為參數插入,在實際運行時會替換為寫入的值。如果使用 :
開頭引用了上述列表中不存在的參數,則此參數在格式化後會以 NULL
寫入。
點選右側的 自動產生
標籤頁,可通過嚮導快速產生插入語句。
圖中的欄位說明如下:
表名稱
:選擇要產生插入語句的表的名稱。引號列名
:將數據表的列名打上引號。產生 MySQL 適用的 SQL 語句可勾選此選項。引號表名
:將數據表的表名打上引號。產生 MySQL 適用的 SQL 語句可勾選此選項。優雅的
:以優雅模式產生,已設定為預設必選項。產生
:產生插入數據表的語句。新增
:將產生的語句新增至數據轉存SQL語句中。SQL語句
:自動產生的 SQL 語句。
OPC監控設定界面如上圖所示,其中的參數說明如下。
OPC群組
群組編號
:設定顯示OPC群組的編號。是否可用
:群組是否處於可用的狀態。群組名稱
:設定顯示OPC群組的名稱。通訊協定
:監控設備使用的通訊協定的名稱。所屬設備
:監控設備所監控的生產設備的名稱。設備說明
:對監控設備的相關說明。
專案設定
Item專案
:監控的OPC專案的名稱。數據型別
:監控設備採集的數據的型別。Binary
:二進制數據。Boolean
:布林值,當爲0時表示為False
,1表示為True
。Integer
:整形值。Float
:浮點數值。String
:字串型別的取值。
監控時間
:設定監控活動發生的時間範圍,監控僅在此時間範圍內工作。監控週期
:監控設備進行數據採集工作的週期數值,即每隔多長時間進行一次數據採集。活動率
:數據採集過程中響應返回數據與發送數據的比率。數據上限
:設定採集的數據的警報上限,超過此上限的數據將觸發警報。數據下限
:設定採集的數據的警報下限,低於此下限的數據將觸發警報。儲存頻率
:對採集的數據資訊進行儲存的時間間隔,即每隔多長時間進行數據的儲存。監控記錄
:設定是否對採集的數據進行儲存操作。備註說明
:對採集的數據資訊的說明。偏移量
:如果採集的數據與實際值是有固定的加減關係的,該值可用於消除兩者之間的差異值。實時傳值
:此項勾選時,不管檢測的數據與上次相比是否發生變化都會傳值,否則只在數據發生變化時進行傳值操作。儀表型別
:設定採集數據的設備型別。監測型別
:設定設備採集的數據的種類型別。上限警報
:觸發數據採集上限的警報的等級。下限警報
:觸發數據採集下限的警報的等級。專案型別
:站點的數據操作型別,通常均為read
(讀取)。[新增Item專案]
:新增數據採集的專案。數據指令碼
:部分數據需要在處理后才可以轉換為正確的取值,可通過指令碼進行轉換。訊息指令碼
:用於觸發部分訊息推送的指令碼資訊。數據轉存
:用於設定數據轉存至其他資料庫的方式。
數據轉存標籤頁中可設定轉存的資料庫以及轉存的SQL語句。首先需點選 重新整理
按鈕重新整理資料庫列表,然後選擇要轉存的目標資料庫。
圖中示例說明如下:
資料庫
:設定轉存的資料庫連線的名稱。重新整理
:重新整理資料庫連線設定列表並顯示。可用
:設定是否啟用數據轉存功能。[儲存]
:儲存數據轉存設定。SQL語句
:轉存使用的 SQL 語句。Modbus 模式中提供下列參數可供使用:
參數名稱 | 參數列達語句 | 參數說明 |
---|---|---|
ModuleNo | :ModuleNo | 群組編號 |
ModuleName | :ModuleName | 群組名稱 |
Site | :Site | 站點 |
BeginTime | :BeginTime | 開始時間 |
EndTime | :EndTime | 結束時間 |
DataUpper | :DataUpper | 最大上限值 |
DataLower | :DataLower | 最小下限值 |
Offset | :Offset | 偏移量 |
DataType | :DataType | 數據型別 |
DataValue | :DataValue | 目前值 |
LastValue | :LastValue | 上次值 |
在MySQL中,參數的使用方式示例如下:
INSERT INTO nodered_data
(id, time, type, value)
VALUES (UUID(), NOW(), 'elec', :DataValue)
2
3
其中的 :DataValue
作為參數插入,在實際運行時會替換為寫入的值。如果使用 :
開頭引用了上述列表中不存在的參數,則此參數在格式化後會以 NULL
寫入。
點選右側的 自動產生
標籤頁,可通過嚮導快速產生插入語句。
圖中的欄位說明如下:
表名稱
:選擇要產生插入語句的表的名稱。引號列名
:將數據表的列名打上引號。產生 MySQL 適用的 SQL 語句可勾選此選項。引號表名
:將數據表的表名打上引號。產生 MySQL 適用的 SQL 語句可勾選此選項。優雅的
:以優雅模式產生,已設定為預設必選項。產生
:產生插入數據表的語句。新增
:將產生的語句新增至數據轉存SQL語句中。SQL語句
:自動產生的 SQL 語句。
MQTT監控設定界面如上圖所示,其中的參數說明如下。
MQTT群組:
群組編號
:設定顯示MQTT群組的編號。是否可用
:群組是否處於可用的狀態。群組名稱
:設定顯示MQTT群組的名稱。通訊協定
:監控設備使用的通訊協定的名稱。所屬設備
:監控設備所監控的生產設備的名稱。設備說明
:對監控設備的相關說明。
專案設定:
Item主題
:設定監控訂閱的主題名稱。數據型別
:監控設備採集的數據的型別。Binary
:二進制數據。Boolean
:布林值,當爲0時表示為False
,1表示為True
。Integer
:整形值。Float
:浮點數值。String
:字串型別的取值。
監控時間
:設定監控活動發生的時間範圍,監控僅在此時間範圍內工作。監控週期
:監控設備進行數據採集工作的週期數值,即每隔多長時間進行一次數據採集。活動率
:數據採集過程中響應返回數據與發送數據的比率。數據上限
:設定採集的數據的警報上限,超過此上限的數據將觸發警報。數據下限
:設定採集的數據的警報下限,低於此下限的數據將觸發警報。儲存頻率
:對採集的數據資訊進行儲存的時間間隔,即每隔多長時間進行數據的儲存。監控記錄
:設定是否對採集的數據進行儲存操作。備註說明
:對採集的數據資訊的說明。偏移量
:如果採集的數據與實際值是有固定的加減關係的,該值可用於消除兩者之間的差異值。實時傳值
:此項勾選時,不管檢測的數據與上次相比是否發生變化都會傳值,否則只在數據發生變化時進行傳值操作。儀表型別
:設定採集數據的設備型別。監測型別
:設定設備採集的數據的種類型別。上限警報
:觸發數據採集上限的警報的等級。此項會與監控警報中對應設備的警報等級進行比較,如果此處設定的警報等級大於監控警報中的等級,則會觸發警報。下限警報
:觸發數據採集下限的警報的等級。此項會與監控警報中對應設備的警報等級進行比較,如果此處設定的警報等級大於監控警報中的等級,則會觸發警報。專案型別
:站點的數據操作型別,通常均為sub
(訂閱)。如設定為pub
需配合 RestAPI 使用。數據指令碼
:部分數據需要在處理后才可以轉換為正確的取值,可通過指令碼進行轉換。數據指令碼中可使用Payload
、Topic
等參數。訊息指令碼
:用於觸發部分訊息推送的指令碼資訊。數據轉存
:用於設定數據轉存至其他資料庫的方式。
數據轉存標籤頁中可設定轉存的資料庫以及轉存的SQL語句。首先需點選 重新整理
按鈕重新整理資料庫列表,然後選擇要轉存的目標資料庫。
圖中示例說明如下:
資料庫
:設定轉存的資料庫連線的名稱。重新整理
:重新整理資料庫連線設定列表並顯示。可用
:設定是否啟用數據轉存功能。[儲存]
:儲存數據轉存設定。SQL語句
:轉存使用的 SQL 語句。Modbus 模式中提供下列參數可供使用:
參數名稱 | 參數列達語句 | 參數說明 |
---|---|---|
ModuleNo | :ModuleNo | 群組編號 |
ModuleName | :ModuleName | 群組名稱 |
Site | :Site | Item主題 |
BeginTime | :BeginTime | 開始時間 |
EndTime | :EndTime | 結束時間 |
DataUpper | :DataUpper | 最大上限值 |
DataLower | :DataLower | 最小下限值 |
Offset | :Offset | 偏移量 |
DataType | :DataType | 數據型別 |
DataValue | :DataValue | 目前值 |
LastValue | :LastValue | 上次值 |
在MySQL中,參數的使用方式示例如下:
INSERT INTO nodered_data
(id, time, type, value)
VALUES (UUID(), NOW(), 'elec', :DataValue)
2
3
其中的 :DataValue
作為參數插入,在實際運行時會替換為寫入的值。如果使用 :
開頭引用了上述列表中不存在的參數,則此參數在格式化後會以 NULL
寫入。
點選右側的 自動產生
標籤頁,可通過嚮導快速產生插入語句。
圖中的欄位說明如下:
表名稱
:選擇要產生插入語句的表的名稱。引號列名
:將數據表的列名打上引號。產生 MySQL 適用的 SQL 語句可勾選此選項。引號表名
:將數據表的表名打上引號。產生 MySQL 適用的 SQL 語句可勾選此選項。優雅的
:以優雅模式產生,已設定為預設必選項。產生
:產生插入數據表的語句。新增
:將產生的語句新增至數據轉存SQL語句中。SQL語句
:自動產生的 SQL 語句。
# 2.9.4. 監控記錄檢視
監控記錄檢視頁面可以對各監控設備的監控數據進行查詢。
界面說明如下。
- 日期:設定查詢的數據採集時間範圍。
- 設備名稱:檢視採集的數據的設備名稱。
[查詢]
:點選按鈕后,根據設定的日期以及設備名稱進行查詢。
監控記錄表格頁面的說明如下。
設備編號
:採集監控設備的編號資訊。設備名稱
:採集監控設備的名稱。站點名稱
:採集的數據資訊表示名稱。數據型別
:採集的數據顯示的型別。採集時間
:採集數據發生的時間。十六進制(HEX)數據
:如果採集的數據是以十六進制展示的,則顯示對應的十六進制原始數據。十進制(DEC)數據
:如果採集的數據是以十進制展示的,則顯示對應的十進制原始數據。數據值
:經過進位制轉換后顯示的目標數據值。
監控記錄的詳細資訊的說明如下。
設備編號
:採集監控設備的編號資訊。設備名稱
:採集監控設備的名稱。站點名稱
:採集的數據資訊表示名稱。數據型別
:採集的數據顯示的型別。採集時間
:採集數據發生的時間。數據1
-數據8
:採集的原始數值的表示形式,用於不同型別的數據轉換使用。
# 2.9.5. 異常訊息推送
管理設備異常日誌的訊息推送配置,可將異常日誌通過Email或微信訊息模板推送至指定使用者。
圖中內容說明如下:
[重新整理]
:重新整理異常日誌。[已處理]
:改變異常日誌的狀態為已處理,已處理的異常日誌將不再顯示。[訊息設定]
:顯示訊息設定對話方塊。[啟動訊息監控]
:啟動異常日誌監控,如果有異常日誌將會根據訊息設定內容進行訊息推送。[停止訊息監控]
:停止異常日誌監控,異常訊息將不會被推送。
表格中顯示的內容說明如下。
設備編號
:採集監控設備的編號資訊。設備名稱
:採集監控設備的名稱。站點名稱
:採集的數據資訊表示名稱。數據型別
:採集的數據顯示的型別。採集時間
:採集數據發生的時間。機臺
:採集數據設備所在的生產機器。等級
:數據警報的等級設定,此項與監控設定內的等級相關。數據值
:觸發數據警報的數據值。說明
:數據顯示的異常資訊。
點選[訊息設定]
出現下方的訊息設定窗體,可進行各監控站點的訊息推送設定。
當使用wechat(微信)訊息型別時,內容說明如下:
- 公眾號名稱: 訊息推送所用到的公眾號的名稱,內容來自於中介軟體
[微信公眾號]
頁中顯示的公眾號名稱。 - 模板ID: 訊息推送所用到的訊息模版,內容來自於中介軟體
[微信公眾號]
下面的[模板管理]
。 - 可用: 是否啟用該警報。
- 上限發送等級: 異常資訊的設備設定的警報等級如果超過所設定的上限等級,才發送訊息。
- 下限發送等級: 異常日誌達到所設定的警報等級如果超過所設定的下限等級,才發送訊息。
- 間隔: 間隔多久發送一次訊息。
當使用email(郵件)訊息型別時,內容說明如下:
- 訊息標題: 郵件標題。
- 上限發送等級: 異常日誌達到所設定的上限等級,才發送訊息。
- 下限發送等級: 異常日誌達到所設定的下限等級,才發送訊息。
- 間隔: 間隔多久發送一次訊息。
- 接收訊息的使用者設定: 使用者Id必填,此處為使用者的郵件地址。
表格型別的說明如下。
- 設備編號:採集監控設備的編號資訊。
- 設備名稱:採集監控設備的名稱。
- 站點名稱:採集的數據資訊表示名稱。
- 訊息型別:設定的訊息提示的型別,有
email
(郵件)與wechat
(微信)可選。 - 公眾號ID:設定的公眾號的編號資訊,ID資訊位於微信公眾號中的ID資訊
- 訊息標題:設定推送的訊息的標題資訊。
- 模板ID:推送訊息使用的訊息模板的ID編號資訊。
- 間隔時間:推送訊息的時間間隔。
推送使用者的表格型別說明如下。
- 序號:推送使用者的序號。
- 使用者Id:推送使用者的編號,在微信使用者中此項設定為使用者的
OpenID
,OpenID
可在[微信公眾號]
中的在郵箱中此項設定為電子郵箱的地址。 - 使用者名稱稱:推送使用者的名稱。
- 備註:推送使用者的備註資訊。
# 2.10. 郵件服務
郵件服務用於設定為TARS平臺使用的郵件發送的郵箱地址。
# 2.10.1. 郵箱設定
郵箱設定界面用於設定郵件發送使用的郵箱的驗證資訊。使用此郵箱需要確認爲郵箱開啟SMTP/IMAP服務。
郵箱設定的說明如下:
- 伺服器:電子郵箱伺服器的網路地址,由郵箱服務商提供。
- 埠:電子郵箱伺服器的連線埠,通常為25埠;如使用STARTTLS協議來發送郵件,此處填寫埠號為587;如使用SSL/TLS協議發送郵件,此處填寫埠號為465。
- 發件人:TARS發送相關郵件使用的主體郵箱地址。
- 密碼:發件使用的郵箱的密碼。
- 收件人:設定收件的郵箱地址,此地址僅作為測試郵箱設定正確性使用,不作其他用途。
[郵件測試]
:當以上設定均填寫完成後,可點選此按鈕來測試郵件服務是否正確設定,如設定正確,收件人的郵箱可以接收到此郵件。
# 2.10.2. 定製訊息
定製訊息是為FastERP專門設計的功能,此處是用於啟動郵件監控相關的功能。
圖中內容說明如下:
- 鏈接名稱:定製訊息使用的連線設定的名稱。
[重新整理配置]
:重新整理配置檔案。- 重新整理時間:監控設定定時監測的時間間隔。
[啟動監控]
:開啟定製訊息的郵件監控功能。[停止監控]
:關閉定製訊息的郵件監控功能。
# 2.11. 物聯網綜合示例
通過微信公眾號、郵箱以及物聯網的相關設定,可以實現物聯網的數據採集與相關設備控制。接下來我們會分別設定各種通訊協議下的連線,實現數據採集以及訊息監控的功能。
# 2.11.1. ModbusTCP採集設定
ModbusTCP部分採用Smart之ModbusTCP讀取溫濕度中使用的Arduino硬體,將其通電並連線至網路。
如果TARS中已經開啟了物聯網監控功能,則先進入至物聯網
界面,點選頁面下方的[停止監控(C)]
停止物聯網監控的功能。
在TARS的物聯網-通訊協定設定
中,點選[新增(N)]
新增通訊協議,協議的型別設定為ModbusTCP
,其他的設定可參考圖示進行,填寫完成後點選[儲存(S)]
。
點選左側的設備監控設定
,切換至設備監控設定頁面,確認下方選擇的頁面標籤為Modbus
,然後點選上側的[新增(N)]
按鈕,新增設備資訊,設備資訊部分按照下圖所示的內容進行填寫,請注意此處的IP地址要與Arduino中設定的IP地址要一致。TARS與採集的硬體設備要處於同一區域網中。
下方點選[+]
按鈕新增一行,站點名稱按照下述內容進行填寫。注意在ModbusTCP中數據地址是以1開頭的。
由於Modbus不能傳遞小數點,所有的數據採集都是以整數的形式採集得到的,此處的數據指令碼需要進行處理重新轉換為小數進行儲存。點選分別點選溫度與濕度的站點名稱,然後點選數據指令碼
頁簽,在其中分別輸入以下內容。溫度與濕度站點設定的數據指令碼中都要填寫此內容。
begin
this.DataValue := this.GetRegValues(0)*0.01;
end.
2
3
填寫完成後,點選[儲存(S)]
按鈕儲存設定。
接下來可以開始測試採集。點選右下角的[啟動監控(A)]
按鈕,等待此按鈕變成灰色,且日誌列表中顯示Modbus監控:已啟動
,則監控啟動成功,可以在日誌列表中檢視到採集的數據資訊。
點選物聯網-監控記錄檢視
,選擇日期事件範圍,點選[查詢]
按鈕可以看到採集的數據記錄。
# 2.11.2. ModbusRTU採集設定
ModbusRTU部分採用Smart之ModbusRTU讀取溫濕度中使用的Arduino硬體,將RS485端的通訊埠與Arduino的供電USB連線至TARS所在的本機。
按下鍵盤上的Windows+R,在打開的運行對話方塊中輸入devmgmt.msc
,點選[確定]
打開計算機管理。
點選埠
,在展開的頁面中檢視連線的埠號資訊,比如在此頁面中,USB轉通訊埠連線的埠為COM8。在之後新增的要以此為基礎。
如果TARS中已經開啟了物聯網監控功能,則先進入至物聯網
界面,點選頁面下方的[停止監控(C)]
停止物聯網監控的功能。
在TARS的物聯網-通訊協定設定
中,點選[新增(N)]
新增通訊協議,協議的型別設定為Modbus RTU
,其他的設定可參考圖示進行,填寫完成後點選[儲存(S)]
。
點選左側的設備監控設定
,切換至設備監控設定頁面,確認下方選擇的頁面標籤為Modbus
,然後點選上側的[新增(N)]
按鈕,新增設備資訊,設備資訊部分按照下圖所示的內容進行填寫。
下方點選[+]
按鈕新增行,站點名稱按照下述內容進行填寫。
由於Modbus不能傳遞小數點,所有的數據採集都是以整數的形式採集得到的,此處的數據指令碼需要進行處理重新轉換為小數進行儲存。點選分別點選溫度與濕度的站點名稱,然後點選數據指令碼
頁簽,在其中分別輸入以下內容。溫度與濕度站點設定的數據指令碼中都要填寫此內容。
begin
this.DataValue := this.GetRegValues(0)*0.01;
end.
2
3
填寫完成後,點選[儲存(S)]
按鈕儲存設定。
接下來可以開始測試採集。點選右下角的[啟動監控(A)]
按鈕,等待此按鈕變成灰色,且日誌列表中顯示Modbus監控:已啟動
,則監控啟動成功,可以在日誌列表中檢視到採集的數據資訊。
點選物聯網-監控記錄檢視
,選擇日期事件範圍,點選[查詢]
按鈕可以看到採集的數據記錄。
# 2.11.3. MQTT採集設定
MQTT部分採用Smart之MQTT讀取溫濕度中使用的Arduino硬體,將其通電並連線至網路。
如果TARS中已經開啟了物聯網監控功能,則先進入至物聯網
界面,點選頁面下方的[停止監控(C)]
停止物聯網監控的功能。
在TARS的物聯網-通訊協定設定
中,點選[新增(N)]
新增通訊協議,協議的型別設定為MQTT
,其他的設定可參考圖示進行,填寫完成後點選[儲存(S)]
。注意Arduino中的MQTT伺服器地址需與此處填寫的伺服器地址一致,可使用TARS自帶的MQTT伺服器來連線測試。
點選左側的設備監控設定
,切換至設備監控設定頁面,確認下方選擇的頁面標籤為MQTT
,然後點選上側的[新增(N)]
按鈕,新增設備資訊,設備資訊部分按照下圖所示的內容進行填寫。
下方點選[+]
按鈕新增行,訂閱主題名稱按照下述內容進行填寫。
填寫完成後,點選[儲存(S)]
按鈕儲存設定。
接下來可以開始測試採集。點選右下角的[啟動監控(A)]
按鈕,等待此按鈕變成灰色,且日誌列表中顯示MQTT監控:已啟動
,則監控啟動成功,可以在日誌列表中檢視到採集的數據資訊。
點選物聯網-監控記錄檢視
,選擇日期事件範圍,點選[查詢]
按鈕可以看到採集的數據記錄。
# 2.11.4. OPC採集設定
OPC部分採用Smart之OPCDA讀取溫濕度中使用的Arduino硬體,將其通電並連線至網路。同時按照此手冊中的內容配置好Arduino OPC Server。
如果TARS中已經開啟了物聯網監控功能,則先進入至物聯網
界面,點選頁面下方的[停止監控(C)]
停止物聯網監控的功能。
在TARS的物聯網-通訊協定設定
中,點選[新增(N)]
新增通訊協議,協議的型別設定為OPC
,注意在OPC伺服器
中請選擇含有ArdunioOPCServer
字樣的選項,點選[開始瀏覽]
載入OPC伺服器中的列表。其他的設定可參考圖示進行,填寫完成後點選[儲存(S)]
。
點選左側的設備監控設定
,切換至設備監控設定頁面,確認下方選擇的頁面標籤為OPC
,然後點選上側的[新增(N)]
按鈕,新增設備資訊,設備資訊部分按照下圖所示的內容進行填寫。
下方點選[新增Item專案]
,打開專案編輯器。
此設定中的兩項專案分別選擇,然後點選[Open]
載入至列表中。
修改部分屬性設定,如下圖所示,然後點選[儲存(S)]
。
接下來可以開始測試採集。點選右下角的[啟動監控(A)]
按鈕,等待此按鈕變成灰色,且日誌列表中顯示OPC監控:已啟動
,則監控啟動成功,可以在日誌列表中檢視到採集的數據資訊。
點選物聯網-監控記錄檢視
,選擇日期事件範圍,點選[查詢]
按鈕可以看到採集的數據記錄。
# 2.11.5. 監控設定
接下來為數據設定監控的功能。我們以MQTT採集設定為例。按照上述章節中關於MQTT採集的部分設定。根據上述方式,我們為濕度設定了上限50,為溫度設定了40的上限。
接下來設定郵箱異常資訊推送。
點選郵件服務-郵箱設定
,在頁面中設定郵箱,這個郵箱在後續的物聯網異常訊息推送時會使用到用來發送相關的異常資訊。比如此處測試使用到163的郵箱來發送郵件,伺服器的名稱為smtp.163.com
,埠號為25,163郵箱需要開啟SMTP/IMAP服務,根據其指引申請專用的授權碼,填寫至此處的密碼欄位。填寫完成後,可以點選[郵件測試]
來測試郵件的功能。測試無誤后,點選[應用(A)]
按鈕。
點選物聯網-異常資訊推送
,然後在異常資訊頁面中點選訊息設定
按鈕,進入至訊息設定頁面。在頁面中找到設定的MQTT
,站點名稱為HUM
的項,按照下述的方式進行設定,訊息型別選擇的是email
,右側表格中使用者Id
欄填寫收件的郵箱地址。填寫完成後,點選[儲存]
。
返回至異常資訊推送界面,點選下方的[啟動監控(A)]
,然後點選[啟動訊息推送]
。如果當濕度超過50時,會向郵箱發送訊息。
接下來設定微信公眾號推送,按照微信公眾號小節的內容設定好微訊號,登錄進入微信公眾號的後臺頁面,建立一個模板訊息,名稱為異常資訊
,模板內容為:
{{first.DATA}}
並儲存此模板訊息。
點選微信公眾號-模板管理
,點選[重新整理]
按鈕重新整理獲取到模板ID,並記下此ID,之後會使用到。
點選微信公眾號-使用者管理
,點選右側的[重新整理]
按鈕重新整理使用者列表,選擇要接收推送的使用者,雙擊打開使用者資訊對話方塊,複製其opeid
。
點選物聯網-異常資訊推送
,然後在異常資訊頁面中點選訊息設定
按鈕,進入至訊息設定頁面。在頁面中找到設定的MQTT
,站點名稱為TMP
的項,按照下述的方式進行設定,訊息型別選擇的是wechat
,界面上方的模板ID
更改為你獲取到的模板ID,右側表格中使用者Id
欄填寫剛才的openid
。填寫完成後,點選[儲存]
。
返回至異常資訊推送界面,點選下方的[啟動監控(A)]
,然後點選[啟動訊息推送]
。如果當溫度超過40時,會向指定的使用者發送此模板訊息。