locked
Programmatically set Custom Paper Size for Crystal Report..seriously urgent RRS feed

  • Question

  •  This a request for some seriously urgent help please…...

    I have created custom paper Size "XPaperSize 15 x 12" in   Setting - Printers - File - Sever Properties.

    In VB .net 2005 I’m trying to set custom Paper Size for Crystal Report

    My problem is when I run report from Vb .net , Crystal report viewer showing correct preview for custom paper size but when I give print command it's print default printer paper size
    e.g Letter size

    Here's the code I'm using to print:

    Dim ObjCrReport as new ReportDocument
    .
    .
    .
    ObjCrReport.SetDataSource(ObjPrintDataSet.Tables("PrintData"))
    SetReportPageSize("XPaperSize 15 x 12", 1) ' call Procedure for setting Custom Paper Size

    End Sub
    .

    Private Sub BtnPrintDoc_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnPrintDoc.Click
    Try
    ObjCrReport.PrintToPrinter(1, False, 0, 0) ‘ Print command
    Catch ex As Exception
    MessageBox.Show(ex.Message, "Alert", MessageBoxButtons.OK, MessageBoxIcon.Error)
    End Try
    End Sub

    .
    Public Sub SetReportPageSize(ByVal mPaperSize As String, ByVal PaperOrientation As Integer)
    Try
    Dim ObjPrinterSetting As New System.Drawing.Printing.PrinterSettings
    Dim PkSize As New System.Drawing.Printing.PaperSize
    ObjPrinterSetting.PrinterName = "Epson FX1170"
    For i As Integer = 0 To ObjPrinterSetting.PaperSizes.Count - 1
    If ObjPrinterSetting.PaperSizes.Item(i).PaperName = mPaperSize.Trim Then
    PkSize = ObjPrinterSetting.PaperSizes.Item(i)
    Exit For
    End If
    Next

    If PkSize IsNot Nothing Then
    Dim myAppPrintOptions As CrystalDecisions.CrystalReports.Engine.PrintOptions = ObjCrReport.PrintOptions
    myAppPrintOptions.PrinterName = "Epson FX1170"
    myAppPrintOptions.PaperSize = CType(PkSize.RawKind, CrystalDecisions.Shared.PaperSize)
    ObjCrReport.PrintOptions.PaperOrientation = IIf(PaperOrientation = 1, CrystalDecisions.Shared.PaperOrientation.Portrait, CrystalDecisions.Shared.PaperOrientation.Landscape)

    End If
    PkSize = Nothing
    Catch ex As Exception
    MessageBox.Show(ex.Message, "Alert", MessageBoxButtons.OK, MessageBoxIcon.Error)
    End Try
    End Sub



    If I used “myAppPrintOptions.PaperSize = PaperSize.PaperLegal” then print preview & Printing coming correct, but i want to set custom paper size which is not shoing in PaperSize. class.

    What’s wrong with above code ? why it’s printing Letter Size where Cystal preview showing custom paper size preview ? & How to set Crystal Report Printer Paper Size ????

    Any other solution or Method ???


    Any codes help would be greatly appreciated

    Thanks in Advance
    • Moved by Michael Sun [MSFT]Microsoft employee Friday, November 14, 2008 12:28 PM Off Topic here (Moved from Crystal Reports for Visual Studio to Off-Topic Posts (Do Not Post Here))
    Saturday, November 8, 2008 7:01 AM

Answers

All replies