报告中的锚点
Stimulsoft是白俄罗斯一家报表控件厂商,该商家一直专注于报表控件的研发与创新,是报表控件行业的领导者。Stimulsoft 经过多年的努力,终于实现了更加简单的设计报表,数据驱动更快的应用程序,更加简便的应用新的技术,极大程度上的减少了开发人员的工作量,提高了工作的效率。
带有锚点的报告是指在报告中包含内容页面和指向其他页面的链接(称为锚点)的报告。请按照以下步骤设计带有锚点的报告。创建内容页
1. 运行设计器;
2. 连接数据:
2.1. 创建新连接;
2.2. 创建新数据源
3. 创建数据源之间的关系。如果不创建关系和/或不填写明细数据源的关系属性,那么对于主条目,将输出所有明细条目;
4. 更改页面上的列数。例如,将 Columns 属性设为 2,ColumnGaps 属性设为 1;
5. 在报告模板的一个页面上放置两个数据带
6. 编辑 DataBand1 和 DataBand2:
6.1. 按高度对齐;
6.2. 更改所需的属性值。例如,如果需要在任何情况下打印所有主条目,即使没有明细条目,也要将主-明细报告中主组件 DataBand1 的 PrintIfDetailEmpty 属性设置为 true。如果需要缩小该数据带,则将主-明细报告中作为明细组件的数据带 2 的 CanShrink 属性设置为 true;
6.3. 更改数据带的背景颜色;
6.4. 如果需要,启用数据带的边框;
7. 为数据带指定数据源,并分配主组件。在本例中,主组件是上层 DataBand1,因此在 DataSetup 窗口中,主组件向导选项卡上的下层 DataBand2 应显示 DataBand1 为主组件。使用数据源属性指明 DataBand 的数据源:
8. 填写 DataBand2 的 DataRelation 属性,即 Detail 组件:
9. 将带有表达式的文本组件放在数据带上。例如:在作为主组件的 DataBand1 上,我们放置了带有以下表达式的文本组件: {Categories.CategoryName},而在作为详细信息组件的 DataBand2 上,我们放置了两个带有表达式的文本组件: {Products.ProductName}和{GetAnchorPageNumber (sender.TagValue)} ;
10. 编辑 DataBands 的文本和文本组件:
10.1. 在 DataBand 中拖放文本组件;
10.2. 设置字体:大小、样式、颜色;
10.3. 按高度和宽度对齐文本组件;
10.4. 设置文本组件的背景颜色
10.5. 对齐组件中的文本
10.6. 更改所需的属性值。例如,如果希望对文本进行包装,请将 WordWrap 属性设置为 true;
10.7. 如有必要,为文本组件设置边框;
10.8. 设置边框颜色
10.9. 使用 {Products.ProductName} 表达式更改文本组件的超链接属性值。在这种情况下,将 Hyperlink 属性设置为 #{Products.ProductName} 值;
10.10. 用 {GetAnchorPageNumber(sender.TagValue)} 改变文本组件的 Hyperlink 和 Tag 属性的值。超链接属性应设置为 #{Products.ProductName},标签属性应设置为 {Products.ProductName}。
创建主清单
11. 在报告模板中创建第二页;
12. 在报告模板页面上放置两个数据带。
13. 编辑 DataBand3 和 DataBand4:
13.1. 按高度对齐 DataBand;
13.2. 更改所需的属性值。例如,如果希望在任何情况下都打印主记录,即使不存在明细条目,则将 DataBand3 的 Print if Detail Empty 属性设置为 true。如果需要缩小数据带,请将数据带 4 的 CanShrink 属性设置为 true,数据带 4 是主-明细报告中的明细组件;
13.3. 设置 DataBand 的背景颜色;
13.4. 如有必要,设置数据带的边框;
14. 指定数据带的数据源,并分配主组件。在本例中,主组件是上层 DataBand3,因此在 DataSetup 窗口中,主组件向导选项卡上的下层 DataBand4 应显示 DataBand3 为主组件。使用数据源属性指明 DataBand 的数据源:
15. 填写 DataBand4 的 DataRelation 属性,即 Detail 组件:
16. 将带有表达式的文本组件放在数据带上。例如:在作为主组件的 DataBand3 上,我们放置了带有以下表达式的文本组件: {Categories.CategoryName},而在作为详细信息组件的 DataBand4 上,我们放置了两个带有表达式的文本组件: {Products.ProductName}、{Products.QuantityPerUnit} 和 {Products.UnitPrice};
17. 编辑数据带的文本和文本组件:
17.1. 在 DataBand 中拖放文本组件;
17.2. 设置字体:大小、样式、颜色;
17.3. 按高度和宽度对齐文本组件;
17.4. 设置文本组件的背景颜色
17.5. 对齐组件中的文本
17.6. 更改所需的属性值。例如,如果您希望文本被包裹,请将 WordWrap 属性设置为 true
17.7. 如有必要,为文本组件设置边框;
17.8. 设置边框颜色
18. 选择主数据源的数据带。在我们的案例中,这是 DataBand3:
18.1. 将 DataBand3 的 Interaction.Bookmark 属性设置为 {Categories.CategoryName};
19. 选择作为详细信息数据源的 DataBand。在我们的示例中,这是 DataBand4:
19.1. 将 Interaction.Bookmark 属性设置为 {Products.ProductName};
19.2. 订阅事件。将 RenderingEvent 设置为 {AddAnchor (Products.ProductName);} ;
报告渲染
20. 单击预览按钮或调用查看器,单击预览菜单项。渲染报告后,所有对数据字段的引用都将根据指定字段的数据进行更改。
在渲染的报告中,当点击目录中的条目时,报告中的该条目将被转换。
21. 返回报告模板;
22. 如果需要,在报告模板中添加其他带,例如 HeaderBand;
23. 编辑此波段:
23.1. 按高度对齐;
23.2. 根据需要更改属性值;
23.3. 更改条带的背景;
23.4. 根据需要设置边框
23.5. 设置边框颜色。
24. 将带有表达式的文本组件放入该段。文本组件中的表达式是 HeaderBand 中的标题。
25. 编辑文本和文本组件
25.1. 将文本组件拖放到带中;
25.2. 更改字体选项:大小、类型、颜色;
25.3. 按高度和宽度对齐文本组件
25.4. 更改文本组件的背景
25.5. 对齐文本组件中的文本
25.6. 根据需要更改文本组件属性值
25.7. 根据需要启用文本组件的边框
25.8. 设置边框颜色
26. 单击预览按钮或单击预览菜单项调用查看器。渲染后,数据表指定字段的所有数据字段引用将被更改。数据将按连续顺序从为该报告定义的数据库中输出。渲染报告中 DataBand 的副本数量将与数据库中的数据行数量相同。
添加样式
1. 返回报告模板;
2. 选择数据带。在本例中,选择 DataBand4;
3. 更改偶数样式和奇数样式属性的值。如果未设置这些属性的值,则在这些属性的值列表中选择编辑样式,然后使用样式设计器创建新样式。下图显示了样式设计器:
单击 "Add Style "按钮开始创建样式。从下拉列表中选择组件。设置 Brush.Color 属性以更改一行的背景颜色。下图显示了带有 Brush.Color 属性值列表的样式设计器示例:
单击关闭。然后,偶数行样式和奇数行样式属性(奇数行和偶数行的样式)列表中将出现一个新值。
4. 要显示报告,请单击预览按钮或调用查看器,单击预览菜单项。