在报告中,仅重复第一行之后的某些列

问题描述 投票:0回答:4

我的任务是在 Access 中复制 Filemaker 数据库中运行的特定报告。输出应如下所示:

姓名 日期 项目
乔 5/2/2012 口香糖
                      磁带
                      肥皂
安 5/1/2012 论文
鲍勃 5/1/2012 钢笔
                      纸

记录如下所示(这是一个连接“person”和“items”表的查询,它们具有一对多关系):

姓名 日期 项目
乔 5/2/2012 口香糖
乔 5/2/2012 磁带
乔 5/2/2012 肥皂
安 5/1/2012 论文
鲍勃 5/1/2012 钢笔
鲍勃 5/1/2012 论文

在报告中,我需要第一个项目始终显示在第一个完整的行中;如果有更多项目,则仅应在后续行中列出项目(NAME 和 DATE 值不应重复)。

我不太确定该对哪棵树吠叫:

  • 在 RDL 中,我可以有条件地逐行隐藏报表项...我可以在 Access 报表中执行此操作吗(在 Access 连续表单中,我认为不能这样做 - 可见设置同时应用于所有行,我想)
  • 我可以对一个组执行此操作,将第一个完整行放在组标题中,并将后续行放在“详细信息”部分中吗?如果是这样,我不确定如何获取标题中的第一项,以及如何抑制详细信息部分中的第一项
  • 还有其他想法吗?我需要考虑不同的记录源吗?

到目前为止,我唯一能做的就是对人员进行分组,在组标题中包含姓名和日期,然后将所有项目详细说明,但这并不完全是我被要求做的。

感谢期待“啊哈!”。

克里斯

ms-access reporting
4个回答
6
投票
  1. 按名称添加群组
  2. 所有字段放入详细信息中
  3. 隐藏所有字段上的重复项

将组放在名称上的目的是防止 Bob 的日期和项目被 Ann 的日期和项目隐藏。

顺便说一句,同样的技术适用于 Crystal 和 Jasper 报告。

布局视图 enter image description here

设计视图 enter image description here


2
投票
  1. 在报告中也是一样,您无法像在 RDL 中那样应用条件格式。
  2. 这似乎是自然的答案。它本质上是一个分组操作,因此按名称和日期进行分组,并将这两个放在标题中,然后将项目放在详细信息中。唯一的事情是,正如我认为您所注意到的,这些项目将相对于您所要求的内容偏移一行。
  3. 当然,您可以在查询中放入条件逻辑,但我认为这在这里不起作用,因为显示/隐藏逻辑取决于组查询。请参阅#2。

0
投票

在 jaspersoft iReport 4.6.0 中

  1. 选择“添加报告组”,然后按一个字段(例如名称)进行分组 您想展示一次。
  2. 您需要添加详细信息区域中的所有字段
  3. 更改您想要的“打印重复值”(复选框)的属性 显示一次。

0
投票

我需要这样做,但反过来,从只在第一行显示名称的数据库到在所有行中显示名称。你怎样才能逆转这个过程?

© www.soinside.com 2019 - 2024. All rights reserved.