Jump to content

[1.6.1.0] ->[1.6.1.2] Les Prix Spécifiques Ne S'affichent Plus !


Recommended Posts

Bonjour,

Après update vers la 1.6.1.2 je n'ai plus de réductions qui s'affichent sur les produits.

J'ai bien vérifié que les prix spécifiques des produits sont bien enregistrés que je les appliquent pour tous les groupes, pays, illimtés, etc..

 

Je tourne en rond dans la classe product.php ou je trouve :

     // Reduction
    
       
        if (($only_reduc || $use_reduc) && $specific_price ) {

 

$specific_price est a false donc inutile de voir plus loin.

Si je le force a true je peux suivre si la réduction s'applique bien mais elle est toujours a zéro.

 

Quelqu'un aurait-il rencontré le même problème et si il a une solution.

 

Merci d'avance,

Jean-Marie

 

 

Link to comment
Share on other sites

  • 4 weeks later...

Vous pouvez voir ce post https://www.prestashop.com/forums/topic/467748-solved-specific-price-error-after-update-from-1609-to-1611/page-2

 

Il est en Anglais. Il n'est pas necessaire de mettre à jour la base de donnée pour PS1.6.1.2 ; modifier le classes/specificprice.php 

 

remplacer

 

            $query = '
SELECT *, '.SpecificPrice::_getScoreQuery($id_product, $id_shop, $id_currency, $id_country, $id_group, $id_customer).'
FROM `'._DB_PREFIX_.'specific_price`
WHERE
                `id_shop` '.self::formatIntInQuery(0, $id_shop).' AND
                `id_currency` '.self::formatIntInQuery(0, $id_currency).' AND
                `id_country` '.self::formatIntInQuery(0, $id_country).' AND
                `id_group` '.self::formatIntInQuery(0, $id_group).' '.$query_extra.'
AND IF(`from_quantity` > 1, `from_quantity`, 0) <= ';
 

PAR

            $query = '
SELECT *, '.SpecificPrice::_getScoreQuery($id_product, $id_shop, $id_currency, $id_country, $id_group, $id_customer).'
FROM `'._DB_PREFIX_.'specific_price` USE INDEX (id_product_2)
WHERE `id_product` IN (0, '.(int)$id_product.')
AND `id_product_attribute` IN (0, '.(int)$id_product_attribute.')
AND `id_shop` IN (0, '.(int)$id_shop.')
AND `id_currency` IN (0, '.(int)$id_currency.')
AND `id_country` IN (0, '.(int)$id_country.')
AND `id_group` IN (0, '.(int)$id_group.')
AND `id_customer` IN (0, '.(int)$id_customer.')
AND
(
(`from` = \'0000-00-00 00:00:00\' OR \''.$now.'\' >= `from`)
AND
(`to` = \'0000-00-00 00:00:00\' OR \''.$now.'\' <= `to`)
)
AND id_cart IN (0, '.(int)$id_cart.')
AND IF(`from_quantity` > 1, `from_quantity`, 0) <= ';
 
Sinon mettre à jour la base de données, voir ce bug fix
 
Bonne Chance
Link to comment
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...