Example #1
0
 public bool EXDate_Checker(Linq.Product product)
 {
     try
     {
         if (Convert.ToDateTime(product.EX_Date) <= txtSaleDate.SelectedDate)
         {
             MessageBox.Show("لقد انتهت صلاحية هذا المنتج");
             return(true);
         }
         return(false);
     }catch (Exception ex)
     {
         return(false);
     }
 }
Example #2
0
        private void btnSaveBuy_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (dgBill.Items.Count > 0)
                {
                    PharmaLinq = new Linq.PharmaLinqDataContext(flag.Con);
                    int j = 0;



                    Linq.Buy buy = new Linq.Buy();

                    if (isnew == false)
                    {
                        buyCost = 0;
                        for (int i = 0; i < dgBill.Items.Count; i++)
                        {
                            try
                            {
                                for (j = 0; j < DelDt.Rows.Count; j++)
                                {
                                    if (Convert.ToInt32(Dt.Rows[i].ItemArray[8]) == Convert.ToInt32(DelDt.Rows[j].ItemArray[0]))
                                    {
                                        goto skip;
                                    }
                                }
                            }
                            catch (Exception ex)
                            {
                            }
                            buyCost += Convert.ToDouble(Dt.Rows[i].ItemArray[7]);
                            skip :;
                        }

                        buy = PharmaLinq.Buys.Single(item => item.Exist == true && item.ID_Buy == Convert.ToInt32(txtBuyID.Text));
                        j   = 0;
                    }

                    buy.BuyCost  = Convert.ToDecimal(buyCost);
                    buy.ID_Caule = (int)PharmaLinq.Caules.SingleOrDefault(item => item.Exist == true && item.CauleName == cmbCaule.Text).ID_Caule;
                    buy.ID_User  = IDUser;
                    buy.Exist    = true;

                    for (int i = 0; i < dgBill.Items.Count; i++)
                    {
                        Linq.Product    product   = PharmaLinq.Products.SingleOrDefault(item => item.ID_Product == Convert.ToInt32(Dt.Rows[i].ItemArray[1]));
                        Linq.BuysAction buyaction = new Linq.BuysAction();

                        product.Cost = Convert.ToDouble(Dt.Rows[i].ItemArray[4]);
                        if (isnew == false && (i + 1) <= dtcount)
                        {
                            buyaction = PharmaLinq.BuysActions.Single(item => item.Exist == true && item.ID_Buy == Convert.ToInt32(txtBuyID.Text) && item.ID_BuyAction == Convert.ToInt32(Dt.Rows[i].ItemArray[8]));
                            if (product.BiggerUnit == "الثانوية")
                            {
                                product.Quantity     -= ((int)PharmaLinq.BuysActions.Single(item => item.Exist == true && item.ID_Buy == Convert.ToInt32(txtBuyID.Text) && item.ID_BuyAction == Convert.ToInt32(Dt.Rows[i].ItemArray[8])).Quantit_BuysAction % (int)product.SubQuantity);
                                product.UnitQuantity -= ((int)PharmaLinq.BuysActions.Single(item => item.Exist == true && item.ID_Buy == Convert.ToInt32(txtBuyID.Text) && item.ID_BuyAction == Convert.ToInt32(Dt.Rows[i].ItemArray[8])).Quantit_BuysAction / (int)product.SubQuantity);

                                if (product.UnitQuantity < 0)
                                {
                                    product.UnitQuantity = 0;
                                    product.Quantity     = 0;
                                }

                                if (product.Quantity < 0)
                                {
                                    product.Quantity += (int)product.SubQuantity;
                                    product.UnitQuantity--;
                                }
                            }
                            else
                            {
                                product.Quantity -= (int)PharmaLinq.BuysActions.Single(item => item.Exist == true && item.ID_Buy == Convert.ToInt32(txtBuyID.Text) && item.ID_BuyAction == Convert.ToInt32(Dt.Rows[i].ItemArray[8])).Quantit_BuysAction;

                                if (product.Quantity < 0)
                                {
                                    product.Quantity = 0;
                                }
                            }
                        }
                        try
                        {
                            for (j = 0; j < DelDt.Rows.Count; j++)
                            {
                                if (Convert.ToInt32(Dt.Rows[i].ItemArray[8]) == Convert.ToInt32(DelDt.Rows[j].ItemArray[0]))
                                {
                                    buyaction.Exist = false;
                                    goto skip;
                                }
                            }
                        }
                        catch (Exception ex)
                        {
                        }
                        if (product.BiggerUnit == "الثانوية")
                        {
                            product.Quantity     += (Convert.ToInt32(Dt.Rows[i].ItemArray[5]) % (int)product.SubQuantity);
                            product.UnitQuantity += (Convert.ToInt32(Dt.Rows[i].ItemArray[5]) / product.SubQuantity);

                            if (product.Quantity >= product.SubQuantity)
                            {
                                product.Quantity -= (int)product.SubQuantity;
                                product.UnitQuantity++;
                            }
                        }
                        else
                        {
                            product.Quantity += Convert.ToInt32(Dt.Rows[i].ItemArray[5]);
                        }
                        product.EX_Date = Convert.ToString(Dt.Rows[i].ItemArray[6]);

                        buyaction.ID_Buy             = Convert.ToInt32(Dt.Rows[i].ItemArray[0]);
                        buyaction.ID_Product         = Convert.ToInt32(Dt.Rows[i].ItemArray[1]);
                        buyaction.Cost               = Convert.ToDecimal(Dt.Rows[i].ItemArray[4]);
                        buyaction.Quantit_BuysAction = Convert.ToInt32(Dt.Rows[i].ItemArray[5]);
                        buyaction.EX_Date            = Convert.ToString(Dt.Rows[i].ItemArray[6]);
                        buyaction.totatCost          = Convert.ToDecimal(Dt.Rows[i].ItemArray[7]);
                        buyaction.Exist              = true;

                        if (isnew == true || (i + 1) > dtcount)
                        {
                            PharmaLinq.BuysActions.InsertOnSubmit(buyaction);
                        }
                        skip :;
                        PharmaLinq.SubmitChanges();
                    }

                    if (isnew == true)
                    {
                        buy.ID_Buy  = Convert.ToInt32(txtBuyID.Text);
                        buy.DateBuy = txtBuyDate.SelectedDate;
                        PharmaLinq.Buys.InsertOnSubmit(buy);
                    }

                    MessageBox.Show("تم حفظ الفاتورة");

                    PharmaLinq.SubmitChanges();


                    USC_BUYS USC_Buy = new USC_BUYS
                    {
                        IDUser = IDUser
                    };
                    MainWindow.GetMainForm.GridUsc.Children.Clear();
                    MainWindow.GetMainForm.GridUsc.Children.Add(USC_Buy);
                }
                else
                {
                    MessageBox.Show("يجب اضافة مشتريات");
                }
            }
            catch (Exception ex)
            {
                flag.Con.Close();
                MessageBox.Show(ex.Message);
            }
        }
