在檢視報表時,經常同一張報表,需要根據檢視者的省份,對需要顯示的元素進行控制,以保證資料的許可權控制和安全管理。
在wyn enterprise報表軟體當中,每個視覺化元素都有豐富的配置屬性。其中,隱藏屬性可以用來控制報表元素的可見性。
其屬性值可以通過表示式來進行控制。
實現基於使用者上下文資訊的報表元素可見性控制,核心步驟如下:
1.通過表示式獲取當前使用者上下文資訊;
使用usercontext.getvalue函式來獲取當前登入使用者的上下文資訊。具體使用方法參考:
2.將元素的隱藏屬性設定為對應的表示式。
本文以控制圖表的可見性和**列的可見性為例進行講解。
根據使用者角色控制可見性,如果是銷售總監則可以檢視到類別利潤佔比餅圖和**中的利潤列,如果不是,則看不見。
1.控制圖表的可見性
1.1設計報表的核心元素
1.2 設定圓環圖的隱藏屬性
選中圓環圖,在顯示選項中設定【隱藏屬性】表示式:
=iif(instr(join(usercontext.getvalues("role"),","),"銷售總監")>0,false,true)
表示式釋義:如果當前使用者的角色中有「銷售總監」這個角色,則返回假,即不隱藏;否則為真,即隱藏。
2.通過表示式中表中的中列可見性
2.1 在**中選中需要隱藏的列頭,並設定其【隱藏】屬性。
2.2 設定隱藏表示式,1.2中的步驟
示例效果:
銷售總監報表:可以看到類別的利潤佔比圓環圖和**中的利潤列。
銷售經理:只能看到自己所負責地區的省份資料,看不到其他不屬於他許可權內可見的元素。
dubbo上下文資訊
注意 rpccontext是乙個threadlocal的臨時狀態記錄器,當接收到rpc請求或發起rpc請求時,rpccontext的狀態都會變化。比如 a呼叫b,b再呼叫c。在b呼叫c之前,a呼叫了b,那麼rpccontext中記錄的是a呼叫b的資訊 在b呼叫c之後,rpccontext記錄的是b呼...
利用上下文資訊推薦
上下文包括使用者訪問推薦系統的時間 地點 心情等。一 時間上下文資訊 1.時間效應簡介 使用者興趣是變化的。因為使用者自身原因發生的變化。如小時候 長大了 工作時間增加等。若要準確使用者現在的興趣,應更關注使用者最近的行為。這樣只針對漸變的使用者興趣,對突變的使用者興趣很難起作用 物品有生命週期。如...
使用者空間和核心空間 程序上下文與中斷上下文
最近在學習linux核心,對於使用者空間和核心空間 程序上下文與中斷上下文有點混淆,在此好好整理一番。一 cpu特權級別 cpu的所有指令中,有些指令是非常危險的,如果錯用就會導致系統崩潰。所以,cpu將指令分為特權指令和非特權指令,不同的指令有不同的操作許可權。於是便有了cpu的4個特權級別,ri...