国产精品视频免费一区二区三区_2023国产精品久久久精品双_99精品视频免费观看视频_99影视tv_精品亚洲欧美一区_精品久久久久久久久久久久久久久 _成人爱爱电影网址_欧美在线3区_天堂√在线中文官网在线_亚州欧美在线_亚洲成av人片在线观看无码_亚洲色图25p

logo

行業新聞

三招設計復雜ERP報表!

點擊數:5077來源:發布時間:2018-03-12

報表無疑是ERP系統中用到的最頻繁的單據之一。比如每天采購要打印采購明細帳;倉庫每天要導出收貨或者出貨明細;銷售每天要打印訂單明細等。故報表的設計在ERP系統開發中占據大半江山。不過筆者在實際工作中也發現,有些開發人員在設計ERP報表時,太過于復雜。

有一次,一家企業向我提出了如下需求:他們希望能夠出一份報表,報表的內容包括四個部分。一是成品零件的用量、零件的最小采購量等信息;二是當月零件的采購量信息(詳細的采購訂單等資料);三是當月零件的出庫信息(詳細的出貨記錄);四是零件的安全庫存信息。然后,根據這些信息計算出當月需要補下的滿足安全庫存的數量。從這個需求中可以看出,其主要設計到產品基本資料、采購、倉庫等三個模塊的內容。這么復雜的報表,從技術上來說,實現的難度并不是很大。但是從實用性角度考慮,或者從準確性來看,又會有什么結果呢?

、報表越復雜,準確性越難以把握

一般來說,報表越復雜,其準確性余越難以把握。其實拋開ERP系統,從統計學的角度,我們也可以得出這個結論。如下圖所示,現在有三個抽屜。每個抽屜中都有0-9十個數字。如果現在從每個抽屜中隨意抽出兩個數字,最后組成一個三位數。那么最后有幾種結構呢?這是一個排列組合的問題。

再回過頭來看一下這個表單的內容?,F在這個表單有三個模塊的數據構成。就好像這三個抽屜。當然其抽屜中的數據遠比10個數字要負載的多。我們設想一下,從單個模塊來看。可能企業允許的誤差率是5%。即100條記錄中,允許有5條記錄與實際有偏差?,F在三部分信息共同組成的一張報表,而且最后需要根據三部分信息的內容計算出一個值,那么這個出現錯誤的記錄會有多少呢?這又是一個排列組合的問題。如假設每部分信息中,都有5條件有偏差,那么最后理論上的錯誤記錄是125條。顯然這個錯誤率比較大。同時也可以看出,當涉及到的基礎表數量越多,涉及到的模塊越多,其最后結果的準確性就越難以保障。而當數據的準確性不高時,其實用性也就相應的降低。

二、報表關聯越多,其性能也會直線下降

報表越復雜,其涉及到的后臺數據庫基礎表也就越多。雖然多表之間的關聯查詢是允許的,但是關聯的關鍵字越多,其查詢的效率也就越低。特別是在關聯條件中,有時候采用的并不是關鍵字之間的關聯。如有可能日期(字符數據類型的關聯)之間的關聯,此時查詢的效率會更低。再加上比較復雜的Where邏輯判斷語句,復雜報表的查詢時間會很長。如筆者測試過,按照上面這個用戶的需求,設計出的報表其查詢的時間需要近三分鐘,而且是已經優化過的查詢。另外,這個報表的查詢由于涉及到眾多的基礎表,數據庫基本上需要訪問硬盤上的數據文件,而不能夠使用緩存。這就有可能會導致比較嚴重的硬盤I/O沖突。從而影響到其它數據的查詢效率。

故從數據庫與應用軟件的整體性能考慮,也不建議采用比較復雜的報表視圖。畢竟性能降低、查詢的時間比較長時,報表的實用性也在降低。

三、設計復雜報表的注意事項

為此,從原則上是禁止設計超過兩個模塊的數據報表,最好是將報表的范圍限制在單個模塊下。如此的話,無論從性能還是從數據的準確性上都會有所保障。但是,如果用戶確實有需要實現比較復雜的報表,在這種情況下,該如何處理呢?為此筆者根據自己的項目經驗,提出了以下幾個建議。

使用固化視圖來改善數據庫的性能

