25 require_once DOL_DOCUMENT_ROOT.
'/fourn/class/fournisseur.commande.class.php';
37 $dispatched = array();
41 $sql =
'SELECT fk_product, SUM(qty) FROM '.MAIN_DB_PREFIX.
'commande_fournisseur_dispatch';
42 $sql .=
' WHERE fk_commande = '.$order_id;
43 $sql .=
' GROUP BY fk_product';
44 $sql .=
' ORDER by fk_product';
48 while ($obj = $db->fetch_object(
$resql))
49 $dispatched[$obj->fk_product] = $obj;
53 $sql =
'SELECT fk_product, SUM(qty) FROM '.MAIN_DB_PREFIX.
'commande_fournisseurdet';
54 $sql .=
' WHERE fk_commande = '.$order_id;
55 $sql .=
' AND fk_product > 0';
56 if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) $sql .=
' AND product_type = 0';
57 $sql .=
' GROUP BY fk_product';
58 $sql .=
' ORDER by fk_product';
62 while ($obj = $db->fetch_object(
$resql))
63 $ordered[$obj->fk_product] = $obj;
67 foreach ($ordered as $key => $val)
69 if ($ordered[$key] > $dispatched[$key]) $todispatch++;
72 return ($todispatch ?
true :
false);
85 $sql =
'SELECT rowid FROM '.MAIN_DB_PREFIX.
'commande_fournisseur';
90 while ($obj = $db->fetch_object(
$resql))
94 $resarray[] = $obj->rowid;
101 $res =
'('.implode(
',', $resarray).
')';
117 global $db, $langs, $conf;
119 $sql =
'SELECT DISTINCT cfd.fk_product, SUM(cfd.qty) as qty FROM';
120 $sql .=
' '.MAIN_DB_PREFIX.
'commande_fournisseurdet as cfd ';
121 $sql .=
' LEFT JOIN '.MAIN_DB_PREFIX.
'commande_fournisseur as cf';
122 $sql .=
' ON cfd.fk_commande = cf.rowid WHERE';
123 if ($conf->global->STOCK_CALCULATE_ON_SUPPLIER_VALIDATE_ORDER) {
124 $sql .=
' cf.fk_statut < 3';
125 } elseif ($conf->global->STOCK_CALCULATE_ON_SUPPLIER_DISPATCH_ORDER) {
126 $sql .=
' cf.fk_statut < 6 AND cf.rowid NOT IN '.dispatchedOrders();
128 $sql .=
' cf.fk_statut < 5';
130 $sql .=
' AND cfd.fk_product = '.$product_id;
131 $sql .=
' GROUP BY cfd.fk_product';
133 $resql = $db->query($sql);
136 $exists = $db->num_rows(
$resql);
139 $obj = $db->fetch_array(
$resql);
145 $error = $db->lasterror();
148 return $langs->trans(
'error');
162 $f = $order->fetch($order_id);
165 foreach ($order->lines as $line) {
166 if (!in_array($line->fk_product, $products)) {
167 $products[] = $line->fk_product;
ordered($product_id)
ordered
dolDispatchToDo($order_id)
Check if there is still some dispatching of stock to do.
dispatchedOrders()
dispatchedOrders
Class to manage predefined suppliers products.
if(!empty($conf->facture->enabled)&&$user->rights->facture->lire) if((!empty($conf->fournisseur->enabled)&&empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)||!empty($conf->supplier_invoice->enabled))&&$user->rights->fournisseur->facture->lire) if(!empty($conf->don->enabled)&&$user->rights->don->lire) if(!empty($conf->tax->enabled)&&$user->rights->tax->charges->lire) if(!empty($conf->facture->enabled)&&!empty($conf->commande->enabled)&&$user->rights->commande->lire &&empty($conf->global->WORKFLOW_DISABLE_CREATE_INVOICE_FROM_ORDER)) if(!empty($conf->facture->enabled)&&$user->rights->facture->lire) if((!empty($conf->fournisseur->enabled)&&empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)||!empty($conf->supplier_invoice->enabled))&&$user->rights->fournisseur->facture->lire) $resql
Social contributions to pay.
dol_print_error($db= '', $error= '', $errors=null)
Displays error message system with all the information to facilitate the diagnosis and the escalation...
getProducts($order_id)
getProducts