codigo para imprimir textbox a un reporte de crystal reports

17
CODIGO PARA IMPRIMIR TEXTBOX A UN REPORTE DE CRYSTAL REPORTS: Código vb: Ver original 1. Imports CrystalDecisions.CrystalReports.Engine 2. Imports System.Data 3. Imports System.Data.SqlClient 4. Imports CrystalDecisions.Shared 5. Partial Class TextViewer 6. Inherits System.Web.UI.Page 7. 8. Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click 9. 10. Dim parametros As New List(Of RouteParameter) 11. 12. 13. parametros.Add(New RouteParameter("rpe", Text_rpe.Text)) 14. 15. parametros.Add(New RouteParameter("nombre", Text_nombre.Text)) 16. 17. 18. Me.CRVAwiwi.ReportSource = Server.MapPath("TextViewer.rpt") 19. 20. Me.CRVAwiwi.RefreshReport() 21. End Sub 22. End Class

Upload: omar-jimenez

Post on 08-Nov-2014

339 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Codigo Para Imprimir Textbox a Un Reporte de Crystal Reports

CODIGO PARA IMPRIMIR TEXTBOX A UN REPORTE DE CRYSTAL REPORTS:

Código vb:Ver original

1. Imports CrystalDecisions.CrystalReports.Engine2. Imports System.Data3. Imports System.Data.SqlClient4. Imports CrystalDecisions.Shared5. Partial Class TextViewer6. Inherits System.Web.UI.Page7. 8. Protected Sub Button1_Click(ByVal sender As

Object, ByVal e As System.EventArgs) Handles Button1.Click

9. 10. Dim parametros As New List(Of

RouteParameter)11. 12. 13. parametros.Add(New RouteParameter("rpe",

Text_rpe.Text))14. 15. parametros.Add(New

RouteParameter("nombre", Text_nombre.Text))16. 17. 18. Me.CRVAwiwi.ReportSource =

Server.MapPath("TextViewer.rpt")19. 20. Me.CRVAwiwi.RefreshReport()21. End Sub22. End Class

Page 2: Codigo Para Imprimir Textbox a Un Reporte de Crystal Reports

Saludos:

Esto te puede orientar:

Dim RpDatos As New CrystalDecisions.Shared.ParameterValues Dim DsNombre As New CrystalDecisions.Shared.ParameterDiscreteValue()Dim DsTelefono As New CrystalDecisions.Shared.ParameterDiscreteValue()Dim MyReporte As New ElReporte '--> ElReporte es el nombre del archivo RPT

DsNombre.Value = TextBox1.TextDsTelefono.Value = TextBox2.Text

'PCliente es el Parametro creado en el reporteRpDatos.Add(DsNombre)MyReporte.DataDefinition.ParameterFields("PCliente ").ApplyCurrentValues(RpDatos)RpDatos.Clear()

RpDatos.Add(DsTelefono)MyReporte.DataDefinition.ParameterFields("PTelefon o").ApplyCurrentValues(RpDatos)RpDatos.Clear()

'Aqui lo envias a la forma y el Viewer

With Form1.CrystalReportViewer1.ReportSource = MyReporte.Show()End With

Page 3: Codigo Para Imprimir Textbox a Un Reporte de Crystal Reports

Debes importar :

CrystalDecisions.CrystalReports.EngineCrystalDecisions.SharedCrystalDecisions.ReportSource

Espero ayude.

Imports CrystalDecisions.Web

Imports CrystalDecisions.CrystalReports.Engine

Imports CrystalDecisions.Shared

Partial Class VariosText

Inherits System.Web.UI.Page

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim rep As ReportDocument = New ReportDocument

rep.Load(Server.MapPath("TextCrystal.rpt"))

Dim nombre As ParameterDiscreteValue = New ParameterDiscreteValue

nombre.Value = TextBox1.Text

Dim Edad As ParameterDiscreteValue = New ParameterDiscreteValue

Edad.Value = TextBox2.Text

rep.ParameterFields(0).CurrentValues.Add(nombre)

