跳轉到

程式資訊

  • 程式 IDSECRET1
  • 所屬子系統:A.系統資料
  • 狀態:stable

使用者權限設定(唯讀檢視版面)

功能簡介

Secret1.xaml使用者權限設定(程式代號 A-010ProgramClass = SECRET)的唯讀檢視版面,並非另一支獨立程式。它與可編輯版面 Secret.xaml 共用同一個 ViewModel(SecretViewModel)、同一組資料來源(主檔 Twork_sys_vw_secret1、明細 Twork_sys_vw_prgsct1)與完全相同的欄位配置。

兩個版面的差異只在「能不能改」:Secret1.xaml 把下方的程式權限明細格線設成唯讀——關閉了新增列(CanAddNewRecords=False)、刪除列(CanUserDeleteRows=False)與 Ctrl+DeleteTsCtrlDeleteEnabled=False),右側「其他功能」次明細整段設為 IsReadOnly,連權限勾選方塊也只有在系統進入編輯態(AdeViewModel.StatusNormal)時才會啟用。因此它適合僅供查閱權限、不進行編輯的情境。

為什麼有兩個檔名(Secret/Secret1)

Secret.xaml 是可編輯的標準版面,主選單 A.系統資料 → 使用者權限設定實際載入的就是它(見 App.xamlSecretViewModel 對應 Secret 的 DataTemplate)。Secret1.xaml 是同程式的唯讀版面備品,命名沿用後端 Twork_sys_vw_secret1 View 與舊版 grid 命名(Tag="dgprgsct1"x:Name="prgsct1ViewModeltsDataGrid")。完整的操作步驟、欄位說明與欄位連動(使用者代號帶姓名、其他功能清單、批次設定、列印等)請見母表單 使用者權限設定

前置需求

  • 權限:A.系統資料 → A-010 使用者權限設定 的瀏覽權限(本版面僅供查閱,不需修改權)。
  • 基礎資料:與母表單相同,明細的程式識別、語言版本、使用者姓名等資料的完整度取決於人事檔、程式選單與語言設定的維護狀況。詳見使用者權限設定 → 前置需求

操作步驟

  1. 開啟本檢視版面後,瀏覽到要查閱的使用者
  2. 上方主檔顯示該使用者的使用者代號/使用者姓名/連結人事表/語言版本/電腦名稱/使用者備註
  3. 下方明細網格列出該使用者對每一支程式的權限(18 項勾選權限與欄位控管欄)。在本版面這些欄位僅供檢視,不能勾選或修改。
  4. 點選某一列明細,右側「其他功能」清單會帶出該程式的 36 個其他功能與其允許狀態(同樣唯讀)。

本版面不提供新增/修改/刪除

程式權限明細在此版面為唯讀——無法新增列、刪除列或用 Ctrl+Delete。要維護權限請改用可編輯的使用者權限設定母表單。

欄位說明

欄位配置與母表單完全相同。以下僅列主檔欄位,明細的 18 項勾選權限與欄位控管欄請見使用者權限設定 → 欄位說明

主檔(使用者)

欄位 說明
使用者代號 主鍵;以員工搜尋(EmployeeSearch)顯示,會帶出使用者姓名
使用者姓名 使用者顯示名稱
連結人事表 是/否,是否與人事資料連動
語言版本 該使用者登入後的介面語言(來源 LanguageEnums
電腦名稱 限定登入電腦時的電腦名稱
使用者備註 自由文字備註

明細(每支程式的權限,唯讀)

欄位 說明
序號/類別名稱/說明事項 程式識別(唯讀)
可否瀏覽/明細/新增/複製/修改/刪除/查歷史/列印/流程/審核/自動審核 11 項基本權限勾選(檢視用)
可否 xls/pivot/mail/看單價/附件 5 項延伸權限勾選(檢視用)
其他權限/備註/其他說明/我的最愛 1~6 補充文字與捷徑欄
修改方式/除外欄位/隱藏欄位/特殊修改方式/特殊修改欄位 欄位層級控管設定

右側「其他功能」次明細

選取明細某一列後,右側網格列出該程式的編號/說明事項/是否允許。此網格整段設為 IsReadOnly,僅供檢視。

欄位連動與附加功能

本版面與母表單共用 SecretViewModel,因此程式邏輯上的欄位連動與母表單一致,差別只在唯讀版面把編輯入口關閉:

  • 輸入使用者代號 → 自動帶姓名:邏輯仍存在(主檔欄位綁定相同),但本版面以檢視為主。
  • 切換明細列 → 載入該程式的 36 個其他功能:點選明細列時,系統才替該列建立其他功能清單(SetTempOtherFunction,延後計算以省記憶體),右側網格隨選取列即時切換——此行為在唯讀版面同樣生效。
  • 權限勾選方塊只在編輯態啟用:勾選方塊的 IsEnabledCheckBoxIsEnabled(=AdeViewModel.Status != Normal);唯讀版面進不了編輯態,故方塊維持鎖住。
  • 儲存時的處理(取密碼/修改方式轉大寫/回寫其他功能)、批次設定彈窗、列印:這些都屬於母表單的編輯/附加功能,本唯讀版面不觸發。完整說明請見使用者權限設定 → 欄位連動與附加功能

常見問題

明細的權限勾選方塊點不動、也不能新增列?

本版面是唯讀檢視版面,刻意關閉了新增列、刪除列、Ctrl+Delete 與勾選編輯。要維護權限請改用使用者權限設定母表單。

右側「其他功能」清單沒東西?

其他功能是選取明細列後才載入的。請先在左側明細網格點一列程式,右側才會帶出該程式的 36 個其他功能。

這支跟「使用者權限設定」是不是兩支不同程式?

不是。Secret1.xamlSecret.xaml 是同一支程式(A-010)的兩個版面,共用 SecretViewModelSecret1 是唯讀檢視版面,Secret 才是主選單實際載入的可編輯版面。

相關功能


需補截圖清單

以下截圖待功能 runtime 驗收後補拍(放 docs/A-System/images/):

  1. secret1-step1.png — 唯讀檢視版面全貌(上方使用者主檔 + 下方唯讀程式權限明細 + 右側唯讀「其他功能」清單)
  2. secret1-step2.png — 明細網格唯讀狀態(權限勾選方塊鎖住、無新增/刪除列)