繁体   English   中英

如何在VB.NET中以PDF格式编写水晶报表

[英]How to programatically export crystal report as PDF in VB.NET

Imports CrystalDecisions.CrystalReports.Engine
Imports CrystalDecisions.Shared
Imports CrystalDecisions.Web
Imports CrystalDecisions.ReportSource
Imports CrystalDecisions.CrystalReports

Imports System.IO
Imports System.Net
Imports System.Net.Mail

Public Class Form1

Dim cryRpt As New ReportDocument

Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

    cryRpt.Load("C:\Documents and Settings\Prs1\My Documents\Visual Studio 2008\Projects\myCR\myCR\cr.rpt")
    CrystalReportViewer1.ReportSource = cryRpt

    CrystalReportViewer1.Refresh()

    Try
        Dim CrExportOptions As ExportOptions
        Dim CrDiskFileDestinationOptions As New  _
        DiskFileDestinationOptions()
        Dim CrFormatTypeOptions As New PdfRtfWordFormatOptions()
        CrDiskFileDestinationOptions.DiskFileName = _
                                    "C:\crystalExport.pdf"
        CrExportOptions = cryRpt.ExportOptions
        With CrExportOptions
            .ExportDestinationType = ExportDestinationType.DiskFile
            .ExportFormatType = ExportFormatType.PortableDocFormat
            .DestinationOptions = CrDiskFileDestinationOptions
            .FormatOptions = CrFormatTypeOptions
        End With
        cryRpt.Export()
    Catch ex As Exception
        MsgBox(ex.ToString)
    End Try

End Sub

结束班

我尝试了上面的代码。 我的项目文件夹中有一个Windows窗体和一个Crystal报表文件(cr.rpt)。 我正在使用Oracle 10G作为数据库。 但是我收到一条错误,说“登录失败”。 ([错误描述]图片: http//pho.to/Zv6t

请帮忙。

终于从这里找到了解决方案

唯一的问题是,我需要在运行时设置数据库凭据才能使Crystal Report正常工作。

cryRpt.SetDatabaseLogon("user", "password", "server", "database")

这个常见问题只发生在从VB到.Net世界的旧版CrystalReports调用者身上。

没什么好担心的。 请这样使用.........

connectionInfo.DatabaseName = "MahendrenDataBase"

connectionInfo.ServerName ="SystemDSN";//Create a system dsn.

connectionInfo.UserID = "UID";

connectionInfo.Password="Pwd"

导入CrystalDecisions.CrystalReports.Engine

导入CrystalDecisions.Shared

Dim rpt As New RptCashbill

        ''''''fill Report data''''''
  CType(rpt,ReportDocument).ExportToDisk(ExportFormatType.PortableDocFormat,"C:/Report.pdf")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM