InterSystems IRIS 上的附加開發人員工具列

一組附加工具,用於監控和調查 InterSystems IRIS 資料平台、Ensemble 整合平台和 Caché DBMS 上的應用程式和整合解決方案中的錯誤,或另一輛自行車的故事。

在本文中,我想談談我每天使用的應用程式以及標準管理工具來監視 InterSystems IRIS 平台上的應用程式和整合解決方案,並在錯誤發生時發現錯誤。
此解決方案包括檢視和編輯全域數組、執行查詢(包括 JDBC/ODBC)、透過電子郵件以壓縮的 XLS 檔案形式傳送搜尋結果。 查看具有編輯能力的類別物件。 系統協定的幾個簡單圖表。

這是一個基於的CSP應用程式 jQuery UI, 圖表.js, jsgrid.js
如果您有興趣,請參閱下文和 存儲庫.

這一切都始於研究如何記錄 InterSystems IRIS、Ensemble 和 Caché DBMS 中物件的變更的問題。

看完後 優秀的文章 關於這個,我叉了 項目。 並開始根據他的需要完成它。

產生的解決方案作為 %CSP.Util.Pane 的面板子類實現,它具有主命令視窗和運行按鈕,以及命令細化設定。

當你輸入“?”時我們得到這些命令的簡要描述:

InterSystems IRIS 上的附加開發人員工具列

全域變數

我最常用的命令是查看全域。 通常,在調試您自己或其他人的專案時,這是一個全域協議。 您可以按相反的順序查看它,也可以對連結和資料套用篩選器。 可以編輯和刪除找到的節點:

InterSystems IRIS 上的附加開發人員工具列

您可以透過在命令中名稱後輸入減號 ^logMSW- 來刪除整個全域。
但這樣你只能刪除以^log(協定全域變數)開頭的全域變量,即已實施針對意外刪除的限制。

如果在名稱後面輸入“*”,您將獲得具有附加特徵的全域變數清單。 第二個“*”將新增一個新欄位“已分配的MB”,另一個星號將是“已使用的MB”。兩個報告的組合和“星號”的分割是為了將通常很長的報告劃分為佔用的區塊大型全域變數。

InterSystems IRIS 上的附加開發人員工具列

從此表中,您可以按照活動連結查看全域本身,或透過點擊「權限」欄位中的 R 或 W,以標準方式從管理入口網站檢視/編輯它。

請求

將報表轉換為 Excel 格式

第二個最常用的功能是查詢執行。 為此,請輸入 sql 語句作為指令。

在標準系統管理入口網站中對我來說足夠的主要內容是對 DBMS 中配置的 JDBC/ODBC 來源執行查詢並以 XLS 格式輸出結果、存檔並透過電子郵件傳送檔案。 為此,在我的工具中,在執行命令之前,您需要啟用「下載到 Excel 檔案」複選框。

這個功能為我的日常工作節省了大量時間,我成功地將現成的模組整合到新的應用程式和整合解決方案中。

InterSystems IRIS 上的附加開發人員工具列

但要做到這一點,您首先需要配置在伺服器上建立檔案的路徑以及使用者和郵件伺服器的憑證;為此,您需要依序編輯全域程式設定^%App.Setting的節點。

InterSystems IRIS 上的附加開發人員工具列

全域儲存報告

很多時候需要全域保存報表執行的結果。 為此,我使用以下過程:

對於 JDBC:
##class(App.sys).SqlToDSN

對於 ODBC:
##class(App.sys).SaveGateway

對於 SQL 表達式:
##class(App.sys).SaveSQL

對於查詢:
##class(App.sys).SaveQuery

例如,如果在面板中輸入命令
xec do ##class(App.sys).SaveQuery("%SYSTEM.License:Counts","^GN",0)
讓我們將許可證使用計數請求的結果保存在 ^GN 數組中,您可以使用以下命令查看面板中保存的內容: result ^GN("%SYSTEM.License:Counts",0)

InterSystems IRIS 上的附加開發人員工具列

增強功能模組

第二個改進是在產生每個查詢行時執行專門編寫的模組的能力的實現,它極大地簡化和自動化了我的工作。 透過這種方式,我可以一次將新功能建置到報告中,例如用於對資料進行其他操作的活動連結。

範例 1:使用 App.Parameter 類

使用“表格導航器”建立參數

透過“選項”編輯參數

InterSystems IRIS 上的附加開發人員工具列

範例2:透過「歷史記錄」連結查看全局

InterSystems IRIS 上的附加開發人員工具列

受文章 [9] 的啟發,為了可視化資料庫的成長,創建了一個頁面,顯示從當天起使用「擴展」記錄從 iris.log 檔案 (cconsole.log) 創建的資料庫大小的每月圖表。

例如,在 InterSystems IRIS 中也建立了一個事件圖,它也是從協定檔案產生的:

InterSystems IRIS 上的附加開發人員工具列

材料連結:

[1] Kasha 中的日誌子系統
[2] 速食粥 - 使用 jqGrid 在 Caché 中進行 CRUD
[3] Caché DBMS 的替代 SQL 管理器
[4] 使用 Caché DBMS 產生和發送電子郵件的範例
[5] 緩存+jQuery。 快速啟動
[6] 應用程式部署
[7] UDL 支持
[8] 在 Caché 管理入口網站中查看全域變量
[9] 有緩存的普羅米修斯
[10] Caché DBMS 中的本地化

感謝這些文章和其他文章的作者幫助我創建了這個工具。

PS 該計畫正在開發中,許多想法尚未實施。 在不久的將來我計劃要做:

1. 框架上的應用程式模板 uikit
2. 代碼格式自動記錄 多克西根 整合到 CStudio 中

來源: www.habr.com

添加評論