diff --git a/src/org/openbravo/warehouse/advancedwarehouseoperations/distributionorders/ittalgorithm/implementation/PickingDistributionOrderIssue_ITTAlgorithmDao.java b/src/org/openbravo/warehouse/advancedwarehouseoperations/distributionorders/ittalgorithm/implementation/PickingDistributionOrderIssue_ITTAlgorithmDao.java
--- a/src/org/openbravo/warehouse/advancedwarehouseoperations/distributionorders/ittalgorithm/implementation/PickingDistributionOrderIssue_ITTAlgorithmDao.java
+++ b/src/org/openbravo/warehouse/advancedwarehouseoperations/distributionorders/ittalgorithm/implementation/PickingDistributionOrderIssue_ITTAlgorithmDao.java
@@ -75,6 +75,11 @@
         + //
         "from OBAWO_Task task " + //
         "where task.obdoaDistOrderline.id = :distributionOrderLineId " + //
+        // Here we can't trust on reservations like in Sales Orders because they are removed
+        // when entering into the truck. So the easiest way to track them is looking at the PK
+        // algorithm used: if null it means the system took the stock from a previous reservation,
+        // and in DO the reservations are only created through the AWO task generator
+        "and task.obawoPKWarehouseAlgorithm is not null " + //
         "and task.inventoryTransactionType.id = :issueDistributionOrderIssueITT ";
     final Session session = OBDal.getInstance().getSession();
     final Query<BigDecimal> queryTasks = session.createQuery(hql, BigDecimal.class);
