Carlos Posted October 22, 2020 Share Posted October 22, 2020 Hace unos días tuvimos un problema con prestashop 1.6.18. Entró un pedido con un error de pago y a partir de ese momento todos los pedidos que tenían un determinado producto en el carrito generaban problemas como que aparecían como no pagados y les faltaba productos. El problema se repitió varias veces. Siempre un error de pago y tras él había un producto que dejaba de funcionar bien y afectaba a los siguientes pedidos. Este problema está reseñado en varios lugares ( ) Lo solucionamos actualizando el módulo de redsys, el de paypal y sacando de la venta los 3 productos que nos daban problemas. Por ahora no nos ha vuelto a pasar pero los productos que generaban ese problema no funcionan bien. Es como si hubiera alguna inconsistencia de datos con ellos. Por ejemplo, si entramos en la ficha del producto y actualizamos su cantidad no sale una alerta en rojo con el siguiente mensaje: parsererror: SyntaxError: Unexpected token >in JSON at position 0 Este error solo sucede con esos 3 productos no con los demás. He comparado esos tres productos con otros sanos en las tablas y no he visto diferencias. ¿Alguna idea para arreglar esta inconsistencia? Link to comment Share on other sites More sharing options...
Prescol Posted October 22, 2020 Share Posted October 22, 2020 Es posible que la descripción incluya caracteres que no son tratados correctamente por prestashop y generan un error al almacenarlo Link to comment Share on other sites More sharing options...
Prescol Posted October 22, 2020 Share Posted October 22, 2020 Revisa las descripciones de los productos. Sobre todo si esos productos se crean con algún tipo de importador, ya que, normalmente, dichos importadores no están bien hechos e insertan el contenido a a la base de datos sin depurar. Link to comment Share on other sites More sharing options...
Enrique Gómez Posted October 23, 2020 Share Posted October 23, 2020 23 hours ago, Carlos said: Hace unos días tuvimos un problema con prestashop 1.6.18. Entró un pedido con un error de pago y a partir de ese momento todos los pedidos que tenían un determinado producto en el carrito generaban problemas como que aparecían como no pagados y les faltaba productos. El problema se repitió varias veces. Siempre un error de pago y tras él había un producto que dejaba de funcionar bien y afectaba a los siguientes pedidos. Este problema está reseñado en varios lugares ( ) Lo solucionamos actualizando el módulo de redsys, el de paypal y sacando de la venta los 3 productos que nos daban problemas. Por ahora no nos ha vuelto a pasar pero los productos que generaban ese problema no funcionan bien. Es como si hubiera alguna inconsistencia de datos con ellos. Por ejemplo, si entramos en la ficha del producto y actualizamos su cantidad no sale una alerta en rojo con el siguiente mensaje: parsererror: SyntaxError: Unexpected token >in JSON at position 0 Este error solo sucede con esos 3 productos no con los demás. He comparado esos tres productos con otros sanos en las tablas y no he visto diferencias. ¿Alguna idea para arreglar esta inconsistencia? Quizás el nombre del producto tiene el carácter "|"? Si realizas alguna modificación te deja guardar? Es bastante extraño lo que comentas Link to comment Share on other sites More sharing options...
Carlos Posted October 26, 2020 Author Share Posted October 26, 2020 No, no tiene ningún símbolo raro. El problema se produjo después de algún error de pago que por lo que sea afecta a la integridad de algún producto del carrito. Aquí lo solucionaron por ejemplo modificando el fichero classes/stock/StockAvailable.php Pero en mi caso el fichero está bien. classes/stock/StockAvailable.php En este otro caso, lo solucionaron modificando Core/Business/Stock/Core_Business_Stock_StockManager.php at line 126 pero en nuestro caso ese archivo también está bien. Tanto el título como las descripciones están bien. Mi idea es que esos dos productos que nos fallan tienen algo inconsistente en la base de datos. Si están activos y alguien los compra generan pedidos que no salen como pagados. Link to comment Share on other sites More sharing options...
Carlos Posted October 26, 2020 Author Share Posted October 26, 2020 On 10/23/2020 at 11:14 AM, Enrique Gómez said: Quizás el nombre del producto tiene el carácter "|"? Si realizas alguna modificación te deja guardar? Es bastante extraño lo que comentas Solo da error si actualizo el valor de la cantidad. Link to comment Share on other sites More sharing options...
Enrique Gómez Posted October 26, 2020 Share Posted October 26, 2020 Parece complicado... Yo diría que hay algún módulo "enganchado" en el hook de cambio de cantidad (p.ej Mailalerts..creo que en ps17 también está) que debe tener información de ese producto concreto y da algún problema.. Posiblemente sea buena idea mirar de desactivar los módulos enganchados al hook de cambio de cantidades Link to comment Share on other sites More sharing options...
Carlos Posted October 26, 2020 Author Share Posted October 26, 2020 (edited) Pues tenía el mail alerts anclado solo a ese hook y al quitarlo ha dejado de hacer el error. Parece que al menos así se arregla. Ahora, eso si, no se envía correo al cliente cuando vuelve a haber stock. Probaré a borrar los correos que hayan suscritos a esos productos a ver si se soluciona del todo. Edited October 26, 2020 by Carlos improve answer (see edit history) Link to comment Share on other sites More sharing options...
Enrique Gómez Posted October 26, 2020 Share Posted October 26, 2020 Es posible que te falte alguna plantilla de email en el módulo. en github esta el código fuente. En una instalación Española además en la carpeta mails estaría la subcarpeta /es con los emails traducidos https://github.com/PrestaShop/mailalerts Link to comment Share on other sites More sharing options...
Carlos Posted October 27, 2020 Author Share Posted October 27, 2020 (edited) No creo que sea tema de plantilla. He estado haciendo pruebas y al parecer había unos correos mal formados para recibir alertas. Los correos tenían un punto delante de la arroba. El proceso supongo que ha debido ser algo así. Stock está a cero. Se apuntan con nombre.@dominio y cuando el stock vuelve a ser positivo y hay pedidos comienzan los problemas. Al borrar esas dos cuentas de correo en la tabla ps_mailalert_customer_oos he realizado pruebas y todo perfecto. Después he puesto el stock a cero. He puesto un correo .@ , he actualizado el stock y el producto volvía a tener los mismos problemas. Edited October 27, 2020 by Carlos improve answer (see edit history) 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