2011-07-29 12 views
0
private void btnGenerate_Click(object sender, EventArgs e) 
     { 
      try 
      { 
       if (Convert.ToDateTime(dateTimeTo.Text).Date >= Convert.ToDateTime(dateTimeFrom.Text).Date) 
       { 
        DateTime today = DateTime.Today.Date; 
        reportViewer1.RefreshReport(); 
        reportViewer1.LocalReport.Refresh(); 
        DataTable dtnew = new DataTable(); 
        string EmpId = null; 

        if (ddlEmployee.SelectedIndex > 0) 
        { 
         EmpId = ddlEmployee.SelectedValue.ToString(); 
        } 

        reportViewer1.LocalReport.DataSources.Clear(); 
        dtnew = new dbInOutTimeDatasetTableAdapters.InOutTableAdapter().GetData(Convert.ToDateTime(dateTimeTo.Text), Convert.ToDateTime(dateTimeFrom.Text),new Guid(EmpId)); 
        // dtnew = new dsReportTableAdapters.ReportTableAdapter().GetData(Convert.ToDateTime(dateTimeFrom.Text), Convert.ToDateTime(dateTimeTo.Text), EmpId, DeptId); 

        reportViewer1.Visible = true; 
        ReportDataSource rptds = new ReportDataSource("dbInOutTimeDataset_ReportInOut", dtnew); 
        reportViewer1.LocalReport.DataSources.Add(rptds); 
        reportViewer1.LocalReport.Refresh(); 
        reportViewer1.RefreshReport(); 
        reportViewer1.Visible = true; 
       } 
       else 
       { 
        MessageBox.Show("To date must be greater or equal to From date.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); 
       } 

      } 
      catch (InvalidOperationException exI) 
      { 
       MessageBox.Show("There is no any Employee Absent.", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information); 
      } 
      catch (Exception ex) 
      { 
       MessageBox.Show("Unhandled Error:" + ex.Message); 
      } 
     } 

問題:レポートビューアでレポートをバインドします。私は「dtnew」でレコードを取得するが、私のアプリケーションでレポートを参照してくださいCNTrdlcでの問題

レポートで

取得エラー

+0

レポートファイル( "dsInOutReport_InOut")内の別のデータソース名を、コード内の名前( "dbInOutTimeDataset_ReportInOut")よりも使用することはできますか? – DavveK

答えて

-1

「データ・ソース・インスタンスは 『dsInOutReport_InOut』データソースのために供給されていません」このワット

reportViewer1.LocalReport.DataSources.Add(rptds); 

:この前

reportViewer1.LocalReport.DataSources.clear(); 

:これを追加悪い仕事。