WinForm/C# 报表平台

wangbaochen · 2021年06月02日 · 291 次阅读

报表平台

为了满足日益增加的需求,在不改变现有报表的基础上进行升级。

报表创建工具

报表定义

增加以下功能:

是否手动选列

勾选之后用户可以在方案管理界面中手动选择所需要获取的列。
此属性需要配合报表配置信息和数据源一起使用。
配置信息中需要配置查询字段,数据源中需要将列字段替换为关键字 {ColumnString}

是否分页、默认每页行数

现在平面报表中增加分页功能,获取大量数据时,分次获取,减少等待时间。
是否分页勾选之后,默认每页行数必须填写

平面报表展示模式

在平面报表行双击可以将整行展示在一个 Group 中,方便多列时查看,第一次双击初始化比较慢。

  • 行:默认选择,以行的形式显示
  • 浮动表格:双击当前行,在当前行附近展示浮动窗口。
  • 内嵌表格:双击当前行,在当前行下展示嵌入的窗口。
  • 无行内嵌表格:双击当前行,隐藏当前行,在当前行位置显示嵌入的窗口。

是否显示自由报表

根据用户需求展示设计的界面,方便用户查看。

是否显示电子表格

为了满足用户数据分析需求,添加一个基础的 EXCEL 电子表格,方便用户自己分析数据。
由于电子表格控件比较多,加载会慢。

是否显示仪表盘

为了满足用户数据展示需求,添加仪表盘报表,方便用户查看数据。

报表数据源

为了配合报表功能,现添加如下关键字:

  • {ColumnString} :列信息,勾选手动选列时使用,还需配合列配置信息使用。
  • {FilterString} :分页时使用,过滤或排序时使用此关键字。
  • {GroupString} :,分组关键字,手动选列时使用,还需配合列配置信息使用,转译为 group by xxx,xxx
  • {SortString} :排序关键字,手动选列时使用,还需配合列配置信息使用,转译为 order by xxx,xxx
  • {PaginationString} :分页时使用,转义为 offset pageIndex row fetch next pageSize row only

报表配置信息

在列配置信息中添加一下字段来满足报表需求:

  • 查询字段:配合列信息关键字使用,根据用户选择列拼接到 SQL 语句中。
  • 分组字段:配合分组关键字使用,根据用户选择列拼接到 SQL 语句中。
  • 排序字段:配合排序关键字使用,根据用户选择列拼接到 SQL 语句中。
  • 列过滤模式:根据配置的不同在平面报表列过滤时,显示不同的配置。
    • Excel:
    • List:
    • CheckedList:
    • Date:
    • DateSmart:
    • DateAlt:
  • 是否必取列:勾选之后,此列在用户手动选列时,不可选择,此列必取。

报表

方案管理

根据需求添加选择报表和选择列 Group.

  • 选择报表:展示报表设计中选择的报表类型,用户根据自身需求勾选需要实例化的报表。防止报表过多加载过慢。
  • 列选择:用户可以根据自身需要勾选获取的列,以及设置列顺序。

数据库直连

现在报表支持数据库直连,设置方式和模块设置方式相同。

两处都需要勾选

暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册