0

У меня есть отчет, отображаемый в форме окна. Средство просмотра отчетов при загрузке формы отлично работает. У меня есть текстовое поле с маской даты на нем и кнопка для сортировки отчета, представленного в форме загрузки по дате, введенной в текстовое поле. Кнопка работает нормально, но ничего не отображается в отчете при нажатии. Пожалуйста, помогите мне, где я делаю неправильно на этом. Оба изображения здесь. enter image description hereОбновление ReportViewer через запрос в окне приложения C#

enter image description here

SqlConnection S_Conn = new SqlConnection(strConnString); 
      S_Conn.Open(); 
      string query_1 = ""; 
      query_1 = "SELECT Select_Ward, Mr_No, Patient_Name, Date_Of_Admission, Date_Of_Dsch_Death, Disease from EO_System_RecordRoomData WHERE Date_Of_Admission = '" + txtbx_DateForReport.Text.Trim() + "'"; 
      SqlCommand Command_1 = new SqlCommand(query_1, S_Conn); 
      SqlDataAdapter Data_Adapter = new SqlDataAdapter(Command_1); 
      DataSet1 Data_Set = new DataSet1(); 
      Data_Adapter.Fill(Data_Set); 
      reportViewer1.LocalReport.DataSources.Clear(); 
      reportViewer1.LocalReport.DataSources.Add(new Microsoft.Reporting.WinForms.ReportDataSource("DataSet1", Data_Set.Tables[0])); 
      this.reportViewer1.RefreshReport(); 
+0

reportViewer1.LocalReport.DataSources.Add (новый Microsoft.Reporting.WinForms.ReportDataSource ("DataSet1", Data_Set.Tables [1])); я делал неправильно только здесь. Таблица [0] использовалась вместо таблицы [1]. –

+0

Если вы решили свою собственную проблему, рассмотрите вопрос о том, как отправить решение в качестве ответа и принять свой собственный ответ или удалить вопрос вместе. Кроме того, обратите внимание, что ваш код sql является уязвимым для SQL-инъекций. используйте параметризованные запросы вместо конкатенации строк для создания предложения where. –

+0

Как сделать параметризованные запросы ??? Пожалуйста скажи. –

ответ

1
reportViewer1.LocalReport.DataSources.Add(new Microsoft.Reporting.WinForms.ReportDataSource("DataSet1", Data_Set.Tables[1])); 

Вместо того чтобы использовать таблицу [0], Это была таблица [1].