1. 程式人生 > >輕鬆搞定SAP的檢視(VIEW)變更

輕鬆搞定SAP的檢視(VIEW)變更

更多內容關注公眾號:SAP Technical

事情的結果儘管重要,但是做事情的過程更加重要,因為結果好了我們會更加快樂,但過程使我們的生命充實。生命本身其實是沒有任何意義的,只是你自己賦予你的生命一種你希望實現的意義,因此享受生命的過程就是一種意義所在。

寫在前面

今天繼續教你如何輕鬆搞定看似很複雜的問題。看完本文之後,我相信你不會再有以前的困惑了。如果你是開發顧問,你肯定會遇到過這樣的疑惑,當你在SAP裡建立了一個數據庫表,然後在建立一個對應的維護檢視,當然視圖裡可以做很多事件和功能,建立完成之後就可以直接在維護檢視中維護業務資料。

但是由於需求的變化,客戶要求在這個表中增加一個欄位,也就是原有的表結構發生了變化,並且還要對應的維護檢視也要新增上新增的欄位,我們一般的解決方案是什麼,更改表結構,刪除維護檢視,然後重新生成維護檢視,如果你這個檢視沒有任何事件和另外新增的功能,好像工作量不是很大,但是一般的需求都會在視圖裡新增很多事件和功能,有些還很複雜,這樣就會裡面的功能全部刪除掉,你就要重新編寫所有功能,未免有些浪費時間了。

今天我來說一下手動調整更改表結構後的檢視,怎麼做才是最有效的。

建立測試的表

為了把這個方法講清楚,我們先在SAP裡建立一個測試用的表,我這裡已經建立完成,如下圖所示:

為了讀者看的更簡單,更清晰,我這裡建立的表只包含一個欄位。

建立維護檢視

當然建立完表之後,我們要給這個表建立一個對應的維護檢視,建立完成就是下圖的樣子,如下圖所示:

因為我今天要說的重點不是在檢視中使用事件和功能等內容,所以建立完檢視後即可結束。

檢視檢視並維護資料

當檢視建立完成後,我們就可以使用事務SM30,來檢視檢視,並且可以在視圖裡維護資料了,如下圖所示:

然後,我們看一下資料庫表中的資料,如下圖所示:

可以看到資料維護成功,如果此時需求來了,要求更改表結構,來看一下我的做法。

更改表結構

此檢視維護了一段時間後,客戶有新需求,要求更改表結構,看看我應該怎麼做,現在我在上面步驟中建立的表中,新增一個新的欄位,如下圖所示:

可以看到表中已經有這個欄位了,然後我來看一下剛剛在檢視中維護的資料是否還在。

新加欄位和原有資料都可以看到,如果現在想在以後的資料中,把新加的欄位也維護上我們業務中需要的資料。我們先進入SM30檢視一下,如下圖所示:

並沒有新加的欄位展示,我這裡不需要刪除掉原有的檢視。

檢視變更

現在我要調整表維護生成器,以便新增此新加欄位,並且表維護生成器中的其他功能保持不變。所以,我直接進入screen printer裡,手動來新增這個欄位,如下圖所示:

如果這樣就結束了,未免也有些太簡單了,也體現不出我寫這篇文章的價值了。手動維護好之後,你會發現在維護視圖裡新欄位確實出現了,但是你卻維護不上資料,這就是重點。(此處如果有人不相信,可以親自試一下,因為我是經過試驗過的,才會這樣說-。-)

重點內容

下面這一步才是所有步驟中的重點,當完成上面所有步驟之後,我們要來修改幾個小地方,才能讓這個功能得以實現。

Flow logic修改

Flow logic要新增我新加的欄位,格式COPY原有欄位即可,如下圖所示:

General attr.修改

我這裡把新加欄位的Dict. field屬性勾選上,當然勾選的時候會有提示,確定即可。如下圖所示:

重要提示:做完之後記得啟用!

再次維護檢視

在完成以上所有步驟後,我們返回到檢視中,再次進行維護,看一下這次是否可以把資料維護上了,如下圖所示:

資料庫裡呢,也是應該有資料了。如下圖:

這樣就不用在刪除檢視,重新寫事件或者功能。有重新做一遍的時間,不如去衝一杯咖啡。歡迎轉發此文章給你的朋友們。感謝支援。

這是一個講究結果的時代,將就高效率的時代。時代的進步如同一卷波瀾壯闊的史詩,數波大潮的席捲,不僅推動了新事物的誕生,也在無意中吞沒著某些古老的文明。