Index: trunk/grails-app/services/InventoryPurchaseService.groovy
===================================================================
--- trunk/grails-app/services/InventoryPurchaseService.groovy	(revision 605)
+++ trunk/grails-app/services/InventoryPurchaseService.groovy	(revision 610)
@@ -264,4 +264,10 @@
             result.inventoryItemPurchaseInstance.inventoryItem.unitOfMeasure
 
+            // Prevent ordering on obsolete or inactive inventoryItem.
+            def isObsolete = result.inventoryItemPurchaseInstance.inventoryItem?.isObsolete
+            def isActive = result.inventoryItemPurchaseInstance.inventoryItem?.isActive
+            if(isObsolete || !isActive)
+                return fail(code:"inventoryItemPurchase.operation.not.permitted.on.inactive.or.obsolete.item")
+
             if(result.inventoryItemPurchaseInstance.hasErrors() || !result.inventoryItemPurchaseInstance.save())
                 return fail(code:"default.create.failure")
