1. 概述
1.1 版本
報表伺服器版本 | 功能變更 |
---|---|
11.0.1 | 新增驅動管理功能 |
11.0.5 | 預設禁止透過驅動管理上傳驅動 支援透過 SystemConfig.driverUpload 參數控制是否允許上傳新驅動 |
11.0.24 | 新增驅動載入順序配置項 |
1.2 應用場景
在連結 FineReport 和資料庫時,可能會因為產品未內建對應版本的資料庫驅動而連結失敗。
1.3 功能簡介
使用者可使用「驅動管理」功能,上傳對應的驅動。「驅動管理」使用的是熱載入,上傳驅動後不需要重啟 FineReport 即可直接使用驅動 。
當遇到一些驅動導致的問題後,可以快速修改驅動載入方式進而能夠實現快速的連結。預設選優先載入當前上傳驅動,如下圖所示:
優先載入當前方式上傳驅動:先載入驅動管理的jar:WEB-INF/drivers/hive/**.jar,若無對應檔案則載入應用的jar:WEB-INF/lib/**.jar。
僅載入當前方式上傳驅動:僅載入驅動管理的jar:WEB-INF/drivers/hive/**.jar。
2. 開啟驅動上傳功能
由於大部分使用者對工程安全性要求很高,FineReport 預設禁止透過驅動管理上傳驅動。
上傳時會報錯:不允許上傳驅動jar包,可以修改SystemConfig.driverUpload配置值開啟該功能
因此使用驅動管理前,需要將帆軟應用配置庫的fine_conf_entity表中的參數 SystemConfig.driverUpload 設定為 true
具體操作步驟請參考下文
2.1 建立資料連結
管理者登入數據決策系統,點選「管理系統>系統管理>標準」。
若外接資料庫顯示「待配置」,則 FineDB 資料庫資訊可參見 FineDB 資料庫簡介。
若外接資料庫顯示「已配置」,點選即可查看外接finedb資料庫的資訊。
點選「管理系統>資料連結>資料連結管理」,建立一個資料連結,資料連結名稱為 FineDB,資料庫相關配置資訊可根據上文獲取。
注:資料連結名稱不可修改,否則下面的範本可能無法使用。
2.2 填報更新欄位
注:遠端連結步驟可參考:遠端設計 。
使用設計器遠端連結該工程,填報預覽該範本:finedb字段修改.cpt
1)如果填報頁面上存在欄位 SystemConfig.driverUpload,確認欄位值為 true,配置完成。
2)如果填報頁面資料為空,說明 SystemConfig.driverUpload 欄位不存在,需自行新增。點選「增加記錄」按鈕,新增一條記錄即可。
其中,ID 為SystemConfig.driverUpload,value 為 true,點選「提交」,如下圖所示:
2.3 重啟工程
填報提交成功後,重啟工程。重啟後再次登入數據決策系統,即可透過「驅動管理」上傳驅動。
3. 操作步驟
3.1 上傳資料庫驅動
1)管理者登入數據決策系統,點選「管理系統>資料連結管理>驅動管理」,如下圖所示:
2)點選「建立驅動」,輸入名稱方便之後與其他驅動區分。這裏我們要上傳 PostgreSQL 的驅動,可以命名為「postgresql驅動」,如下圖所示:
3)點選「上傳驅動」,將資料庫驅動上傳上去。如下圖所示:
注:資料庫驅動可以在對應資料庫的說明文檔下載,也可以讓資料庫管理者提供。
4)點選下拉按鈕,選擇一個剛剛上傳的驅動,點選「儲存」,如下圖所示:
注1:若有多個驅動jar包,不清楚選擇哪個驅動,可以諮詢對應的資料庫管理者。
注2:上傳的驅動位於 %FineReport%\webapps\webroot\WEB-INF\drivers 下。
3.2 使用上傳的資料庫驅動
1)在「資料連結管理」介面點選「建立資料連結」,建立一個 PostgreSQL 資料連結,如下圖所示:
2)驅動選擇「自訂」,在後方下拉選擇剛剛上傳的 postgresql驅動 ,並填入其他連結資訊,詳細請參見 Postgresql資料連結 。如下圖所示:
3)點選測試連結,可以看到資料庫可以成功連結,如下圖所示:
3.3 刪除驅動
若要刪除某個已存在的資料庫驅動,可進入驅動管理介面直接點選刪除按鈕,如下圖所示:
4. 歷史版本
11.0.1及之前版本,無驅動管理功能,使用者如需上傳驅動,可透過手動上傳的方法
將下載好的驅動包copy到%FR_HOME%\webapps\webroot\WEB-INF\lib路徑下,重啟報表伺服器後驅動生效。如下圖所示:
注:若重啟後驅動不生效,可能是由於在該目錄下存在該驅動的其他版本,需要手動刪除其他版本,以防衝突。