Kamis, 26 April 2012

Crystal Report Vb.Net Using Dotmatrix Printer

saat anda ingin membuat crystal report yang akan di print di printer dot matrix, maka akan ada  KENDALA seperti :
- saat di print akan mengikuti format default A4 (walaupun sudah di setting di control panel -> printer bahwa halamanya adalah dotmatrix misal 12x14 pixel)


SOLUSI CODE untuk for crystal reportnya akan seperti ini :

rptDoc = New CR_Kwitansi
        rptDoc.SetDataSource(dt_rfkwitansi)
        CRViewer_Kwitansi.ReportSource = rptDoc

        Dim doctoprint As New System.Drawing.Printing.PrintDocument()
        doctoprint.PrinterSettings.PrinterName = "YOURPRINTERNAME" '(ex. "
        'EPSON LX-300+II ESC/P")
        For i As Integer = 0 To doctoprint.PrinterSettings.PaperSizes.Count - 1
            Dim rawKind As Integer
            If doctoprint.PrinterSettings.PaperSizes(i).PaperName = "MyCustomFormatName" Then
                rawKind = CInt(doctoprint.PrinterSettings.PaperSizes(i).GetType().GetField("kind", Reflection.BindingFlags.Instance Or Reflection.BindingFlags.NonPublic).GetValue(doctoprint.PrinterSettings.PaperSizes(i)))
                rptDoc.PrintOptions.PaperSize = rawKind
                Exit For
            End If
        Next

        rptDoc.PrintToPrinter(1, False, 1, 1)
        Me.Close()


*) pada halaman tersebut akan di lakukan pencarian terhadap format yg sdh diatur di VB.Net, tanpa fungsi tersebut, maka halaman defaultnya adalah A4


*) form untuk print kwitansi sebaiknya dibuat terpisah, dengan adanya code diatas maka form tersebut akan di load, lalu  namun akan langsung di close karena ada perintah Me.Close() di akhir code. 


semoga bermanfaat ^^
Categories:

0 komentar:

Posting Komentar