ERROR PEDIDOS [Back...
Avisos
Vaciar todo

ERROR PEDIDOS [BackOffice] - Argument 5  

 
Daniel
 Daniel
Usuario eminente

Hola!!!
Realicé una migración de datos de una tienda antigua de prestashop a un prestashop nuevo con una instalación completamente desde 0 y actualizada a la versión 1.7.7.5.

La cuestión es que no puedo acceder a pedidos antiguos ni pedidos nuevos porque aparece el siguiente error:

Type error: Argument 5 passed to PrestaShop\PrestaShop\Core\Domain\Order\QueryResult\OrderProductForViewing::__construct() must be of the type string, null given, called in /home2/****/public_html/****/src/Adapter/Order/QueryHandler/GetOrderProductsForViewingHandler.php on line 243

[Symfony\Component\Debug\Exception\FatalThrowableError 0]

Es bastante urgente, ya que no puedo gestionar los pedidos nuevos.

Gracias por la ayuda.

Un saludo.

Contenido solo visible a usuarios registrados

Citar
Respondido : 04/08/2021 8:52 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Daniel.

Este tipo de error suele mostrarse cuando se esta intentado mostrar un pedido con datos no validos.

El problema esta en que para modificarlo tendras que realizarlo desde la base de datos.

En este enlace tienes información del error:

-> https://github.com/PrestaShop/PrestaShop/issues/22215

En la ultima respuesta tienes la consulta que que hay que realizar en base de datos.

 

Lo mejor en este caso es que clones la instalación de prestashop y realices la prueba en ese clon:

-> https://www.webempresa.com/blog/clonar-una-instalacion-de-prestashop-a-otra-carpeta-del-hosting.html

 

Un saludo

ResponderCitar
Respondido : 04/08/2021 9:47 am

Daniel
 Daniel
Usuario eminente

@pepesoler

Hola Pepe,

Gracias por tu pronta respuesta. He estado mirando el post que me indicas, pero son errores diferentes (el post que me facilitas hace referencia a un fallo 4 y el mío es 5):

- GetOrderForViewingHandler.php

- GetOrderProductsForViewingHandler.php (este es mi fallo)

¿Se podría solucionar del mismo modo?

Por otro lado, no puedo hacer el clon que me indicas, dado que explica que sólo es válido para PS 1.6, no para PS 1.7.

 

Gracias por la ayuda.

Un saludo.

ResponderCitar
Respondido : 04/08/2021 9:57 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Daniel.

Si el error es el mismo valores Null en la tabla order y address

no puedo hacer el clon que me indicas, dado que explica que sólo es válido para PS 1.6, no para PS 1.7.

Los pasos son los mismos, básicamente es copiar los archivos, crear nueva base de datos y Exportar/importar la base de datos y modificar las URL.

 

Si tienes problemas en alguno de los pasos indicamos donde te quedaste y lo seguimos en ese punto.

 

Un saludo

 

ResponderCitar
Respondido : 04/08/2021 11:05 am

Cursos Gratuitos WordPress

Daniel
 Daniel
Usuario eminente

@pepesoler

Ok Pepe, perfecto, probaré lo que me indicas.

Es que es bastante raro, porque me entra un pedido de un cliente antiguo que ha solicitado el envío a una nueva dirección y me da error, no me abre el pedido en el BackOffice. En cambio, realizo un pedido nuevo, de prueba, con un cliente nuevo para testar, y sí me deja abrir el pedido desde el BackOffice. Me está desesperando... probaré lo que me has comentado de realizar la consulta en la base de datos.

Una última pregunta, si realizo la consulta en la base de datos, sin realizar el clonado de la web, si algo va mal, ¿podría restaurar sin problema con el SuperBackUp la base de datos? O ¿daría algún tipo de problema dicha restauración?

Gracias!!!

ResponderCitar
Respondido : 04/08/2021 11:32 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Daniel.

Sí, los pedidos nuevos los vas a poder ver ya que los datos estan bien, el problema esta en los pedidos antiguos.

 ¿podría restaurar sin problema con el SuperBackUp la base de datos?

Si, podrías restaurar la base de datos pero tienes que tener en cuenta que las copias se realizan a una hoar determinada, es decir, supongamos que restauras una copia a las 13:00 pero la copia que hay es de las 08:00, todos lso datos que tenias desde las 08:00 hasta las 13:00 no los tendras, pedidos, nuevos clientes, nuevos productos, etc....

 

Un saludo

ResponderCitar
Respondido : 04/08/2021 11:52 am

optimiza-automaticamente-todas-las-imagenes-de-tu-wordpress

Daniel
 Daniel
Usuario eminente

@pepesoler

Perfecto,

Sí, no te preocupes, tengo en cuenta la hora 😉

Voy a probar a realizar la consulta a la base de datos.

Gracias!!!

ResponderCitar
Respondido : 04/08/2021 11:54 am
Daniel
 Daniel
Usuario eminente

Acabo de lanzar la consulta en la base de datos, pero sigue sin dejarme entrar en los pedidos que daban fallo. Incluso en el pedido que recibí ayer, que era pedido nuevo, pero con dirección antigua, no me deja acceder a él.

En la consulta se ve que se han cambiado multitud de filas, pero aún así no me deja acceder a determinados pedidos.

ResponderCitar
Respondido : 04/08/2021 12:05 pm

Gestor de Contraseñas - VPN Conexión Segura - Gestor 2FA (Segundo Factor de Autenticación

Karen Rios
 Karen Rios
Soporte CMS Webempresa Moderator

Hola Daniel, 

Puedes enviarnos una captura como estas añadiendo la consulta en tu base de datos, de igual forma verífica añadir debajo de la consulta del SQL otras opciones como comentan en el hilo por ejemplo añadiendo también las siguientes consultas a la lista

update ps_address set dni = '' where dni is null;
update ps_address set other = '' where other is null;
update ps_address set address2 = '' where address2 is null;
update ps_address set company = '' where company is null;
update ps_address set vat_number = '' where vat_number is null;

Verifica esto y nos comentas como ha ido todo

Un Saludo 

ResponderCitar
Respondido : 04/08/2021 12:33 pm
Daniel
 Daniel
Usuario eminente

@karen

Hola Karen,

Claro adjunto varias capturas de pantalla: varias de las líneas que se modificaron en la primera consulta lanzada; otra captura del error que genera prestashop al hacer click en el pedido desde el backoffice; y otra captura más de desde dónde lanzo la consulta a la base de datos.

He lanzado la última consulta que me indicas y sigue sin darme acceso al pedido desde el backoffice.

Captura de pantalla 2021 08 04 a las 13.54.52
Captura de pantalla 2021 08 04 a las 13.52.10
Captura de pantalla 2021 08 04 a las 13.51.41
Captura de pantalla 2021 08 04 a las 13.53.18
Captura de pantalla 2021 08 04 a las 13.52.31

 Quedo a la espera.
Gracias!!!

ResponderCitar
Respondido : 04/08/2021 12:58 pm

wpdoctor-revisa-la-salud-de-tu-wordpress

Karen Rios
 Karen Rios
Soporte CMS Webempresa Moderator

Hola Daniel, 

Verifica si al añadir la siguiente consulta y ejecutarla logras ver las órdenes sin problema 

update ps_connections_source set keywords = '' where keywords is null;

Ten en cuenta que estás realizando consultas en la base de datos principal

Un Saludo 

ResponderCitar
Respondido : 04/08/2021 1:29 pm
Daniel
 Daniel
Usuario eminente

@karen

Hola Karen,

Ya he añadido la última consulta que me indicas pero sigo sin poder acceder al pedido desde el backoffice.

0 filas afectadas. (La consulta tardó 0.0002 segundos.)
https://dev.mysql.com/doc/refman/5.5/en/update.htm l" target="mysql_doc">update ps_connections_source https://dev.mysql.com/doc/refman/5.5/en/set.htm l" target="mysql_doc">set keywords = '' where keywords https://dev.mysql.com/doc/refman/5.5/en/comparison-operators.html#operator_i s" target="mysql_doc">is null
 
¿Alguna posibilidad más?
¿Cómo debería realizar la consulta sino? Creía que era como lo hacía.
ResponderCitar
Respondido : 04/08/2021 2:00 pm

Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Daniel.

Supongo que la importación de pedidos la realizaste desde una instalación de prestashop 1.6, lo que no sé es como importaste esos pedidos, supongo que con alguna consulta.

Piensa que la estructura de PS 16 y al de ps17 son distintas y puede dar problemas.

 

:- Accede a pedidos y revisa los ID de los pedido en lso que tienes problemas:

screenshot nimbus capture 2021.08.04 15 43 09

.- Edita la tabla ps_orders y revisa los datos de los ID de los pedidos que no se puede acceder, tendras que eliminar los que estén con valor null

 

¿ son muchos lso pedidos ? si los pedidos ya estan tramitados una opción es que los elimines.

 

Un saludo

ResponderCitar
Respondido : 04/08/2021 2:50 pm