Example #3
0
        private void btnSaveDefective_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                Button btn = (Button)sender;
                if (dgProducts.SelectedIndex != -1)
                {
                    PharmaLinq = new Linq.PharmaLinqDataContext(flag.Con);
                    Linq.Store   store   = PharmaLinq.Stores.SingleOrDefault(item => item.ID_Product == Convert.ToInt32(Dt.Rows[dgProducts.SelectedIndex].ItemArray[0]));
                    Linq.Product product = PharmaLinq.Products.SingleOrDefault(item => item.ID_Product == Convert.ToInt32(Dt.Rows[dgProducts.SelectedIndex].ItemArray[0]));

                    try
                    {
                        int quantity = Convert.ToInt32(txtDefectiveProduct.Text);
                        txtDefectiveProduct.Focus();
                        if (btn.Content.ToString() == "اضافة")
                        {
                            product.Quantity -= quantity;
                            if (product.Quantity < 0)
                            {
                                if (product.BiggerUnit == "الثانوية" && product.UnitQuantity > 0)
                                {
                                    product.Quantity = (int)product.SubQuantity + product.Quantity;
                                    product.UnitQuantity--;
                                }
                                else
                                {
                                    quantity        += product.Quantity;
                                    product.Quantity = 0;
                                }
                            }
                            store.Defective += quantity;
                            MessageBox.Show("تمت الاضافة");
                        }
                        else if (btn.Content.ToString() == "ازالة")
                        {
                            store.Defective -= quantity;

                            if (store.Defective < 0)
                            {
                                quantity       += store.Defective;
                                store.Defective = 0;
                            }
                            if (product.BiggerUnit == "الثانوية" && quantity >= product.SubQuantity)
                            {
                                quantity += -(int)product.SubQuantity;
                                product.UnitQuantity++;
                            }
                            product.Quantity += quantity;

                            MessageBox.Show("تمت الازالة ");
                        }
                        PharmaLinq.SubmitChanges();
                    }
                    catch (Exception ex)
                    {
                        flag.Con.Close();
                        MessageBox.Show("يجب ملء هذا العنصر بعدد صحيح من دون فاصلة ");
                    }
                    UserControl_Loaded(sender, e);
                }
                else
                {
                    MessageBox.Show("يجب تحديد عنصر ");
                }
            }
            catch (Exception ex)
            {
                flag.Con.Close();
                MessageBox.Show(ex.Message);
            }
        }
