| |
1.SHD0用途 | |
在SAP的報表類程式,可以設定VARIANT,降低user的key資料的loading;但是交易類的程式就沒有這個功能,不過因為交易時為了怕user誤改資料或是日期導致有問題,所以sap就出了transaction variant這支程式 SHD0分成standard/transaction/screen variant這三個tag;主要是transaction/screen variant這二個 | |
2. standard variants | |
standard variants會分二個tag,一個是針對哪個variant group下的USER生效或是只要run這個TCODE就生效(即standard variants) 這個動作相對於transaction/screen variant不是必要的;因為有時會另綁一個tcode給這個transaction variant然后權限再由那個新tcode控制 | |
若不論是誰只要執行這個tcode就用這個transaction variant,就需要設定在standard variants下的standard variants,並且要按activate | |
3.transaction variant | |
若在variant group 有給名字的話,系統一樣會預設給transaction variant 一個名字。一個tcode可以給很多個transaction variant,而一個transaction variant 也可以有多個scrren variant 這個畫面另有一個功能是在指定的tcode下從transaction vairant的角度出發查出有哪些screen variant與其對應 先給名字后(1),再去新增(2),就可以開始設定,后面的範例會有step by step貼圖 | |
4.screen variant | |
在前一step的transaction variant的設定步驟中,會設定到screen variant 這個畫面的目地是在指定的tcode下從screen variant 的角度出發,去查出有哪些transaction variant與其對應 所以承3/4二點,transaction/screen variant對sap而言都是個別的物件,因此若要刪除是要各自刪除,而不是刪掉transaction variant系統就會自動刪除screen variant的 | |
5.刪除transaction 及screen variant | |
如先前所述transaction 及screen variant都各是一個物件,以及他們有對應關係;所以刪除前需先將對應關係拿掉后,才可以各自刪除,執行方式如左圖所示(記得要按步驟3的存檔) | |
刪完transaction 及screen variant的link關係后,這時才可以刪除transaction variant | |
刪完transaction variant后,就再刪除screen variant | |
不管刪transaction variant或是screen variant系統最后都會告訴你刪除成功了 | |
6.範例 | |
6.1 隱藏va02 menu bar上的delete功能 | |
這個部份亦可以用權限管控的功能做掉,即用pfcg | |
這個範例將不會用到variant group,所以畫面從transaction variant開始 先給定transaction variant 名字后,再到上方的按下create | |
此時系統就會跳到你指定的tcode下做操作設定,此例是用va02 | |
找一張單子讓系統帶出資料來,此時就會開始設定畫面 Copy seetings是指要將本畫面上資料帶到等會的設定畫面上去,而don't display screen是指這個screen不要出現在后面的設定選項中,若這個不是你想設定的地方則按下綠勾往下走 | |
按下綠勾后,會如同操作va02般往下執行,一樣按下enter后,就又會出現設定屬性的畫面 | |
因為本例是要將menu bar上的delete deactivate掉,所以在這個屬性設定上,我們需要check copy seetings,然后按下menu funcation去將delete deactivate掉 | |
若相關屬性的設定完成后,就不需要按綠勾往下設定;而是按下exit & save | |
此時系統就會跳到真正的設定畫面,而這個畫面上的資料,就是你上面幾個step中copy settings而來的,若沒有特定要改或設定的就按下存檔 | |
系統就會問你是要放到哪個自行開發的pkg中,本例因為不產生CR,所以我就指到到local即可 | |
存檔后,會自動存transaction/screen variant,也就是說這個畫面會將transaction variant及screen variant串在一齊 | |
可以檢查一下transaction/screen variant是否和前幾step設定的是否相同,並可以按f8做測試執行 | |
6.2隱藏vf01的billing date | |
因為SAP的操作上有很多日期欄位,為了怕user不小心誤觸,所以將billing date 隱藏掉 | |
這個例子從建立variant group開始;基本上這個step非必要的 | |
因為有建variant group系統會預設給定transaction variant 的名字 按下create | |
因為這個例子是一進入vf01的畫面,就要隱藏billing date,所以一開始就要check settings,並save & exit | |
相關屬性設定的再次確認 | |
存檔后再回到shd0主畫面,記得要去assign user及set proposal,這樣才會對這些指定的user生效 | |
可以用se93或是用如右的方式,綁一個新tcode給這個transaction variant | |
要選transaction with vairant | |
若有多個transaction variant可以指定要用哪個;存檔后就可以使用新tocde了 | |
6.3 mm01產業別下拉選單鎖定某值 | |
因為SAP是支援跨國及不同產業的軟體,所以在建物料主檔時,可以依產業特性做一些調整,但若集團中不會有其他的物料型態或是為了怕user誤選,就可利用此功能將其下拉選單值給鎖定某值;本例是鎖定M機械工程 本例將不建standard variant下的任何資料 | |
進入shd0后,輸入相關參數后,按下建立 | |
此時就會進入mm01的畫面,再按一次enter后,系統就會進入屬性設定畫面 因為一開始的屬性設定就是我們要設定的,所以要勾copy settings,並將要鎖定的值勾成with content及output only 建議short text要取一個自己易懂的名字,而且最好加入screen no 設定完成后按下save & exit | |
此時就會來到transaction variant 和 screen variant link的畫面,也就是說若前述sterp中只要有勾copy settings的畫面都會統整到這個step來 建議將transaction variant設一個易懂的名字 | |
存檔后會跑出要綁CR的畫面,請依需求設定;因為本例將不傳cr,所以是放local | |
存檔完成后,按回到上一頁,去測試執行看看是否設定無誤,若沒有問題就大功告成了 | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
我的網誌清單
20130411
BASIS-21 SHD0
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言