有关水晶报表的使用经验和总结

2024-07-12

有关水晶报表的使用经验和总结(通用2篇)

有关水晶报表的使用经验和总结 篇1

VS2008水晶报表发布部总结

安装部署时,把水晶报表的msm打进去,注册到服务器 要部署使用 crystal reports for visual studio.net 2003 的程序; 首先:找到以下7个文件:

crystal_database_access2003.msm crystal_database_access2003_chs.msm crystal_managed2003.msm crystal_managed2003_chs.msm crystal_regwiz2003.msm vc_user_crt71_rtl_x86_---.msm vc_user_stl71_rtl_x86_---.msm

(你可以 c:program filescommon filesmerge modules 文件夹下找到)接着:在解决方案资源管理器中,右击安装项目,指向“添加”,然后单击“合并模块”。

在“添加模块”对话框中,选择上面的7个要添加到安装项目的合并模块,然后单击“打开”:

还有:打开解决方案-->右键点击 crystal_regwiz2003.msm 的属性,在“mergemouduleproperties”里的“license key”填入:aap5gks0000gde100ds(这个是你生成crystal report是用到的注册号的密码!)

一、安装运行时支撑文件

如果你安装了VS2008,那么可以找到如下目录:

C:Program FilesMicrosoft SDKsWindowsv6.0ABootstrapperPackagesCrystalReports10_5 此目录下有如下文件:

COPY到服务器上根据服务器CPU情况选择性地安装一下。

二、将WEB项目打包成安装程序

1.在WEB解决方案中新建一个项目,选择项如下:

2.右键点击项目名称,选择“视图”-“文件系统”

3.按下图操作:

4.设置项目的启动文件:

5.在项目名称上右击,按下图操作,选“项目输出”:

6.选“内容文件”后再“确定”:

7.按SHIFT+F6即可生成安装文件,可以在项目的目录下能找到如下结果文件:

Copy这个MSI文件到服务器上安装完就可以浏览了。

三、修补水晶报表的图标显示和打印功能

问题:如上所述,是可以浏览了,但是报表显示的工具栏上图标出不来:如下:

看到吗,小图标出不来。其它你再试试,打印也没法选打印机的。解决办法: 1.在自己开发的PC上找到如下目录:

C:WINDOWSMicrosoft.NETFrameworkv2.0.50727ASP.NETClientFilesCrystalReportWebFormViewer4 注意:CrystalReportWebFormViewer4中的4有可能与你的不一样,无所谓的。

2.将CrystalReportWebFormViewer4目录复制到你的WEB服务器上项目所在目录中,如: C:???aspnet_clientsystem_web2_0_50727CrystalReportWebFormViewer4 再试试看吧,问题解决!祝好运!

asp.net水晶报表安装部署(vs2005,vs2008)1.水晶报表安装程序和汉化包

C:Program FilesMicrosoft Visual Studio 8SDKv2.0BootStrapperPackagesCrystalReports 2.安装水晶报表运行时支持,打包下面这个目录到需要安装的服务器,然后点击“CRRedist2008_x86.msi” C:Program FilesMicrosoft SDKsWindowsv6.0ABootstrapperPackagesCrystalReports10_5 3.将下面几个dll拷贝到/bin下,注意版本号 vs.net 2005,在这个目录

C:Program FilesMicrosoft Visual Studio 8ReportViewer vs.net 2008,在这个目录

C:Program FilesMicrosoft Visual Studio 9.0ReportViewer microsoft.reportviewer.common.dll

microsoft.reportviewer.processingobjectmodel.dll microsoft.reportviewer.webforms.dll 安装一下,然后重启服务器,再访问就OK了

从网上找的方法是合并msm什么的,我的程序又不是用msi打包的,所以,不能用,换种方法: C:Program FilesMicrosoft SDKsWindowsv6.0ABootstrapperPackagesCrystalReports10_5 这里可以看到CRRedist2008_x86.msi及zh-CHSCRRedist2008_x86_chs.msi 只要把这两个安装了,水晶报表就可以使用了,因为网上有人说水晶报表30天会过期,我把日期调到30天后,看了看,正常

发布软件时,把以上水晶报表的两个安装文件给打包过去安装就OK了。

VS.NET2005与VS.NET2008水晶报表的注册码

注册号:6707437608(此注册号同时适用于VS.NET2005与VS.NET2008)水晶报表10 注册码

FULL NAME-> PARADOX ORGANIZATION-> PDX-ROXX

KEY CODE-> A3864-08108WK-0ZNF01B

注册号:6707437608(死马当活马医了,VS.NET2005提示水晶报表注册时,我输入了此号!JcServer注)

密码:AAP5GKS0000GDE100DS -------------------------------------------------

密钥:AAP5GKS0000GDE100DS 注册号:6707437608

