--- M_MOVEMENTLINE_TRG.xml	2015-06-26 09:49:52.212508922 -0300
+++ M_MOVEMENTLINE_TRG_new.xml	2015-06-26 10:47:59.716409741 -0300
@@ -49,9 +49,24 @@
   FROM M_Movement
   WHERE M_Movement_ID=v_ID
     AND(Processed='Y'
-    OR Posted='Y') ;
+    OR Posted='Y');
   IF(v_RO > 0) THEN
-    RAISE_APPLICATION_ERROR(-20000, '@20501@') ;
+    IF UPDATING THEN
+      IF ((COALESCE(:old.M_MOVEMENT_ID, '0') <> COALESCE(:new.M_MOVEMENT_ID, '0'))
+	  OR (COALESCE(:old.M_LOCATOR_ID, '0') <> COALESCE(:new.M_LOCATOR_ID, '0'))
+	  OR (COALESCE(:old.M_LOCATORTO_ID, '0') <> COALESCE(:new.M_LOCATORTO_ID, '0'))
+	  OR (COALESCE(:old.M_PRODUCT_ID, '0') <> COALESCE(:new.M_PRODUCT_ID, '0'))
+	  OR (COALESCE(:old.MOVEMENTQTY, '0') <> COALESCE(:new.MOVEMENTQTY, '0'))
+	  OR (COALESCE(:old.M_ATTRIBUTESETINSTANCE_ID, '0') <> COALESCE(:new.M_ATTRIBUTESETINSTANCE_ID, '0'))
+	  OR (COALESCE(:old.M_PRODUCT_UOM_ID, '0') <> COALESCE(:new.M_PRODUCT_UOM_ID, '0'))
+	  OR (COALESCE(:old.QUANTITYORDER, '0') <> COALESCE(:new.QUANTITYORDER, '0'))
+	  OR (COALESCE(:old.C_UOM_ID, '0') <> COALESCE(:new.C_UOM_ID, '0'))
+	  OR (COALESCE(:old.M_RESERVATION_ID, '0') <> COALESCE(:new.M_RESERVATION_ID, '0'))) THEN
+	  RAISE_APPLICATION_ERROR(-20000, '@20501@') ;
+      END IF;
+    ELSE
+	RAISE_APPLICATION_ERROR(-20000, '@20501@') ;
+    END IF;
   END IF;
   -- Updating inventory
   IF UPDATING OR DELETING THEN