Example #4
0
        public void Save()
        {
            if (dgSale.Items.Count > 0)
            {
                PharmaLinq = new Linq.PharmaLinqDataContext(flag.Con);
                int j = 0;

                Linq.Sale sale = new Linq.Sale();

                if (!isnew)
                {
                    if (DelDt.Rows.Count > 0)
                    {
                        for (int i = 0; i < dgSale.Items.Count; i++)
                        {
                            try
                            {
                                for (j = 0; j < DelDt.Rows.Count; j++)
                                {
                                    if (Convert.ToInt32(Dt.Rows[i].ItemArray[8]) == Convert.ToInt32(DelDt.Rows[j].ItemArray[0]))
                                    {
                                        salePrice   -= Convert.ToDouble(Dt.Rows[i].ItemArray[7]);
                                        txtPaid.Text = (Convert.ToDouble(txtPaid.Text) - Convert.ToDouble(Dt.Rows[i].ItemArray[7])).ToString();
                                    }
                                }
                            }
                            catch (Exception ex)
                            {
                            }
                        }
                    }
                    sale = PharmaLinq.Sales.Single(item => item.Exist == true && item.ID_Sale == Convert.ToInt32(txtSaleID.Text));
                }


                for (int i = 0; i < Dt.Rows.Count; i++)
                {
                    Linq.SalesAction saleaction = new Linq.SalesAction();
                    Linq.Product     product    = PharmaLinq.Products.Single(item => item.ID_Product == Convert.ToInt32(Dt.Rows[i].ItemArray[0]));

                    if (!isnew && (i + 1) <= dtcount)
                    {
                        saleaction = PharmaLinq.SalesActions.Single(item => item.Exist == true && item.ID_Sale == Convert.ToInt32(txtSaleID.Text) && item.ID_SaleAction == Convert.ToInt32(Dt.Rows[i].ItemArray[8]));
                        if (QuantityDt.Rows[i].ItemArray[1].ToString() == "قطعة")
                        {
                            if (product.BiggerUnit == "الثانوية")
                            {
                                product.Quantity     += (Convert.ToInt32(QuantityDt.Rows[i].ItemArray[0]) % (int)product.SubQuantity);
                                product.UnitQuantity += (Convert.ToInt32(QuantityDt.Rows[i].ItemArray[0]) / product.SubQuantity);

                                if (product.Quantity >= product.SubQuantity)
                                {
                                    product.Quantity -= (int)product.SubQuantity;
                                    product.UnitQuantity++;
                                }
                            }
                            else
                            {
                                product.Quantity += Convert.ToInt32(QuantityDt.Rows[i].ItemArray[0]);
                            }
                        }
                        else
                        {
                            if (product.BiggerUnit == "الثانوية")
                            {
                                product.UnitQuantity += Convert.ToInt32(QuantityDt.Rows[i].ItemArray[0]);
                            }
                            else
                            {
                                product.Quantity     += (Convert.ToInt32(QuantityDt.Rows[i].ItemArray[0]) / (int)product.SubQuantity);
                                product.UnitQuantity += (Convert.ToInt32(QuantityDt.Rows[i].ItemArray[0]) % product.SubQuantity);

                                if (product.UnitQuantity >= product.SubQuantity)
                                {
                                    product.UnitQuantity -= (int)product.SubQuantity;
                                    product.Quantity++;
                                }
                            }
                        }
                        for (j = 0; j < DelDt.Rows.Count; j++)
                        {
                            if (saleaction.ID_SaleAction == Convert.ToInt32(DelDt.Rows[j].ItemArray[0]))
                            {
                                saleaction.Exist = false;
                                goto skip;
                            }
                        }
                    }



                    saleaction.ID_Sale             = Convert.ToInt32(txtSaleID.Text);
                    saleaction.ID_Product          = Convert.ToInt32(Dt.Rows[i].ItemArray[0]);
                    saleaction.Quantity_SaleAction = Convert.ToInt32(Dt.Rows[i].ItemArray[4]);
                    saleaction.Price          = Convert.ToDecimal(Dt.Rows[i].ItemArray[2]);
                    saleaction.TotalPrice     = Convert.ToDecimal(Dt.Rows[i].ItemArray[7]);
                    saleaction.SalePrecentage = Convert.ToInt32(Dt.Rows[i].ItemArray[6]);
                    saleaction.Unit           = Convert.ToString(Dt.Rows[i].ItemArray[3]);
                    saleaction.Exist          = true;

                    if (isnew || i + 1 > dtcount)
                    {
                        PharmaLinq.SalesActions.InsertOnSubmit(saleaction);
                    }
                    //Quantity Decrement
                    if (Dt.Rows[i].ItemArray[3].ToString() == "قطعة")
                    {
                        if (product.BiggerUnit == "الثانوية")
                        {
                            product.Quantity     -= (Convert.ToInt32(Dt.Rows[i].ItemArray[4]) % (int)product.SubQuantity);
                            product.UnitQuantity -= (Convert.ToInt32(Dt.Rows[i].ItemArray[4]) / product.SubQuantity);

                            if (product.Quantity < 0)
                            {
                                product.Quantity += (int)product.SubQuantity;
                                product.UnitQuantity--;
                            }
                        }
                        else
                        {
                            product.Quantity -= Convert.ToInt32(Dt.Rows[i].ItemArray[4]);
                        }
                    }
                    else
                    {
                        if (product.BiggerUnit == "الثانوية")
                        {
                            product.UnitQuantity -= Convert.ToInt32(Dt.Rows[i].ItemArray[4]);
                        }
                        else
                        {
                            product.Quantity     -= (Convert.ToInt32(Dt.Rows[i].ItemArray[4]) / (int)product.SubQuantity);
                            product.UnitQuantity -= (Convert.ToInt32(Dt.Rows[i].ItemArray[4]) % product.SubQuantity);

                            if (product.UnitQuantity < 0)
                            {
                                product.UnitQuantity += (int)product.SubQuantity;
                                product.Quantity--;
                            }
                        }
                    }
                    //End Quantity Decrement

                    skip :;
                    PharmaLinq.SubmitChanges();
                }



                sale.SalePrice   = Convert.ToDecimal(salePrice);
                sale.Exist       = true;
                sale.PayType     = cmbPayType.Text;
                sale.paid        = Convert.ToDecimal(txtPaid.Text);
                sale.ID_Customer = Convert.ToInt32(DtCustomer.Rows[cmbCustomer.SelectedIndex].ItemArray[1]);

                if (isnew)
                {
                    sale.ID_Sale  = Convert.ToInt32(txtSaleID.Text);
                    sale.SaleDate = Convert.ToDateTime(DateTime.Now.ToString("MM/dd/yyyy HH:mm"));
                    sale.ID_User  = IDUser;

                    PharmaLinq.Sales.InsertOnSubmit(sale);
                }
                PharmaLinq.SubmitChanges();

                MessageBox.Show("تم حفظ الفاتورة");



                USC_SALES usc_sale = new USC_SALES {
                    IDUser = IDUser
                };
                MainWindow.GetMainForm.GridUsc.Children.Clear();
                MainWindow.GetMainForm.GridUsc.Children.Add(usc_sale);
            }
            else
            {
                MessageBox.Show("يجب اضافة منتجات");
            }
        }
