程式資訊
- 程式 ID:
SECRET1 - 所屬子系統:A.系統資料
- 狀態:stable
使用者權限設定(唯讀檢視版面)¶
功能簡介¶
Secret1.xaml 是使用者權限設定(程式代號 A-010、ProgramClass = SECRET)的唯讀檢視版面,並非另一支獨立程式。它與可編輯版面 Secret.xaml 共用同一個 ViewModel(SecretViewModel)、同一組資料來源(主檔 Twork_sys_vw_secret1、明細 Twork_sys_vw_prgsct1)與完全相同的欄位配置。
兩個版面的差異只在「能不能改」:Secret1.xaml 把下方的程式權限明細格線設成唯讀——關閉了新增列(CanAddNewRecords=False)、刪除列(CanUserDeleteRows=False)與 Ctrl+Delete(TsCtrlDeleteEnabled=False),右側「其他功能」次明細整段設為 IsReadOnly,連權限勾選方塊也只有在系統進入編輯態(AdeViewModel.Status 非 Normal)時才會啟用。因此它適合僅供查閱權限、不進行編輯的情境。
為什麼有兩個檔名(Secret/Secret1)
Secret.xaml 是可編輯的標準版面,主選單 A.系統資料 → 使用者權限設定實際載入的就是它(見 App.xaml 中 SecretViewModel 對應 Secret 的 DataTemplate)。Secret1.xaml 是同程式的唯讀版面備品,命名沿用後端 Twork_sys_vw_secret1 View 與舊版 grid 命名(Tag="dgprgsct1"、x:Name="prgsct1ViewModeltsDataGrid")。完整的操作步驟、欄位說明與欄位連動(使用者代號帶姓名、其他功能清單、批次設定、列印等)請見母表單 使用者權限設定。
前置需求¶
- 權限:A.系統資料 →
A-010 使用者權限設定的瀏覽權限(本版面僅供查閱,不需修改權)。 - 基礎資料:與母表單相同,明細的程式識別、語言版本、使用者姓名等資料的完整度取決於人事檔、程式選單與語言設定的維護狀況。詳見使用者權限設定 → 前置需求。
操作步驟¶
- 開啟本檢視版面後,瀏覽到要查閱的使用者。
- 上方主檔顯示該使用者的使用者代號/使用者姓名/連結人事表/語言版本/電腦名稱/使用者備註。
- 下方明細網格列出該使用者對每一支程式的權限(18 項勾選權限與欄位控管欄)。在本版面這些欄位僅供檢視,不能勾選或修改。
- 點選某一列明細,右側「其他功能」清單會帶出該程式的 36 個其他功能與其允許狀態(同樣唯讀)。
本版面不提供新增/修改/刪除
程式權限明細在此版面為唯讀——無法新增列、刪除列或用 Ctrl+Delete。要維護權限請改用可編輯的使用者權限設定母表單。
欄位說明¶
欄位配置與母表單完全相同。以下僅列主檔欄位,明細的 18 項勾選權限與欄位控管欄請見使用者權限設定 → 欄位說明。
主檔(使用者)¶
| 欄位 | 說明 |
|---|---|
| 使用者代號 | 主鍵;以員工搜尋(EmployeeSearch)顯示,會帶出使用者姓名 |
| 使用者姓名 | 使用者顯示名稱 |
| 連結人事表 | 是/否,是否與人事資料連動 |
| 語言版本 | 該使用者登入後的介面語言(來源 LanguageEnums) |
| 電腦名稱 | 限定登入電腦時的電腦名稱 |
| 使用者備註 | 自由文字備註 |
明細(每支程式的權限,唯讀)¶
| 欄位 | 說明 |
|---|---|
| 序號/類別名稱/說明事項 | 程式識別(唯讀) |
| 可否瀏覽/明細/新增/複製/修改/刪除/查歷史/列印/流程/審核/自動審核 | 11 項基本權限勾選(檢視用) |
| 可否 xls/pivot/mail/看單價/附件 | 5 項延伸權限勾選(檢視用) |
| 其他權限/備註/其他說明/我的最愛 1~6 | 補充文字與捷徑欄 |
| 修改方式/除外欄位/隱藏欄位/特殊修改方式/特殊修改欄位 | 欄位層級控管設定 |
右側「其他功能」次明細¶
選取明細某一列後,右側網格列出該程式的編號/說明事項/是否允許。此網格整段設為 IsReadOnly,僅供檢視。
欄位連動與附加功能¶
本版面與母表單共用 SecretViewModel,因此程式邏輯上的欄位連動與母表單一致,差別只在唯讀版面把編輯入口關閉:
- 輸入使用者代號 → 自動帶姓名:邏輯仍存在(主檔欄位綁定相同),但本版面以檢視為主。
- 切換明細列 → 載入該程式的 36 個其他功能:點選明細列時,系統才替該列建立其他功能清單(
SetTempOtherFunction,延後計算以省記憶體),右側網格隨選取列即時切換——此行為在唯讀版面同樣生效。 - 權限勾選方塊只在編輯態啟用:勾選方塊的
IsEnabled綁CheckBoxIsEnabled(=AdeViewModel.Status != Normal);唯讀版面進不了編輯態,故方塊維持鎖住。 - 儲存時的處理(取密碼/修改方式轉大寫/回寫其他功能)、批次設定彈窗、列印:這些都屬於母表單的編輯/附加功能,本唯讀版面不觸發。完整說明請見使用者權限設定 → 欄位連動與附加功能。
常見問題¶
明細的權限勾選方塊點不動、也不能新增列?
本版面是唯讀檢視版面,刻意關閉了新增列、刪除列、Ctrl+Delete 與勾選編輯。要維護權限請改用使用者權限設定母表單。
右側「其他功能」清單沒東西?
其他功能是選取明細列後才載入的。請先在左側明細網格點一列程式,右側才會帶出該程式的 36 個其他功能。
這支跟「使用者權限設定」是不是兩支不同程式?
不是。Secret1.xaml 與 Secret.xaml 是同一支程式(A-010)的兩個版面,共用 SecretViewModel。Secret1 是唯讀檢視版面,Secret 才是主選單實際載入的可編輯版面。
相關功能¶
- 使用者權限設定(母表單,完整操作與欄位連動,A-010)
- 密碼權限表列印
- 權限設定
- 使用者操作手冊
- A. 系統設定模組首頁
需補截圖清單
以下截圖待功能 runtime 驗收後補拍(放 docs/A-System/images/):
secret1-step1.png— 唯讀檢視版面全貌(上方使用者主檔 + 下方唯讀程式權限明細 + 右側唯讀「其他功能」清單)secret1-step2.png— 明細網格唯讀狀態(權限勾選方塊鎖住、無新增/刪除列)