kahrobaa
یک شنبه 22 دی 1392, 20:30 عصر
دوباره سلام
من یک گرید دارم با این ستون ها: ردیف , نام کالا , کد کالا, قیمت کالا،تعداد, جمع کل
و یک button , چندtextbox
که وقتی روی باتن کلیک میکنم مقادیر از تکس باکس به درون گرید اضافه میشه
که البته یک datatable موقتی برای این اقلام فاکتور در نظر گرفتم که تا ثبت نهایی را نزنه درون دیتابیس چیزی ذخیره نمیشه
وقتی مثلا کالای a را با تعداد = 2 به گرید اضافه میکنم و بعد چند کالای دیگر را به گرید اضافه میکنم
حالا سوالم اینه که :
اگر دوباره همان کالای a را این بار با تعداد =5 به گرید اضافه کنم چه کنم که 2 تا رکورد اضافه نشه بلکه بگردد کالای a را پیدا کنه و در گرید تعداد شود =7 یعنی یجورایی سطر داخل گرید update شود
کد زیر را امتحان کردم ولی مشکل داره ....> یعنی هم update میشه و هم یه سطر دیگه اضافه
چی کار کنم؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
else//insert
{
bool isok = false;
for (int i = 0; i < dgv_factorItems.Rows.Count; i++)
{
if (dgv_factorItems.Rows[i].Cells["clmgId"].Value.ToString() == txt_gCode.Text)//row found
{
int c = int.Parse(dgv_factorItems.Rows[i].Cells["clmCount"].Value.ToString());
c = (int)(dgv_factorItems.Rows[i].Cells["clmCount"].Value = c + int.Parse(txt_count.Text));
dgv_factorItems.Rows[i].Cells["clm_radifTotal"].Value = Double.Parse(txt_gprice.textBox1.Text) * c;
isok = true;
}
else
{
isok = false;
}
}
if (!isok )
{
dt_factorItems.Rows.Add(0, txt_gCode.Text, txt_gName.Text, txt_count.Text, txt_gprice.textBox1.Text, Double.Parse(txt_gprice.textBox1.Text) * int.Parse(txt_count.Text));
}
}
radifConfig();
txt_gCode.Clear();
txt_gName.Clear();
txt_gprice.textBox1.Clear();
txt_count.Clear();
txt_gCode.Focus();
من یک گرید دارم با این ستون ها: ردیف , نام کالا , کد کالا, قیمت کالا،تعداد, جمع کل
و یک button , چندtextbox
که وقتی روی باتن کلیک میکنم مقادیر از تکس باکس به درون گرید اضافه میشه
که البته یک datatable موقتی برای این اقلام فاکتور در نظر گرفتم که تا ثبت نهایی را نزنه درون دیتابیس چیزی ذخیره نمیشه
وقتی مثلا کالای a را با تعداد = 2 به گرید اضافه میکنم و بعد چند کالای دیگر را به گرید اضافه میکنم
حالا سوالم اینه که :
اگر دوباره همان کالای a را این بار با تعداد =5 به گرید اضافه کنم چه کنم که 2 تا رکورد اضافه نشه بلکه بگردد کالای a را پیدا کنه و در گرید تعداد شود =7 یعنی یجورایی سطر داخل گرید update شود
کد زیر را امتحان کردم ولی مشکل داره ....> یعنی هم update میشه و هم یه سطر دیگه اضافه
چی کار کنم؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
else//insert
{
bool isok = false;
for (int i = 0; i < dgv_factorItems.Rows.Count; i++)
{
if (dgv_factorItems.Rows[i].Cells["clmgId"].Value.ToString() == txt_gCode.Text)//row found
{
int c = int.Parse(dgv_factorItems.Rows[i].Cells["clmCount"].Value.ToString());
c = (int)(dgv_factorItems.Rows[i].Cells["clmCount"].Value = c + int.Parse(txt_count.Text));
dgv_factorItems.Rows[i].Cells["clm_radifTotal"].Value = Double.Parse(txt_gprice.textBox1.Text) * c;
isok = true;
}
else
{
isok = false;
}
}
if (!isok )
{
dt_factorItems.Rows.Add(0, txt_gCode.Text, txt_gName.Text, txt_count.Text, txt_gprice.textBox1.Text, Double.Parse(txt_gprice.textBox1.Text) * int.Parse(txt_count.Text));
}
}
radifConfig();
txt_gCode.Clear();
txt_gName.Clear();
txt_gprice.textBox1.Clear();
txt_count.Clear();
txt_gCode.Focus();