强烈支持!!!CSDN 开个 Crystal Report 版吧!!!&&&我与水晶报表……
haibodotnethttp://expert.csdn.net/Expert/TopicView1.asp?id=2291055

解决方案 »

  1.   

    如何将 .NET 程序迁移到 Crystal Report 9.2……(新作:海波.NET)
    ——————————————————————————————————————
    新增4、“Web.config 中的,水晶报表相关的程序集”升级……
    ——————————————————————————————————————
    引言:
      期盼已久的,基于 Web 的,水晶报表打印,导出功能已经在 Crystal Report 9.2 里实现!
      但安装 Crystal Report 9.2 后,原有的 .NET 程序仍然无法拥有这些超级实用功能,原因何在?!
      在.NET 里,DLL Hell 问题被解决——包含元数据的,具有自描述性的程序集及其 XCopy 部署!
      但是,又似乎带来了新的问题——.NET 程序升级、迁移问题……
      升级不再只是简单安装,有工作不得不做了……
    ——————————————————————————————————————
    目录
    1、“报表文件”本身升级……
    2、“被引用的,水晶报表相关的程序集”升级……
    3、“Web 窗体文件中的,水晶报表命名空间引用”升级……
    4、“Web.config 中的,水晶报表相关的程序集”升级……
    ——————————————————————————————————————
    1、“报表文件”本身升级……
    用 Crystal Report 9.2 打开报表,做任意操作,然后撤销,最后保存,就会升级报表。
    注意:升级后,不能用旧版本的 Crystal Decisions 产品使用……
    ——————————————————————————————————————
    2、“被引用的,水晶报表相关的程序集”升级……
    (1)被引用的,水晶报表相关的程序:
    CrystalDecisions.CrystalReports.Engine
    CrystalDecisions.Web
    CrystalDecisions.Enterprise.Report
    CrystalDecisions.ReportSource
    CrystalDecisions.Shared
    等等……
    (2)存放“程序集引用”的文件——项目文件;扩展名为 ??proj,例如:C# 项目扩展名为 csproj
    原引用,如 crystaldecisions.web:
    <Reference
           Name = "crystaldecisions.web"
           AssemblyName = "CrystalDecisions.Web"
           HintPath = "..\..\..\winnt\assembly\gac\crystaldecisions.web\9.1.3300.0__692fbea5521e1304\crystaldecisions.web.dll"
    />
    升级后的引用:
    <Reference
        Name = "crystaldecisions.web"
        AssemblyName = "CrystalDecisions.Web"
        HintPath = "..\..\..\winnt\assembly\gac\crystaldecisions.web\9.2.3300.0__692fbea5521e1304\crystaldecisions.web.dll"
    />
    ——————————————————————————————————————
    3、“Web 窗体文件中,水晶报表命名空间引用”升级……
    原引用:
    <%@ Register TagPrefix="cr" Namespace="CrystalDecisions.Web" Assembly="CrystalDecisions.Web, Version=9.1.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" %>
    升级后的引用:
    <%@ Register TagPrefix="cr" Namespace="CrystalDecisions.Web" Assembly="CrystalDecisions.Web, Version=9.2.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" %>
    ——————————————————————————————————————
    4、“Web.config 中的,水晶报表相关的程序集”升级……
    原引用:
    <compilation defaultLanguage="c#" debug="true"><assemblies><add assembly="CrystalDecisions.CrystalReports.Engine, Version=9.1.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
    ……
    升级后的引用:
    <compilation defaultLanguage="vb" debug="true"><assemblies><add assembly="CrystalDecisions.CrystalReports.Engine, Version=9.2.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
    ……
    ——————————————————————————————————————
    总结:
    可以看出,其实就是 9.1.3300.0 改成 9.2.3300.0!!!
    这样,升级水晶报表文件后,直接替换所有文件(Web.config,项目文件,Aspx 文件)中该替换的地方,OK!!!
      

  2.   

    如何将 .NET 程序迁移到 Crystal Report 9.2……(更新:2003-10-10,作者:海波.NET)
    ——————————————————————————————————————
    新增2(3)修改项目的“引用路径”
    新增5、我升级了CrystalReport9.2,现在CrystalReportViewer不能往设计视图上拖放了,为什么?
    ——————————————————————————————————————
    引言:
      期盼已久的,基于 Web 的,水晶报表打印,导出功能已经在 Crystal Report 9.2 里实现!
      但安装 Crystal Report 9.2 后,原有的 .NET 程序仍然无法拥有这些超级实用功能,原因何在?!
      在.NET 里,DLL Hell 问题被解决——包含元数据的,具有自描述性的程序集及其 XCopy 部署!
      但是,又似乎带来了新的问题——.NET 程序升级、迁移问题……
      升级不再只是简单安装,有工作不得不做了……
    ——————————————————————————————————————
    目录
    1、“报表文件”本身升级……
    2、“被引用的,水晶报表相关的程序集”升级……
    3、“Web 窗体文件中的,水晶报表命名空间引用”升级……
    4、“Web.config 中的,水晶报表相关的程序集”升级……
    5、我升级了CrystalReport9.2,现在CrystalReportViewer不能往设计视图上拖放了,为什么?
    ——————————————————————————————————————
    1、“报表文件”本身升级……
    用 Crystal Report 9.2 打开报表,做任意操作,然后撤销,最后保存,就会升级报表。
    注意:升级后,不能用旧版本的 Crystal Decisions 产品使用……
    ——————————————————————————————————————
    2、“被引用的,水晶报表相关的程序集”升级……
    (1)被引用的,水晶报表相关的程序:
    CrystalDecisions.CrystalReports.Engine
    CrystalDecisions.Web
    CrystalDecisions.Enterprise.Report
    CrystalDecisions.ReportSource
    CrystalDecisions.Shared
    等等……
    (2)存放“程序集引用”的文件——项目文件;扩展名为 ??proj,例如:C# 项目扩展名为 csproj
    原引用,如 crystaldecisions.web:
    <Reference
           Name = "crystaldecisions.web"
           AssemblyName = "CrystalDecisions.Web"
           HintPath = "..\..\..\winnt\assembly\gac\crystaldecisions.web\9.1.3300.0__692fbea5521e1304\crystaldecisions.web.dll"
    />
    升级后的引用:
    <Reference
        Name = "crystaldecisions.web"
        AssemblyName = "CrystalDecisions.Web"
        HintPath = "..\..\..\winnt\assembly\gac\crystaldecisions.web\9.2.3300.0__692fbea5521e1304\crystaldecisions.web.dll"
    />
    (3)修改项目的“引用路径”:
    在解决方案资源管理器里,右击项目,选择属性,进入项目属性页;
    选择通用属性-〉引用路径:
    c:\winnt\assembly\gac\crystaldecisions.web\9.2.3300.0__692fbea5521e1304\
    ——————————————————————————————————————
    3、“Web 窗体文件中,水晶报表命名空间引用”升级……
    原引用:
    <%@ Register TagPrefix="cr" Namespace="CrystalDecisions.Web" Assembly="CrystalDecisions.Web, Version=9.1.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" %>
    升级后的引用:
    <%@ Register TagPrefix="cr" Namespace="CrystalDecisions.Web" Assembly="CrystalDecisions.Web, Version=9.2.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" %>
    ——————————————————————————————————————
    4、“Web.config 中的,水晶报表相关的程序集”升级……
    原引用:
    <compilation defaultLanguage="c#" debug="true"><assemblies><add assembly="CrystalDecisions.CrystalReports.Engine, Version=9.1.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
    ……
    升级后的引用:
    <compilation defaultLanguage="vb" debug="true"><assemblies><add assembly="CrystalDecisions.CrystalReports.Engine, Version=9.2.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
    ……
    ——————————————————————————————————————
    5、我升级了CrystalReport9.2,现在CrystalReportViewer不能往设计视图上拖放了,为什么?
    解决方案:
    1、右击“工具箱”上的选项卡,选择“自定义工具箱”,进入“自定义工具箱”对话框,选择“.NET框架组件”选项卡;
    2、有四个 CrystalReportViewer,分别是:
    CrystalDecisions.Web(9.2……
    CrystalDecisions.Web(9.1……
    CrystalDecisions.Windows.Forms(9.2……
    CrystalDecisions.Windows.Forms(9.1……
    选中:
    CrystalDecisions.Web(9.2……
    CrystalDecisions.Windows.Forms(9.2……
    去除:
    CrystalDecisions.Web(9.1……
    CrystalDecisions.Windows.Forms(9.1……
    总结:
    可以看出,其实就是 9.1.3300.0 改成 9.2.3300.0!!!
    这样,升级水晶报表文件后,直接替换所有文件(Web.config,项目文件,Aspx 文件)中该替换的地方,OK!!!
      

  3.   

    如何将 .NET 程序迁移到 Crystal Report 9.2……(更新:2003-10-12,作者:海波.NET)
    ——————————————————————————————————————
    新增7、如果你用的是  VS.NET  2003,则 Crystal Reports 9 (版本  9.2.0.x) 不能正确运行,需要升级到  CR  9  (版本  9.2.2.x).   
    新增6、问题:web.config 的修改
    新增2(3)修改项目的“引用路径”
    新增5、我升级了CrystalReport9.2,现在CrystalReportViewer不能往设计视图上拖放了,为什么?
    ——————————————————————————————————————
    引言:
      期盼已久的,基于 Web 的,水晶报表打印,导出功能已经在 Crystal Report 9.2 里实现!
      但安装 Crystal Report 9.2 后,原有的 .NET 程序仍然无法拥有这些超级实用功能,原因何在?!
      在.NET 里,DLL Hell 问题被解决——包含元数据的,具有自描述性的程序集及其 XCopy 部署!
      但是,又似乎带来了新的问题——.NET 程序升级、迁移问题……
      升级不再只是简单安装,有工作不得不做了……
    ——————————————————————————————————————
    目录
    1、“报表文件”本身升级……
    2、“被引用的,水晶报表相关的程序集”升级……
    3、“Web 窗体文件中的,水晶报表命名空间引用”升级……
    4、“Web.config 中的,水晶报表相关的程序集”升级……
    5、我升级了CrystalReport9.2,现在CrystalReportViewer不能往设计视图上拖放了,为什么?
    ——————————————————————————————————————
    1、“报表文件”本身升级……
    用 Crystal Report 9.2 打开报表,做任意操作,然后撤销,最后保存,就会升级报表。
    注意:升级后,不能用旧版本的 Crystal Decisions 产品使用……
    ——————————————————————————————————————
    2、“被引用的,水晶报表相关的程序集”升级……
    (1)被引用的,水晶报表相关的程序:
    CrystalDecisions.CrystalReports.Engine
    CrystalDecisions.Web
    CrystalDecisions.Enterprise.Report
    CrystalDecisions.ReportSource
    CrystalDecisions.Shared
    等等……
    (2)存放“程序集引用”的文件——项目文件;扩展名为 ??proj,例如:C# 项目扩展名为 csproj
    原引用,如 crystaldecisions.web:
    <Reference
           Name = "crystaldecisions.web"
           AssemblyName = "CrystalDecisions.Web"
           HintPath = "..\..\..\winnt\assembly\gac\crystaldecisions.web\9.1.3300.0__692fbea5521e1304\crystaldecisions.web.dll"
    />
    升级后的引用:
    <Reference
        Name = "crystaldecisions.web"
        AssemblyName = "CrystalDecisions.Web"
        HintPath = "..\..\..\winnt\assembly\gac\crystaldecisions.web\9.2.3300.0__692fbea5521e1304\crystaldecisions.web.dll"
    />
    (3)修改项目的“引用路径”:
    在解决方案资源管理器里,右击项目,选择属性,进入项目属性页;
    选择通用属性-〉引用路径:
    c:\winnt\assembly\gac\crystaldecisions.web\9.2.3300.0__692fbea5521e1304\
    ——————————————————————————————————————
    3、“Web 窗体文件中,水晶报表命名空间引用”升级……
    原引用:
    <%@ Register TagPrefix="cr" Namespace="CrystalDecisions.Web" Assembly="CrystalDecisions.Web, Version=9.1.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" %>
    升级后的引用:
    <%@ Register TagPrefix="cr" Namespace="CrystalDecisions.Web" Assembly="CrystalDecisions.Web, Version=9.2.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" %>
    ——————————————————————————————————————
    4、“Web.config 中的,水晶报表相关的程序集”升级……
    原引用:
    <compilation defaultLanguage="c#" debug="true"><assemblies><add assembly="CrystalDecisions.CrystalReports.Engine, Version=9.1.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
    ……
    升级后的引用:
    <compilation defaultLanguage="vb" debug="true"><assemblies><add assembly="CrystalDecisions.CrystalReports.Engine, Version=9.2.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
    ……
    ——————————————————————————————————————
    5、问题:我升级了CrystalReport9.2,现在CrystalReportViewer不能往设计视图上拖放了,为什么?
    解决方案:
    1、右击“工具箱”上的选项卡,选择“自定义工具箱”,进入“自定义工具箱”对话框,选择“.NET框架组件”选项卡;
    2、有四个 CrystalReportViewer,分别是:
    CrystalDecisions.Web(9.2……
    CrystalDecisions.Web(9.1……
    CrystalDecisions.Windows.Forms(9.2……
    CrystalDecisions.Windows.Forms(9.1……
    选中:
    CrystalDecisions.Web(9.2……
    CrystalDecisions.Windows.Forms(9.2……
    去除:
    CrystalDecisions.Web(9.1……
    CrystalDecisions.Windows.Forms(9.1……
    总结:
    可以看出,其实就是 9.1.3300.0 改成 9.2.3300.0!!!
    这样,升级水晶报表文件后,直接替换所有文件(Web.config,项目文件,Aspx 文件)中该替换的地方,OK!!!
    ——————————————————————————————————————
    6、问题:在web.config中新建一个工程时没有<assemblies><add assembly="CrystalDecisions.CrystalReports.Engine, Version=9.2.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
    我手工添加后出现配置错误!!!
    解决方案:
    新建一个解决方案,添加 Crystal Report Viewer,然后用它的 Web.config 覆盖原来的程序……
    ——————————————————————————————————————
    7、问题:就是不行。 升级后没有拖放控件没有代码(1)!!! 
    问题分析:
    如果你用的是 VS.NET 2003,则 Crystal Reports 9 (版本  9.2.0.x) 不能正确运行,需要升级到 CR 9 (版本  9.2.2.x).  
    具体问题如下:
    - 添加新报表到项目,却没有生成相应的报表类文件
    - 添加新报表或者报表查看器(viewer)到项目,却没有自动添加必需的引用
    - 不能创建强类型报表(strongly-typed report)的实例
    解决方案:
    试试Crystal Reports 9 Developer Files Monthly Hot Fix (English)
    http://support.crystaldecisions.com/communityCS/FilesAndUpdates/cr90devwin_en.zip.asp?recDnlReq=Record&dnlPath=cr90devwin_en.zip