Borrar pedidos de prueba y resetear contadores en Magento 1.7.0.0

magento_logo

Para empezar una tienda de cero y ponerla en producción nunca está de más borrar todos los pedidos que se han hecho de prueba y resetear los contadores para que el primer pedido y la primera factura empiecen con el número 1. Esto es importante si vas a utilizar el envío de facturas a clientes por ejemplo.

Antes de nada, hacer una copia de seguridad de la base de datos.

Mi versión de Magento, como ya digo en el título, es la 1.7.0.0

Creamos un archivo en el raiz de Magento (al mismo nivel que el archivo index.php y el directorio app) un archivo borrar_pedidos.php con este código de Dejan Radic de Inchoo que quita todos los pedidos, facturas, envíos, etc.

Una vez creado lo ejecutamos accediendo a él directamente (http://dominio.com/borrar_pedidos.php).

Que no se te olvide borrar este archivo una vez hayas terminado.

Una vez quitados los pedidos el señor Fooman nos muestra como resetear los números de pedidos, facturas y envíos.

With a tool like phpmyadmin look at your database. In the table eav_entity_type you will find all entity types listed. The one of interest to change where the order number starts is order sales/order. Remember the entity_type_id (in my install it is 11). Next go to the table eav_entity_store. Look up the entity_type_id. Now you can change the value of increment_prefix and increment_last_id. If you wanted to have your next orderId to be 15000 set increment_last_id to 14999

Lo que quiere decir es que tenemos que ir a la tabla eav_entity_type, miramos entonces cual es el registro cuya columna entity_model es sales/order y nos quedamos con el campo entity_type_id. Ese será el identificador de los pedidos. Haremos lo mismo con las facturas (sales/invoice) y con los envíos (sales/shipment). Una vez tenemos estos códigos nos vamos a la tabla eav_entity_store y comparamos el campo entity_type_id con los valores que acabamos de obtener. Solo falta cambiar en esta tabla los valores del campo increment_last_id y le pondremos el valor anterior al que queremos que tenga el primer pedido/factura/envio. Es decir, si queremos que sea 100000001 como viene por defecto en Magento, pondremos como valor de increment_last_id 100000000.

Por último, una cosa más que a mi me daba error es la siguiente: Una vez seguidos todos los pasos anteriores al realizar un pedido para ver que todo estaba correcto y entrar al administrador para ver dicho pedido me salía un error como que el pedido con ese identificador ya existía(). Yo uso un módulo llamado OneStepCheckout para juntar todo el proceso de compra en una misma página que crea una tabla de pedidos llamada mw_onestepcheckout. Esa tabla también tendrá que ser vaciada por completo (TRUNCATE) y ya no nos dará el problema al entrar en la zona de pedidos del administrador de Magento.

Espero ahorrarle tiempo a alguien (o a mi mismo en un futuro :D)

 

2 opiniones en “Borrar pedidos de prueba y resetear contadores en Magento 1.7.0.0”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *