private void RemoveEmptyRowFromList(PurchaseOrderDetailCollection list) { int maxId = list.Count - 1; while (maxId >= 0) { PurchaseOrderDetail orderDetail = list[maxId]; if (orderDetail.Product == null || orderDetail.Product.ProductMaster == null || string.IsNullOrEmpty(orderDetail.Product.ProductMaster.ProductMasterId)) { list.RemoveAt(maxId); } maxId -= 1; } if (list.Count < 2) { return; } for (int i = 0; i < list.Count - 1; i++) { PurchaseOrderDetail detail = (PurchaseOrderDetail)list[i]; for (int j = list.Count - 1; j >= i + 1; j--) { PurchaseOrderDetail compdetail = (PurchaseOrderDetail)list[j]; if (detail.Product.ProductId == compdetail.Product.ProductId && (detail.PurchaseOrderDetailPK!=null && compdetail.PurchaseOrderDetailPK!= null) && compdetail.PurchaseOrderDetailPK.PurchaseOrderId == detail.PurchaseOrderDetailPK.PurchaseOrderId) { detail.Quantity += compdetail.Quantity; list.RemoveAt(j); } } } }
private void RemoveReturnPurchaseOrder(PurchaseOrderDetail detail, ref PurchaseOrderDetailCollection list, out int index) { for (int i = 0; i < list.Count; i++) { PurchaseOrderDetail orderDetail = list[i]; if (orderDetail.PurchaseOrderDetailPK.PurchaseOrderDetailId == detail.PurchaseOrderDetailPK.PurchaseOrderDetailId && orderDetail.PurchaseOrderDetailPK.DepartmentId == detail.PurchaseOrderDetailPK.DepartmentId && orderDetail.PurchaseOrderDetailPK.PurchaseOrderId == detail.PurchaseOrderDetailPK.PurchaseOrderId ) { list.RemoveAt(i); index = i; return; } } index = 0; }
private void RemoveEmptyAndDuplicateRowFromList(PurchaseOrderDetailCollection list) { int maxId = list.Count - 1; while(maxId >= 0) { PurchaseOrderDetail detail = (PurchaseOrderDetail) list[maxId]; if(string.IsNullOrEmpty(detail.Product.ProductMaster.ProductName)) { list.RemoveAt(maxId); } maxId -= 1; } if(list.Count < 2) { return; } for(int i = 0;i<list.Count - 1;i++) { PurchaseOrderDetail detail = (PurchaseOrderDetail)list[i]; for(int j = list.Count-1;j>=i+1;j--) { PurchaseOrderDetail compdetail = (PurchaseOrderDetail)list[j]; if(detail.Product.ProductId == compdetail.Product.ProductId) { detail.Quantity += compdetail.Quantity; list.RemoveAt(j); } } } }