之前的專案 有些DataTable欄位寫入excel cell需要明確轉型,比如數字要轉Decimal ,但如果遇到DBNULL可能就要做一堆判斷或是寫擴充方法處理。
DevExpress有一個方法叫SetValue 例如
worksheet.Rows["5"][i + 1].SetValue(array[i]);
這個就會自動轉成應有的型別,可以省很多工~
如果靠左就是選擇Near第一次看到這整個傻眼XDD
這個需求是在一個群組內,一個欄位不顯示重複的名稱,通常是處理類似分類品項,如下表動物清單
每個品種會對一個動物(類別)名稱
| 動物 | 品種 |
|---|---|
| 貓 | 波斯貓 |
| 貓 | 孟加拉貓 |
| 貓 | 伯曼貓 |
| 貓 | 布偶貓 |
| 狗 | 巴哥犬 |
| 狗 | 吉娃娃 |
| 狗 | 馬爾濟斯 |
| 狗 | 博美犬 |
以下把[動物]欄位的重複名稱去除,讓整個Report重複的資料只顯示一次。
DetailCel.ProcessDuplicatesMode=ProcessDuplicatesMode.SuppressAndShrink;
DetailCel.ProcessDuplicatesTarget = ProcessDuplicatesTarget.Value;
如果用detailCell.ProcessDuplicatesMode = ProcessDuplicatesMode.Merge; 會變成在每一頁都顯示一次
設定後的結果
| 動物 | 品種 |
|---|---|
| 貓 | 波斯貓 |
| 孟加拉貓 | |
| 伯曼貓 | |
| 布偶貓 | |
| 狗 | 巴哥犬 |
| 吉娃娃 | |
| 馬爾濟斯 | |
| 博美犬 |
參考網址資料: https://documentation.devexpress.com/XtraReports/DevExpress.XtraReports.UI.ProcessDuplicatesTarget.enum https://www.devexpress.com/Support/Center/Question/Details/T117746/how-to-use-rowspan-property-to-create-table
Copyright © John Coding 技術筆記 | Powered by Blogger
Design by Anders Noren | Blogger Theme by NewBloggerThemes.com