Example #5
0
        public void Quantity_Checker(Linq.Product product, string unit)
        {
            int qua, product_qua, SubQuantity = new int();

            if (product.SubQuantity == null)
            {
                SubQuantity = 1;
            }
            else
            {
                SubQuantity = (int)product.SubQuantity;
            }
            if (unit == "قطعة")
            {
                if (!isnew && dgSale.SelectedIndex < dtcount)
                {
                    if (product.BiggerUnit == "الثانوية")
                    {
                        product_qua = product.Quantity + (Convert.ToInt32(QuantityDt.Rows[dgSale.SelectedIndex].ItemArray[0]) * SubQuantity);
                    }

                    else
                    {
                        product_qua = product.Quantity + Convert.ToInt32(QuantityDt.Rows[dgSale.SelectedIndex].ItemArray[0]);
                    }
                }
                else
                {
                    product_qua = product.Quantity;
                }

                qua = (int)((product.UnitQuantity * SubQuantity) + product_qua);

                if (product.BiggerUnit == "الثانوية")
                {
                    if (Convert.ToInt32(txtQuantity.Text) > qua)
                    {
                        MessageBox.Show("الكمية المتوفره في المخزن " + qua.ToString() + " قطعة");
                        txtQuantity.Text = qua.ToString();
                    }
                }
                else
                {
                    if (Convert.ToInt32(txtQuantity.Text) > product_qua)
                    {
                        MessageBox.Show("الكمية المتوفره في المخزن " + product_qua.ToString() + " قطعة");
                        txtQuantity.Text = product_qua.ToString();
                    }
                }
            }
            else
            {
                if (!isnew && dgSale.SelectedIndex < dtcount)
                {
                    product_qua = Convert.ToInt32(product.UnitQuantity) + Convert.ToInt32(QuantityDt.Rows[dgSale.SelectedIndex].ItemArray[0]);
                    qua         = (int)(product.Quantity * SubQuantity) + Convert.ToInt32(QuantityDt.Rows[dgSale.SelectedIndex].ItemArray[0]);
                }
                else
                {
                    product_qua = Convert.ToInt32(product.UnitQuantity);
                    qua         = (int)(product.Quantity * SubQuantity);
                }


                if (product.BiggerUnit == "الثانوية")
                {
                    if (Convert.ToInt32(txtQuantity.Text) > product_qua)
                    {
                        MessageBox.Show("الكمية المتوفره في المخزن " + product_qua.ToString() + " " + product.Units);
                        txtQuantity.Text = product_qua.ToString();
                    }
                }
                else
                {
                    if (Convert.ToInt32(txtQuantity.Text) > qua)
                    {
                        MessageBox.Show("الكمية المتوفره في المخزن " + qua.ToString() + " " + product.Units);
                        txtQuantity.Text = qua.ToString();
                    }
                }
            }
        }