復雜報表所導致的不利影響,其首當其沖的是報表查詢時速度會很慢,性能很低。為此在涉及到復雜報表時,開發人員可以考慮采用固化視圖來改善數據庫的性能。如在Oracle數據庫中,固化視圖又叫做物化視圖。通固化視圖,可以用于預先計算并保存表連接或者聚集等耗時比較多的操作結果。簡單的說,就將某個報表的查詢結果存儲在一張單獨的表中。如此的話,在執行查詢時,就可以避免使用這些耗時的操作,同時減少磁盤的I/O沖突,從而以最短的時間得到用戶想要的結果。一般來說,固化視圖對于復雜的報表來說,能夠提供三方面的作用。如可以提高查詢的性能。如固化視圖對于應用來說是透明的,增加和刪除物化視圖不會影響應用程序中SQL語句的正確性和有效性。如當基表發生變化時,物化視圖也會同時更新。不過需要注意的是,物化視圖也會帶來一些負面影響。如物化視圖的數據會保存在硬盤中,為此就會占用額外的存儲空間等。總之,在設計比較復雜的報表時,開發人員可以與數據庫工程師商量,能夠采用固化視圖。如果可以的話,需要盡量采用固化視圖。

復雜的報表當設計到多表時,最好采用模塊化的設計

如某視圖,其涉及到的基表有近20張。那么在設計視圖時,要避免將其放在一個SQL語句中。而應該借鑒應用程序的模塊化設計,將其設計成不同層次的視圖,然后再進行連接查詢。如上面這個案例,至少可以將其分為四層。最基層是基本數據表,第二層是零件出庫信息、當月采購信息等數據,第三層是根據第二層的數據進行計算分析;第三層視圖再將這些視圖進行連接。這么操作的話,方便后續的維護與查詢。同時也可以提高查詢的速度。為什么這么說呢?如在第二層視圖設計中,可以對基礎表的數據進行過濾。此時由于基礎數據少,那么后續的報表查詢速度也會加快。為此對于比較復雜報表的設計,要考慮分層設計的思路。以提高報表的查詢性能與靈活性。

要考慮數據核對的需要

比較復雜的報表,其可能會涉及到多個不同的部門。如上面個報表,其涉及到倉庫、采購、銷售、開發等多個部門。而且最后的計算結果需要根據這些部門的信息得出。為此為了提高數據的準確性,就需要多個部分進行積極的配合。那么該如何來做到這一點呢?筆者認為,可以將這些視圖分模塊化設計。如將涉及到不同的部門的信息先設計成不同的報表。在某個特定的時刻,如月末,先讓各個部門的人員核對相關的數據。核對完成沒有錯誤之后,再對相關的數據進行運算。而不是一開始就將所有數據在一張報表上顯示。這會導致各個部門數據核對的麻煩,即各個部門不利于核對與自己相關的數據。其實這一點跟上面提到的視圖分層化設計類似。在ERP上,報表的內容也要分不同的模塊進行體現。這有利于用戶對數據進行核對與確認。然后再將它們整合起來。這種各個擊破的方式,就有利于提高數據的準確性。

可見,對于比較復雜的報表視圖,原則上還是少見為妙。因為其在性能或者數據的準確性上都很難控制。如果真的要建立復雜視圖的時候,那么在設計與開發時,顧問需要聽取數據庫工程師的意見,考慮如何提高數據的查詢性能,并采取措施提高數據的準確性。


