diff --git a/htdocs/mrp/ajax/interface.php b/htdocs/mrp/ajax/interface.php
new file mode 100644
index 00000000000..195c9a570bd
--- /dev/null
+++ b/htdocs/mrp/ajax/interface.php
@@ -0,0 +1,90 @@
+rights->mrp->write;
+
+
+
+/*
+ * View
+ */
+
+top_httphead("application/json");
+
+if ($action == 'updateselectbatchbywarehouse' && $permissiontoproduce) {
+ $TRes = array();
+
+ $sql = "SELECT pb.batch, pb.rowid, ps.fk_entrepot, pb.qty, e.ref as label, ps.fk_product";
+ $sql .= " FROM " . MAIN_DB_PREFIX . "product_batch as pb";
+ $sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "product_stock as ps on ps.rowid = pb.fk_product_stock";
+ $sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "entrepot as e on e.rowid = ps.fk_entrepot AND e.entity IN (" . getEntity('stock') . ")";
+ $sql .= " WHERE ps.fk_product = " .((int) $fk_product);
+ if ($warehouse_id > 0) $sql .= " AND fk_entrepot = '" . ((int) $warehouse_id) . "'";
+ $sql .= " ORDER BY e.ref, pb.batch";
+
+ $resql = $db->query($sql);
+
+ if ($resql) {
+ while ($obj = $db->fetch_object($resql)) {
+ if (empty($TRes[$obj->batch])) {
+ $TRes[$obj->batch] = $obj->qty;
+ } else {
+ $TRes[$obj->batch] += $obj->qty;
+ }
+ }
+ }
+
+ echo json_encode($TRes);
+} elseif ($action == 'updateselectwarehousebybatch' && $permissiontoproduce) {
+ $res = 0;
+
+ $sql = "SELECT pb.batch, pb.rowid, ps.fk_entrepot, e.ref, pb.qty";
+ $sql .= " FROM " . MAIN_DB_PREFIX . "product_batch as pb";
+ $sql .= " JOIN " . MAIN_DB_PREFIX . "product_stock as ps on ps.rowid = pb.fk_product_stock";
+ $sql .= " JOIN " . MAIN_DB_PREFIX . "entrepot as e on e.rowid = ps.fk_entrepot AND e.entity IN (" . getEntity('stock') . ")";
+ $sql .= " WHERE ps.fk_product = " .((int) $fk_product);
+ if ($batch) $sql.= " AND pb.batch = '" . $db->escape($batch) . "'";
+ $sql .= " ORDER BY e.ref, pb.batch";
+
+ $resql = $db->query($sql);
+
+ if ($resql) {
+ if ($db->num_rows($resql) == 1) {
+ $obj = $db->fetch_object($resql);
+ $res = $obj->fk_entrepot;
+ }
+ }
+
+ echo json_encode($res);
+}
diff --git a/htdocs/mrp/mo_production.php b/htdocs/mrp/mo_production.php
index c36926260e6..3b538a06902 100644
--- a/htdocs/mrp/mo_production.php
+++ b/htdocs/mrp/mo_production.php
@@ -1497,6 +1497,109 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
if (in_array($action, array('consumeorproduce', 'consumeandproduceall', 'addconsumeline'))) {
print "\n";
}
+
+ ?>
+
+
+
+ ' . $arraytypes['batch'] . '';
+ $out .= '';
}
}
}