none
Como Pasar a un Crystal Report datos de Base de datos y de TextBox? RRS feed

  • Pregunta

  • hola a todos.. lo que me gustaría saber es como puedo hacer para pasar datos de un textBox a un crystal report? conjuntamente con un DataSet.. yo actualmente estoy pasando tres tablas a trabes de consultas y filtros sobre la base de datos.. ahora lo que necesito es pasar 2 textBox al crystal report.. ya que serian los datos que me están faltando para terminar el reporte... saludos y espero que me puedan ayudar.. desde ya muchas gracias!
    • Cambiado Enrique M. Montejo miércoles, 14 de diciembre de 2011 11:01 consulta sobre Crystal Repots (De:Lenguaje VB.NET)
    miércoles, 28 de abril de 2010 22:49

Respuestas

Todas las respuestas

  • hola

    puedes pasarselo por medio de parametros

    en estos link encontraras como realizar esta operacion

     

    Passing Multiple Parameters to a Crystal Report Programmatically

    Page 2 - Working with Parameters with Crystal Reports and ASP.NET 2.0

    Tip: How to pass Crystal Report Parameters Programmatically?

     

    el parametro es un valor simple que puedes asignar, es mas en crystal hay una session en la opciones del menu de la izquierda del VS donde esta la toolbox, alli defines los parametros que pueds arrastrar y mostrarlos en el reportes si lo deseas

     

    tambien de este link

    Crystal Reports Para Visual Studio.net Visual Basic.net Eidos

    pagina 79

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    jueves, 29 de abril de 2010 0:21
  • Hola Leandro logre mandar un parametro al reporte.. sin que me aparezca la ventana pidiendome el dato.. de esta manera.. 

    Private Sub Analitico_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    ' Crear los Objetos(Parametros)
        Dim decretos As ParameterFields = New ParameterFields()
        Dim decreto As ParameterField = New ParameterField()
        Dim myDiscreteValue As ParameterDiscreteValue = New ParameterDiscreteValue()
    
        ' Colocar el "nombre" del parametro agregado en el reporte
        ' en la seccion "campo de parametro"
        decreto.ParameterFieldName = "Decreto"
    
        ' Agrega el Primer valor
        myDiscreteValue.Value = My.Forms.EstadoAlumnoForm.decreto
        decreto.CurrentValues.Add(myDiscreteValue)
    
        'Agregar el Parametro al Reporte
        decretos.Add(decreto)
    
        ' Assign the params collection to the report viewer
        CrystalReportViewer5.ParameterFieldInfo = decretos
     End Sub

    Pero cuando quiero agregar 2 parametros al mismo tiempo, me aparece la ventana pidiendome el dato.. lo que no quiero que paso.. ya que estoy llevando el dato de la misma manera que el anterior... aca te dejo el codigo de 2 parametros:

     Private Sub Analitico_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        ' Crear los Objetos(Parametros)
        Dim decretos As ParameterFields = New ParameterFields()
        Dim decreto As ParameterField = New ParameterField()
        Dim myDiscreteValue As ParameterDiscreteValue = New ParameterDiscreteValue()
    
        ' Colocar el "nombre" del parametro agregado en el reporte
        ' en la seccion "campo de parametro"
        decreto.ParameterFieldName = "Decreto"
    
        ' Agrega el Primer valor
        myDiscreteValue.Value = My.Forms.EstadoAlumnoForm.decreto
        decreto.CurrentValues.Add(myDiscreteValue)
    
        'Agregar el Parametro al Reporte
        decretos.Add(decreto)
    
        ' Assign the params collection to the report viewer
        CrystalReportViewer5.ParameterFieldInfo = decretos
    
        '-------------------------------------------------
        'CARGO SEGUNDO PARAMETRO
        '
        Dim carreras As ParameterFields = New ParameterFields()
        Dim carrera As ParameterField = New ParameterField()
        Dim myDiscreteValue1 As ParameterDiscreteValue = New ParameterDiscreteValue()
    
        carrera.ParameterFieldName = "carrera"
    
        myDiscreteValue1.Value = My.Forms.EstadoAlumnoForm.carrera
        carrera.CurrentValues.Add(myDiscreteValue1)
    
        carreras.Add(carrera)
        CrystalReportViewer5.ParameterFieldInfo = carreras
         '-------------------------------------------------
    
        Dim datos As DataSet1 = Class3.LeerDatos
        Dim report As New CrystalReport5
        report.SetDataSource(datos)
        CrystalReportViewer5.ReportSource = report
    
    End Sub
    me podes decir que estoy haciendo mal?? desde ya muchas gracias...

    miércoles, 26 de mayo de 2010 0:04
  • Hola:
    En tu fichero RPT de Crystal, añade 2 campos de parametro.
    En donde cargas tu fichero RPT(msFicheroRPT) en el ReportDocument(rdInforme),
    una sentencia parecida a esta - Me.rdInforme.Load(msFicheroRPT)
    escribe el siguiente codigo:
    Dim lsCampo1 as String="Primer Campo"
    Dim lsCampo2 as String="Segundo Campo"

    'Se pasa sus valores a los campos parametros
    Me.rdInforme.SetParameterValue(0, lsCampo1)
    Me.rdInforme.SetParameterValue(1, lsCampo1)

    Luego tienes que asignar el ReportDocument(rdInforme) al CrystalReportViewer(crvInforme)
    con una sentencia como esta - Me.crvInforme.ReportSource = Me.rdInforme

    Espero que se entienda
    Un saludo desde Bilbo
    Carlos

    miércoles, 26 de mayo de 2010 8:26
  • encontre la solucion.. era usar un poco de logica nada mas jejej aca dejo detallado la carga de 2 Parametros...

        '-------------------------------------------------
        Dim Parametros As ParameterFields = New ParameterFields()
        Dim carrera As ParameterField = New ParameterField() 'Parametro Carrera
        Dim decreto As ParameterField = New ParameterField() 'Parametro Decreto
        Dim myDiscreteValue1 As ParameterDiscreteValue = New ParameterDiscreteValue()
        Dim myDiscreteValue As ParameterDiscreteValue = New ParameterDiscreteValue()
    
        'Nombre del Parametro definido dentro de "Campos de Parametros" del Crystal..
        carrera.ParameterFieldName = "carrera"
        decreto.ParameterFieldName = "Decreto"
    
        'Paso los Datos
        myDiscreteValue.Value = " Decreto Nº 16/44 " 
        myDiscreteValue1.Value = " Abogacia " 
        decreto.CurrentValues.Add(myDiscreteValue)
        carrera.CurrentValues.Add(myDiscreteValue1)
    
        'Cargo los parametros y los envio al Crystal
        Parametros.Add(carrera)
        Parametros.Add(decreto)
        CrystalReportViewer5.ParameterFieldInfo = Parametros
        '---------------------------------------------------
    de esta Manera tranquilamente podes llevar la cantidad de Parámetros que quieras.. previamente haberlos definidos dentro del crystal report... en la sección de Campos de Parámetros.. después es todo como el código que les dejo.. gracias por su ayuda.. hasta pronto..

    jueves, 27 de mayo de 2010 19:55
  • podrias explicar un poco mas el codigo por favor ...
    miércoles, 14 de diciembre de 2011 2:25