2013-01-15 12 views
6
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 

End ClassJak programowo wyeksportować raport kryształowego jako PDF w VB.NET

Próbowałem powyższy kod. Mam jeden plik Windows Form i pojedynczy plik raportu Crystal (cr.rpt) w moim folderze projektu. Używam Oracle 10G jako bazy danych. Ale otrzymuję komunikat o błędzie "Logowanie nie powiodło się". ([Opis błędu] Image: http://pho.to/Zv6t)

Pls pomagają.

+0

This jest prawdopodobnie dlatego, że nie powiedziałeś raportu, jakie są dane uwierzytelniające do połączenia z bazą danych. Ustawiasz je na projekt do projektowania raportu, ale musisz powtórzyć raport w czasie wykonywania. –

+0

@ Ciarán Czy możesz mi powiedzieć, gdzie ustawić dane uwierzytelniające? Jestem nowy w VB.NET i Crystal Reports. A także dowolny przykład kodu do ustawienia w Runtime? –

+0

Dzięki wam. Znaleziono rozwiązanie z [tutaj] (http://stackoverflow.com/questions/12486925/crystal-reports-how-to-set-database-credentials) –

Odpowiedz

1

końcu znaleźć rozwiązanie z here

Jedyną rzeczą jest to, że trzeba ustawić poświadczenia bazy danych w czasie wykonywania do raportu kryształowe do pracy w porządku.

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

Zwykły problem dotyczy tylko starszej wersji wywołującego CrystalReports z VB do świata .Net.

Nic się nie martwi. Proszę używać tak .........

connectionInfo.DatabaseName = "MahendrenDataBase" 

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

connectionInfo.UserID = "UID"; 

connectionInfo.Password="Pwd" 
0

Imports CrystalDecisions.CrystalReports.Engine

Imports CrystalDecisions.Shared

Dim RPT jako nowe RptCashbill

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