License : AV860-01CS00G-U7000NC SN : 1231467890 用9.2的注册码可以成功注册的.ftp://pub:pub@pub.chinafsdu.net/开发工具与资源/水晶报表9.2/CyReport 9.rar SN:

AVS50-81SG00S-G61002U Crystal Report for VS.NET 注册号:6707437608

密码:AAP5GKS0000GDE100DS Crystal Report 9:

A6S5G-31C0000-0V400JK 6782976749

Report Application Server: AWM50-G0C000S-3S400CJ Crystal Enterprise 10

License : A1864-G86000G-GXCMCVE 版本::Crystal Enterprise 10 水晶报表10 注册码

FULL NAME-> PARADOX ORGANIZATION-> PDX-ROXX KEY CODE-> A3864-08108WK-0ZNF01B 注册号:6707437608

密码:AAP5GKS0000GDE100DS

Crystal Reports for Visual Studio 2003

License : AAP5G-KS0000G-DE100DS SN : 6707437608 Crystal Repoers 9.2 Advanced Developer Simplified Chinese License : AVS50-81SG00S-G61002U SN : 1112411119 Crystal Reports 9.2.2.634 Professional License : A5S50-81C0000-90100VU Crystal Reports 9.0 Standard Edition License : A6S50-01C000G-K8F00NH Crystal Reports 9.2.448

License : A5S50-01C000G-1U200CW Crystal Reports 9.2 Advanced Developer License : AVS50-81SG00S-G61002U(Note: select the typical installation)Crystal Analysis 10

License : A7864-090000G-SXR9A70 Crystal Enterprise 10

License : A1864-G86000G-GXCMCVE

Crystal Reports 10 Advanced Developer(build 10.0.0.53327)License : AV860-01CS00G-U7000NC SN : 1231467890 Crystal Reports Professional 10.0 s/n: A5860-01C0000-5XC002Z

出处:http://blog.csdn.net/gxj022/archive/2009/07/08/4329909.aspx

今天在备份一数据库还原给另一数据库时,发现还原不了,看了下原数据库的逻辑文件名和物理文件名不一致,现以下方法可更改文件名的一致。

在 SQL Server 的企业管理器中,似乎不能直接更改数据库名称,如果要更改,最方便的是在查询分析器中运行:

alter database 原数据库名称 modify name=新数据库名称

SQL Server 中,数据库还原时可以更改物理文件名,也可以分离数据库,直接更改 mdf 的文件名再附加,但更改逻辑文件名似乎不那么直观。

在查询分析器里运行: alter database 数据库名称

modify file(name=原逻辑文件名, newname=新逻辑文件名)这样就可以更改逻辑文件名了,由于 SQL Server 有数据文件和日志文件,所以数据文件和日志文件的逻辑文件名都要更改的话,就得写两个类似于上述的语句。

12.如何部署包含水晶报表的程序(VS.NET 2002)

-----------------

1、原理:

发布使用水晶报表的项目需要包含三种组件:报表(*.rpt)、模块(*.msm)、运行库(*.msm),这些模块文件是在C:Program FilesCommon FilesMerge Modules 目录里面。

(1)报表(*.rpt)

用户编程时创建的水晶报表文件。

(2)模块(*.msm)

Managed.msm

该模块包含了CR for VS.NET 的管理模块,如

CrystalDecisions、CrystalReports.Engine.DLLCrystalDecisions.Web.DLL, 和

CrystalDecisions.Windows.Forms.DLL…… Managed_chs.msm

是该模块的中文版语言支持。

Database_Access.msm

该模块包含了数据库的驱动、与不同数据库的联结、报表导出为

RTF 和

HTML 格式的文档和图表组件。

Database_Access_chs.msm 是此模块的中文版语言支持。

Regwiz.msm

注册信息模块,非常重要,必需在这个模块输入水晶报表的注册序列号,如果不填,编译的时候就无法通过。

KeyCode MSM 处理

Crystal Decisions 密钥号码的安装,这样您的用户在查看报表时,就不会被要求注册他们的Crystal版本。

(3)运行库(*.msm)

如果报表文件使用了

ADO.NET 的dataset 数据集对象,那么

VC_CRT.msm 和

VC_STL.msm 模块也必须包含在安装工程中。而且这两个模块的文件安装属性的 “Module Retargetable Folder ”项必须修改成为系统目录

在VS.NET安装

中,系

来的依

只有

dotNETFXRedist_x86_chs.msm 和

Managed.msm这两个模块,其他的模块我们需要手动加入。

-------------------------

2、具体操作步骤:

(1)新建“安装和部署项目”--> “安装向导”

(2)选择项目类型(这里选“创建用于windows应用程序的安装程序”)--> 下一步

(3)选择要包

含的文

你的程

件和

C:Program FilesCommon FilesMerge Modules 下的managed.msm、managed_chs.msm、database_access.msm、database_access_chs.msm、regwiz.msm、VC_CRT.msm、VC_STL.msm。--> 完成

(4)打开解决方案--> 右键点击regwiz.msm的属性,在“MergeMouduleProperties”里的“License Key”填入:AAP5GKS0000GDE100DS(这个是你生成Crystal Report是用到的注册号的密码!)

(5)生成解决方案(或直接按Ctrl+Shift+B)、

有关水晶报表的使用经验和总结 篇2

关键词:VS.NET,水晶报表,数据集,推模型

0 引言

Crystal Reports for Visual Studio.NET 是以Crystal Reports9.0 为蓝本,专门为.NET 平台定制的,是VS.NET集成开发环境(IDE)的一部分。在.NET开发平台下开发管理信息系统(MIS)时会经常使用到报表,用户可以在.NET IDE中使用集成的报表设计器来创建修改报表。这里涉及报表的生成与发布问题,本文探讨了.NET中水晶报表的生成方法以及含有水晶报表的工程文件的发布技巧。

1 .NET环境中内置的水晶报表的生成

水晶报表与数据库的连接类型:水晶报表通过数据库驱动程序与数据库连接,每个驱动程序都被编写为可处理的特定数据库类型或数据库访问技术。为了向开发人员提供灵活的数据访问方法,水晶报表数据库驱动程序被设计为可同时提供数据访问的Pull Model(拉模型)和Push Model(推模型)。

在拉模型中,驱动程序将连接到数据库并根据需要将数据“拉”进来。使用这种模型时,与数据的连接和为了获取数据而执行的SQL 命令同时由Crystal Reports 本身处理,不需要开发人员编写代码,就可以将报表集成到应用程序中。模型如图1 所示。

如果在运行时无须编写任何特殊代码,则使用拉模型。

推模型,则需要开发人员编写代码以连接到数据库,执行SQL 命令以创建与报表中的字段匹配的数据集(Dataset) 并且将该对象传递给报表,然后由其进行相应的格式化显示数据。该方法虽然需要开发人员手工编码,但是可以优化SQL语句,并且将数据库连接放入与应用程序共享的数据库配置文件中,在开发项目时常常使用该模型。模型如图2所示。

2 水晶报表的应用实例

本文实例以某石油企业的钻具管理系统为例,该系统要求以报表的形式查看钻具发放到各下属生产队的情况。该系统在VS.NET平台下开发,所要求的报表采取在.NET内置的水晶报表进行开发,并采用推模型(如图2所示)与后台数据库进行连接。步骤介绍如下:

(1)创建数据集。

在解决方案资源管理器中,右击项目(工程)名“ZJFF”,指向“添加”,然后单击“添加新项”;在“添加新项”对话框中选择“数据集”,名称为DsZJ.xsd。 在数据集DsZJ.xsd中,右击空处指向“添加”,然后单击“DataTable”。添加报表展现时所需要的数据库中数据表与数据字段,添加后的数据集如图3所示。

(2)创建报表模板。

在解决方案资源管理器中,右击项目(工程)名,指向“添加”,然后单击“添加新项”;在“添加新项”对话框中选择“Crystal 报表”,默认名称CrystalReport1.rpt,即报表模板。在展开的报表模板中,右击“数据库字段”,单击“数据库专家”;在“数据库专家”中展开“项目数据”节点;展开“ADO.NET数据集”节点,选择所需数据集对象“ZJFF.DsZJ”,该对象为步骤(1)所建。在报表区域中利用各种工具设计所需的报表样式。

(3)创建数据库连接。

与数据库的连接采用与工程项目共享的连接方式,即数据库配置文件web.config中的连接方式,形式如下:

<configuration>

<appSettings>

<add key="ZJXT_ConnString" value="data source=127.0.0.1;initial catalog=ZJXT_ZX;user id=sa;password=sa;persist security info=True"/>

</appSettings>

</configuration>

(4)设置报表查看器。

在窗体上放置CrystalReportViewer 控件,默认名称为CrystalReportViewer1,并设置其他相关所需属性。

在窗体的源文件中键入如下代码:

CrystalReport1 oRpt= new CrystalReport1(); //实例化对象

string sZJXTCon=""; //设置连接对象

sZJXTCon= ConfigurationManager.AppSettings["ZJXT_ConnString"].ToString();//设置SQL语句,该系统涉及7个表数据如图3所示,所以要7个SQL语句,SQL语句中的字段要与步骤(1)的数据集DsZJ.xsd中的字段一致

DataSet ds = new DataSet();

SqlDataAdapter sqlAd = new SqlDataAdapter();

sqlAd = new SqlDataAdapter("select ZJBGBH,FJRQ from tblZJFFJL", sZJXTCon);

sqlAd.Fill(ds, "tblZJFFJL"); //填充数据集