Example #6
0
        private void btnSave_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                PharmaLinq = new Linq.PharmaLinqDataContext(flag.Con);
                Linq.Product product = new Linq.Product();


                if (flag.Null_Checker(txtNameProduct) || flag.Null_Checker(txtBarcode) || flag.Null_Checker(txtPriece))
                {
                    goto end;
                }


                try
                {
                    txtPriece.Focus();
                    txtPriece.SelectAll();
                    product.Price = Convert.ToSingle(txtPriece.Text);
                    if (txtUnitPriece.Text != "")
                    {
                        txtUnitPriece.Focus();
                        txtUnitPriece.SelectAll();
                        product.Unit_Price = Convert.ToSingle(txtUnitPriece.Text);
                    }

                    if (txtCost.Text != "")
                    {
                        txtCost.Focus();
                        txtCost.SelectAll();
                        product.Cost = Convert.ToSingle(txtCost.Text);
                    }
                }
                catch
                {
                    flag.Con.Close();
                    MessageBox.Show("يجب ملء هذا العنصر بعدد");
                    goto end;
                }


                try
                {
                    if (txtUnitPrecentage.Text != "")
                    {
                        txtUnitPrecentage.Focus();
                        txtUnitPrecentage.SelectAll();
                        product.SubQuantity = Convert.ToInt32(txtUnitPrecentage.Text);
                    }

                    txtQuantity.Focus();
                    txtQuantity.SelectAll();
                    product.Quantity = Convert.ToInt32(txtQuantity.Text);
                }
                catch
                {
                    flag.Con.Close();
                    MessageBox.Show("يجب ملء هذا العنصر بعدد صحيح من دون فاصلة ");
                    goto end;
                }

                if (flag.Dt_Comparer(DtProduct, 2, txtBarcode.Text))
                {
                    MessageBox.Show("هذا الباركود موجود");
                    txtBarcode.Focus();
                    txtBarcode.SelectAll();
                    return;
                }
                product.Name         = txtNameProduct.Text;
                product.BarCode      = txtBarcode.Text;
                product.ID_Groups    = PharmaLinq.Groups.SingleOrDefault(item => item.Exist == true && item.GroupName == cmbGroup.Text).ID_Groups;
                product.Exist        = true;
                product.EX_Date      = txtEX_Date.Text;
                product.Units        = txtUnit.Text;
                product.ID_User      = IDUser;
                product.UnitQuantity = 0;
                //Bigger Unit
                if (rbtnMain.IsChecked == true)
                {
                    product.BiggerUnit = "الأساسية";
                }
                else if (rbtnSub.IsChecked == true)
                {
                    product.BiggerUnit = "الثانوية";
                }
                else
                {
                    product.BiggerUnit = "";
                }



                PharmaLinq.Products.InsertOnSubmit(product);
                PharmaLinq.SubmitChanges();

                Linq.Store store = new Linq.Store();
                store.ID_Product = product.ID_Product;
                store.Defective  = 0;

                PharmaLinq.Stores.InsertOnSubmit(store);
                PharmaLinq.SubmitChanges();

                MessageBox.Show("تم الحفظ");
                UserControl_Loaded(sender, e);

                //btnSaveProduct.IsEnabled = false;
                //btnNewProduct.IsEnabled = true;
                //cmbGroup.SelectedIndex = 0;
                //btnEditProduct.IsEnabled = true;
                //btnDeletProduct.IsEnabled = true;
                Initil();

                end :;
            }
            catch (Exception ex)
            {
                flag.Con.Close();
                MessageBox.Show(ex.Message);
            }
        }