首頁 |方案|支持|案例|關于
福利在线国产| 日本午夜在线| 不卡av在线网| 日韩国产伦理| 久久9热精品视频| 亚洲欧美日韩在线综合| 日韩免费一级| 亚洲自拍小视频免费观看| 欧美在线视频一区二区| 国产av无码专区亚洲精品| 国产v综合v亚洲欧| 波多野结衣家庭教师视频| 1区2区3区精品视频| 欧美成熟毛茸茸| 精品日韩一区二区三区免费视频| 9i看片成人免费高清| 日韩一区二区在线看| 久久亚洲私人国产精品va媚药| 友田真希在线| 国产99精品视频| 日本a级黄色| 亚洲成**性毛茸茸| 四虎5151久久欧美毛片| 精品亚洲欧美日韩| 国产精品美女久久久久aⅴ国产馆| 欧美aaa在线观看| 欧美激情在线| 久久99精品久久久久久久久久 | 少妇精品久久久一区二区三区| 欧美人成网站| 色又黄又爽网站www久久| 久久久久久久网站| 免费看欧美黑人毛片| 午夜影院在线播放| 精品在线播放免费| 亚洲午夜久久久影院| 波多野结衣精品久久| 大片免费在线看视频| 一区二区三区精品视频在线观看| 亚洲色图制服诱惑| 日本中文字幕成人| 亚欧激情乱码久久久久久久久| 久久成人av| 亚洲精品你懂的| 成人精品在线视频| 偷拍自拍在线| 日韩专区欧美专区| 久久久精品一区二区| 九一精品在线观看| 久久影视三级福利片| 亚洲国产成人av网| 亚洲高清视频一区| 国产一区二区主播在线| 亚洲欧洲成人av每日更新| 国产精品爽黄69天堂a| 快射视频在线观看| 国产精品一区二区三区网站| 久久精品一区中文字幕| 伊人久久大香线蕉av不卡| 久久精品magnetxturnbtih| 麻豆高清免费国产一区| 一区二区不卡在线视频 午夜欧美不卡'| 18视频免费网址在线观看| 日韩高清人体午夜| 久久久免费毛片| 久久66热这里只有精品| av电影在线观看完整版一区二区| 黄色免费看网站| 日韩一区二区免费高清| 国产一区二区三区黄网站| 国产在线精品一区二区三区》| 成人精品鲁一区一区二区| 免费在线观看一级毛片| 色播久久人人爽人人爽人人片视av| 欧美精品一二| 国产乱子伦精品视频| 欧美日韩日本国产| 免费一级欧美在线大片| 色噜噜狠狠一区二区三区| 夜夜揉揉日日人人青青一国产精品| 深夜av在线| 96成人在线视频| 国产三级久久久| 成人bbav| 亚洲aa在线观看| 欧美激情一区二区三区蜜桃视频 | 蜜桃视频一区二区| 国产福利a级| 日韩精品视频在线观看网址| 欧美精品一二| 国产综合免费视频| 日韩精品免费综合视频在线播放| 91精品综合| 亚洲综合婷婷久久| 亚洲欧洲国产伦综合| 亚洲精品乱码| 永久免费在线| 国产91精品不卡视频| av激情亚洲男人天堂| 神马午夜伦理不卡| 国产日韩欧美精品| 精品久久久久人成 | 精品国产区一区二区三区在线观看| 亚洲欧洲午夜| 中出在线观看| 日韩av快播网址| 久久久久久久av麻豆果冻| 中文在线资源| 亚洲一区在线免费| 91麻豆精品国产| 欧美日本一区| 免费观看v片在线观看| 欧美一区二区.| 国产丝袜在线精品| 国产精品成人3p一区二区三区| dy888午夜| 日韩av在线直播| 久久久夜夜夜| 日韩三级电影视频| 日本不卡二区高清三区| 91精品国产91久久久久久最新毛片 | 久久久伦理片| 国产又大又黄又粗又爽| 美女视频久久黄| av中文字幕在线不卡| 亚洲青青久久| www.日本xxxx| 2018国产精品视频| 一区二区三区中文字幕电影| 视频一区在线观看| 亚洲kkk444kkk在线观看| 国产主播精品在线| 欧美视频在线观看免费| 欧美视频二区| 欧美性猛交xxx乱大交3蜜桃| 国产日韩一区欧美| 日韩欧美中文字幕制服| 捆绑紧缚一区二区三区视频| gogo久久| 成人在线观看你懂的| 久久成年人视频| 中文字幕不卡的av| 欧洲美女日日| 久蕉依人在线视频| 日本三级中国三级99人妇网站| 精品精品国产高清一毛片一天堂| 麻豆精品在线视频| 日韩欧美三区| 婷婷综合影院| 精品人伦一区二区三区| 欧美精品一区二| 99久久er热在这里只有精品15| xxxx日韩| 亚洲а∨精品天堂在线| 青娱乐一区二区| 久久精品一偷一偷国产| 一区二区三区中文在线| 国产精品多人| 成人教育av| 99re在线视频播放| 亚洲综合大片69999| 精品国产伦一区二区三区观看体验 | 国产不卡视频在线播放| 丁香一区二区| 国产在线黄色| 无码人妻精品一区二区蜜桃百度| 欧美激情精品久久久久久黑人 | 国产一区二区三区直播精品电影 | 欧美禁忌电影| 成人在线高清视频| 美女扒开大腿让男人桶| 国产精品成人国产乱一区| 69久久99精品久久久久婷婷| 成人性生交大片免费看视频在线 | 婷婷五月在线视频| 国产69精品久久久久久久| 国产精品免费在线免费| 日韩欧美国产三级| 中文字幕欧美国产| 久久精品九九| 欧美一级色片| 91九色国产在线播放| 国产日本视频| 国产三级中文字幕| 国产女精品视频网站免费| 日韩一二三四区| 亚洲精品中文在线| 裸体素人女欧美日韩| 精品综合久久88少妇激情| 污污视频在线| 五月天丁香婷| www.九色.com| 国产女主播一区二区| 久久成人亚洲精品| 91.成人天堂一区| 亚洲欧洲在线观看av| 韩国三级中文字幕hd久久精品| 欧美大人香蕉在线| 免费观看性欧美大片无片| 国产精品久久麻豆|