MS-HELP中水晶报表知识拾遗

原创 2004年10月20日 09:50:00

1.Web 窗体 Viewer 的报表绑定
ReportDocument crReportDocument;
crReportDocument = new  tempCrystalReport();   
crReportDocument.SetDataSource(ds.Tables[0]);
CrystalReportViewer1.ReportSource =crReportDocument;

2.查看报表
Web 窗体 Viewer 是在 Microsoft Internet Information Server (IIS) 内运行的一种 ASP.NET Web 窗体控件。查看器的主要功能是在客户机上承载和更新 HTML 格式的 Crystal 报表页。

此 Crystal Reports 控件的工作方式与 Visual Studio .NET 环境中的其他 Web 应用程序控件相同:服务器端的控件将其自身呈现为 HTML 并将该 HTML 发送给客户机。

要以 HTML 格式承载所请求的报表页,Web 窗体 Viewer控件将与本地 Web 服务器上的报表引擎或远程服务器上的报表 Web 服务进行交互。

3.导出报表

导出格式

Adobe Acrobat (.pdf)

Crystal Reports for Visual Studio .NET 许可协议 (.rpt)

HTML 3.2 和 4.0 (.html)

Microsoft Excel (.xls)

Microsoft Rich Text (.rtf)

Microsoft Word (.doc)

