发布一个水晶报表的通用类:CrystalHelper

        发布一个水晶报表的通用类:CrystalHelper,适用环境如下:

 .Net Framework 2.0 ,ASP.NET2.0中直接实例化就可以用了,封装了常用的操作,特别是权限验证部分,很方便,可以避免在ASP.NET 中使用CrystalReports时遇到的很多问题!部分代码如下:
using System;
using System.Text;
using System.Data;
using System.Drawing;
using System.Globalization;
using System.Threading;
using System.Windows.Forms;
using System.Web;
using System.Diagnostics.CodeAnalysis;
using System.Collections.Generic;

// Crystalreports required assemblies
using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Shared;
using CrystalDecisions.Windows.Forms;

namespace CrystalLibrary
{
    
/// <summary>
    
/// Supported export formats for Crystal reports.
    
/// </summary>

    public enum CrystalExportFormat
    
{
        
/// <summary>
        
/// Export to Microsoft Word (*.doc)
        
/// </summary>

        Word,

        
/// <summary>
        
/// Export to Microsoft Excel (*.xls)
        
/// </summary>

        Excel,

        
/// <summary>
        
/// Export to Rich Text format (*.rtf)
        
/// </summary>

        RichText,

        
/// <summary>
        
/// Export to Adobe Portable Doc format (*.pdf)
        
/// </summary>

        PortableDocFormat
    }


    
/// <summary>
    
/// <p>The CrystalHelper class handles a number of actions that are usually
    
/// required to use Crystal Reports for Visual Studio .Net. 
    
/// </p>
    
/// <p>This class can be used for all reports based on typed datasets and reports that
    
/// have embedded queries.</p>
    
/// <p>Please note that you need to register Crystal Reports when you want to use 
    
/// it in Visual Studio. Registration of Crystal Reports for VS.Net is free!</p>
    
/// </summary>
    
/// <example>
    
/// The following example shows how CrystalHelper can be used to print a report
    
/// where the information is supplied by a DataSet:
    
/// <code>
    
/// void PrintReport(SqlConnection conn)
    
/// {
    
///     using (DataSet ds = new TestData())
    
///     {
    
///         SqlHelper.FillDataset(conn, 
    
///             CommandType.Text, "SELECT * FROM Customers", 
    
///             ds, new string [] {"Customers"});
    
/// 
    
///             using (CrystalHelper helper = new CrystalHelper(new CrystalReport1()))
    
///         {
    
///             helper.DataSource = ds;
    
///             helper.Open();
    
///             helper.Print();
    
///             helper.Close();
    
///         }
    
///     }
    
/// }
    
/// </code>
    
/// 
    
/// </example>

    public class CrystalHelper : IDisposable
    
{
        
Local Variables

        
Private methods

        
Constructors

        
Public properties

        
Public static properties

        
Public methods

        
Public static methods

        
IDisposable Members
    }

}

__EOF__

本文作者pccai
本文链接https://www.cnblogs.com/pccai/articles/895169.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   pccai  阅读(1665)  评论(3编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示