stef2015 Posted September 22, 2015 Share Posted September 22, 2015 (edited) Bonjour, Nous avons une boutique en 1.5, et avons développé un module qui permet de synchroniser le stock de notre fournisseur avec le nôtre. Ce module fonctionne plutôt bien et met à jour le stock à chaque consultation du produit. En plus de ce système de mise à jour ponctuelle, nous souhaitons également effectuer une mise à jour globale, c'est à dire de tous les produits de notre catalogue (+15000 ref). Pour ce faire et pour ne pas ralentir le serveur, nous avons programmé une tâche cron pour qui exécute une fois par jour un script php qui mettra à jour autant de produits présents dans la base de données. Ce fichier est placé dans un répertoire nommé /cron à la racine du site. Lorsque nous exécutons le script manuellement, Nous avons une erreur : "Fatal error" et en activant la console de debuggage, prestashop me retourne non pas une erreur mais un array contenant sans doute des paramètres Prestashop. Malheureusement je n'ai pas copié le contenu car il est très lourd. En examinant le code du script, je constate que le problème venait de la fonction : StockAvailable::setQuantity((int)$product['id_product'], 0, (int)$qty_available); et pareil pour : StockAvailable::updateQuantity((int)$product['id_product'], 0, (int)$qty_available); Et pourtant celle-ci fonctionne (peut être parce qu'il s'agit d'une lecture et non d'une écriture de données) : StockAvailable::getQuantityAvailableByProduct((int)$product['id_product']); Ce sont des fonctions dont j'ai l'habitude de manipuler. Je les ai d'ailleurs utilisés dans le module de mise à jour ponctuelle. Est-ce que le fait d'utiliser ces fonctions dans un autre répertoire que celui d'un module ou contrôleur poserait un problème ? Merci d'avance pour votre aide. Stéphane. Edited September 22, 2015 by stef2015 (see edit history) Link to comment Share on other sites More sharing options...
Eolia Posted September 22, 2015 Share Posted September 22, 2015 Bonsoir Avez-vous commencé par inclure le ou les fichiers nécessaires au fonctionnement de ce script ? Si les classes ne sont pas instanciées correctement, le script ne peut fonctionner. Mais si le message d'erreur est long, ce sont les 1ères lignes qui renvoient l'origine du problème. Link to comment Share on other sites More sharing options...
stef2015 Posted September 23, 2015 Author Share Posted September 23, 2015 (edited) Bonjour Eolia et merci pour votre réponse. Je pense avoir fait le nécessaire sauf si me trompe, j'ai inclus cette ligne comme j'ai l'habitude de faire en début de fichier : require_once(dirname(__FILE__).'/../config/config.inc.php'); Dans le cas contraire, pense que prestashop m'aurait retourné une erreur du type "Fatal error: Class 'StockAvailable' not found in /homepages/..." Manquerait-il autre chose ? Edited September 23, 2015 by stef2015 (see edit history) Link to comment Share on other sites More sharing options...
Eolia Posted September 23, 2015 Share Posted September 23, 2015 Ok, peux-tu m'envoyer l'url de ta tâche cron en MP que je regarde ça ? Link to comment Share on other sites More sharing options...
Badboy83 Posted February 9, 2017 Share Posted February 9, 2017 Bonjour j ai idem un scipt de mise à jour produits par cron ( hors admin prestashop) .. tout fonctionne bien .. les stocks sont mis a jour parfaitement.. le soucis est que pour le module ebay , amazon etc.. ne sont pris en compte seulement les changement de stock effectués depuis l admin prestashop . Aprés info il s agirait d un hock prestashop qui est activé aprés chaque mise a jour sur prestashop .. Quelqu un peut il m expliquer le fonctionnement , m'apporter une solution pour activer ce hock .. Cordialement Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now