注意   ASPNET 帐户必须具有写入将报表导出到的文件夹的权限。如果该文件夹没有至少设置更改权限,您将会收到一条错误消息,告诉您临时报表文件出错。出现这条错误消息是因为 ASPNET 帐户在导出时创建了一个临时报表文件,但是在试图将该报表文件写入到导出文件夹时由于权限不足而失败。手动创建的文件夹可能不会自动将完全控制赋予 ASPNET 帐户。
[C#]
// 声明变量并获取导出选项。
ExportOptions exportOpts = new ExportOptions();
ExcelFormatOptions excelFormatOpts = new ExcelFormatOptions ();
DiskFileDestinationOptions diskOpts = new DiskFileDestinationOptions();
exportOpts = Report.ExportOptions;

// 设置 Excel 格式选项。
excelFormatOpts.ExcelUseConstantColumnWidth = true;
exportOpts.ExportFormatType = ExportFormatType.Excel;
exportOpts.FormatOptions = excelFormatOpts;

// 设置磁盘文件选项并导出。
exportOpts.ExportDestinationType = ExportDestinationType.DiskFile;
diskOpts.DiskFileName = fileName;
exportOpts.DestinationOptions = diskOpts;

Report.Export ();

导出为 PDF

下面的示例演示如何将报表导出为 PDF 格式并将其发送到客户端机器。

[Visual Basic]

' 定义 Crystal Reports 变量
Dim crReportDocument As ReportDocument
Dim crExportOptions As ExportOptions
Dim crDiskFileDestinationOptions As DiskFileDestinationOptions
Dim Fname as String

' 以下代码可以直接放在窗体的构造函数中对 
'  InitializeComponent() 的调用之后,或者放在 ,
'  Button_Click 事件内部,在该事件中,客户端使用该按钮
'  来获取报表的可打印副本。

crReportDocument = New ReportDocument()
' 以下代码行加载 
'  示例报表“Chart.rpt”
crReportDocument.Load ("C:/Program Files/Microsoft Visual Studio .NET 2003/Crystal Reports/Samples/Reports/Feature Examples/Chart.rpt")

Fname = "c:/exports/" & Session.SessionID.ToString & ".pdf"
crDiskFileDestinationOptions = New DiskFileDestinationOptions()
CrDiskFileDestinationOptions.DiskFileName = Fname
crExportOptions = crReportDocument.ExportOptions
With crExportOptions
   .DestinationOptions = crDiskFileDestinationOptions
   .ExportDestinationType = ExportDestinationType.DiskFile
   .ExportFormatType = ExportFormatType.PortableDocFormat
End With
crReportDocument.Export()
' 以下代码将 pdf 文件写入 
'  客户端浏览器。
Response.ClearContent()
Response.ClearHeaders()
Response.ContentType = "application/pdf"
Response.WriteFile(Fname)
Response.Flush()
Response.Close()

' 从磁盘删除导出的文件
System.IO.File.Delete(Fname)

计算机底层知识拾遗(一)理解虚拟内存机制

这个系列会总结计算机,网络相关的一些重要的底层原理。很多底层原理大家上学的时候都学过,但是在学校的时候大部分的同学都是为了应付考试而学习,过几天全忘了。随着工作的时间越久,越体会到这些基础知识的重要性...
  • ITer_ZC
  • ITer_ZC
  • 2015年01月12日 16:33
  • 8156

Java线程知识拾遗

知识回顾 进程与线程是常常被提到的两个概念。进程拥有独立的代码段、数据空间,线程共享代码段和数据空间,但有独立的栈空间。线程是操作系统调度的最小单位,通常一个进程会包含一个或多个线程。多线程和多...
  • leonardc
  • leonardc
  • 2018年01月15日 10:46
  • 6

零:入门知识拾遗

一、三元运算 1 result = 值1 if 条件 else 值2 如果条件为真:result = 值1 如果条件为假:result = 值2 二、...
  • qq_39974988
  • qq_39974988
  • 2017年11月18日 20:19
  • 27

Java基础拾遗(一)

关于Java常见基础知识的查缺补漏,学习总结笔记~
  • qq_25827845
  • qq_25827845
  • 2017年07月29日 20:59
  • 1403

C#拾遗之读写操作

最近一直在学C#语言,在写一些程序的时候难免遇到C#输入输出的问题,除了葛老师讲的一些东西,我也在看网上的一些关于C#程序设计的视频讲解,在看到C#流程控制结构的这一章节,看到了一个很好的关于C#读写...
  • erlian1992
  • erlian1992
  • 2015年03月29日 14:04
  • 974

Python内容拾遗

1.1运算符 in eg: print “hello” in “sdsfdhello” #True2.1 int 2.1.1 创建对象的两种方式: n1 = 123 ...
  • WxyangID
  • WxyangID
  • 2016年11月07日 12:35
  • 132

Java线程知识拾遗

知识回顾 进程与线程是常常被提到的两个概念。进程拥有独立的代码段、数据空间,线程共享代码段和数据空间,但有独立的栈空间。线程是操作系统调度的最小单位,通常一个进程会包含一个或多个线程。多线程和多进程...
  • caiguoqing0908
  • caiguoqing0908
  • 2017年04月08日 00:19
  • 88

java拾遗------面向对象知识

java面向对象1.对象一个对象由一组属性和对这组属性进行操作的一组服务组成。 一个对象的生命周期包括三个阶段:生成、使用、消除。 当不存在对一个对象的引用时,该对象成为一个无用对象。Java的垃...
  • u012935756
  • u012935756
  • 2015年09月24日 12:10
  • 305

Java拾遗系列- io知识

Java拾遗系列- io知识 最近看tomcat源码,发现socket的输入输出流处理起来坑挺多的。莫名其妙的就阻塞了。最后决定回来先看看io知识。 简介 io分类及相关应用 Nio应用 i...
  • oYueYang1
  • oYueYang1
  • 2017年11月28日 21:15
  • 50

计算机底层知识拾遗(四)理解文件系统

操作系统的很多核心组件都是相互关联的,比如虚拟内存管理,物理内存管理,文件系统,缓存系统,IO,设备管理等等,都要放在一起来看才能从整体上理解各个模块到底是如何交互和工作的。这个系列的目的也就是从整体...
  • ITer_ZC
  • ITer_ZC
  • 2015年01月29日 13:25
  • 3884
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MS-HELP中水晶报表知识拾遗
举报原因:
原因补充:

(最多只允许输入30个字)