rep.ParameterFields(1).CurrentValues.Add(Edad)

Me.CRVTextBox.ReportSource = rep

Me.CRVTextBox.DataBind()

Page 4: Codigo Para Imprimir Textbox a Un Reporte de Crystal Reports

End Sub

End Class

Imports CrystalDecisions.Web

Imports CrystalDecisions.CrystalReports.Engine

Imports CrystalDecisions.Shared

Partial Class NuevoText

Inherits System.Web.UI.Page

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim param1Fileds As New CrystalDecisions.Shared.ParameterFields

Dim param1Field As New CrystalDecisions.Shared.ParameterField

Dim param1Range As New CrystalDecisions.Shared.ParameterDiscreteValue

Dim param2Fileds As New CrystalDecisions.Shared.ParameterFields

Dim param2Field As New CrystalDecisions.Shared.ParameterField

Dim param2Range As New CrystalDecisions.Shared.ParameterDiscreteValue

Dim param3Fileds As New CrystalDecisions.Shared.ParameterFields

Dim param3Field As New CrystalDecisions.Shared.ParameterField

Dim param3Range As New CrystalDecisions.Shared.ParameterDiscreteValue

param1Field.ParameterFieldName = "rpe"

param1Range.Value = TextBox1.Text

param1Field.CurrentValues.Add(param1Range)

Page 5: Codigo Para Imprimir Textbox a Un Reporte de Crystal Reports

param1Fileds.Add(param1Field)

CRVText.ParameterFieldInfo = param1Fileds

param2Field.ParameterFieldName = "nombre"

param2Range.Value = TextBox2.Text

param2Field.CurrentValues.Add(param2Range)

param2Fileds.Add(param2Field)

CRVText.ParameterFieldInfo = param2Fileds

param3Field.ParameterFieldName = "edad"

param3Range.Value = TextBox3.Text

param3Field.CurrentValues.Add(param3Range)

param3Fileds.Add(param3Field)

CRVText.ParameterFieldInfo = param3Fileds

Me.CRVText.ReportSource = ("TextViewer.rpt")

End Sub

End Class

Envio de parámetros discretos de VB.NET a Crystal Reports.

enero 24, 2011ka0stj Deja un comentario Go to comments Hola colegas, la siguiente información que quiero compartir con ustedes es el envio de parámetros discretos desde una aplicación de VB.NET a un reporte de Crystal Reports. Lo mencionado anteriormente puede tener diversos usos, en mi caso yo lo utilicé para evitar esa pantalla propia de Crystal Reports de captura de parámetros discretos. Ahora bien entremos a lo que nos interesa, lo primero que tenemos es un nuevo proyecto:

Page 6: Codigo Para Imprimir Textbox a Un Reporte de Crystal Reports

Seleccionamos Windows Forms Application.

Agregamos 2 labels, 2 textbox, y un botón. Los textbox los nombramos como tbPrimerParametro y tbSegundoParametro, el botón como btnReporte. La apariencia debe ser similar a la siguiente:

Page 7: Codigo Para Imprimir Textbox a Un Reporte de Crystal Reports

Agregamos un nuevo Item.

Seleccionamos Reporting, Crystal Report y dejamos el nombre tal y como esta.

Page 8: Codigo Para Imprimir Textbox a Un Reporte de Crystal Reports

Abrimos el Item Crystal Report que acabamos de agregar.

Agregamos el número de parámetros discretos que queremos enviar a nuestro reporte, para este ejemplo solo agregamos 2. Para ello en Field Explorer, Parameter Field damos botón derecho, new.

Page 9: Codigo Para Imprimir Textbox a Un Reporte de Crystal Reports

En la pantalla que nos mostrará nos pide que asignemos un nombre, un prompting text, un value type (tipo de dato) y mas abajo seleccionamos Discrete value(s) y damos Ok. Una vez creados nuestros parámetros discretos los colocamos en la sección Page Header.

Agregamos un nuevo Form el cual sera en que contendrá nuestro ReportViewer y lo nombramos como MiReporte.

