Solved

I want to do a batch Convert of all Crystal Report files into PDF

Posted on 2004-10-21
672 Views
Last Modified: 2008-02-01
Basically I want to convert every crystal report file (.rpt) that is in a certain folder into a pdf.  I set up a VB.NET Windows form for a button click to just try with one report first, then eventually I want  change to loop through all records when I can get this one working.  

Would this be the correct way to do it?  Errors it shows for me are
CRAXDRT.Application is not defined
CRAXDRT.Report is not defined
crEDTDiskFile is not declared
crEFTPortableDocFormat is not declared

Here is the code.
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Transformation.Click
        Dim appl As New CRAXDRT.Application
        Dim rep As CRAXDRT.Report
        rep = appl.OpenReport("c:\mytest.rpt", 1)
        rep.ExportOptions.DiskFileName = "c:\pdf_report.pdf"
        rep.ExportOptions.DestinationType = crEDTDiskFile
        rep.ExportOptions.FormatType = crEFTPortableDocFormat
        rep.Export(False)
    End Sub

Please help?  Thanks ahead of time vikingg97
0
Question by:vikingg97
    4 Comments
     
    LVL 1

    Author Comment

    by:vikingg97
    No one to help?
    0
     
    LVL 42

    Accepted Solution

    by:
    Is this the same question we're already working on in the Crystal forum?

    frodoman
    0
     
    LVL 1

    Author Comment

    by:vikingg97
    Same question but thought I might have posted wrong area.  
    In reference to this question-
    http://www.experts-exchange.com/Databases/Crystal_Reports/Q_21177382.html

    I guess though I have another question on this one, so will post here.  

    Here is what I have now which comes up with this error.  
    An unhandled exception of type 'CrystalDecisions.CrystalReports.Engine.LoadSaveReportException' occurred in crystaldecisions.crystalreports.engine.dll

    Additional information: Invalid report file path.

    Its when it comes to this line  
    'Set export options
    CrExportOptions = CrReport.ExportOptions

    I am not sure if its this line I am doing wrong which results in the above or not?
    ---Dim CrReport As New ReportDocument

    Also on this line how do I send in the report name in place of justwork?  
    'Set the destination path and file name
    CrDiskFileDestinationOptions.DiskFileName = "c:\justwork.pdf"

    This didn't work "c:\" & CRReport & ".pdf"

    :::::::::::CODE:::::::::
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            'Place the following name spaces at the top of the code page
            Dim fileList() As String = System.IO.Directory.GetFiles("C:\Inetpub\wwwroot\MCNetwebsite\IT_Work")

            For Each fileSource As String In fileList
                If Strings.Right(fileSource, 4) = ".rpt" Then
                    'Crystal Export Code Here
                    Dim CrReport As New ReportDocument
                    Dim CrExportOptions As ExportOptions
                    Dim CrDiskFileDestinationOptions As New DiskFileDestinationOptions
                    Dim CrFormatTypeOptions As New PdfRtfWordFormatOptions

                    'Set the destination path and file name
                    CrDiskFileDestinationOptions.DiskFileName = "c:\justwork.pdf"

                    'Specify a page range (optional)
                    CrFormatTypeOptions.FirstPageNumber = 1
                    CrFormatTypeOptions.LastPageNumber = 3
                    CrFormatTypeOptions.UsePageRange = True

                    'Set export options
                    CrExportOptions = CrReport.ExportOptions

                    With CrExportOptions
                        'Set the destination to a disk file
                        .ExportDestinationType = ExportDestinationType.DiskFile
                        'Set the format to PDF
                        .ExportFormatType = ExportFormatType.PortableDocFormat
                        'Set the destination options to DiskFileDestinationOptions object
                        .DestinationOptions = CrDiskFileDestinationOptions
                        .FormatOptions = CrFormatTypeOptions
                    End With

                    ' Trap any errors that occur on export
                    Try
                        'Export the report
                        CrReport.Export()
                    Catch err As Exception
                        MessageBox.Show(err.ToString())
                    End Try

                End If
            Next
        End Sub

    Thanks in advance.
    0
     
    LVL 1

    Author Comment

    by:vikingg97
    Any help frodoman?  Anyone?
    0

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    Do You Know the 4 Main Threat Actor Types?

    Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

    If you're writing a .NET application to connect to an Access .mdb database and use pre-existing queries that require parameters, you've come to the right place! Let's say the pre-existing query(qryCust) in Access takes a Date as a parameter and l…
    A while ago, I was working on a Windows Forms application and I needed a special label control with reflection (glass) effect to show some titles in a stylish way. I've always enjoyed working with graphics, but it's never too clever to re-invent …
    Need more eyes on your posted question? Go ahead and follow the quick steps in this video to learn how to Request Attention to your question. *Log into your Experts Exchange account *Find the question you want to Request Attention for *Go to the e…
    Sending a Secure fax is easy with eFax Corporate (http://www.enterprise.efax.com). First, Just open a new email message.  In the To field, type your recipient's fax number @efaxsend.com. You can even send a secure international fax — just include t…

    884 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    21 Experts available now in Live!

    Get 1:1 Help Now