Я хочу сгенерировать RDLC Report
по дате. У меня есть два DateTimePickers
и Button
Элементы управления на моем WindowForm
и ReportViewer
. Я выбираю от и до Date
от DateTimePicker
, а когда я нажимаю на Button
, то ReportViewer
должен загружаться с Database
на основании Date
.Ошибка при обработке локального отчета в C# winforms
Вот мой Stored Procedure
CREATE PROCEDURE spGetBikeSalebyDate
(
@FromDate DateTime,
@ToDate DateTime
)
AS
BEGIN
SELECT * FROM tblSaleBike
WHERE DateOfPurchase BETWEEN @FromDate AND @ToDate
ORDER BY DateOfPurchase asc
END
и мой C#
код
private void btnSearchBikeSale_Click(object sender, EventArgs e)
{
ShowReport();
}
private void ShowReport()
{
reportViewer1.Reset();
DataTable dt = GetData(dtpSearchFromDate.Value.Date, dtpSearchToDate.Value.Date);
ReportDataSource rds = new ReportDataSource("DataSet1", dt);
reportViewer1.LocalReport.DataSources.Add(rds);
reportViewer1.LocalReport.ReportPath = @"ReportSaleBikeByDate.rdlc";
ReportParameter[] rParams = new ReportParameter[] {
new ReportParameter("fromDate",dtpSearchFromDate.Value.Date.ToShortDateString()),
new ReportParameter("toDate",dtpSearchToDate.Value.Date.ToShortDateString())
};
reportViewer1.LocalReport.SetParameters(rParams);//Error Occured Here
reportViewer1.LocalReport.Refresh();
}
private DataTable GetData(DateTime fromDate , DateTime toDate)
{
DataTable dt = new System.Data.DataTable();
using (SqlConnection con = new SqlConnection(CS))
{
SqlCommand cmd = new SqlCommand("spGetBikeSalebyDate",con);
cmd.CommandType = System.Data.CommandType.StoredProcedure;
cmd.Parameters.Add("@FromDate", SqlDbType.DateTime).Value = fromDate;
cmd.Parameters.Add("@ToDate", SqlDbType.DateTime).Value = toDate;
SqlDataAdapter ad = new SqlDataAdapter(cmd);
ad.Fill(dt);
}
return dt;
}
Я прошел два параметра в fromDate
и toDate
в ReportViewer
. Когда я помещаю свою программу в debug mood
и проверяю программу и отлично работает, i-e DataTable
возвращает значения правильно, но когда он достигает SQL Parameters
, он выдает exception
An error occurred during local report processing
. Я не знаю, почему, потому что мой Report
находится в root directory
. Я также собираюсь привязать снимки. Пожалуйста, помогите мне.
Обновлено
Это мой DataSet
, который принимает два параметра
и это Report Data
и это Exception Detail
Вы должны разделить сведения об исключении. –
Дорогой сэр, я обновил свой вопрос. Какие детали я должен поделиться? –
Внутреннее исключение в деталях помогает решить проблему. –