Fix replenishment must exclude parent of variants.
This commit is contained in:
parent
a98d025f5a
commit
8aaee7fa5e
@ -34,7 +34,7 @@ StockMovementForId=Movement ID %d
|
|||||||
ListMouvementStockProject=List of stock movements associated to project
|
ListMouvementStockProject=List of stock movements associated to project
|
||||||
StocksArea=Warehouses area
|
StocksArea=Warehouses area
|
||||||
AllWarehouses=All warehouses
|
AllWarehouses=All warehouses
|
||||||
IncludeEmptyDesiredStock=Include also undefined desired stock
|
IncludeEmptyDesiredStock=Include also negative stock with undefined desired stock
|
||||||
IncludeAlsoDraftOrders=Include also draft orders
|
IncludeAlsoDraftOrders=Include also draft orders
|
||||||
Location=Location
|
Location=Location
|
||||||
LocationSummary=Short name location
|
LocationSummary=Short name location
|
||||||
|
|||||||
@ -352,7 +352,9 @@ if (dol_strlen($type)) {
|
|||||||
if ($search_ref) $sql .= natural_search('p.ref', $search_ref);
|
if ($search_ref) $sql .= natural_search('p.ref', $search_ref);
|
||||||
if ($search_label) $sql .= natural_search('p.label', $search_label);
|
if ($search_label) $sql .= natural_search('p.label', $search_label);
|
||||||
$sql .= ' AND p.tobuy = 1';
|
$sql .= ' AND p.tobuy = 1';
|
||||||
if (!empty($canvas)) $sql .= ' AND p.canvas = "'.$db->escape($canvas).'"';
|
if (empty($conf->global->VARIANT_ALLOW_STOCK_MOVEMENT_ON_VARIANT_PARENT)) { // Add test to exclude products that has variants
|
||||||
|
$sql .= ' AND p.rowid NOT IN (SELECT pac.fk_product_parent FROM '.MAIN_DB_PREFIX.'product_attribute_combination as pac WHERE pac.entity IN ('.getEntity('product').'))';
|
||||||
|
}
|
||||||
$sql .= ' GROUP BY p.rowid, p.ref, p.label, p.description, p.price';
|
$sql .= ' GROUP BY p.rowid, p.ref, p.label, p.description, p.price';
|
||||||
$sql .= ', p.price_ttc, p.price_base_type,p.fk_product_type, p.tms';
|
$sql .= ', p.price_ttc, p.price_base_type,p.fk_product_type, p.tms';
|
||||||
$sql .= ', p.duration, p.tobuy';
|
$sql .= ', p.duration, p.tobuy';
|
||||||
@ -538,13 +540,13 @@ if ($usevirtualstock == 1)
|
|||||||
{
|
{
|
||||||
print $langs->trans("CurentSelectionMode").': ';
|
print $langs->trans("CurentSelectionMode").': ';
|
||||||
print '<span class="a-mesure">'.$langs->trans("UseVirtualStock").'</span>';
|
print '<span class="a-mesure">'.$langs->trans("UseVirtualStock").'</span>';
|
||||||
print ' <a class="a-mesure-disabled" href="'.$_SERVER["PHP_SELF"].'?mode=physical&fk_supplier='.$fk_supplier.'&fk_entrepot='.$fk_entrepot.'">'.$langs->trans("UsePhysicalStock").'</a>';
|
print ' <a class="a-mesure-disabled" href="'.$_SERVER["PHP_SELF"].'?mode=physical'.($fk_supplier > 0 ? '&fk_supplier='.$fk_supplier : '').($fk_entrepot > 0 ? '&fk_entrepot='.$fk_entrepot : '').'">'.$langs->trans("UsePhysicalStock").'</a>';
|
||||||
print '<br>';
|
print '<br>';
|
||||||
}
|
}
|
||||||
if ($usevirtualstock == 0)
|
if ($usevirtualstock == 0)
|
||||||
{
|
{
|
||||||
print $langs->trans("CurentSelectionMode").': ';
|
print $langs->trans("CurentSelectionMode").': ';
|
||||||
print '<a class="a-mesure-disabled" href="'.$_SERVER["PHP_SELF"].'?mode=virtual&fk_supplier='.$fk_supplier.'&fk_entrepot='.$fk_entrepot.'">'.$langs->trans("UseVirtualStock").'</a>';
|
print '<a class="a-mesure-disabled" href="'.$_SERVER["PHP_SELF"].'?mode=virtual'.($fk_supplier > 0 ? '&fk_supplier='.$fk_supplier : '').($fk_entrepot > 0 ? '&fk_entrepot='.$fk_entrepot : '').'">'.$langs->trans("UseVirtualStock").'</a>';
|
||||||
print ' <span class="a-mesure">'.$langs->trans("UsePhysicalStock").'</span>';
|
print ' <span class="a-mesure">'.$langs->trans("UsePhysicalStock").'</span>';
|
||||||
print '<br>';
|
print '<br>';
|
||||||
}
|
}
|
||||||
@ -600,8 +602,8 @@ if ($search_ref || $search_label || $sall || $salert || $draftorder || GETPOST('
|
|||||||
$filters .= '&salert='.urlencode($salert);
|
$filters .= '&salert='.urlencode($salert);
|
||||||
$filters .= '&draftorder='.urlencode($draftorder);
|
$filters .= '&draftorder='.urlencode($draftorder);
|
||||||
$filters .= '&mode='.urlencode($mode);
|
$filters .= '&mode='.urlencode($mode);
|
||||||
$filters .= '&fk_supplier='.urlencode($fk_supplier);
|
if ($fk_supplier > 0) $filters .= '&fk_supplier='.urlencode($fk_supplier);
|
||||||
$filters .= '&fk_entrepot='.urlencode($fk_entrepot);
|
if ($fk_entrepot > 0) $filters .= '&fk_entrepot='.urlencode($fk_entrepot);
|
||||||
} else {
|
} else {
|
||||||
$filters = '&search_ref='.urlencode($search_ref).'&search_label='.urlencode($search_label);
|
$filters = '&search_ref='.urlencode($search_ref).'&search_label='.urlencode($search_label);
|
||||||
$filters .= '&fourn_id='.urlencode($fourn_id);
|
$filters .= '&fourn_id='.urlencode($fourn_id);
|
||||||
@ -609,8 +611,8 @@ if ($search_ref || $search_label || $sall || $salert || $draftorder || GETPOST('
|
|||||||
$filters .= '&='.urlencode($salert);
|
$filters .= '&='.urlencode($salert);
|
||||||
$filters .= '&draftorder='.urlencode($draftorder);
|
$filters .= '&draftorder='.urlencode($draftorder);
|
||||||
$filters .= '&mode='.urlencode($mode);
|
$filters .= '&mode='.urlencode($mode);
|
||||||
$filters .= '&fk_supplier='.urlencode($fk_supplier);
|
if ($fk_supplier > 0) $filters .= '&fk_supplier='.urlencode($fk_supplier);
|
||||||
$filters .= '&fk_entrepot='.urlencode($fk_entrepot);
|
if ($fk_entrepot > 0) $filters .= '&fk_entrepot='.urlencode($fk_entrepot);
|
||||||
}
|
}
|
||||||
if ($limit > 0 && $limit != $conf->liste_limit) {
|
if ($limit > 0 && $limit != $conf->liste_limit) {
|
||||||
$filters .= '&limit='.urlencode($limit);
|
$filters .= '&limit='.urlencode($limit);
|
||||||
@ -815,8 +817,6 @@ while ($i < ($limit ? min($num, $limit) : $num))
|
|||||||
$picto = img_picto($langs->trans("NoPendingReceptionOnSupplierOrder"), 'help');
|
$picto = img_picto($langs->trans("NoPendingReceptionOnSupplierOrder"), 'help');
|
||||||
}
|
}
|
||||||
|
|
||||||
$variants = $prod->hasVariants();
|
|
||||||
if (!$variants || !empty($conf->global->VARIANT_ALLOW_STOCK_MOVEMENT_ON_VARIANT_PARENT)) {
|
|
||||||
print '<tr class="oddeven">';
|
print '<tr class="oddeven">';
|
||||||
|
|
||||||
// Select field
|
// Select field
|
||||||
@ -876,7 +876,6 @@ while ($i < ($limit ? min($num, $limit) : $num))
|
|||||||
|
|
||||||
print '</tr>';
|
print '</tr>';
|
||||||
}
|
}
|
||||||
}
|
|
||||||
$i++;
|
$i++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user