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 ^^
Kamis, 26 April 2012
Langganan:
Posting Komentar (Atom)
0 komentar:
Posting Komentar