private void button2_Click(object sender, EventArgs e)
        {
            if (textBox1.Text.Length > 0 && textBox2.Text.Length > 0 && (int)comboBox1.SelectedValue > 0 && (int)comboBox4.SelectedValue > 0 && (int)comboBox5.SelectedValue > 0 && (int)comboBox2.SelectedValue > 0 && (int)comboBox3.SelectedValue > 0 && textBox5.Text.Length > 0)
            {
                if ((MessageBox.Show("هل تريد ترحيل طلب  تعديل التوريد واعتماده ؟", "تاكيد", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1, MessageBoxOptions.RightAlign) == DialogResult.Yes))
                {   ////////////////////////////////////
                    // حذف الكمية السابقة من جدول الحسابات
                    try
                    {
                        int oldQuntity  = Convert.ToInt32(dt.Rows[0]["Quntity"].ToString());
                        int idAcount2   = dbsql.CheckAccountIsHere(Convert.ToInt32(dt.Rows[0]["IDCategory"].ToString()), Convert.ToInt32(dt.Rows[0]["IDType"].ToString()), Convert.ToInt32(dt.Rows[0]["Price"].ToString()), Convert.ToInt32(dt.Rows[0]["IDCurrency"].ToString()));
                        int QuntityHere = dbsql.GetQuntityInAccount(idAcount2);
                        if (QuntityHere >= oldQuntity)
                        {
                            int qu = QuntityHere - oldQuntity;
                            dbsql.UpdateQuntityAccount(idAcount2, qu);
                            //////////////////////////////////////
                            //// عملية ادخل القيمة الجديدة في الحساب
                            int    newQuntity = Convert.ToInt32(textBox1.Text);
                            int    NewPrice   = Convert.ToInt32(textBox2.Text);
                            int    IDCAT      = (int)comboBox1.SelectedValue;
                            int    IDTYPE     = (int)comboBox2.SelectedValue;
                            int    idcurrn    = (int)comboBox3.SelectedValue;
                            int    debit      = (int)comboBox4.SelectedValue;
                            int    crd        = (int)comboBox5.SelectedValue;
                            string nameNEW    = textBox4.Text;
                            string decNew     = textBox5.Text;
                            int    idAcount   = dbsql.CheckAccountIsHere(IDCAT, IDTYPE, NewPrice, idcurrn);

                            if (idAcount > 0) // في حالة الحساب موجود من قبل
                            {                 //  تعديل الحساب بالكمية الجديدة
                                int oldQunt = dbsql.GetQuntityInAccount(idAcount);

                                int newQunt = oldQunt + newQuntity;

                                dbsql.UpdateQuntityAccount(idAcount, newQunt);
                            }
                            else //  في حالة الحساب جديد
                            {
                                dbsql.AddNewAccount(IDCAT, IDTYPE, newQuntity, NewPrice, idcurrn);// اضافة حساب جديد
                            }
                            /////////////////////////////////
                            ///////////////////////////////////////////////////////////////
                            // عملية التعديل في جدول التوريد
                            dbsql.UPateRequstSupply(IDSupply, IDCAT, IDTYPE, newQuntity, NewPrice, idcurrn, nameNEW, dt.Rows[0]["DescSupply"].ToString(), debit, crd);
                            //////////////////
                            ////////////
                            // عملية الحفظ في جدول التعديلات
                            dbsql.ADDNewUPDSupply(IDSupply, Convert.ToInt32(dt.Rows[0]["IDCategory"].ToString()), Convert.ToInt32(dt.Rows[0]["IDType"].ToString()), Convert.ToInt32(dt.Rows[0]["Quntity"].ToString()), Convert.ToInt32(dt.Rows[0]["Price"].ToString()), Convert.ToInt32(dt.Rows[0]["IDCurrency"].ToString()), dt.Rows[0]["NameSupply"].ToString(), DateTime.Parse(dt.Rows[0]["DateSupply"].ToString()), DateTime.Now, decNew, Contrl.UserId);
                        }
                        else
                        {
                            MessageBox.Show("تاكد من الكمية المخزنة");
                        }
                    }

                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                    }
                    this.Close();
                }
            }
        }
      private void button2_Click(object sender, EventArgs e)
      {
          try
          {
              if (textBox1.Text.Length > 0 && textBox2.Text.Length > 0 && (int)comboBox1.SelectedValue > 0 && (int)comboBox2.SelectedValue > 0 && (int)comboBox4.SelectedValue > 0 && (int)comboBox5.SelectedValue > 0 && (int)comboBox3.SelectedValue > 0)
              {
                  if ((MessageBox.Show("هل تريد ترحيل طلب التوريد واعتماده ؟", "تاكيد", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1, MessageBoxOptions.RightAlign) == DialogResult.Yes))
                  {
                      try
                      {
                          int idcate = (int)comboBox1.SelectedValue;

                          int    idtype   = (int)comboBox2.SelectedValue;
                          int    idCurrnt = (int)comboBox3.SelectedValue;
                          int    qunt     = Convert.ToInt32(textBox1.Text);
                          int    price    = Convert.ToInt32(textBox2.Text);
                          int    debit    = (int)comboBox4.SelectedValue;
                          int    cred     = (int)comboBox5.SelectedValue;
                          string name     = textBox4.Text;
                          string dec      = textBox5.Text;
                          int    idAcount = dbsql.CheckAccountIsHere(idcate, idtype, price, idCurrnt);


                          if (idAcount > 0) // في حالة الحساب موجود من قبل
                          {                 //  تعديل الحساب بالكمية الجديدة
                              int oldQunt = dbsql.GetQuntityInAccount(idAcount);
                              int newQunt = oldQunt + qunt;
                              dbsql.UpdateQuntityAccount(idAcount, newQunt);
                          }
                          else                                                            //  في حالة الحساب جديد
                          {
                              dbsql.AddNewAccount(idcate, idtype, qunt, price, idCurrnt); // اضافة حساب جديد
                          }
                          /////////////////////////////////

                          /////////////////////////////////////////////////////////
                          // التاكد من ان الطلب يضاف كطلب جديد او اضافة الى طلب
                          int check = 0;
                          if (flagAddAgian == true)
                          {
                              check = dbsql.GetMaxCheckSupply();
                          }
                          else
                          {
                              check  = dbsql.GetMaxCheckSupply();
                              check += 1;
                          }
                          // اضافة الى جدول التوريد
                          dbsql.AddNewRequsetSupply(idcate, idtype, qunt, price, idCurrnt, name, dec, DateTime.Now, Contrl.UserId, check, debit, cred);//اضافة طلب جديد

                          if ((MessageBox.Show("هل تريد اضافة طلب  اخر", "تاكيد", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1, MessageBoxOptions.RightAlign) == DialogResult.Yes))
                          {
                              flagAddAgian = true;
                              Refrsh12();

                              // button2_Click(sender, e);
                          }
                          else
                          {
                              flagAddAgian = false;
                              if ((MessageBox.Show("هل تريد طباعة سند توريد؟", "تاكيد", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1, MessageBoxOptions.RightAlign) == DialogResult.Yes))
                              {
                                  try
                                  {
                                      Refrsh1();
                                      int  IDRequstSupply = dbsql.GetMaxCheckSupply();
                                      bool printExit      = false;
                                      if (checkBox1.Checked)
                                      {
                                          printExit = true;
                                      }
                                      else
                                      {
                                          printExit = false;
                                      }
                                      frmREPORT frmr = new frmREPORT(IDRequstSupply, 1, Contrl.UserId, printExit);

                                      frmr.ShowDialog();
                                  }
                                  catch (Exception ex)
                                  {
                                      MessageBox.Show(ex.Message);
                                  }
                              }
                          }
                      }
                      catch (Exception ex)
                      {
                          MessageBox.Show(ex.Message);
                      }
                  }
              }
          }catch (Exception ex)
          {
              MessageBox.Show(ex.Message);
          }
      }