private void dgrd_ReturnOrderLines_CellValueChanged(object sender, DataGridViewCellEventArgs e) { var senderGrid = (DataGridView)sender; if (e.RowIndex != -1 && e.ColumnIndex == senderGrid.Columns["TotalQty"].Index && !string.IsNullOrEmpty(senderGrid.Rows[e.RowIndex].Cells["TotalQty"].Value.ToString())) { if (Convert.ToInt32(senderGrid.Rows[e.RowIndex].Cells["ProductName"].Value) == -1) { MessageBox.Show("أختر صنف أولا"); return; } VSALSalesOrder vSALSalesOrder = vSALSalesOrderCollection.Where(a => a.ProductID == Convert.ToInt32(senderGrid.Rows[e.RowIndex].Cells["ProductName"].Value)).SingleOrDefault(); if (vSALSalesOrder == null) { MessageBox.Show("هذا الصنف غير موجود بالفاتورة الاصليه"); senderGrid.Rows[e.RowIndex].ErrorText = "هذا الصنف غير موجود بالفاتورة الاصليه"; senderGrid.Rows[e.RowIndex].Cells["ProductName"].Style.BackColor = Color.Red; return; } //else //{ // if ((sALSalesReturnLineCollection.Where(a => a.OriginalSalesLineID == vSALSalesOrder.SalesLineID).ToList().Count) == 0) // sALSalesReturnLineCollection.Add(new SALSalesReturnLine() // { // OriginalSalesLineID = vSALSalesOrder.SalesLineID, // Qty = (decimal)senderGrid.Rows[e.RowIndex].Cells["TotalQty"].Value, // BatchNumber = vSALSalesOrder.IsAcceptBatch == true ? senderGrid.Rows[e.RowIndex].Cells["BatchNumber"].Value.ToString() : null, // ExpiryDate = vSALSalesOrder.IsAcceptBatch == true ? Convert.ToDateTime(senderGrid.Rows[e.RowIndex].Cells["ExpiryDate"].Value) : (DateTime?)null, // Reason = senderGrid.Rows[e.RowIndex].Cells["Reason"].Value.ToString() // }); // else // { // sALSalesReturnLineCollection.RemoveAt(sALSalesReturnLineCollection.IndexOf(sALSalesReturnLineCollection.Where(a => a.OriginalSalesLineID == vSALSalesOrder.SalesLineID).SingleOrDefault())); // sALSalesReturnLineCollection.Add(new SALSalesReturnLine() // { // OriginalSalesLineID = vSALSalesOrder.SalesLineID, // Qty = (decimal)senderGrid.Rows[e.RowIndex].Cells["TotalQty"].Value, // BatchNumber = vSALSalesOrder.IsAcceptBatch == true ? senderGrid.Rows[e.RowIndex].Cells["BatchNumber"].Value.ToString() : null, // ExpiryDate = vSALSalesOrder.IsAcceptBatch == true ? Convert.ToDateTime(senderGrid.Rows[e.RowIndex].Cells["ExpiryDate"].Value) : (DateTime?)null, // Reason = senderGrid.Rows[e.RowIndex].Cells["Reason"].Value.ToString() // }); // } //} tbx_Total.Text = (CalculateTotal((double)senderGrid.Rows[e.RowIndex].Cells["UnitPrice"].Value * (double)senderGrid.Rows[e.RowIndex].Cells["TotalQty"].Value)).ToString(); } if (e.RowIndex != -1 && e.ColumnIndex == senderGrid.Columns["ProductName"].Index) { BDProductPrimaryKey pk = new BDProductPrimaryKey(); pk.ProductID = Convert.ToInt32(senderGrid.Rows[e.RowIndex].Cells["ProductName"].Value); BDProduct _product = bDProductWrapper.SelectOne(pk); senderGrid.Rows[e.RowIndex].Cells["IsAcceptBatch"].Value = _product.IsAcceptBatch; if (_product.IsAcceptBatch == true) { senderGrid.Rows[e.RowIndex].Cells["BatchNumber"].ReadOnly = false; senderGrid.Rows[e.RowIndex].Cells["ExpiryDate"].ReadOnly = false; } else { senderGrid.Rows[e.RowIndex].Cells["BatchNumber"].ReadOnly = true; senderGrid.Rows[e.RowIndex].Cells["ExpiryDate"].ReadOnly = true; } } }
private void dgrd_ReturnOrderLines_CellValueChanged(object sender, DataGridViewCellEventArgs e) { try { var senderGrid = (DataGridView)sender; if (e.RowIndex != -1 && (e.ColumnIndex == senderGrid.Columns["TotalQty"].Index /*|| e.ColumnIndex == senderGrid.Columns["UnitPrice"].Index*/) && !string.IsNullOrEmpty(senderGrid.Rows[e.RowIndex].Cells["TotalQty"].Value.ToString())) { if (Convert.ToInt32(senderGrid.Rows[e.RowIndex].Cells["ProductName"].Value) == -1) { MessageBox.Show("أختر صنف أولا"); return; } if (Convert.ToInt32(senderGrid.Rows[e.RowIndex].Cells["StockType"].Value) == -1) { MessageBox.Show("أختر نوع مرتجع أولا"); return; } VSALSalesOrder vSALSalesOrder = vSALSalesOrderCollection.Where(a => a.ProductID == Convert.ToInt32(senderGrid.Rows[e.RowIndex].Cells["ProductName"].Value)).SingleOrDefault(); if (Convert.ToInt32(senderGrid.Rows[e.RowIndex].Cells["TotalQty"].Value) > vSALSalesOrder.TotalQty) { MessageBox.Show("الكمية المرتجعه اكبر من الكميه المدخله فى الفاتوره الاصليه"); return; } if (senderGrid.Rows[e.RowIndex].Cells["UnitPrice"].Value != null && senderGrid.Rows[e.RowIndex].Cells["TotalQty"].Value != null) { tbx_Total.Text = (CalculateTotal(Convert.ToDouble(senderGrid.Rows[e.RowIndex].Cells["UnitPrice"].Value) * Convert.ToDouble(senderGrid.Rows[e.RowIndex].Cells["TotalQty"].Value))).ToString(); } else { return; } } if (e.RowIndex != -1 && e.ColumnIndex == senderGrid.Columns["ProductName"].Index) { VSALSalesOrder vSALSalesOrder = vSALSalesOrderCollection.Where(a => a.ProductID == Convert.ToInt32(senderGrid.Rows[e.RowIndex].Cells["ProductName"].Value)).SingleOrDefault(); if (vSALSalesOrder == null) { MessageBox.Show("هذا الصنف غير موجود بالفاتورة الاصليه"); senderGrid.Rows[e.RowIndex].ErrorText = "هذا الصنف غير موجود بالفاتورة الاصليه"; //senderGrid.Rows[e.RowIndex].Cells["ProductName"].Value = null; senderGrid.Rows[e.RowIndex].Cells["ProductName"].Style.BackColor = Color.Red; return; } BDProductPrimaryKey pk = new BDProductPrimaryKey(); pk.ProductID = Convert.ToInt32(senderGrid.Rows[e.RowIndex].Cells["ProductName"].Value); BDProduct _product = bDProductWrapper.SelectOne(pk); senderGrid.Rows[e.RowIndex].Cells["IsAcceptBatch"].Value = _product.IsAcceptBatch; if (_product.IsAcceptBatch == true) { senderGrid.Rows[e.RowIndex].Cells["BatchNumber"].ReadOnly = false; senderGrid.Rows[e.RowIndex].Cells["ExpiryDate"].ReadOnly = false; } else { senderGrid.Rows[e.RowIndex].Cells["BatchNumber"].ReadOnly = true; senderGrid.Rows[e.RowIndex].Cells["ExpiryDate"].ReadOnly = true; } senderGrid.Rows[e.RowIndex].Cells["UnitPrice"].Value = vSALSalesOrder.FinalPrice; } if (e.RowIndex != -1 && e.ColumnIndex == senderGrid.Columns["ExpiryDate"].Index) { if (Convert.ToInt32(senderGrid.Rows[e.RowIndex].Cells["ProductName"].Value) == -1) { MessageBox.Show("أختر صنف أولا"); return; } DateTime result; if (!DateTime.TryParse(senderGrid.Rows[e.RowIndex].Cells["ExpiryDate"].Value.ToString(), out result)) { MessageBox.Show("صيغة تاريخ الصلاحية غير صحيحة لابد ان تكون (يوم -شهر -سنة)"); senderGrid.Rows[e.RowIndex].Cells["ExpiryDate"].Style.BackColor = Color.Red; senderGrid.Rows[e.RowIndex].Cells["ExpiryDate"].Value = ""; } else { senderGrid.Rows[e.RowIndex].Cells["ExpiryDate"].Style.BackColor = Color.White; } } } catch (Exception ex) { MessageBox.Show("حدث خطأ برجاء تكرار العمليه مره اخرى واذا تكرر الخطا برجاءالاتصال بالشخص المصمم للبرنامج وارسال رسالة الخطا التى ستظهر بعد قليل له"); MessageBox.Show(ex.Message); } }