Bonjour à tous,
Après avoir bien farfouillé sur le forum pour trouver comment retrouver rapidement la localisation de mes pièces (milliers de références chez nous, donc important l’emplacement, et du coup pas pratique de passer par des sous entrepôts car il y en aurait trop), je suis la piste de l’extrafield emplacement au niveau de la table produit.
J’ai donc créé un extrafield emplacement, et j’ai renseigné pour chacun de mes produits l’emplacement de mon dépôt qui tourne le plus (SAV, ID 2 dans llxdi_entrepot si vous voulez tout savoir).
Maintenant, pour pouvoir utiliser simplement cet extrafield, par exemple dans les documents, il serait aussi intéressant de pouvoir avoir le stock dans ce dépôt le plus utilisé.
J’ai donc pensé utile de créer un deuxième extrafield au niveau de la table produit, qui récupère la quantité en stock dans ce dépôt. et là, ca coince un peu car je n’arrive pas avec un extrafield champ calculé, à faire apparaître la quantité.
La requête SQL est
SELECT ps.reel from llxdi_product_stock AS ps WHERE ps.fk_product =[ID du produit] AND ps.fk_entrepot=2
En cherchant sur le forum et le wiki, je n’ai pas trouvé d’explication claire pour la formule de ce champ calculé.
J’ai essayé ca, mais ca ne marche pas
mysqli_fetch_array($resql = $db->query('SELECT reel AS QTE from llxdi_product_stock where fk_entrepot=2 AND fk_object = '.$object->$id))[« QTE »]));
L’erreur est la suivante :
Erreur Bad string syntax to evaluate (dot char is forbidden): mysqli_fetch_array($resql = $db->query('SELECT reel AS QTE from llxdi_product_stock where fk_entrepot=2 AND fk_object = '.$object->$id))[« QTE »]));
Je suis en dolibarr 16.0.3, php 8.0.26, bdd MySQL
si quelqu’un a une idée, je suis preneur, car je suis sûr que cela intéressera beaucoup de monde !