03-07-17, 09:03 AM
بسم الله الرحمن الرحيم
الإخوة الأعزاء شكرالله مساعيكم في بث المعرفة ونشر العلوم المختلفة والمعلومات البرمجية بين أبناء البيت العربي الكبير
الإخوة الأعزاء مسائلي لا تخفى على كبار في العلوم البرمجية أمثالكم
أرجو المساعدة منكم وأن توضحوا لي ما خفي عليَ فَرُبَ مُعضِلةٍ كُنتم لها
قمت بتصميم فاتورة المبيعات بالفيجوال ستوديو 2012 بلغة السي شارب في بيئة الدوت نيت مربوطاً بقاعدة بيانات إس كيو إل سيرفر 2014
بعد تصميمي للفاتورة وجدت أن كل شيء يسير كما أردت لكن عند حفظ الفاتورة لا يتم حذف الأسطر الفارغة مما يُحدث خللاً في الفاتورة وعند عرض التقرير بالكريستال ريبورت تكون جميع الأصناف المدخلة بعد كود الصنف الذي لم يتم تسجيله محذوفة
السؤال: كيف أقوم بحذف الأسطر الفارغة أو ذات المعلومات الناقصة من الداتا قريد فيو عند النقر على زر الحفظ؟
أرجو منكم مساعدتي مشكورين
كود زر الحفظ الذي استخدمه
الإخوة الأعزاء شكرالله مساعيكم في بث المعرفة ونشر العلوم المختلفة والمعلومات البرمجية بين أبناء البيت العربي الكبير
الإخوة الأعزاء مسائلي لا تخفى على كبار في العلوم البرمجية أمثالكم
أرجو المساعدة منكم وأن توضحوا لي ما خفي عليَ فَرُبَ مُعضِلةٍ كُنتم لها
قمت بتصميم فاتورة المبيعات بالفيجوال ستوديو 2012 بلغة السي شارب في بيئة الدوت نيت مربوطاً بقاعدة بيانات إس كيو إل سيرفر 2014
بعد تصميمي للفاتورة وجدت أن كل شيء يسير كما أردت لكن عند حفظ الفاتورة لا يتم حذف الأسطر الفارغة مما يُحدث خللاً في الفاتورة وعند عرض التقرير بالكريستال ريبورت تكون جميع الأصناف المدخلة بعد كود الصنف الذي لم يتم تسجيله محذوفة
السؤال: كيف أقوم بحذف الأسطر الفارغة أو ذات المعلومات الناقصة من الداتا قريد فيو عند النقر على زر الحفظ؟
أرجو منكم مساعدتي مشكورين
كود زر الحفظ الذي استخدمه
كود :
private void btn_save_Click(object sender, EventArgs e)
{
//كود التحقق من توفر الفاتورة على بيانات
if (ID_Orders.Text == string.Empty || datetim.Text == string.Empty || name_Customer.Text == string.Empty
|| TOTAL.Text == string.Empty /*|| txt_PAID.Text == string.Empty || txt_SURPLUS.Text == string.Empty */|| dgv_Orders.Rows.Count < 1)
{
MessageBox.Show("لايمكن حفظ الفاتورة خالية من المعلومات ", "تنبيه", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
else// هذا الإستثناء لمنع حفظ الفاتورة وهي فارغة
{
//كود حفظ معلومات الفاتورة
ORD.ADD_ORDERS(Convert.ToInt32(ID_Orders.Text), datetim.Value, Convert.ToInt32(ID_Customer.Text), note.Text, txtSALESMAN.Text, TOTAL.Text, txt_PAID.Text, txt_SURPLUS.Text);
//كود حفظ الأصناف المدخلة في الداتا
for (int i = 1; i < dgv_Orders.Rows.Count - 1; i++)
{
dgv_Orders.CurrentRow.Cells[1] = null;
ORD.ADD_ORDERS_DETAILS(dgv_Orders.Rows[i].Cells[1].Value.ToString(),//الباركود
Convert.ToInt32(ID_Orders.Text),// رقم الفاتورة
Convert.ToInt32(dgv_Orders.Rows[i].Cells[3].Value),//الكمية
dgv_Orders.Rows[i].Cells[4].Value.ToString());//السعر
}
MessageBox.Show("تم حفظ الفاتورة بنجاح", "الحفظ");
//هذا الكود خاص بالتفعيل وإلغاء التفعيل
btnAdd.Enabled = true;
btn_save.Enabled = false;
print.Enabled = true;
note.Enabled = false;
datetim.Enabled = false;
ID_Customer.Enabled = false;
name_Customer.Enabled = false;
comb_type_Customer.Enabled = false;
txtSALESMAN.Enabled = false;
dgv_Orders.Enabled = false;
TOTAL.Enabled = false;
txt_PAID.Enabled = false;
txt_SURPLUS.Enabled = false;
note.Clear();
ID_Customer.Clear();
name_Customer.Clear();
comb_type_Customer.Clear(); ;
txtSALESMAN.Clear();
TOTAL.Clear();
txt_PAID.Clear();
txt_SURPLUS.Clear();
Dt.Clear();
dgv_Orders.Focus();
return;
}
}