Page 10: Codigo Para Imprimir Textbox a Un Reporte de Crystal Reports

Abrimos nuestro Form MiReporte y agregamos un elemento CrystalReportViewer de nuestra barra Toolbox quedando algo similar a lo siguiente.

Hasta ahora ya agregamos todo lo necesario hablando de la parte gráfica de nuestra pequeña aplicación, solo resta agregar el código necesario para darle el funcionamiento. Seleccionamos el form que contiene los textbox y presionamos F7 para dejar la vista de diseño e ir al código y agregamos lo siguiente:

Page 11: Codigo Para Imprimir Textbox a Un Reporte de Crystal Reports

Primero importamos la libreria que necesitaremos.

Imports CrystalDecisions.Shared

Creamos las siguientes variables. Ojo los nombres de los parámetros discretos que aquí asignemos deben ser los mismos que fueron creados en el reporte.

Dim Parametros As ParameterFields = New ParameterFields()

Dim PrimerParametro As ParameterField = New ParameterField()

Dim SegundoParametro As ParameterField = New ParameterField()

Dim myDiscreteValue1 As ParameterDiscreteValue = New ParameterDiscreteValue()

Dim myDiscreteValue As ParameterDiscreteValue = New ParameterDiscreteValue()

Creamos el siguiente método Sub.

Public Sub LlenarReporte()

Page 12: Codigo Para Imprimir Textbox a Un Reporte de Crystal Reports

‘Creo una instancia de mi Reporte

Dim info As New CrystalReport1

‘info.SetDataSource(MiDataSetDatos)

MiReporte.CrystalReportViewer1.ReportSource = info

End Sub

Damos doble click en el botón btnReporte y ponemos lo siguiente.

‘Nombre del Parametro definido dentro de “Campos de Parametros” del Crystal..

PrimerParametro.ParameterFieldName = “PrimerParametro”

SegundoParametro.ParameterFieldName = “SegundoParametro”

‘Paso los Datos

myDiscreteValue1.Value = Me.tbPrimerParametro.Text

Page 13: Codigo Para Imprimir Textbox a Un Reporte de Crystal Reports

myDiscreteValue.Value = Me.tbSegundoParametro.Text

PrimerParametro.CurrentValues.Add(myDiscreteValue1)

SegundoParametro.CurrentValues.Add(myDiscreteValue)

‘Cargo los parametros y los envio al Crystal

Parametros.Add(PrimerParametro)

Parametros.Add(SegundoParametro)

MiReporte.CrystalReportViewer1.ParameterFieldInfo = Parametros

LlenarReporte()

MiReporte.ShowDialog()

Ahora bien, solo resta probar nuestra aplicación. El resultado es algo similar a lo siguiente:

Page 14: Codigo Para Imprimir Textbox a Un Reporte de Crystal Reports

Espero y les sea de utilidad. Saludos!LINK: http://ka0stj.wordpress.com/2011/01/24/envio-de-parametros-discretos-de-vb-net-a-crystal-reports/

CODIGO PARA IMPRIMIR UN DATAGRIDWIEV:

Private Sub Imprimir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

Handles Imprimir.Click

'Invoco al procedimiento que llena los datos del reporte

Page 15: Codigo Para Imprimir Textbox a Un Reporte de Crystal Reports

Cargar_Crystal()

'Abro el formulario que contiene el reporte

Form1.ShowDialog()

End Sub

Private Sub Cargar_Crystal()

'El CrystalReport1 es el nombre de mi archivo reporte CrystalReport1.rpt

Dim rdInforme As New CrystalReport1

'El dtTabla es mi DataTable que contiene los datos del DataGridView llenado anteriormente

rdInforme.SetDataSource(dtTabla)

'El Form1 es el formulario que contiene el visor llamado CrystalReportViewer1

Form1.CrystalReportViewer1.ReportSource = rdInforme

End Sub

LINK: http://adryfab.wordpress.com/2011/05/11/crear-un-informe-crystal-report-a-partir-de-un-datagridview/