資訊

順景動态

以前瞻視(shì)覺
發現(xiàn)并布局未來(lái)
當前位置:首頁 > 資訊 > 常見問答(dá)

你(nǐ)知(zhī)道(dào)在erp系統中設計(jì)複雜(zá)報(bào)表的注意事(shì)項嗎?

2020-04-25   713

  在erp系統中,從(cóng)原則上(shàng)是禁止設計(jì)超過兩個模塊的數據報(bào)表,最好(hǎo)是将報(bào)表的範圍限制在單個模塊下(xià)。如此的話(huà),無論從(cóng)性能(néng)還是從(cóng)數據的準确性上(shàng)都會(huì)有所保障。但(dàn)是,如果用(yòng)戶确實有需要實現(xiàn)比較複雜(zá)的報(bào)表,在這(zhè)種情況下(xià),該如何處理(lǐ)呢(ne)?我們應該注意什(shén)麽呢(ne)?接下(xià)來(lái)由台灣erp公司爲大(dà)家進行簡單地介紹吧。


  1.使用(yòng)固化視(shì)圖來(lái)改善數據庫的性能(néng)。


  複雜(zá)報(bào)表所導緻的不利影響,首當其沖的是報(bào)表查詢時(shí)速度會(huì)很(hěn)慢,性能(néng)很(hěn)低(dī)。爲此在涉及到(dào)複雜(zá)報(bào)表時(shí),開(kāi)發人員可以考慮采用(yòng)固化視(shì)圖來(lái)改善數據庫的性能(néng)。如在Oracle數據庫中,固化視(shì)圖又叫做物化視(shì)圖。通過固化視(shì)圖,可以預先計(jì)算(suàn)并保存報(bào)表連接或者聚集等耗時(shí)比較多的操作(zuò)結果。簡單的說,就将某個報(bào)表的查詢結果存儲在一張單獨的表中。如此的話(huà),在執行查詢時(shí),就可以避免使用(yòng)這(zhè)些(xiē)耗時(shí)的操作(zuò),同時(shí)減少磁盤的沖突,從(cóng)而以最短的時(shí)間得到(dào)用(yòng)戶想要的結果。一般來(lái)說,固化視(shì)圖對(duì)于複雜(zá)的報(bào)表來(lái)說,能(néng)夠提供三方面的作(zuò)用(yòng)。如可以提高(gāo)查詢的性能(néng)。如固化視(shì)圖對(duì)于應用(yòng)來(lái)說是透明(míng)的,增加和(hé)删除物化視(shì)圖不會(huì)影響應用(yòng)程序中SQL語句的正确性和(hé)有效性。但(dàn)當基表發生變化時(shí),物化視(shì)圖也(yě)會(huì)同時(shí)更新。不過需要注意的是,物化視(shì)圖也(yě)會(huì)帶來(lái)一些(xiē)負面影響。如物化視(shì)圖的數據會(huì)保存在硬盤中,爲此就會(huì)占用(yòng)額外(wài)的存儲空(kōng)間等。總之,在設計(jì)比較複雜(zá)的報(bào)表時(shí),開(kāi)發人員可以與數據庫工(gōng)程師商量,如果可以的話(huà),需要盡量采用(yòng)固化視(shì)圖。


timg (1).jpg


  2.複雜(zá)的報(bào)表當涉及到(dào)多表時(shí),最好(hǎo)采用(yòng)模塊化的設計(jì)。


  如某視(shì)圖,其涉及到(dào)的基表有近20張。那麽在設計(jì)視(shì)圖時(shí),要避免将其放(fàng)在一個SQL語句中。而應該借鑒應用(yòng)程序的模塊化設計(jì),将其設計(jì)成不同層次的視(shì)圖,然後再進行連接查詢。如上(shàng)面這(zhè)個案例,至少可以将其分爲四層。最基層是基本數據表,第二層是零件出庫信息、當月采購信息等數據,第三層是根據第二層的數據進行計(jì)算(suàn)分析;第三層視(shì)圖再将這(zhè)些(xiē)視(shì)圖進行連接。這(zhè)麽操作(zuò)的話(huà),方便後續的維護與查詢。同時(shí)也(yě)可以提高(gāo)查詢的速度。如在第二層視(shì)圖設計(jì)中,可以對(duì)基礎表的數據進行過濾。此時(shí)由于基礎數據少,那麽後續的報(bào)表查詢速度也(yě)會(huì)加快(kuài)。爲此對(duì)于比較複雜(zá)的報(bào)表設計(jì),要考慮分層設計(jì)的思路,以提高(gāo)報(bào)表的查詢性能(néng)與靈活性。溝通工(gōng)具


  以上(shàng)便是在erp系統中設計(jì)複雜(zá)報(bào)表的注意事(shì)項,希望能(néng)夠對(duì)大(dà)家有所八周年過戶。其實比較繁瑣的報(bào)表視(shì)圖,原則上(shàng)仍是少弄爲妙。由于其在功能(néng)或數據的準确性上(shàng)都很(hěn)難掌控的。假如真的要樹立繁瑣視(shì)圖,那麽在規劃與開(kāi)發時(shí),參謀需要聽取數據庫工(gōng)程師的意見,思考嵌入數據的查詢功能(néng),并采納辦法提高(gāo)數據的準确性。