Example #7
0
        private void btnEditProduct_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (IDProduct != 0)
                {
                    if (MessageBox.Show("هل تريد تعديل العنصر المحدد؟", "تعديل", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
                    {
                        PharmaLinq = new Linq.PharmaLinqDataContext(flag.Con);
                        Linq.Product product = PharmaLinq.Products.Single(item => item.ID_Product == IDProduct);


                        if (flag.Null_Checker(txtNameProduct) || flag.Null_Checker(txtBarcode) || flag.Null_Checker(txtPriece))
                        {
                            goto end;
                        }


                        try
                        {
                            txtPriece.Focus();
                            txtPriece.SelectAll();
                            product.Price = Convert.ToSingle(txtPriece.Text);
                            if (txtUnitPriece.Text != "")
                            {
                                txtUnitPriece.Focus();
                                txtUnitPriece.SelectAll();
                                product.Unit_Price = Convert.ToSingle(txtUnitPriece.Text);
                            }

                            if (txtCost.Text != "")
                            {
                                txtCost.Focus();
                                txtCost.SelectAll();
                                product.Cost = Convert.ToSingle(txtCost.Text);
                            }
                        }
                        catch
                        {
                            flag.Con.Close();
                            MessageBox.Show("يجب ملء هذا العنصر بعدد");
                            goto end;
                        }

                        try
                        {
                            if (txtUnitPrecentage.Text != "")
                            {
                                txtUnitPrecentage.Focus();
                                txtUnitPrecentage.SelectAll();
                                product.SubQuantity = Convert.ToInt32(txtUnitPrecentage.Text);
                            }
                        }
                        catch
                        {
                            flag.Con.Close();
                            MessageBox.Show("يجب ملء هذا العنصر بعدد صحيح من دون فاصلة ");
                            goto end;
                        }

                        if (DtProduct.Rows[dgProducts.SelectedIndex].ItemArray[2].ToString() == txtBarcode.Text)
                        {
                        }
                        else if (flag.Dt_Comparer(DtProduct, 2, txtBarcode.Text))
                        {
                            MessageBox.Show("هذا الباركود موجود");
                            txtBarcode.Focus();
                            txtBarcode.SelectAll();
                            return;
                        }

                        product.Name      = txtNameProduct.Text;
                        product.BarCode   = txtBarcode.Text;
                        product.ID_Groups = PharmaLinq.Groups.Single(item => item.Exist == true && item.GroupName == cmbGroup.Text).ID_Groups;
                        product.Exist     = true;
                        product.EX_Date   = txtEX_Date.Text;
                        product.Units     = txtUnit.Text;
                        product.ID_User   = IDUser;

                        //Bigger Unit
                        if (rbtnMain.IsChecked == true)
                        {
                            product.BiggerUnit = "الأساسية";
                        }
                        else if (rbtnSub.IsChecked == true)
                        {
                            product.BiggerUnit = "الثانوية";
                        }
                        else
                        {
                            product.BiggerUnit = "";
                        }


                        PharmaLinq.SubmitChanges();

                        MessageBox.Show("تم التعديل");
                        UserControl_Loaded(sender, e);

                        cmbGroup.SelectedIndex = 0;
                        Initil();
                        end :;
                    }
                }
                else
                {
                    MessageBox.Show("الرجاء اختيار عنصر");
                }
            }
            catch (Exception ex)
            {
                flag.Con.Close();
                MessageBox.Show(ex.Message);
            }
        }