| 
					
				 | 
			
			
				@@ -40,28 +40,26 @@ namespace Comal.Stores 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        private bool LoadRequisitionItems(Requisition entity, ref IEnumerable<RequisitionItem> requisitionitems) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        private bool LoadRequisitionItems(Requisition entity, ref IList<RequisitionItem> requisitionitems) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if (requisitionitems == null) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                requisitionitems = Provider.Query( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            requisitionitems ??= Provider.Query( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     new Filter<RequisitionItem>(x => x.RequisitionLink.ID).IsEqualTo(entity.ID) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                ).Rows.Select(x => x.ToObject<RequisitionItem>()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ).ToList<RequisitionItem>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return requisitionitems.Any(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        private bool LoadDeliveryItems(Requisition entity, ref IEnumerable<DeliveryItem> deliveryitems) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        private bool LoadDeliveryItems(Requisition entity, ref IList<DeliveryItem> deliveryitems) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if (deliveryitems == null) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                deliveryitems = Provider.Query( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            deliveryitems ??= Provider.Query( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     new Filter<DeliveryItem>(x => x.RequisitionLink.ID).IsEqualTo(entity.ID), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     new Columns<DeliveryItem>(x => x.ID, x => x.DeliveredDate) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                ).Rows.Select(x => x.ToObject<DeliveryItem>()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ).ToList<DeliveryItem>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return deliveryitems.Any(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         #region TakenBy 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        private void UpdateTakenBy(Requisition entity, ref IEnumerable<RequisitionItem> items, ref IEnumerable<DeliveryItem> deliveryitems) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        private void UpdateTakenBy(Requisition entity, ref IList<RequisitionItem> items, ref IList<DeliveryItem> deliveryitems) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             Log("UpdateTakenBy() - starting"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -116,8 +114,8 @@ namespace Comal.Stores 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             base.AfterSave(entity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            IEnumerable<RequisitionItem> requisitionitems = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            IEnumerable<DeliveryItem> deliveryitems = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            IList<RequisitionItem> requisitionitems = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            IList<DeliveryItem> deliveryitems = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				              
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             UpdateDeliveryItems(entity, ref requisitionitems, ref deliveryitems); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             UpdateTakenBy(entity, ref requisitionitems, ref deliveryitems); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -153,8 +151,8 @@ namespace Comal.Stores 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				          
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         #region Delivery Items 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        private void CreateDeliveryItems(Requisition entity, ref IEnumerable<RequisitionItem> requisitionitems, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            ref IEnumerable<DeliveryItem> deliveryitems) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        private void CreateDeliveryItems(Requisition entity, ref IList<RequisitionItem> requisitionitems, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ref IList<DeliveryItem> deliveryitems) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (!LoadRequisitionItems(entity, ref requisitionitems)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -172,7 +170,7 @@ namespace Comal.Stores 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             deliveryitems = updates; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        private void ClearDeliveryItems(Requisition entity, ref IEnumerable<DeliveryItem> deliveryitems) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        private void ClearDeliveryItems(Requisition entity, ref IList<DeliveryItem> deliveryitems) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (!LoadDeliveryItems(entity, ref deliveryitems)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -185,8 +183,8 @@ namespace Comal.Stores 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             deliveryitems = new List<DeliveryItem>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        private void UpdateDeliveryItems(Requisition entity, ref IEnumerable<RequisitionItem> requisitionitems, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            ref IEnumerable<DeliveryItem> deliveryitems) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        private void UpdateDeliveryItems(Requisition entity, ref IList<RequisitionItem> requisitionitems, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ref IList<DeliveryItem> deliveryitems) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             Log("UpdateDeliveryItems() - starting"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -241,10 +239,9 @@ namespace Comal.Stores 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return movement; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        private void CreateStockBatch(Requisition entity, ref IEnumerable<RequisitionItem> items) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        private void CreateStockBatch(Requisition entity, ref IList<RequisitionItem> items) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            LoadRequisitionItems(entity, ref items); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if (!items.Any()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(!LoadRequisitionItems(entity, ref items)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log("CreateStockBatch() - no items to update!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 return; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -278,7 +275,7 @@ namespace Comal.Stores 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         new Filter<StockHolding>(x => x.Location.ID).IsEqualTo(locationid) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             .And(x => x.Product.ID).IsEqualTo(productid) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             .And(x => x.Style.ID).IsEqualTo(styleid) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            .And(x => x.Dimensions.UnitSize).IsEqualTo(unitsize) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            .And(x => x.Dimensions).DimensionEquals(item.Dimensions) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             .And(x => x.Job.ID).IsEqualTo(jobid) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             .And(x => x.Qty).IsGreaterThan(0.0), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         new Columns<StockHolding>(x => x.Qty) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -339,7 +336,7 @@ namespace Comal.Stores 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 FindSubStore<StockMovementBatch>().Delete(batches, ""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        private void UpdateStockBatches(Requisition entity, ref IEnumerable<RequisitionItem> items) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        private void UpdateStockBatches(Requisition entity, ref IList<RequisitionItem> items) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             Log("UpdateStockBatch() - starting"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (!NeedsUpdating(entity, x => x.StockUpdated)) 
			 |