FastReport是功能齐全的报表控件,使开发者可以快速并高效地为·NET/VCL/COM/ActiveX应用程序添加报表支持。最近一个项目就涉及到了FastReport报表的应用。这里简单记录下(本人比较懒,也不太喜欢写博客,知识分享的习惯更是差到极点!):

1.设计模板(.frx)

首选你要知道你最终打印和预览出来的报表应该是什么样子的,什么格式,可能由于我使用的版本比较古老(1.5版本,公司买的),只能正常导出图片格式的,pdf导出的话会有有数据加载不进来的错误,没有找到解决方法,我想到的就是使用 ITEXT再把图片转为pdf,效果一样;其次,新建模板的时候,字典得提前准备好了frd,除非你使用的数据源是其他类型,不然就一定也先写xml格式的frd字典;最后,你就可以在上面画画。。好了之后保存成frx文件

2.C#调用

把上面生成的模板文件放到你的项目的一个文件夹中,使用以下几段代码调用即可:

Report report = new Report();

// load the existing report
report.Load($@"{printTempPath}");

// register the array
report.RegisterData(businessObjects2, "CaseReportFormData");

//关闭弹出窗口
//关闭生成进度条
EnvironmentSettings eSet = new EnvironmentSettings();
eSet.ReportSettings.ShowProgress = false;
//关闭对话框
report.PrintSettings.ShowDialog = false;
// prepare the report
report.Prepare();
// export to image
ImageExport image = new ImageExport();
image.ImageFormat = ImageExportFormat.Jpeg;
report.Export(image, $@"{temp}\{request.Id}.jpg");

var pdfPath = $@"{temp}\{request.Id}.pdf";
PdfHelper.ConvertJPG2ListPDF(image.GeneratedFiles, pdfPath);

就两点,简单吧,看下我设计的效果

qq:694666781

FastReport模板设计和调用的更多相关文章

  1. JDBCTemplate与模板设计方法(二)

    前言:上一篇博客介绍了模板方法模式,并且给出了一个小demo,简单对模板方法进行了实现,接下来我们把目光转向spring的源码JDBCTemplate,看一看spring是如何对jdbc进行高度封装的 ...

  2. 模板设计在tomcat中的应用

    tomcat是一个常见的web容器,用户使用它可以很方便地管理servlet小程序,而servlet与tomcat的交互代码设计就用到了模板设计. 何谓模板设计,就是定义一个抽象父类,在该父类中组织子 ...

  3. atitit.架构设计---方法调用结果使用异常还是返回值

    atitit.架构设计---方法调用结果使用异常还是返回值 1. 应该返回BOOL类型还是异常 1 2. 最终会有四种状况,抛出异常.返回特殊值.阻塞.超时 1 3. 异常的优缺点点 1 4. jav ...

  4. FastReport报表设计(仔细看)

    FastReport报表设计 2011-06-16 16:56:19|  分类: 系统开发|举报|字号 订阅     下载LOFTER我的照片书  |     目录 5.1 前言 5.2 基本概念及操 ...

  5. FastReport报表设计

    [转载]FastReport报表设计 (2012-10-24 20:37:26) 转载▼ 标签: 转载   原文地址:FastReport报表设计作者:小黑 FastReport报表设计 目录 5.1 ...

  6. C++函数模板的显示调用与隐式调用

    C++函数模板可以显示调用与可以隐式调用 首先定义函数模板: template <class T> inline const T& c_max (const T& a, c ...

  7. 数据结构:DHU顺序表ADT模板设计及简单应用:找匹配

    顺序表ADT模板设计及简单应用:找匹配 时间限制: 1S类别: DS:线性表->线性表应用 问题描述: 输入范例: 100000100000 99999 99998 99997 99996 99 ...

  8. winfrom调用FastReport模板

    '存放模板的路径 If Dir(Application.StartupPath & "\ReportsFile\HB\01\IN.frx", FileAttribute.N ...

  9. smarty模板设计

      一.什么是smarty? smarty是一个使用PHP写出来的模板PHP模板引擎,它提供了逻辑与外在内容的分离,简单的讲,目的就是要使用PHP程序员同美工分离,使用的程序员改变程序的逻辑内容不会影 ...

随机推荐

  1. 20190716-T1-礼物

    呵呵,我暴力WA了 这个题充分考验了大家对数学的理解(麦蒙大多在胡诌) 但是确实如此啊. 看数据范围想状压.(我额嗯嗯想到暴力?) 然后设出一个可爱的$dp$式(主语当然不是我,是出题人大佬) $f_ ...

  2. Leetcode19.Remove Nth Node From End of List删除链表的倒数第N个节点

    给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点. 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 ...

  3. windows 操作系统下git报filename too long 处理方法

    两种方法解决: 一是通过修改配置文件 [core] repositoryformatversion = filemode = false bare = false logallrefupdates = ...

  4. 微信小程序之组件的集合(一)

    小程序中是很强调组件中开发的,我们看到的页面是由许多组件组成的,但是这些组件是如何组合在一起的呢?来学习一下!  一.组件中数据的获取 接着上一篇文章,继续来优化代码,如何把从服务器上获取的数据显示到 ...

  5. hdu 1711Number Sequence (KMP入门,子串第一次出现的位置)

    Number Sequence Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  6. MS17-010远程溢出漏洞 - 永恒之蓝 [CVE-2017-0143]

    MS17-010远程溢出漏洞(永恒之蓝) Ti:2019-12-25 By:Mirror王宇阳 MS17-010 CVE-2017-0143 MS17-010 CVE-2017-0144 MS17-0 ...

  7. channel补充

    网易: package main import ( "fmt" ) func main() { var c chan int fmt.Printf("c=%v\n&quo ...

  8. go struct 抽象

    package main import ( "fmt" ) //定义一个结构体Account type Account struct { AccountNo string Pwd ...

  9. cmake时选择的VS生成器

    运行cmake --help 在得到的输出中可以得到下面的结果:

  10. IO-02. 整数四则运算

    本题要求编写程序,计算2个正整数的和.差.积.商并输出.题目保证输入和输出全部在整型范围内. 输入格式: 输入在一行中给出2个正整数A和B. 输出格式: 在4行中按照格式“A 运算符 B = 结果”顺 ...