Fijar tamaño por codigo Crystal Report 2015
Publicado por djnilo (19 intervenciones) el 10/01/2017 16:55:59
buenas tardes
señores programadores tengo una duda con crystal report 2015 el que biene con visual studio 2015 resulta que trato de dejar por defecto la hoja mi impresora epson TM - T88III Tamaño hoja 80mm x 297mm ese el tamaño de la hoja por alguna extraña razon la cambia al imprimir el tamaño a esta otra tamaño LT 8.5 x 11 in
entoces he probado todo lo que conosco yo investigado y nada deje por defecto la el tamaño de hoja que necesito que es 80mm x 297mm en el crystal report igual nada la puse diasociar impresor le puse todo nada

tratando por internet econtre este codigo trate adaptarlo mis necesidades pero no se como hacer por codigo el tamaño de hoja
este codigo leo puese en el load del formulario me parece que esta mal
presiono imprimir y me sigue tirando el otro papel (tamaño LT 8.5 x 11 in) no corresponde
funcion que puse en el mismo formulario
le puse un nombre al tamaño de hoja nombre (papel)lo deje por defecto pero nada
señores programadores tengo una duda con crystal report 2015 el que biene con visual studio 2015 resulta que trato de dejar por defecto la hoja mi impresora epson TM - T88III Tamaño hoja 80mm x 297mm ese el tamaño de la hoja por alguna extraña razon la cambia al imprimir el tamaño a esta otra tamaño LT 8.5 x 11 in
entoces he probado todo lo que conosco yo investigado y nada deje por defecto la el tamaño de hoja que necesito que es 80mm x 297mm en el crystal report igual nada la puse diasociar impresor le puse todo nada

tratando por internet econtre este codigo trate adaptarlo mis necesidades pero no se como hacer por codigo el tamaño de hoja
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Private Sub FrmVerBoleta_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Try
Dim print_name As String = "EPSON TM-T88III Receipt"
'Obtener nombre de hoja personalizada
Dim print_paper As String = "Papel"
'Opciones del Crystal Report
Dim repOptions As CrystalDecisions.CrystalReports.Engine.PrintOptions
'Se aplican al informe
With oRepo
'Se obtienen la opciones de impresion
repOptions = .PrintOptions
'Se setean las opciones
With repOptions
'Obtiene el id del papel --> utiliza una función especial
.PaperSize = GetPapersizeID(print_name, print_paper)
'Señala la impresora a utilizar
.PrinterName = print_name
End With
oRepo.Load(Application.StartupPath & "\RptBoleta.rpt")
oRepo.SetDataSource(oDatos)
Me.CrvBoleta.ReportSource = oRepo
End With
Catch ex As Exception
MessageBox.Show(ex.Message, "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
este codigo leo puese en el load del formulario me parece que esta mal
presiono imprimir y me sigue tirando el otro papel (tamaño LT 8.5 x 11 in) no corresponde
funcion que puse en el mismo formulario
le puse un nombre al tamaño de hoja nombre (papel)lo deje por defecto pero nada
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Public Function GetPapersizeID(ByVal PrinterName As String, ByVal PaperSizeName As String) As Integer
Dim pdprint As New System.Drawing.Printing.PrintDocument()
Dim PaperSizeID As Integer = 0
Dim ppname As String = ""
pdprint.PrinterSettings.PrinterName = PrinterName
For i As Integer = 0 To pdprint.PrinterSettings.PaperSizes.Count - 1
Dim rawKind As Integer
ppname = PaperSizeName
If pdprint.PrinterSettings.PaperSizes(i).PaperName = ppname Then
rawKind = CInt(pdprint.PrinterSettings.PaperSizes(i).RawKind)
PaperSizeID = rawKind
Exit For
End If
Next
Return PaperSizeID
End Function
Valora esta pregunta


0