sqlAd= new SqlDataAdapter ("select ZJBGBH,ZJID,ZJJCID from tblZJFFHSMX", sZJXTCon);

sqlAd.Fill(ds, "tblZJFFHSMX");

sqlAd = new SqlDataAdapter ("select ZJID,GYH,WZZL,WZXL,LWLX from tblZJJBXX", sZJXTCon);

sqlAd.Fill(ds, "tblZJJBXX");

sqlAd= new SqlDataAdapter ("select ZJID,ZJJCID,TSJG,WJ,NJ,CD,ZTPJ from tblZJJCMX", sZJXTCon);

sqlAd.Fill(ds, "tblZJJCMX");

sqlAd = new SqlDataAdapter ("select WZBM,WZMC from tblWZFL", sZJXTCon);

sqlAd.Fill(ds, "tblWZFL");

sqlAd = new SqlDataAdapter ("select WZBM,WZMC from tblWZFL tblWZFL2", sZJXTCon);

sqlAd.Fill(ds, "tblWZFL2");

sqlAd = new SqlDataAdapter ("select LWLXBM,LWLXMC from tblLWLX", sZJXTCon);

sqlAd.Fill(ds, "tblLWLX");

oRpt.SetDataSource(ds); // 使用“报表引擎”对象模型将填充的数据集传递给报表

CrystalReportViewer1.ReportSource =oRpt; //将带有数据的报表对象绑定到报表查看器

至此,水晶报表的生成过程基本结束。

3 .NET环境中内置的水晶报表的发布

为用户发布集成含有水晶报表的工程文件与发布一般的工程文件有很大的区别,因为前者除了要安装.NET Framework以外还要安装报表引擎以及设置报表模板文件路径。其中的设置报表模板文件路径有较多的方法,一般有在源文件中编写相对路径的代码方法;或者将模板文件放置在数据库中以便在需要时下载到用户终端上的方法等等。但这些方法在后期维护中无法做到对报表模板文件进行灵活简便地修改更新,以下将介绍一种方法可以轻易的达到该要求。

(1)将模板文件作为资源类文件。

右击含有模板文件的工程,点击“属性”项;然后点击属性中“资源”选择项;点击下拉“添加资源”,选择“添加现有文件”,在弹出的添加文件框中选中模板文件;添加完后可点击“图像”下拉项中,选择“文件”就可以看到刚才所选中的模板文件。

(2)设置模板路径。

在报表查看器的源文件中编写以下代码:

string AppPath, ReportPath;

AppPath=Application.StartupPath; //设置应用程序路径

ReportPath=AppPath + @"CrystalReport1.rpt"; //设置模板文件存放路径

//获取资源文件中的报表模板

ResourceManager resources=new ResourceManager(typeof(ZJFF.Properties.Resources));

byte[]bytes = (byte[])resources.GetObject("CrystalReport1");

if (File.Exists(ReportPath)) //若存放路径下不存在模板文件则加载之,否则,更新之

File.Delete(ReportPath);

FileStream fileStream=new FileStream(ReportPath, FileMode.CreateNew);

BinaryWriter binWriter=new BinaryWriter(fileStream);

binWriter.Write(bytes, 0, bytes.Length);

binWriter.Close();

fileStream.Close();

oRpt.Load(ReportPath); //使用“报表引擎”对象加载模板文件路径

(3)添加安装报表引擎。

在应用程序工程的属性中,选中“发布”选择项,设置好“发布位置”,“安装URL”后,点击“系统必备”按钮,勾选中“.NET Framework 2.0”与“Crystal Reports for .NET Framework 2.0”两个复选框,后者是报表查看器引擎;然后再勾选“从与我的应用程序相同的位置下载系统必备文件”选择项,点击“确定”按钮。这样设置好发布版本后就可以点击“立即发布”按钮进行发布了。

4 结束语

Visual Studio. NET平台下内置的水晶报表具有性能稳定、操作便捷、功能强大等特点,而且其自身拥有报表设计器,再加上.NET 提供的丰富特性,所以在开发大型复杂的企业级报表时使用Crystal Reports for Visual Studio.NET可以极大地提高开发效率,是一种非常好的报表手段。

参考文献

[1][美]David McAmis.Crystal Reports for Visual Studio.NET高级编程[M].李万红,王军,译.北京:清华大学出版社,2003.

[2][美][菲茨格兰德]Neil FitzGerald,等.Crystal reportsⅪ水晶报表标准指南[M].陈璐,等译.北京:电子工业出版社,2007.

[3]冯华英.水晶报表Crystal Reports 9从入门到精通[M].北京:电子工业出版社,2003.

[4]蒋铁海.基于1NET技术的报表生成和打印的实现[J].交通与计算机,2004,22(1).

上一篇:体育教师外出教学培训总结下一篇:幼儿大班上学期工作计划