| 
					
				 | 
			
			
				@@ -238,24 +238,36 @@ public partial class ReservationManagementPurchasing : UserControl 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         CreatePOEditor(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    public void DropItems(IEnumerable<CoreRow> rows) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public void DropItems(IList<CoreRow> rows) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         var page = Editor.Pages.OfType<SupplierPurchaseOrderItemOneToMany>().First(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if(CreatePOItemsFromRequiItems(rows.ToObjects<JobRequisitionItem>(), page.Items)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(CreatePOItemsFromRequiItems(rows.ToArray<JobRequisitionItem>(), page.Items)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             page.Refresh(false, true); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             page.DoChanged(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private bool CreatePOItemsFromRequiItems(IEnumerable<JobRequisitionItem> selected, List<PurchaseOrderItem> items) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private bool CreatePOItemsFromRequiItems(IList<JobRequisitionItem> selected, List<PurchaseOrderItem> items) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // These columns probably are already there, but if they aren't, let's load them. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Client.EnsureColumns(selected, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            Columns.None<JobRequisitionItem>() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .Add(x => x.Qty) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .Add(x => x.Issued) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .Add(x => x.InStock) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .Add(x => x.ID) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .Add(x => x.Product.Name) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .Add(x => x.Product.ID) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .Add(x => x.Style.ID) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .AddDimensionsColumns(x => x.Dimensions, Dimensions.ColumnsType.Data)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         var changed = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         foreach (var jobRequisitionItem in selected) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            // We only want not checked or order required. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if(!jobRequisitionItem.Qty.IsEffectivelyGreaterThan(jobRequisitionItem.InStock)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // We only want stuff which doesn't have enough total stock allocated, which is the InStock and Issued added together. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(!jobRequisitionItem.Qty.IsEffectivelyGreaterThan(jobRequisitionItem.InStock + jobRequisitionItem.Issued)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 continue; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				              
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             // Filter out ones we've already got. 
			 |