如何让Crystal Reports显示多实体间的全部重复数据
解决Crystal Reports显示重复员工编号的问题
先查报表的重复记录抑制开关
- 打开报表设计界面,右键点空白处选报表专家,进记录标签页,看看有没有勾选择不重复的记录——要是勾了就取消,这样报表才会把查询返回的所有记录都显示出来。
- 再检查细节节的设置:右键点细节节的灰色栏,选格式化节,弹出来的窗口里看看有没有开抑制重复值,要是针对员工编号字段开了这个,直接取消勾选就行。
确认数据源有没有自动去重
- 看看Crystal Reports的数据源连接属性,有些驱动默认会自动去重。点数据库菜单里的设置数据源位置,检查连接属性,确保没开自动去重的选项。
- 先在数据库端跑一遍你的查询,确认确实返回了所有带重复编号的记录,然后在Crystal Reports里用数据库专家刷新下数据源,保证报表拿到的是完整的数据集。
调整分组/排序(如果用了的话)
- 要是报表设了分组,别只按员工编号分组——不然Crystal Reports会把同编号的记录合并到一组里。得把实体编号/名称也加进分组字段里,这样不同实体下的同编号员工就会分成不同组,所有记录都能显示。
- 排序也得注意,排序字段要加上能区分不同记录的字段(比如实体ID+员工编号),别因为排序把重复记录给藏了。
内容的提问来源于stack exchange,提问作者Miguel
相关产品推荐
相关产品推荐

