順景動態
以前瞻視覺2020-04-25 1015
在erp系統中,從原則上是禁止設計超過兩個模塊的數據報表,最好是將報表的范圍限制在單個模塊下。如此的話,無論從性能還是從數據的準確性上都會有所保障。但是,如果用戶確實有需要實現比較復雜的報表,在這種情況下,該如何處理呢?我們應該注意什么呢?接下來由臺灣erp公司為大家進行簡單地介紹吧。
1.使用固化視圖來改善數據庫的性能。
復雜報表所導致的不利影響,首當其沖的是報表查詢時速度會很慢,性能很低。為此在涉及到復雜報表時,開發人員可以考慮采用固化視圖來改善數據庫的性能。如在Oracle數據庫中,固化視圖又叫做物化視圖。通過固化視圖,可以預先計算并保存報表連接或者聚集等耗時比較多的操作結果。簡單的說,就將某個報表的查詢結果存儲在一張單獨的表中。如此的話,在執行查詢時,就可以避免使用這些耗時的操作,同時減少磁盤的沖突,從而以最短的時間得到用戶想要的結果。一般來說,固化視圖對于復雜的報表來說,能夠提供三方面的作用。如可以提高查詢的性能。如固化視圖對于應用來說是透明的,增加和刪除物化視圖不會影響應用程序中SQL語句的正確性和有效性。但當基表發生變化時,物化視圖也會同時更新。不過需要注意的是,物化視圖也會帶來一些負面影響。如物化視圖的數據會保存在硬盤中,為此就會占用額外的存儲空間等。總之,在設計比較復雜的報表時,開發人員可以與數據庫工程師商量,如果可以的話,需要盡量采用固化視圖。
2.復雜的報表當涉及到多表時,最好采用模塊化的設計。
如某視圖,其涉及到的基表有近20張。那么在設計視圖時,要避免將其放在一個SQL語句中。而應該借鑒應用程序的模塊化設計,將其設計成不同層次的視圖,然后再進行連接查詢。如上面這個案例,至少可以將其分為四層。最基層是基本數據表,第二層是零件出庫信息、當月采購信息等數據,第三層是根據第二層的數據進行計算分析;第三層視圖再將這些視圖進行連接。這么操作的話,方便后續的維護與查詢。同時也可以提高查詢的速度。如在第二層視圖設計中,可以對基礎表的數據進行過濾。此時由于基礎數據少,那么后續的報表查詢速度也會加快。為此對于比較復雜的報表設計,要考慮分層設計的思路,以提高報表的查詢性能與靈活性。溝通工具
以上便是在erp系統中設計復雜報表的注意事項,希望能夠對大家有所八周年過戶。其實比較繁瑣的報表視圖,原則上仍是少弄為妙。由于其在功能或數據的準確性上都很難掌控的。假如真的要樹立繁瑣視圖,那么在規劃與開發時,參謀需要聽取數據庫工程師的意見,思考嵌入數據的查詢功能,并采納辦法提高數據的準確性。
上一篇: 想要ERP有效的運行,可以這么做
下一篇: 淺談五金行業erp的行業特點