彩票走势图

报告生成器FastReport .NET实践指南:从ASP.Net Core应用程序创建发票

翻译|使用教程|编辑:李显亮|2020-09-02 11:14:53.180|阅读 647 次

概述:如今,ASP.Net Core在Web开发的最佳框架排名中占据较高的位置。在本文中,我们会在ASP.Net Core应用程序中输出发票的功能。因此,将使用FastReport.Core库。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:


报表生成器FastReport .NET是适用于.NET Core 3,ASP.NET,MVC和Windows窗体的全功能报告库。使用FastReport .NET,您可以创建独立于应用程序的.NET报告。

近日,FastReport .Net升级到v2020.3版,在此版本中,添加了瑞士QR码,允许配置打印机托盘以打印报告的最后一页,不再支持.NET Framework 2.0,同时修复了多个Bug问题,感兴趣的朋友可点击下方按钮下载最新版。

点击下载最新版FastReport .Net

Fastreport在线下单立享85折起!赶紧加入购物清单吧!

很少有人相信微软新的开源ASP.Net Core框架的成功。这是因为以前的ASP.Net平台的普及程度较低。但是,很快每个人都意识到了新的跨平台框架的优势。如今,ASP.Net Core在Web开发的最佳框架排名中占据较高的位置。许多Web应用程序,网站和在线商店都是使用它创建的。出售商品时,在线商店必须向客户提供一些文档。例如,付款发票。

付款发票是非现金付款经常需要的文件之一。因此,如果要创建在线商店或其他销售系统,则必须向客户提供发票。

要渲染发票,首先我们需要开发一个文档设计,在其中填充数据并发送给打印。最好的解决方案是使用报告生成器来创建文档模板并用数据填充它。用户应用程序的任务是显示所需的报告。

没有开具发票的明确要求-只有建议可以帮助避免客户误解。展望未来,我们将考虑将在本文中创建的发票,以便您了解如何处理发票开具。当然,我们并不是说这个模板是最好的。

报告生成器FastReport .NET实践指南:从ASP.Net Core应用程序创建发票

此图突出显示了文档的重要区域。让我们解释一下它们的本质:

  1. 有关卖方的信息。任何正式文件都应包含有关卖方的信息:姓名,地址,电话,电子邮件,其他信息(可选);
  2. 有关买方联系人的信息–必须指出实际负责付款的人;
  3. 订单和发票标识符,发票开具和到期日。这些标识符将有助于在数据库中查找发票或订单,以防客户以后有任何疑问。
  4. 有关订单内容的信息。您的客户必须了解他所支付的费用。必须指定货物的名称和数量,以及每单位的成本;
  5. 总量。总金额不仅对于付款是必要的,而且对于理解计算也是必要的;
  6. 付款详情。由于这是付款发票,因此应包含收款人详细信息;
  7. 国外付款的银行详细信息。即使在这种情况下,客户不是来自国外,您也可以将这些数据保留为统一的格式。
  8. 解释性信息。如有疑问,提供联系方式很重要。您还应该警告延迟付款的后果。这将使客户不耽误它。

因此,FastReport.Net报告生成器作为一组库来提供。在本文中,我们正在考虑在ASP.Net Core应用程序中输出发票的功能。因此,将使用FastReport.Core库。实际上,我们不需要开具发票的申请。我们需要的只是报告生成器和数据。但是创建文档的能力对任何人来说都不是很有趣。能够将报告系统集成到用户程序中很重要,这样报告才能成为单个数据处理系统的一部分。因此,首先我们将创建一个报告模板,然后将其用于在Web应用程序中显示数据。

在设计器中创建一个报表。你一定见过很多次付款发票--这样的报表模板并不复杂。看看吧。

报告生成器FastReport .NET实践指南:从ASP.Net Core应用程序创建发票

在本案例中,数据取自四个表。订单、订单详情、客户和产品。

主带--数据--与订单表相连。这意味着每输入一个表,就会形成一个新的该带的实例。 除了右边的订单信息,我们还在左边显示客户信息。客户表通过id与订单表链接。

报告生成器FastReport .NET实践指南:从ASP.Net Core应用程序创建发票

所以,要提供客户信息中的数据与当前订单的对应关系,就要从环节入手。订单详情表与订单表和产品表的关系相同。

订单信息显示在数据带中。它与订单详情表有联系。在一行中显示:数量、产品名称、单价、指定数量的价格、税率和税额。一个数据带有页眉和页脚带。表头显示在表头栏中,当总计、付款明细和说明信息显示在页脚栏中时,表头显示在页脚栏中。

小计是在一个表记录内,通过在文本字段中乘以或汇总表字段来计算的:[[小计]*5/100]。或者,使用报告变量。

报告生成器FastReport .NET实践指南:从ASP.Net Core应用程序创建发票

总计,是根据列使用特殊表达式--总计来计算的。

报告生成器FastReport .NET实践指南:从ASP.Net Core应用程序创建发票

每个总计都有设置--操作类型、表字段或表达式、波段(总计的显示位置)等。

报告生成器FastReport .NET实践指南:从ASP.Net Core应用程序创建发票

如果数据意味着同时渲染几张发票,则需要在一个单独的页面上渲染每张发票。为此,你需要在DataBand中包含StartNewPage = True属性。

报告生成器FastReport .NET实践指南:从ASP.Net Core应用程序创建发票

这就完成了最困难的部分--报表的创建。现在让我们进入我们的ASP.Net Core应用程序。您需要使用NuGet将FasReport.Net库添加到您的项目中。

报告生成器FastReport .NET实践指南:从ASP.Net Core应用程序创建发票

连接Startup.cs中的FastReport库。

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
 {
…
app.UseFastReport();
…
}

现在,您可以将报告生成添加到控制器中:

private IHostingEnvironment _env; 
public HomeController(IHostingEnvironment env)
 {
 _env = env;
 }

在类中注入IHostingEnvironment接口,得到我们保存报表的wwwroot目录的路径。在你需要的方法中创建报表对象,将数据和报表模板载入其中。

 public IActionResult Index()
 {
 var rootpath = _env.WebRootPath;
 var report = new WebReport();
 var data = new DataSet();
 data.ReadXml(rootpath + "/App_Data/nwind.xml");
 report.Report.Load(rootpath + "/App_Data/Invoice.frx");
 report.Report.RegisterData(data);
 
 ViewBag.WebReport = report;
 return View();
 }

将报告渲染添加到索引视图中。

@await ViewBag.WebReport.Render()

现在,如果你运行该应用程序,你将在浏览器中看到你的报告。

报告生成器FastReport .NET实践指南:从ASP.Net Core应用程序创建发票

因此,您可以从您的Web应用程序中快速创建付款发票。请看顶部的工具栏。它包含了报告控件,让你不仅可以查看报告页面,还可以将其发送打印或导出为流行的文档格式之一。PDF, DOCX, XML, XPS, ODT, TXT, CSV, RTF.

虽然FastReport Open Source是非常强大的,但仍然有许多限制,你可以点击下方链接查看具体差异。

【功能对比】报表开发工具FastReport Open Source和FastReport .NET都有哪些差异和限制

FastReport Open Source与FastReport .Net间的功能差异还是非常明显的,如果您是企业用户或是需要更完整的功能,建议您直接购买FastReport .Net,盛夏狂欢,在线下单立享85折起!点击查看优惠价格,或咨询在线客服了解详情。


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP