Foros del Web » Programación para mayores de 30 ;) » .NET »

Asp.net C# ReportViewer problema al pasar parametros

Estas en el tema de Asp.net C# ReportViewer problema al pasar parametros en el foro de .NET en Foros del Web. Hola muchachos este es mi primer post aqui, ya que tengo una duda : Tengo un Reporte de ReportViewer en asp.net bajo c# , cuando ...
  #1 (permalink)  
Antiguo 20/06/2009, 17:37
 
Fecha de Ingreso: junio-2009
Mensajes: 3
Antigüedad: 14 años, 10 meses
Puntos: 0
Asp.net C# ReportViewer problema al pasar parametros

Hola muchachos este es mi primer post aqui, ya que tengo una duda :

Tengo un Reporte de ReportViewer en asp.net bajo c# , cuando paso un solo parametro (en otros reportes) el metodo me funsiona super bien de hecho me muestra los datos con el "unico" filtro que le dí. El problema es que ahora necesito hacer un reporte en el cual me filtre fechas y me de los datos que estan entremedio de ellos. He creado un Dataset con los datos que necesito que aparescan , mi reporte se llama ListadoDeArriendosPorFecha.xsd y mi reporte se llama ListadoDeArriendosPorFecha.rdlc si ejecuta la consulta del Dataset en el editor me funsiona perfectamente.

mi codigo en C# es el siguiente:

Código:
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

public partial class Intranet_Informes_ListadoDeArriendosPorFecha : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }


    protected void FiltrarEventos()
    {

        // LE PASO EL NOMBRE DE MI TABLE ADAPTER DENTRO DEL DATASET
        ObjectDataSource ods =
        new ObjectDataSource("ListadoDeArriendosPorFechaTableAdapters.ListadoDeArriendosPorFechaTableAdapter", "GetData");
        ods.SelectParameters.Add("FechaInicial", TxtFechaInicial.Text);
        ods.SelectParameters.Add("FechaFinal", TxtFechaFinal.Text);


        //LE DOY EL NOMBRE DE MI XSD (DATASET)
        Microsoft.Reporting.WebForms.ReportDataSource rds2 =
        new Microsoft.Reporting.WebForms.ReportDataSource("ListadoDeArriendosPorFecha_ListadoDeArriendosPorFecha", ods);

        RptArriendo.LocalReport.DataSources.Clear();
        RptArriendo.LocalReport.DataSources.Add(rds2);
        //LE DOY LA RUTA DE MI XSD (DATASET)
        RptArriendo.LocalReport.ReportPath = "Intranet/Informes/ListadoDeArriendosPorFecha.rdlc";
        RptArriendo.LocalReport.Refresh();
    }


    protected void BtnBuscar_Click(object sender, EventArgs e)
    {

        FiltrarEventos();

    }

}
Al momento de mostrar el reporte no se absolutamente nada ni siquiera la barra de herramientas y me da el siguiente error:

Error al procesar el informe.
El valor del parámetro 'FechaFinal' no se puede convertir de 'System.String' a 'System.DateTime'

he probado de todas las formas de hecho pasando los Text a DateTime
Código:
protected void FiltrarEventos()
    {
        DateTime FechaInicial = Convert.ToDateTime(TxtFechaInicial.Text);
        DateTime FechaFinal = Convert.ToDateTime(TxtFechaFinal.Text);
        // LE PASO EL NOMBRE DE MI TABLE ADAPTER DENTRO DEL DATASET
        ObjectDataSource ods =
        new ObjectDataSource("ListadoDeArriendosPorFechaTableAdapters.ListadoDeArriendosPorFechaTableAdapter", "GetData");
        ods.SelectParameters.Add("FechaInicial", FechaInicial.ToShortDateString());
        ods.SelectParameters.Add("FechaFinal", FechaFinal.ToShortDateString());


        //LE DOY EL NOMBRE DE MI XSD (DATASET)
        Microsoft.Reporting.WebForms.ReportDataSource rds2 =
        new Microsoft.Reporting.WebForms.ReportDataSource("ListadoDeArriendosPorFecha_ListadoDeArriendosPorFecha", ods);

        RptArriendo.LocalReport.DataSources.Clear();
        RptArriendo.LocalReport.DataSources.Add(rds2);
        //LE DOY LA RUTA DE MI XSD (DATASET)
        RptArriendo.LocalReport.ReportPath = "Intranet/Informes/ListadoDeArriendosPorFecha.rdlc";
        RptArriendo.LocalReport.Refresh();
    }
pero me sigue dando el mismo error: Error al procesar el informe.
El valor del parámetro 'FechaFinal' no se puede convertir de 'System.String' a 'System.DateTime'

haber si alguien me puede hechar una manito.

desde ya muchas gracias
  #2 (permalink)  
Antiguo 20/06/2009, 19:53
Avatar de BlueSkull  
Fecha de Ingreso: noviembre-2008
Ubicación: Chile
Mensajes: 504
Antigüedad: 15 años, 5 meses
Puntos: 4
Respuesta: Asp.net C# ReportViewer problema al pasar parametros

Estimado, hace algun tiempo trabaje con ReportViewer que realmente es muy bueno, pero en estos momentos no tengo mucho tiempo. Ahora lo deje de ocupar ya que encontre una forma mas rapida y manejable (para mi gusto) como lo es el DataList + Imprimir con JavaScript (llegas a la misma o mejor presentación que con el report).

Te dejo la dirección de mi blog en donde encontraras un tutorial muy bueno sobre como trabajar con ReportViewer + Parametros (Avisa como te fue).

Si quieres alguna guia de como trabajar con DataList solo pregunta.

Adios.
__________________
"Incluso las torres más altas empiezan en el suelo."
"Sé Ágil..."
StreamWriter
  #3 (permalink)  
Antiguo 28/07/2009, 17:32
 
Fecha de Ingreso: julio-2009
Mensajes: 11
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Asp.net C# ReportViewer problema al pasar parametros

Hola amigos

Es tambien mi primer post ya que necesito urgentemente ayuda, recien inicio con reportviewer, genere un reporte rdlc al cual le cree un parametro llamado Clave de tipo int, al momento de querer pasarlo a traves del reportviewer me da el siguiente error:

Microsoft.reportingservices.diagnostics.utilities. readonlyreportparametersexception.The report parameter "Clave" is read only and cannot be modified

Este parametro viene de un windowsform y lo asigno con el siguiente codigo:

this.reportViewer32.Visible = true;
ReportParameter P = new ReportParameter("Clave", sFilt, false);
this.reportViewer32.LocalReport.SetParameters(new ReportParameter[] { P });

en el reporte pretendo modificar con el valor del parametro una consulta sql, pero no puedo avanzar por el error arriba mencionado, si alguien puede ayudarme se lo agradezco o darme alguna pista.
  #4 (permalink)  
Antiguo 29/07/2009, 13:06
 
Fecha de Ingreso: julio-2009
Mensajes: 11
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Asp.net C# ReportViewer problema al pasar parametros

Ya encontre la solucion, era cuestion de desmarcar la casilla de hidden en las opciones de parametros, ahora ya tengo el parametro el cual puedo visualizar en mi reporte, pero no funciona el codigo que pongo para filtrar en propiedades->codigo personalizado, alguien podria facilitarme algun ejemplo de como implementarlo para filtrar de acuerdo al parametro recibido ?

Gracias de antemano.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:35.