本帖最后由 KearneyKang 于 2020-11-17 16:54 编辑
在ActiveReportsJS报表设计器中使用预定义的数据源
ActiveReportsJS报表设计器允许绑定到各种数据源并提供非常灵活的配置。 检查[数据绑定](../../ ReportAuthorGuide / Databinding)页面以获取有关此主题的更多信息。 但是,可能需要为新创建的报告预先设置数据绑定,以简化非技术用户的报告设计体验。 ActiveReportsJS设计器API允许定义默认情况下可供最终用户使用的数据源和数据集。 用户界面如下所示:
使用此功能,请首先使用独立设计器应用程序构建和导出所需的数据源。 这是一个快速操作步骤,显示如何为开发和导出数据源 ["Northwind" REST API end point](https://demodata.grapecity.com/s ... Restful%20NorthWind).
-运行独立的设计器应用程序
-在属性表格的数据标签中添加新的数据源
1. 设置数据源名称.
2. 设定终点.
3. 点击 "Export" 按钮.
4. 在"导出模板"对话框中选择内容并复制.
在应用程序的代码中,定义一个变量并将其值设置为复制的内容,例如:
javascript
- const dataSource = {
- Name: "Northwind",
- ConnectionProperties: {
- DataProvider: "JSON",
- ConnectString: "endpoint=https://demodata.grapecity.com/northwind/api/v1",
- },
- };
复制代码 然后,使用独立设计器应用程序构建和导出所需的数据集。 这是一个快速指南,指导如何开发和导出Northwind数据源的 ```/Categories```API的数据集。
-为上一步添加的数据源添加数据集
1. 设置数据集名称.
2. 设置API路径.
3. JSon路径设置为 ```$.```, 访问 [JSON Path文档](https://goessner.net/articles/JsonPath/)有关此主题的更多信息。
4. 点击"Validate" 按钮获取字段列表.
5. 点击"Export" 按钮.
6. 选中 "Export template" 对话框中的内容并且复制它.
7. 关闭"Export template" 对话框并且保存它.
在应用程序的代码中,定义一个变量并将其值设置为复制的内容,例如:
javascript
- const categoriesDataSet = {
- Name: "Categories",
- Query: {
- DataSourceName: "Northwind",
- CommandText: "uri=/Categories;jpath=$.[*]",
- },
- Fields: [
- { Name: "categoryId", DataField: "categoryId" },
- { Name: "categoryName", DataField: "categoryName" },
- { Name: "description", DataField: "description" },
- ],
- };
复制代码
```
最后, 使用设计器实例的 ```setDataSourceTemplates``` 方法来设置可用的数据源最后,使用setDataSourceTemplates方法来设置可用的数据源和数据集,例如:
javascript
- const designer = new ReportDesigner("#designer-host");
- designer.setDataSourceTemplates([
- {
- id: "Northwind",
- title: "Northwind",
- template: dataSource,
- canEdit: true,
- shouldEdit: true,
- datasets: [
- {
- id: "Categories",
- title: "Categories",
- template: categoriesDataSet,
- canEdit: false
- }
- ],
- },
- ]);
复制代码 canEdit 数据源和数据集模板的属性指示是否允许最终用户修改它们,, shouldEdit属性指示在用户将相应实体添加到报表后是否应立即打开数据源/数据集对话框。
|