Servigistics InService 自訂 > 自訂 Servigistics InService 使用者介面 > 自訂 UI 版面配置與屬性範本
  
自訂 UI 版面配置與屬性範本
大部分的 Servigistics InService UI 已經細分為較小的 HTML 範本,組合在一起可構成整體頁面。這些範本讓自訂者能夠以自己的自訂複製並重新定義 OOTB UI 頁面。
識別範本檔案
第一步是識別需要更新的範本檔案。查看頁面的 HTML 即可完成識別。HTML 中內嵌的註解包含用於產生頁面的各種範本的名稱。由範本產生的每個區段都有 "begin" 與 "end" 註解,格式如下:
<!--begin data-ptc-template-source: <template name> -->
<!--end data-ptc-template-source: <template name> -->
兩個註解之間所有內容是由指定範本所產生。透過執行下列步驟可識別需要自訂的範本:
1. 導覽至上述 Servigistics InService 頁面,然後開啟瀏覽器的「開發者工具」視窗 (通常透過按下 F12)。
2. 使用「開發者工具」的「選取元素」功能,按一下您感興趣的 UI 元素。如此將反白「開發者工具」視窗中的 HTML DOM 元素。
3. 從該處尋找註解以 "begin data-ptc-template-source" 開頭的最近的封閉元素。此註解中包含定義元素所在的範本的名稱。例如:
<!-- begin data-ptc-template-source: templates/partsListItem.tmpl.html -->
更新範本檔案
識別檔案之後,可以依如下方式建立自訂範本:
1. <WT_HOME>/codebase.war/delivery/templates 目錄下尋找上述範本,並且將它複製到 <WT_HOME>/codebase.war/delivery/custom/ 下的相同目錄結構中
2. 視需要對自訂範本 html 進行變更。
3. 在 Windchill shell 中執行以下指令:java com.ptc.sc.util.TemplateMapGenerator <WT_HOME>/codebase.war/delivery/templateMap.js <WT_HOME>/codebase.war/delivery/custom
* 
JAVA_HOME 必須設定為 Java 可執行檔所在的位置。
4. 從 Windchill Shell 中執行下列指令來重新建構用戶端加工品:<ANT_HOME>/bin/ant -f <WT_HOME>/codebase.war/delivery/minimize.xml
* 
<WT_HOME>/codebase.war/delivery/templateMap.js 檔案是用來為已自訂的檔案新增重新導向對應。例如,'return {“templates/search/advancedSearch.tmpl.html”: “custom/”};' 會告知用戶端尋找 codebase.war/delivery/custom/templates/search/advancedSearch.tmpl.html,而不是尋找 codebase.war/delivery/templates/search/advancedSearch.tmpl.html
這代表在本例中 "custom/" 只是前綴,用來表示包含自訂檔案與資料夾的基本資料夾。沒有回退機制,因此所有對應必須都有相應的自訂範本檔案。由於範本檔案為 html 檔案,因此可以使用任何 html 或 AngularJS 語法,並且由用戶端顯示。
新增自訂屬性
如需有關使用「屬性」公用程式的詳細資訊,請參閱屬性
自訂屬性範例
請嘗試從 NotesResource.js 更新「建立泛用註記屬性」,並嘗試傳送屬性值 null
1. 建立「實數」類型的屬性。
2. 建立屬性值為 null 的註記。
例如,值為 nulltestAttribute
{
"breadcrumbPath": "Generic-Note", //$translate.instant('GENERIC_NOTE')
                        "testAttribute": null
}