如何将多个CSV文件合并为一个
将数据保存在CSV文件中通常非常方便,你可以随时用任何文本编辑器打开文件并调整它。但是如果在一个文件中你有引用另一个文件的数据呢?你需要将两个文件合并为一个文件,以方便进一步使用CSV文件。要手动完成合并是一件费力不讨好的工作,当然你也可以使用Excel – 这需要你对“宏”有一定了解。但幸运的是,你还有更好的第三个选择——FastReport。
在本文中,我们将介绍如何使用FastReport.Net将两个逻辑相关的CSV文件合并为一个。
所以,现在我们有两个CSV文件,第一个是订单清单,第二个是客户清单。我们需要显示每个订单的客户名称和电话号码。订单表有一个外键(foreign key) “CustNo”到客户表,而客户表又有主键(primary key)“CustNo”。如你所知,我们将把这两个表连接到这个字段。
在设计器中创建一个新的报表。添加新的数据源 - CSV文件:
另一个数据源是第二个文件。作为结果,我们会得到两个连接:
现在我们需要链接两个表格。要做到这一点,点击下拉菜单“Actions”,然后选择“New relation”。
我们选择主表,例如“订单”。从属表“客户”。对于这两个表,我们定义关键字段。在我们的例子中,在这两个表中键被命名为“CustNo”:
现在看“数据”窗口:
对于客户表,现在有一个关联的订单表。
我们将“公司”字段放在数据带上的客户表中,并将其他所有字段也放在那里,除了来自关联的“订单”表的CustNo字段。由于有太多字段,报表页面上显示不下。打开顶部工具栏“报表”中的页面设置:
在“其他”选项卡上,我们设置属性:额外设计宽度、不限高度,不限宽度。最后两个属性允许你在报表查看模式下将报表页面扩展为所需的大小。
在将报表导出为CSV文件之前,我会给你提供一些关于格式的提示。要防止在导出时包含空行和空列,请尝试将页面上的页边距彼此靠近。而对于数据的header,我们把高度降到最低:
现在以预览模式运行报表。
按下“保存”按钮并选择“CSV格式...”。我们同意默认的导出设置并设置文件保存位置。就这样,我们得到了一个CSV文件,其中包含有关订单和公司名称的信息,而不是CustNo标识符。
使用上述方法,你可以从不同的CSV文件中合并不限数量的表格,非常节省时间。创建这样一个合并文件大约花了我们10分钟,但如果你通过ID手动选择公司名称,你将花费多少时间呢?
推荐阅读
- FastReport VCL报表控件开发者手册
- FastReport Online Designer中文手册
- Fastreport.Net教程2016
- Fastreport.Net用户手册
- FastReport.Net教程2017(持续更新中···)
- FastReport Online Designer教程2017(持续更新中···)
- 报表教程2017(持续更新中···)
- FastReport.Net v2018.1版本更新已经发布!