PDA

View Full Version : مشکل در ناقص وارد شدن اطلاعات در بانک



نیما حتمی
چهارشنبه 07 اردیبهشت 1390, 13:46 عصر
با سلام

دوستان من یک گرید دارم که بایند نیست و کاربر اطلاعات را سطر به سطر در آن وارد می کند و با زدن دکمه ای اطلاعات از گرید به بانک به صورت سطر به سطر وارد می شوند.مشکل اینجاست آخرین سلولی که کاربر داده وارد می کنه در بانک ذخیره نمی شه (فقط آخرین سلول وارد نمی شه)حالا اون سلول می تونه هر کدوم ار سلولهای گرید باشه بسته به اینه که آخرین سلول کاربر واسه ورود داده هست یا نه.
این مشکل دیوانم کرده بچه ها خواهشن کمکم کنید پروژرو باید تا 4 روز دیگه تحویل بدم.اینم کدی که نوشتم:


for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
//MessageBox.Show(dataGridView1.Rows.Count.ToString( ));
string s = @"Insert into EmissionDoc (Id,NumReceipt,AccCode,Center1,Center2,Center3,Doc Account,ArzKind,Amount,Debtor,Creditor,NumPey
,Datepey,NumOrder)values
(@Id,@NumReceipt,@AccCode,@Center1,@Center2,@Cente r3,@DocAccount,@ArzKind,@Amount,@Debtor,@Creditor, @NumPey,
@Datepey,@NumOrder)";
SqlCommand Cmd = new SqlCommand(s, connect);
//SqlDataAdapter d = new SqlDataAdapter(s1, connect);
//DataTable t=new DataTable();
Cmd.Parameters.AddWithValue("Id",Convert.ToString(dataGridView1.Rows[i].Cells[0].Value));
Cmd.Parameters.AddWithValue("NumReceipt", textBox1.Text);
Cmd.Parameters.AddWithValue("AccCode",Convert.ToString(dataGridView1.Rows[i].Cells[1].Value));
Cmd.Parameters.AddWithValue("Center1",Convert.ToString(dataGridView1.Rows[i].Cells[2].Value));
Cmd.Parameters.AddWithValue("Center2",Convert.ToString(dataGridView1.Rows[i].Cells[3].Value));
Cmd.Parameters.AddWithValue("Center3",Convert.ToString(dataGridView1.Rows[i].Cells[4].Value));
Cmd.Parameters.AddWithValue("DocAccount",Convert.ToString(dataGridView1.Rows[i].Cells[5].Value));
Cmd.Parameters.AddWithValue("ArzKind",Convert.ToString(dataGridView1.Rows[i].Cells[6].Value));
Cmd.Parameters.AddWithValue("Amount",Convert.ToString(dataGridView1.Rows[i].Cells[7].Value));
Cmd.Parameters.AddWithValue("Debtor",Convert.ToInt32(dataGridView1.Rows[i].Cells[8].Value.ToString().Replace(",","")));
Cmd.Parameters.AddWithValue("Creditor", Convert.ToInt32(dataGridView1.Rows[i].Cells[9].Value.ToString().Replace(",", "")));
Cmd.Parameters.AddWithValue("NumPey",Convert.ToString(dataGridView1.Rows[i].Cells[10].Value));
Cmd.Parameters.AddWithValue("Datepey",Convert.ToString(dataGridView1.Rows[i].Cells[11].Value));
Cmd.Parameters.AddWithValue("NumOrder", Convert.ToString(dataGridView1.Rows[i].Cells[12].Value));
// Cmd.Parameters.AddWithValue("NumOrder", dataGridView1.Rows[i].Cells[12].Value.ToString());
// Cmd.Parameters.AddWithValue("KolAccount", textBox3.Text);
// Cmd.Parameters.AddWithValue("MoeinAccount", textBox4.Text);
// Cmd.Parameters.AddWithValue("TafziliAccount", textBox5.Text);
// Cmd.Parameters.AddWithValue("Center1Account", label18.Text);
// Cmd.Parameters.AddWithValue("Center2Account", label19.Text);
// Cmd.Parameters.AddWithValue("Center3Account", label20.Text);
// Cmd.Parameters.AddWithValue("SumDebtor", label20.Text);
// Cmd.Parameters.AddWithValue("SumCreditor", label19.Text);
Cmd.ExecuteNonQuery();

}

}

catch (Exception exp)
{
MessageBox.Show(exp.Message.ToString());
}
finally
{
connect.Close();
}

نیما حتمی
چهارشنبه 07 اردیبهشت 1390, 14:13 عصر
دوستان من با برنامه ور رفتم دیدم اگر قبل از زدن دکمه ویرایش بروی سلولهای ما قبل سلول فعلی یک بار با موس کلیک کنم مشکل حل میشه یعنی کل سلولها آپدیت می شوند به درستی.حالا چرا این اتفاق می افته؟

mobtakercode
چهارشنبه 07 اردیبهشت 1390, 14:40 عصر
فکر کنم شما باید قبل از هرگونه عملی از دستور زیر استفاده کنید

datagridview.EndEdit();

amir_pro
چهارشنبه 07 اردیبهشت 1390, 15:46 عصر
شرط پایان حلقه رو dataGridView1.Rows.Count +1 بزار فکر کنم درست بشه. دقیق یادم نیست باید چیکار میکردیم. یادم رفته