我想知道我可以动态修改现有的 Crystal Report (使用 C# 和 Crystal Reports 2008),以便它可以使用相同的布局报告根本不同的数据(来自同一数据库)。原因是我们正在构建一个允许用户指定的应用程序:
- 一个过滤器,以便只显示他们感兴趣的数据(即 where 子句)。
- [例如,仅显示纽约市的建筑物]
- 指定显示哪些表
- [例如,显示建筑物和楼层,但不显示房间]
- 指定显示哪些字段
- [例如,显示建筑物编号、编号、名称、地址和楼层号]
- 更改部分的分组方式
- [例如,按建筑用途、建造年份等分组]
- 更改图表中使用的字段
- [例如,按建筑物用途划分的面积、按建筑物用途划分的占用率、按建筑物 ID 划分的面积]
由于 UI 的灵活性,用户可以尝试报告许多不同类型的“问题”,我不想为每个可能的组合创建报告。有关我正在尝试完成的示例,请参见下图。左侧的报告描绘了按区域分组的建筑物。右侧的报告描绘了按地点分组的建筑物。
报告比较 http://img119.imageshack.us/img119/9052/performancereportcomparbt7.png
编辑:
我将尝试按照 Philippe Grondier 的建议使用报告参数来修改报告。我通过压制团体成功地做到了这一点。当一个组被抑制时,组会向上滑动以填充空白区域,以便所有内容都排成一行而没有空白。但是,对于单个文本对象,情况并非如此。当一个文本对象被抑制时,该字段的输出是一个空白区域。我想做的是抑制一个文本对象,这样整行都被抑制了,这将导致它下面的所有条目“碰撞”一行。我怎样才能做到这一点?