Jump to content
mamidayo

Utilisation de quantité réelle Prestashop 1.6.1.5

Recommended Posts

Bonjour à tous je viens vers vous car je suis novice :blush:  et que j'ai un soucis avec la quantité réelle de la gestion avancé des stock :unsure: . voila j'avais des produits hors stocks disponibles à la vente ce qui entraînait des quantités réelles négatives. par la suite j'ai alimenté les différents stocks dont celui de la quantité disponible à la vente de ces produits là. le problème qui se pose est que lorsque je passe une commande la quantité disponible décrémentée est plus que la quantité que je commande. je voudrais patcher le code pour que à chaque alimentation de stock la quantité réelle quelle qu'elle soit, soit égale à la quantité disponible à la vente pour cela j'ai essayé de modifier la classe StockManager.php  j'ai remplacé ça:

 // Gets {physical OR usable}_qty
        $qty = $this->getProductPhysicalQuantities($id_product, $id_product_attribute, $ids_warehouse, $usable);        
       
        //real qty = actual qty in stock - current client orders + current supply orders

        return ($qty - $client_orders_qty + $supply_orders_qty);

par :

$qty = StockAvailable::getQuantityAvailableByProduct($id_product, $id_product_attribute);
         
       return ($qty); 

mais cela block la décrementation du stock disponible à la vente . 

 je ne sais pas comment m'y prendre et dans quelle fichier travailler pour réaliser ce que je veux.Quelqu'un peut il m'aider :(  :(  :(  svp

Edited by mamidayo (see edit history)

Share this post


Link to post
Share on other sites

Bonsoir,

 

J'ai sensiblement le même problème sur une prestashop 1.6.0.6. Les quantités Réelles de certains produits ne correspondent pas aux quantités Physiques ni aux quantités Utilisables. Je voudrait tout remettre nickel en calquant sur quantités Physiques.

 

J'ai tenté une technique un peu rock'n roll dans la bdd pour forcer les quantités Réelles mais j'ai eu des effets de bords.

update `ps_stock_available` sa
left join ps_stock s on
    sa.`id_product`= s.`id_product`
    and sa.`id_product_attribute`= s.`id_product_attribute`
set
    sa.quantity = s.physical_quantity

Merci de vos retours expérimentés :)

Edited by carlitos666 (see edit history)

Share this post


Link to post
Share on other sites

Bonjour,

 

Voici quelques explications sur le stock réel :

 

Tout d'abord il est inutile de chercher a synchroniser la table ps_stock_available avec ps_stock pour la simple et bonne raison que ps_stock_available est automatiquement recalculé à chaque commande et mise à jour d'un produit.

 

Si le stock réel est incohérent avec le stock physique c'est très souvent du a des commandes qui réserve le stock alors qu'elles ne devraient pas.

 

Vous trouverez ici plus d'informations sur un bug de réservation de stock : https://www.prestashop.com/forums/topic/592407-erreur-r%C3%A9sa-et-calcul-du-stock-r%C3%A9el/

 

La première chose à faire est donc de corriger ce bug !

 

Ensuite je vous encourage a vérifier l'intégralité de vos statuts, notamment la cohérence des options, exemple un statut ne devrait pas être considéré comme payé et non valide !

 

Si vous corrigé le bug cité plus haut, alors tous les statuts "considérer la commande comme valide" et "non expédié" vont réserver le stock. Une fois que vous passerez dans un statuts de type "expédié" le stock ne sera plus réservé mais sortira de votre stock physique.

 

Une fois tous cela effectué, il faut resynchroniser l’ensemble de la table ps_stock_available pour cela il faut utiliser un script de ce type :

$products = Db::getInstance()->executeS('SELECT id_product FROM `'._DB_PREFIX_.'product`');

foreach($products as $product) {
    if (StockAvailable::dependsOnStock((int)$product['id_product'])) {
        StockAvailable::synchronize((int)$product['id_product']);
    }
}
Edited by Paco112 (see edit history)

Share this post


Link to post
Share on other sites

Grand merci Paco,

 

Je vais tester tout ça ; notamment sur une boutique qui a subi plusieurs montées de version de la 1.2.5 à la 1.6 .... avec des quantités réelles négatives  B)

 

Carlitos

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More