DevExpress Reporting是.NET Framework下功能完善的報表平臺,它附帶了易于使用的Visual Studio報表設計器和豐富的報表控件集,包括數據透視表、圖表,因此您可以構建無與倫比、信息清晰的報表
界面組件DevExpress Reporting v23.1已經發布一段時間了,新版本增強了Web報表設計器的自定義功能、加載速度等,歡迎 下載最新版體驗~
DevExpress Reporting v23.1正式版下載(Q技術交流:909157416)
Reporting for Web
Web報表設計器 - 自定義報表控件和自定義表達式函數的后端注冊
現在在具有報表設計功能的Web應用程序中合并自定義報表控件和自定義表達式功能需要的步驟更少。
要在DevExpress?Web報表設計器中注冊自定義報表控件,只需在運行時將報表控件的實例傳遞給設計器的CustomControls集合。然后該組件將自動收集所需的元數據并將其傳輸到客戶端(報表控件將可用于文檔生成引擎,并將出現在Web report Designer的工具箱中)。
CSHTML
@{
var designerRender = Html.DevExpress().ReportDesigner("reportDesigner")
.Height("100%")
.CustomControls(typeof(MyControl))
.Bind("TestReport");
@designerRender.RenderHtml()
}
在應用程序啟動時調用CustomFunctions.Register)方法來注冊一個自定義表達式函數:
C#
var builder = WebApplication.CreateBuilder(args);
// ...
DevExpress.XtraReports.Expressions.CustomFunctions.Register(new MyCustomFunction());
// ...
app.Run();
使用靜態CriteriaOperator.RegisterCustomAggregate方法注冊自定義聚合:
C#
CriteriaOperator.RegisterCustomAggregate(new MyCustomAggregate());
這些方法調用收集函數元數據并將其傳遞給客戶機,該函數在表達式編輯器中可用。
Web報告查看器 - 簡化第一頁的加載
新版本優化了Web Document Viewer(文檔查看器)的頁面加載:
- 報表文檔生成過程現在在服務器上自動啟動(不需要來自客戶機的startBuild請求),結果報表的第一頁幾乎立即就出現在屏幕上了。
- 在單頁模式下,文檔查看器預加載前15頁。在構建文檔的其余部分時,用戶可以瀏覽這些頁面,使用PreloadedPagesOffset?設置來指定預加載頁面的數量。
- 在多頁模式下,文檔查看器現在以較低的分辨率立即顯示頁面,用戶可以快速導航到特定的報表頁面(無需等待加載完整的解析頁面)。
- 新版本將節流閥的值減少到150ms,改變節流值可以減少滾動報表時的延遲,根據需要使用MultipageScrollingThrottle設置來指定throttle值。
Web報告查看器 - 簽署PDF文件
PDF導出選項面板中的簽名下拉編輯器顯示在后端收集的簽名中。
DevExpress?Report Viewers(報表查看器)現在可以對導出的PDF文檔進行數字簽名,實現IPdfSignatureOptionsProviderAsync接口,將簽名傳遞到Web報表查看器中。
C#
public interface IPdfSignatureOptionsProviderAsync {
Task<Dictionary<string, PdfSignatureOptions>> GetAvailableOptionsAsync();
}
我們添加了一個新的CustomizeExportDocumentOnFinish方法,允許您在后端簽署導出的PDF文檔。
Web報表查看器 - 可訪問性(Section 508, WAI-ARIA)
新版本為報表查看器中的所有UI元素分配了WAI-ARIA屬性,并改進了UI元素之間的鍵盤導航。報表查看器現在成功地通過了Accessibility Insights和Chrome Lighthouse測試工具。
Web報表查看器 - 異步文檔搜索
v23.1版本在Web文檔查看器中實現了異步搜索,新查詢顯示當前查找到的號碼查詢結果(實時)。如果用戶不想等待整個文檔被掃描,他們可以隨時停止搜索。
默認情況下啟用新搜索,禁用UseAsyncSearch屬性來啟用前面的操作。
Web報表查看器 - 獲取API(打印和數據導出)
Web Document Viewer(文檔查看器)現在使用Fetch API向服務器發送和管理網絡請求,這允許您使用統一的方法將請求頭從客戶機應用程序傳遞到后端,從而提高了與身份驗證庫的兼容性。
JAVASCRIPT
import { fetchSetup } from '@devexpress/analytics-core/analytics-utils';
fetchSetup.fetchSettings = { headers: { Authorization : 'Bearer' + token } };