翻译|行业资讯|编辑:胡涛|2023-08-09 11:51:32.743|阅读 39 次
概述:本文介绍报表生成器FastReport .Net中关于"Data "带报告的操作,欢迎查阅~
#慧都年终大促·百厂联动暖冬特惠,超多软控件立享惊喜优惠>>
相关链接:
FastReport .Net是一款全功能的Windows Forms、ASP.NET和MVC报表分析解决方案,使用FastReport .NET可以创建独立于应用程序的.NET报表,同时FastReport .Net支持中文、英语等14种语言,可以让你的产品保证真正的国际性。
这种类型的报告是经常需要的。它允许从数据源中打印一个行的列表。例如,这可以是一个客户名单。
要打印数据源的数据,需要 "Data "带。当该条带将被打印,其次数与数据源中的行数相同。
If the "Data" band is not connected to the source, it gets printed once.
当你创建一个新的报告时,它已经包含几个空带,包括 "Data"带。这个带子也可以从 "Configure Bands "窗口中,通过选择 "Report|Configure Bands... "菜单项添加到报告中。
为了把一个带子连接到数据上,双击它。在编辑器窗口中选择数据源并点击 "ОК":
当你把带子连接到数据源后,你可以把 "Text "对象放在带子上,它将显示数据列的信息。最快的方法是--从 "Data "窗口中拖出一个数据列,然后把它放到带子上。在 "The Text object"一章中阅读更多关于 "Text "对象的内容。
默认情况下,"Data "带按自然顺序打印数据。通常情况下,在打印前需要对数据进行排序。例如,一个客户名单可以通过按字母顺序排序来舒适地呈现。
你可以在 "Data "段编辑器中控制排序。为了调用编辑器,请双击带子上的一个空位:
作为一个排序条件,你可以使用一个数据列或一个表达式。你可以指出几个(不超过三个)排序条件。
例如,如果你想按城市对客户列表进行排序,然后再按客户的名字排序。对于每个条件,你可以选择排序的顺序--升序或降序。
另一种排序数据的方法 - 使用SQL查询作为数据源。该查询将在数据服务器上执行,并返回一个排序的行。
为了过滤打印在 "Data "带中的行,调用其编辑器并切换到 "Filter "标签:
作为一个过滤表达式,你可以表示任何正确的表达式。关于表达式的更多细节可以在 "Expressions"章节中找到。
在上面的例子中,使用了以下过滤器:
[Products.Discontinued] == false
表明所有断开连接标志等于false的数据行将被选中。
你可以使用复杂的过滤条件:
[Products.Discontinued] == false && [Products.UnitPrice] < 10表明所有断开连接标志等于false的数据行,以及价格小于10的数据行将被选中。
You also may use dialogue forms to perform data filtering. See more details in the "Dialogue forms" chapter.
一个 "Data "带可以包含一个页眉和一个页脚。页眉将在数据前打印一次,页脚将在所有数据输出后打印。
为了给 "Data "带添加页眉和页脚,选择 "Report|Configure Bands... "菜单项。在窗口中,选择 "Data "带,然后右击鼠标。在上下文菜单中选择 "Header "和/或 "Footer "项目:
这些带子在以下情况下可以发挥作用:
当在一页上打印多个列表时("master-master" "报告)。在这种情况下,每个数据带都可以有自己的页眉和页脚:
在本节中,我们将研究两种数据打印模式--"Break "和 "Keep together"。
在常规的带状打印模式中,FastReport检查当前页是否有足够的空间来打印一个带状。如果没有,则在下一页上全部打印出带子。如果带子的 "CanBreak "属性被激活,FastReport将尝试将带子的一部分打印在可用的空间上,也就是 "Break "。
打破一个带子的尝试可以成功,也可以不成功。这取决于被放置在带子上的对象的类型和它的设置。以下物体可以被打破:
在下图中,显示了一个带子是如何被打破的。
Break algorithm does not always work correctly. The artifacts can occur in a situation, when there are several objects with different font size on a band.
断带的目的是为了节省印张上的空间。数据保持的目标则相反:在一张纸上完全显示一组带子。在这种情况下,虽然纸张上会有很多未使用的空间,但数据的打印方式让人很舒服。
"keep together "机制允许将一组带子保持在一张纸上(或列,如果报告有列的话)。如果在打印时,保留的数据到了页面的末端,FastReport会将所有已经打印过的数据重新定位到新的页面。
你可以在以下情况下使用 "keep together":
一起打印 "Data"带的所有行;
一起打印一个组的所有元素(页眉、数据、页脚);
将主数据源的行与所有明细行一起打印(在 "master-detai "报告中);
打印报告页眉或数据页眉与至少一个数据行;
打印报告页脚或数据页脚以及至少一个数据行;
一起打印父带和子带。
让我们来看看 "keep together "机制的使用情况。
要把所有的数据行或组元素(页眉、数据、页脚)放在一起,请启用 "KeepTogether "属性。这个属性在 "Data "和 "Group Header "带中使用。
下图显示了在有和没有保持在一起的情况下数据的打印情况:
要把主数据行和详细数据行放在一起,请启用 "KeepDetail "带的 "KeepDetail "属性。这个属性用于 "master-detail "类型的报告中:
为了防止 "hanging "页眉和页脚,请使用 "KeepWithData "属性。下面这些带子都有这个属性:
这个属性允许保持至少有一个数据行的页眉/页脚:
为了使一个带子和它的子带子保持在一起,启用 "KeepChild "属性。
当数据带连接到一个空的数据源时,它将不会被打印。有时需要打印一些文本,如 "No data",而不是只打印一个空页。要做到这一点:
该报告将以如下方式打印:
为了以分层形式打印这样的源,你需要设置以下 "Data "带属性。这可以在 "属性 "窗口中完成:
设置 "Data "带属性,它负责层次结构,方法如下:
当我们运行一个报告时,我们将看到以下内容:
当打印层次结构时,FastReport将带子向右移动(通过缩进属性中指示的值),同时也将带子宽度以相同的值减少。这使得你可以使用带子对象的锚定属性。下面是在这种情况下可以使用的该属性的可能值:
在这个例子中,图片对象的Anchor属性被设置为Left, Top;带有职位名称的对象被锚定在Left, Right, Top;带有名字的对象被锚定在Right, Top。
本次关于 FastReport .Net 中改变报表格式的介绍就讲解到这里了,点击此处查看关于用户指南的更多内容。如果您想获取更多产品试用/授权/价格信息,请点击FastReport .Net了解,或者点击咨询慧都在线客服。
FastReport技术QQ群:585577353 欢迎进群一起讨论
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com
在本文中,您将了解如何从 FastReport 云服务连接到此数据库以进行报告生成和存储。
我们多次被问到使用Enigma Protector保护软件免遭破解和逆向工程的最佳方法是什么?在这里我将解释保护常用应用程序的技巧是什么。
HOOPS Exchange是用于读写专有和开放CAD数据格式的通用工具包。它着重于对特定用例最有用的数据和工作流类型。帮助读者识别最适合其需求的用例,以进一步帮助理解HOOPS Exchange概念。
本文主要介绍LightningChart图表组件是如何通过数据监控和可视化来增强工业进程的,欢迎下载新版组件体验!
服务电话
重庆/ 023-68661681
华东/ 18100878086
华南/ 18100878085
华北/ 17382392642
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@evget.com
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
慧都科技有限公司 版权所有 Copyright 2003-2023 渝ICP备12000582号-13 渝公网安备
50010702500608号