ClearQuest 二次開發總結

2021-05-22 02:09:38 字數 2092 閱讀 9532

[ibm rational clearquest]

[cq]

經過了這麼長時間cq的二次開發,也來點總結吧  :)

1、字段命名、考量

[便於form設計中拖動,便於hook中**書寫,避免不必要的問題,比如hook中定義的變數名不能和資料庫表欄位名相同]

比如cq欄位命名全部用f_資訊分類_欄位名,通過這種方式在設計form時可快速找到要拖到form上的字段;hook變數全部以h_開頭這樣也可避免不必要的問題。

2、盡量在form初始化之前已經設定好各個欄位的訪問控制,盡量避免出現諸如a form開啟後,a1 字段選擇值1則a2為必填字段,a1欄位選擇值為2則a2為唯讀字段。這種情況下之後通過在validation中去控制,這樣使用者介面很不友好。

我們期待cq在新版本中能夠提供控制的途徑

3、比如在測試資料庫中建立很多的資料夾、公共查詢,可通過bk_tool匯出備份,日後再匯入產品庫

注意目前cq中通過bk_tool匯出的公共資料夾會丟失掉資料夾許可權資訊。

4、hook中經常只能將state、action硬編碼,所以定義之前一定要慎重再慎重,便於以後流程中再加入state、action,保證在命名上不會出現詞不達意,降低debug的複雜度

我們期望能看到cq在新的版本中能夠給state、action賦予多層次的含義,比如對於最終使用客戶來說的顯示層、對於開發者來說的控制層可以有不同的表達方式,但是在cq的資料層中都會特指某個state、action

5、在cq客戶端出現任何錯誤都會彈出錯誤提示框,但是在cqweb中出現錯誤基本只能靠猜,所以關鍵流程跳轉、使用其它外部模組/元件處加入log記錄,便於問題定位,提高解決bug的效率,記錄log**可參看hook**示例

6、    user資訊擴充套件問題

由於user記錄型別處於保護狀態,如果專案中有特殊需要需要加入使用者的一些附加資訊,可新加入乙個無狀態的記錄型別r,refer到user,然後再加乙個反refer,可達到通過user的記錄查詢其在r中對應的資訊,如果預期擴充套件不多,也可以考慮將附加資訊全部放入miscinfo,通過特定字元分隔,需要裝入時再自行解析

7、    使用7.0.1的level6特性控制公共查詢的訪問許可權

對schem必須公升級到level6

8、建立組的策略。

由於多次公升級產品資料庫而且還必須在所有使用者下線在進行公升級,深受其苦。強烈建議如果有n個操作,就定義n個基本組,每個操作都有對應的操作組,日後某個角色使用者需要或者不需要該操作許可權,只需要簡單的從使用者管理中將其角色組移入或者移出該操作組公升級即可,盡量避免去公升級產品庫。

如果再次基於cq平台二次開發的話,我將會定義三種不同用途的角色:

用途1:按操作劃分組a

用途2:按角色劃分組b

用途3:按部門劃分組c

a類分組內之內移入b類分組,通過使用者管理即可設定功能操作許可權;c類分組主要用來實現 security context。

9、以下字段無效值問題

在開發已經進行了較長時間,某日進行了多處修改,在測試工作中提交記錄時突然提示以上資訊,這個真讓人**,尤其欄位叫多時,比較難找問題所在,這時建議用最笨的辦法,再加乙個tab頁,將所有欄位都拖入到該tab頁面一次,然後再次進行提交操作,那個欄位為紅說明那個欄位的值有問題。

10、websphere外掛程式頻繁停掉

曾經有一段時間遇到這個問題,經過多次查詢,發現我們開啟了伺服器的遠端連線功能,在遠端連線退出的時候沒有正常退出,經常導致連線已經佔滿不能正常登上去,所以設定了會話的自動斷開時間,將這個設定關閉之後馬上正常。

11、使用bkt_tool匯入匯出查詢檔案夾

bkt_tool -e -dbset cqs -us "admin" -password "admin" -db "cqte" -director "f:/tool/20071206/exp"

bkt_tool -i -dbset cqs -us "admin" -password "admin" -db "cqhb" -director "f:/tool/20071206/exp"

截止到7.0.1版本為止bkt_tool工具匯出的資料夾均會丟失level6的資料夾許可權資訊,7.0.1.1還沒有試過是否解決這個問題。

原帖:http://blog.chinaunix.net/u1/54706/showart_491111.html

postek二次開發 POSTEK二次開發介面

例項簡介 例項截圖 核心 using system using system.collections.generic using system.componentmodel using system.data using system.drawing using system.text using ...

mcms二次開發 YzmCMS二次開發手冊

摘要 yzmcms是採用mvc設計模式開發,基於模組和操作的方式進行訪問,採用單一入口模式進行專案部署和訪問,無論訪問任何乙個模組或者功能,只有一.yzmcms是採用mvc設計模式開發,基於模組和操作的方式進行訪問,採用單一入口模式進行專案部署和訪問,無論訪問任何乙個模組或者功能,只有乙個統一的入口...

mcms二次開發 YzmCMS二次開發手冊

yzmcms是採用mvc設計模式開發,基於模組和操作的方式進行訪問,採用單一入口模式進行專案部署和訪問,無論訪問任何乙個模組或者功能,只有乙個統一的入口。一 基本目錄結構.根目錄 cache 快取目錄 必須可寫入 common 全站公共目錄 必須可寫入 uploads 預設上傳目錄 必須可寫入 yz...