PDA

View Full Version : سوال: ارور Input array is longer than the number of columns in this table.؟



Fartaj
جمعه 14 مهر 1391, 15:12 عصر
سلام خدمت دوستان

من در ادامه پیاده سازی گزارش این کد رو نوشتم :


string date = Pc.GetYear(DateTime.Now).ToString() + "/" + (Pc.GetMonth(DateTime.Now) > 9 ? Pc.GetMonth(DateTime.Now).ToString() : "0" + Pc.GetMonth(DateTime.Now).ToString()) + "/" + (Pc.GetDayOfMonth(DateTime.Now) > 9 ? Pc.GetDayOfMonth(DateTime.Now).ToString() : "0" + Pc.GetDayOfMonth(DateTime.Now).ToString());
using (SqlConnection Conn = new SqlConnection("Data Source=.;Initial Catalog=students;Integrated Security=True"))
{
Conn.Open();
studentsDataSet ds = new studentsDataSet();
studentsDataSet.group1DataTable dtgroup1 = new studentsDataSet.group1DataTable();
DataTable dt = new DataTable();
dt.Columns.Add("Family");
dt.Columns.Add("Name");
dt.Columns.Add("F_Name");
dt.Columns.Add("Class_Id");
dt.Columns.Add("F_Ed_Level");
dt.Columns.Add("F_Job");
dt.Columns.Add("F_Job_Tel");
dt.Columns.Add("M_Ed_Level");
dt.Columns.Add("m_job");
dt.Columns.Add("m_job_tel");
dt.Columns.Add("H_Tel");
dt.Columns.Add("Es_Tel");
dt.Columns.Add("H_Address");
dt.Columns.Add("Parental_Status");
dt.Columns.Add("Nationality");
dt.Columns.Add("Religion");
dt.Columns.Add("Delay_Day");
dt.Columns.Add("Delay_Date");
dt.Columns.Add("Ab_Day");
dt.Columns.Add("Alarm");
dt.Columns.Add("Ab_Date");
dt.Columns.Add("Score");
dt.Columns.Add("Descrip");
studentsDataSetTableAdapters.group1TableAdapter dts = new studentsDataSetTableAdapters.group1TableAdapter();
dts.Fill(dtgroup1, int.Parse(lblid.Text));
dtgroup1.CopyToDataTable(dt, LoadOption.OverwriteChanges);
Conn.Close();
CR_delay_absence rpt = new CR_delay_absence();
rpt.SetDataSource(dt);
rpt.SetParameterValue("para_date", date);
frm_rpt_delay_absence frmdelay = new frm_rpt_delay_absence();
frmdelay.crystalReportViewer1.ReportSource = rpt;
frmdelay.ShowDialog();


اما دیباگ که کردم اروری گفتم رو می ده منظور این ارور چیه ؟

veniz2008
جمعه 14 مهر 1391, 17:16 عصر
به نظر میرسه ستون هایی که داری میفرستی برای گزارش بیشتر از ستون های جدولت هستن. ستون هایی رو که ایجاد کردی( منظورم dt هستش) رو با دقت چک کن که ستون اضافه ای نساخته باشی.

Fartaj
جمعه 14 مهر 1391, 18:59 عصر
اگر از لحاظ سطر بیشتر باشه چی فکر کنم باید از datarow استفاده کنم اما نمی دونم کجا ؟