diff --git a/htdocs/contrat/card.php b/htdocs/contrat/card.php index ef7ff8e552260aa46a7252dea5f4e8b447007373..c40e9ab677d1901faf6dd511f4e7b758fa2bd3b5 100644 --- a/htdocs/contrat/card.php +++ b/htdocs/contrat/card.php @@ -1317,7 +1317,7 @@ else $sql.= " cd.date_fin_validite as date_fin, cd.date_cloture as date_fin_reelle,"; $sql.= " cd.commentaire as comment, cd.fk_product_fournisseur_price as fk_fournprice, cd.buy_price_ht as pa_ht,"; $sql.= " cd.fk_unit,"; - $sql.= " p.rowid as pid, p.ref as pref, p.label as label, p.fk_product_type as ptype"; + $sql.= " p.rowid as pid, p.ref as pref, p.label as label, p.fk_product_type as ptype, p.entity as pentity"; $sql.= " FROM ".MAIN_DB_PREFIX."contratdet as cd"; $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."product as p ON cd.fk_product = p.rowid"; $sql.= " WHERE cd.rowid = ".$object->lines[$cursorline-1]->id; @@ -1352,6 +1352,7 @@ else $productstatic->id=$objp->fk_product; $productstatic->type=$objp->ptype; $productstatic->ref=$objp->pref; + $productstatic->entity=$objp->pentity; $text = $productstatic->getNomUrl(1,'',20); if ($objp->label) { @@ -1485,6 +1486,7 @@ else $productstatic->id=$objp->fk_product; $productstatic->type=$objp->ptype; $productstatic->ref=$objp->pref; + $productstatic->entity=$objp->pentity; print $productstatic->getNomUrl(1,'',20); print $objp->label?' - '.dol_trunc($objp->label,16):''; print '<br>'; diff --git a/htdocs/contrat/index.php b/htdocs/contrat/index.php index 56cdbe90ca3eb2f2378aca60c794259e89ed6864..b9297d41c733d05bdf6f0aa438e4b2fb0c4c3703 100644 --- a/htdocs/contrat/index.php +++ b/htdocs/contrat/index.php @@ -371,7 +371,7 @@ print '<br>'; $sql = "SELECT c.ref, c.fk_soc, "; $sql.= " cd.rowid as cid, cd.statut, cd.label, cd.fk_product, cd.description as note, cd.fk_contrat, cd.date_fin_validite,"; $sql.= " s.nom as name,"; -$sql.= " p.rowid as pid, p.ref as pref, p.label as plabel, p.fk_product_type as ptype"; +$sql.= " p.rowid as pid, p.ref as pref, p.label as plabel, p.fk_product_type as ptype, p.entity as pentity"; $sql.= " FROM (".MAIN_DB_PREFIX."contrat as c"; $sql.= ", ".MAIN_DB_PREFIX."societe as s"; if (!$user->rights->societe->client->voir && !$socid) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; @@ -413,6 +413,7 @@ if ($resql) $productstatic->id=$obj->fk_product; $productstatic->type=$obj->ptype; $productstatic->ref=$obj->pref; + $productstatic->entity=$obj->pentity; print $productstatic->getNomUrl(1,'',20); } else @@ -449,7 +450,7 @@ print '<br>'; // Not activated services $sql = "SELECT c.ref, c.fk_soc, cd.rowid as cid, cd.statut, cd.label, cd.fk_product, cd.description as note, cd.fk_contrat,"; $sql.= " s.nom as name,"; -$sql.= " p.rowid as pid, p.ref as pref, p.label as plabel, p.fk_product_type as ptype"; +$sql.= " p.rowid as pid, p.ref as pref, p.label as plabel, p.fk_product_type as ptype, p.entity as pentity"; $sql.= " FROM (".MAIN_DB_PREFIX."contrat as c"; $sql.= ", ".MAIN_DB_PREFIX."societe as s"; if (!$user->rights->societe->client->voir && !$socid) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; @@ -493,6 +494,7 @@ if ($resql) $productstatic->id=$obj->fk_product; $productstatic->type=$obj->ptype; $productstatic->ref=$obj->pref; + $productstatic->entity=$obj->pentity; print $productstatic->getNomUrl(1,'',20); } else @@ -528,7 +530,7 @@ print '<br>'; // Expired services $sql = "SELECT c.ref, c.fk_soc, cd.rowid as cid, cd.statut, cd.label, cd.fk_product, cd.description as note, cd.fk_contrat,"; $sql.= " s.nom as name,"; -$sql.= " p.rowid as pid, p.ref as pref, p.label as plabel, p.fk_product_type as ptype"; +$sql.= " p.rowid as pid, p.ref as pref, p.label as plabel, p.fk_product_type as ptype, p.entity as pentity"; $sql.= " FROM (".MAIN_DB_PREFIX."contrat as c"; $sql.= ", ".MAIN_DB_PREFIX."societe as s"; if (!$user->rights->societe->client->voir && !$socid) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; @@ -573,6 +575,7 @@ if ($resql) $productstatic->id=$obj->fk_product; $productstatic->type=$obj->ptype; $productstatic->ref=$obj->pref; + $productstatic->entity=$obj->pentity; print $productstatic->getNomUrl(1,'',20); } else diff --git a/htdocs/contrat/services.php b/htdocs/contrat/services.php index cd07db385aa80b27bd5b1bd9c09e801d0bf1a1e7..fdc130b010e93503c214c5bb461c1a7231c870a1 100644 --- a/htdocs/contrat/services.php +++ b/htdocs/contrat/services.php @@ -98,7 +98,7 @@ llxHeader(); $sql = "SELECT c.rowid as cid, c.ref, c.statut as cstatut,"; $sql.= " s.rowid as socid, s.nom as name,"; $sql.= " cd.rowid, cd.description, cd.statut,"; -$sql.= " p.rowid as pid, p.ref as pref, p.label as label, p.fk_product_type as ptype,"; +$sql.= " p.rowid as pid, p.ref as pref, p.label as label, p.fk_product_type as ptype, p.entity as pentity,"; if (!$user->rights->societe->client->voir && !$socid) $sql .= " sc.fk_soc, sc.fk_user,"; $sql.= " cd.date_ouverture_prevue,"; $sql.= " cd.date_ouverture,"; @@ -225,6 +225,7 @@ if ($resql) $productstatic->id=$obj->pid; $productstatic->type=$obj->ptype; $productstatic->ref=$obj->pref; + $productstatic->entity=$obj->pentity; print $productstatic->getNomUrl(1,'',20); print $obj->label?' - '.dol_trunc($obj->label,16):''; if (! empty($obj->description) && ! empty($conf->global->PRODUCT_DESC_IN_LIST)) print '<br>'.dol_nl2br($obj->description); diff --git a/htdocs/core/boxes/box_produits.php b/htdocs/core/boxes/box_produits.php index 509502183aff770b040c6918fd1c639854383069..042526224a2d6773bcd86d044d3a3e84ab2e16b1 100644 --- a/htdocs/core/boxes/box_produits.php +++ b/htdocs/core/boxes/box_produits.php @@ -64,7 +64,7 @@ class box_produits extends ModeleBoxes if ($user->rights->produit->lire || $user->rights->service->lire) { - $sql = "SELECT p.rowid, p.label, p.ref, p.price, p.price_base_type, p.price_ttc, p.fk_product_type, p.tms, p.tosell, p.tobuy, p.fk_price_expression"; + $sql = "SELECT p.rowid, p.label, p.ref, p.price, p.price_base_type, p.price_ttc, p.fk_product_type, p.tms, p.tosell, p.tobuy, p.fk_price_expression, p.entity"; $sql.= " FROM ".MAIN_DB_PREFIX."product as p"; $sql.= ' WHERE p.entity IN ('.getEntity($productstatic->element, 1).')'; if (empty($user->rights->produit->lire)) $sql.=' AND p.fk_product_type != 0'; @@ -103,6 +103,7 @@ class box_produits extends ModeleBoxes $productstatic->ref = $objp->ref; $productstatic->type = $objp->fk_product_type; $productstatic->label = $objp->label; + $productstatic->entity = $objp->entity; $this->info_box_contents[$line][] = array( 'td' => 'align="left"', diff --git a/htdocs/core/boxes/box_produits_alerte_stock.php b/htdocs/core/boxes/box_produits_alerte_stock.php index 06442571b6ee0fa8eef645ed9691917445c5fa8a..66f1cbbfe3b0c1c3581e4a48fb64c9e37e569dac 100644 --- a/htdocs/core/boxes/box_produits_alerte_stock.php +++ b/htdocs/core/boxes/box_produits_alerte_stock.php @@ -66,7 +66,7 @@ class box_produits_alerte_stock extends ModeleBoxes if ($user->rights->produit->lire || $user->rights->service->lire) { - $sql = "SELECT p.rowid, p.label, p.price, p.ref, p.price_base_type, p.price_ttc, p.fk_product_type, p.tms, p.tosell, p.tobuy, p.seuil_stock_alerte,"; + $sql = "SELECT p.rowid, p.label, p.price, p.ref, p.price_base_type, p.price_ttc, p.fk_product_type, p.tms, p.tosell, p.tobuy, p.seuil_stock_alerte,p.entity,"; $sql.= " SUM(".$db->ifsql("s.reel IS NULL","0","s.reel").") as total_stock"; $sql.= " FROM ".MAIN_DB_PREFIX."product as p"; $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."product_stock as s on p.rowid = s.fk_product"; @@ -110,6 +110,7 @@ class box_produits_alerte_stock extends ModeleBoxes $productstatic->ref = $objp->ref; $productstatic->type = $objp->fk_product_type; $productstatic->label = $objp->label; + $productstatic->entity = $objp->entity; $this->info_box_contents[$line][] = array( 'td' => 'align="left"', diff --git a/htdocs/fourn/card.php b/htdocs/fourn/card.php index 55993221d41d838a589315fd5a8e4778eeeb240a..5188003c1150d72f5794864f7c87949fd8e92d08 100644 --- a/htdocs/fourn/card.php +++ b/htdocs/fourn/card.php @@ -337,7 +337,7 @@ if ($object->id > 0) //Query from product/liste.php $sql = 'SELECT p.rowid, p.ref, p.label, pfp.tms,'; - $sql.= ' p.fk_product_type'; + $sql.= ' p.fk_product_type, p.entity'; $sql.= ' FROM '.MAIN_DB_PREFIX.'product_fournisseur_price as pfp'; $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."product as p ON p.rowid = pfp.fk_product"; $sql.= ' WHERE p.entity IN ('.getEntity('product', 1).')'; @@ -361,6 +361,7 @@ if ($object->id > 0) $productstatic->ref = $objp->ref; $productstatic->label = $objp->label; $productstatic->type = $objp->fk_product_type; + $productstatic->entity = $objp->entity; print "<tr ".$bc[$var].">"; print '<td class="nowrap">'; diff --git a/htdocs/fourn/product/list.php b/htdocs/fourn/product/list.php index 33e1ea46dd9c1ffd71590a3299429ba756226762..4b3e05eeea85b927c6ca9bddd2beb3a94b80865d 100644 --- a/htdocs/fourn/product/list.php +++ b/htdocs/fourn/product/list.php @@ -86,7 +86,7 @@ if ($fourn_id) $supplier->fetch($fourn_id); } -$sql = "SELECT p.rowid, p.label, p.ref, p.fk_product_type,"; +$sql = "SELECT p.rowid, p.label, p.ref, p.fk_product_type, p.entity,"; $sql.= " ppf.fk_soc, ppf.ref_fourn, ppf.price as price, ppf.quantity as qty, ppf.unitprice,"; $sql.= " s.rowid as socid, s.nom as name"; $sql.= " FROM ".MAIN_DB_PREFIX."product as p"; @@ -212,6 +212,7 @@ if ($resql) $productstatic->id=$objp->rowid; $productstatic->ref=$objp->ref; $productstatic->type=$objp->fk_product_type; + $productstatic->entity=$objp->entity; print $productstatic->getNomUrl(1,'supplier'); print '</td>'; diff --git a/htdocs/product/canvas/product/actions_card_product.class.php b/htdocs/product/canvas/product/actions_card_product.class.php index aba6325d234a96f608a3863bf0773de1673404c1..e32d31122dc7de0a86593535f3a716819c5d01b8 100644 --- a/htdocs/product/canvas/product/actions_card_product.class.php +++ b/htdocs/product/canvas/product/actions_card_product.class.php @@ -341,7 +341,7 @@ class ActionsCardProduct $sql = 'SELECT DISTINCT '; // Fields requiered - $sql.= 'p.rowid, p.price_base_type, p.fk_product_type, p.seuil_stock_alerte'; + $sql.= 'p.rowid, p.price_base_type, p.fk_product_type, p.seuil_stock_alerte, p.entity'; // Fields not requiered foreach($this->field_list as $field) @@ -417,6 +417,7 @@ class ActionsCardProduct $this->id = $obj->rowid; $this->ref = $obj->$alias; $this->type = $obj->fk_product_type; + $this->entity = $obj->entity; $datas[$alias] = $this->getNomUrl(1,'',24); } else if ($alias == 'stock') diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 6f4e37c8ab2f8a7a7727c83682d05c6921c16092..3496773e018c5a7f34153e383c3e66cd71de0a92 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -2768,7 +2768,8 @@ class Product extends CommonObject 'type'=>$type, // Nb of units that compose parent product 'desiredstock'=>$this->desiredstock, 'level'=>$level, - 'incdec'=>$incdec + 'incdec'=>$incdec, + 'entity'=>$this->entity ); // Recursive call if there is childs to child @@ -2850,7 +2851,7 @@ class Product extends CommonObject */ function getFather() { - $sql = "SELECT p.rowid, p.label as label, p.ref as ref, pa.fk_product_pere as id, p.fk_product_type, pa.qty, pa.incdec"; + $sql = "SELECT p.rowid, p.label as label, p.ref as ref, pa.fk_product_pere as id, p.fk_product_type, pa.qty, pa.incdec, p.entity"; $sql.= " FROM ".MAIN_DB_PREFIX."product_association as pa,"; $sql.= " ".MAIN_DB_PREFIX."product as p"; $sql.= " WHERE p.rowid = pa.fk_product_pere"; @@ -2868,6 +2869,7 @@ class Product extends CommonObject $prods[$record['id']]['qty'] = $record['qty']; $prods[$record['id']]['incdec'] = $record['incdec']; $prods[$record['id']]['fk_product_type'] = $record['fk_product_type']; + $prods[$record['id']]['entity'] = $record['entity']; } return $prods; } diff --git a/htdocs/product/composition/card.php b/htdocs/product/composition/card.php index 96e4c955cd671d4177dbae25e5e040e593b45822..71742f261cf324fe33f0430613cc6bd220feed4e 100644 --- a/htdocs/product/composition/card.php +++ b/htdocs/product/composition/card.php @@ -139,7 +139,7 @@ if ($action == 'search') { $current_lang = $langs->getDefaultLang(); - $sql = 'SELECT DISTINCT p.rowid, p.ref, p.label, p.barcode, p.price, p.price_ttc, p.price_base_type,'; + $sql = 'SELECT DISTINCT p.rowid, p.ref, p.label, p.barcode, p.price, p.price_ttc, p.price_base_type, p.entity,'; $sql.= ' p.fk_product_type, p.tms as datem'; if (! empty($conf->global->MAIN_MULTILANGS)) $sql.= ', pl.label as labelm, pl.description as descriptionm'; $sql.= ' FROM '.MAIN_DB_PREFIX.'product as p'; @@ -278,6 +278,7 @@ if ($id > 0 || ! empty($ref)) $productstatic->type=$value["fk_product_type"]; $productstatic->ref=$value['ref']; $productstatic->label=$value['label']; + $productstatic->entity=$value['entity']; $class=($class=='impair')?'pair':'impair'; print '<tr class="'.$class.'">'; @@ -334,6 +335,7 @@ if ($id > 0 || ! empty($ref)) $productstatic->id=$value['id']; $productstatic->type=$value['type']; $productstatic->label=$value['label']; + $productstatic->entity=$value['entity']; if ($value['level'] <= 1) { @@ -542,6 +544,7 @@ if ($id > 0 || ! empty($ref)) $productstatic->ref=$objp->ref; $productstatic->label=$objp->label; $productstatic->type=$objp->type; + $productstatic->entity=$objp->entity; print '<td>'.$productstatic->getNomUrl(1,'',24).'</td>'; $labeltoshow=$objp->label; diff --git a/htdocs/product/list.php b/htdocs/product/list.php index 77e8373d2a7ae8ed4289eca93dd8414fa3914449..c7789761cd341e350401afc371aa71a93d6dc8c4 100644 --- a/htdocs/product/list.php +++ b/htdocs/product/list.php @@ -133,7 +133,7 @@ else // Add what we are searching for if (! empty($sall)) $texte.= " - ".$sall; - $sql = 'SELECT DISTINCT p.rowid, p.ref, p.label, p.barcode, p.price, p.price_ttc, p.price_base_type,'; + $sql = 'SELECT DISTINCT p.rowid, p.ref, p.label, p.barcode, p.price, p.price_ttc, p.price_base_type, p.entity,'; $sql.= ' p.fk_product_type, p.tms as datem,'; $sql.= ' p.duration, p.tosell, p.tobuy, p.seuil_stock_alerte, p.desiredstock,'; $sql.= ' MIN(pfp.unitprice) as minsellprice'; @@ -431,6 +431,7 @@ else $product_static->ref = $objp->ref; $product_static->label = $objp->label; $product_static->type = $objp->fk_product_type; + $product_static->entity = $objp->entity; print $product_static->getNomUrl(1,'',24); print "</td>\n"; diff --git a/htdocs/product/reassort.php b/htdocs/product/reassort.php index 8bd2096af69aa1b81f3f694de45da85f37e89506..40b1e0f9816cc4646a419f4b7069d6936192c3a8 100644 --- a/htdocs/product/reassort.php +++ b/htdocs/product/reassort.php @@ -101,7 +101,7 @@ $htmlother=new FormOther($db); $title=$langs->trans("ProductsAndServices"); -$sql = 'SELECT p.rowid, p.ref, p.label, p.barcode, p.price, p.price_ttc, p.price_base_type,'; +$sql = 'SELECT p.rowid, p.ref, p.label, p.barcode, p.price, p.price_ttc, p.price_base_type,p.entity,'; $sql.= ' p.fk_product_type, p.tms as datem,'; $sql.= ' p.duration, p.tosell as statut, p.tobuy, p.seuil_stock_alerte, p.desiredstock,'; $sql.= ' SUM(s.reel) as stock_physique'; @@ -307,6 +307,7 @@ if ($resql) $product_static->id=$objp->rowid; $product_static->label = $objp->label; $product_static->type=$objp->fk_product_type; + $product_static->entity=$objp->entity; print $product_static->getNomUrl(1,'',16); //if ($objp->stock_theorique < $objp->seuil_stock_alerte) print ' '.img_warning($langs->trans("StockTooLow")); print '</td>'; diff --git a/htdocs/product/reassortlot.php b/htdocs/product/reassortlot.php index 86410df8a00d523ede3eb41913aa7507a308b4e6..9ebffd5673d1cce2e34c14925d34ab53a97a66bc 100644 --- a/htdocs/product/reassortlot.php +++ b/htdocs/product/reassortlot.php @@ -104,7 +104,7 @@ $htmlother=new FormOther($db); $title=$langs->trans("ProductsAndServices"); -$sql = 'SELECT p.rowid, p.ref, p.label, p.barcode, p.price, p.price_ttc, p.price_base_type,'; +$sql = 'SELECT p.rowid, p.ref, p.label, p.barcode, p.price, p.price_ttc, p.price_base_type,p.entity,'; $sql.= ' p.fk_product_type, p.tms as datem,'; $sql.= ' p.duration, p.tosell as statut, p.tobuy, p.seuil_stock_alerte, p.desiredstock,'; $sql.= ' s.fk_entrepot,'; @@ -324,6 +324,7 @@ if ($resql) $product_static->id=$objp->rowid; $product_static->label = $objp->label; $product_static->type=$objp->fk_product_type; + $product_static->entity=$objp->entity; print $product_static->getNomUrl(1,'',16); //if ($objp->stock_theorique < $objp->seuil_stock_alerte) print ' '.img_warning($langs->trans("StockTooLow")); print '</td>'; diff --git a/htdocs/product/stock/card.php b/htdocs/product/stock/card.php index 22ed390bc8f0ebdfb66abaebd63ef8bddf7833de..034fd71a2bbb52e9770482801eabe7824f8c3511 100644 --- a/htdocs/product/stock/card.php +++ b/htdocs/product/stock/card.php @@ -394,7 +394,7 @@ else $totalunit=0; $totalvalue=$totalvaluesell=0; - $sql = "SELECT p.rowid as rowid, p.ref, p.label as produit, p.fk_product_type as type, p.pmp as ppmp, p.price, p.price_ttc,"; + $sql = "SELECT p.rowid as rowid, p.ref, p.label as produit, p.fk_product_type as type, p.pmp as ppmp, p.price, p.price_ttc, p.entity,"; $sql.= " ps.pmp, ps.reel as value"; $sql.= " FROM ".MAIN_DB_PREFIX."product_stock as ps, ".MAIN_DB_PREFIX."product as p"; $sql.= " WHERE ps.fk_product = p.rowid"; @@ -438,6 +438,7 @@ else $productstatic->ref = $objp->ref; $productstatic->label = $objp->produit; $productstatic->type=$objp->type; + $productstatic->entity=$objp->entity; print $productstatic->getNomUrl(1,'stock',16); print '</td>'; print '<td>'.$objp->produit.'</td>'; diff --git a/htdocs/product/stock/mouvement.php b/htdocs/product/stock/mouvement.php index 26a2aef8e129ea4fdc012f0d9414cfdfedfd0c6e..d5deffb2c127c48c95a079d8c3ee7ba3382ecbe8 100644 --- a/htdocs/product/stock/mouvement.php +++ b/htdocs/product/stock/mouvement.php @@ -164,7 +164,7 @@ $form=new Form($db); $formother=new FormOther($db); $formproduct=new FormProduct($db); -$sql = "SELECT p.rowid, p.ref as product_ref, p.label as produit, p.fk_product_type as type,"; +$sql = "SELECT p.rowid, p.ref as product_ref, p.label as produit, p.fk_product_type as type, p.entity,"; $sql.= " e.label as stock, e.rowid as entrepot_id, e.lieu,"; $sql.= " m.rowid as mid, m.value, m.datem, m.fk_user_author, m.label, m.inventorycode, m.fk_origin, m.origintype,"; $sql.= " m.batch,m.eatby,m.sellby,"; @@ -575,6 +575,7 @@ if ($resql) $productstatic->ref=$objp->product_ref; $productstatic->label=$objp->produit; $productstatic->type=$objp->type; + $productstatic->entity=$objp->entity; print $productstatic->getNomUrl(1,'',16); print "</td>\n"; // Product label