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