Excel匯入不定行行式填報報表根據標題匹配是指是根據列標題(縱向擴充套件,橫向擴充套件則是行標題)自動匹配,標題不相同,則顯示空白,即必須保持標題一致,無關於位置,列的位置可以互換。
下面就通過報表製作設計工具FineReport的例子來進行介紹
工具/原料
報表設計教程工具FineReport V8.0
方法/步驟
模板準備
開啟模板%FR_HOME%\WebReport\WEB-INF\reportlets\doc\SpecialSubject \ExcelImport\ExcelImport_1.cpt,修改如下圖,刪除左方和下方的空白行,將產品名稱和類別列名稱修改為產品和類別ID,與excel不一樣,同時更換類別和供應商列的位置,再為每個單元格新增控制元件,這裡新增文字控制元件:
報表填報屬性修改
修改報表填報屬性中列和資料庫中列的對應,這裡只需要修改類別ID對應的值,修改為map(C2, "ds2", 2, 1)。
配置檔案準備
開啟%FR_HOME%\WebReport\WEB-INF\resources下面的customconfig.xml檔案,如果沒有該檔案,則複製config.xml至該資料夾中,並重命名為customconfig.xml,如下圖:
修改配置檔案
開啟該檔案,在如下位置處新增一行
效果檢視
點選填報預覽,在web端單擊工具欄上的匯入Excel按鈕,選擇excelimport.xls,可看到如下圖效果:
不根據標題匹配
FineReport Excel匯入不定行預設首先要根據標題匹配,如果標題能夠匹配2個或2個以上,則無需再執行根據位置匹配,但是如果在匯入資料的時候希望根據位置匹配,但是標題又能匹配2個或2個以上,此時,如果使用預設設定,將無法根據位置匹配。
那麼,我們可以通過修改配置檔案,關閉使用標題匹配這個功能,即直接使用位置匹配。
配置檔案準備
開啟%FR_HOME%\WebReport\WEB-INF\resources下面的customconfig.xml檔案,如果沒有該檔案,則複製config.xml至該資料夾中,並重命名為customconfig.xml,如下圖:
修改配置檔案
開啟該檔案,在如下位置處新增一行
設定完成之後,重啟伺服器,此時再匯入Excel,就會根據位置匹配。