潤幹報表多源回填 快速實現多庫多表提交資料

2021-08-25 19:05:15 字數 789 閱讀 1109

使用潤幹報表開發基於web的資料填報模組時,總會遇到資料的提交方案。提交方案的複雜程度,取決於輸入頁面的複雜程度。最簡單的乙個頁面一條記錄,對應資料庫的一張物理表;複雜點的多條記錄,但是依舊對應資料庫的一張物理表;再複雜些的,對應資料庫多張物理表;最複雜的,估計要數多庫提交了。

資料提交方案不管多複雜,最基本的要求是保持資料庫的事務一致性。事務一致性對單庫說起來挺容易的,但是對多個資料庫的情況就很難實現了。

其次,是對資料型別的處理,網頁上提交上來的資料是無法識別錄入的資料型別的,因此需要在後台對資料型別進行轉換。

第三,是更新欄位和頁面上輸入格的對映關係,這一點算是最麻煩的了,簡單的輸入表,一頁一條記錄或者一行一條記錄都好說,對於多源分片的填報表,就不容易了。尤其是一條記錄對應的格仔分散在不同行不同擴充套件區域的時候,這個對映關係需要仔細的考慮。當然還有更加複雜的,比如更新字段不是對應頁面上的某個輸入格,而是對應某個或者某幾個輸入格資料組成的表示式,那樣還需要在後台把表示式的值先算出來,然後才能用於提交更新。

另一種情況是資料庫的字段對應的為資料庫的表示式,此時要考慮不是簡單地拼出更新的sql,而是要把資料庫的表示式拼進更新sql中。

上述這些功能如果都用程式硬寫,都能實現,但是如果要考慮通用性,而不是乙個模組寫一段程式的話,難度還是比較大的。

潤幹的填報表給出了乙個近乎完美的資料提交方案:」多源回填」方案,可以輕鬆地處理自由庫表關聯,處理多庫、多表提交,保證資料庫的事務一致性。

實現步驟

設計乙個填報表

定義更新屬性

發布 效果演示

更新屬性定義介面:

引自: 潤幹報表

多源分片報表

目錄 多源就是一張報表的資料 來自多個資料表,甚至是多個物理資料庫。這裡的 多個 常常不是兩個三個,而是七八個乃至十幾個,無法轉成單源 分片是指一張報表的縱向或橫向或雙向同時被分成了多個區域,往往每個區域來自不同的資料來源 這樣的報表即多源分片報表,如下圖 多源分片報表通常有比較複雜的橫表頭與縱表頭...

動態多源資料庫架構實現

備註想要完成動態資料來源,需要以下幾個步驟 建立乙個主資料庫和幾個動態資料庫,其中主資料庫裡只儲存路由表data source 內容是儲存其他資料庫的配置資訊 動態資料庫儲存其他所有的業務實現表,如 user等 增加乙個執行緒上下文的靜態類databasesourcecontextholder,實現...

多資料來源報表解析之簡單多源報表

多資料來源報表即一張報表中可以定義多個資料集,分別取出需要的資料庫表,所取的資料庫表甚至可以來自於不同的資料庫。本文通過幾個例子說明多個資料集資料如何相互關聯來實現多源報表。1.描述 多資料來源,就是在同一張報表當中,顯示的資料來自於多個不同的表或不同的庫。如下圖一張簡單的多資料來源報表,左側藍色部...