Estoy un poco confundido con la identificación de la orden y la identificación del incremento de la orden , entonces, ¿alguien puede ayudarme a comprender la diferencia entre estos dos?
Tengo un observador para sales_order_place_after donde guardo los detalles de ventas en una tabla personalizada.
Pero con
$orderId = $observer->getEvent()->getOrder()->getId();
Obtengo los identificadores de pedido como identificadores normales como 112 o 113 o 110, etc.no como 20001201
Entonces, ¿cuál es el ID de orden real, 20001201 o 112?
Necesito procesar aún más los datos de pedido en función de esta identificación de pedido, uso 112, 113, etc. y funciona, pero necesito aclarar esto.
fuente

id= elsales_flat_ordervalor de la clave primaria de la tabla. Esto se incrementa automáticamente para cada pedido que recibe en su tienda. Suele comenzar desde 1 y sube.increment id= un número "fácil de usar" generado antes de realizar el pedido. Debe ser único y se utiliza como método de pago en línea como referencia (pero no solo).La identificación de incremento por defecto se ve así.
El número de ceros es variable. Se agrega usando
str_padpara que la longitud de la identificación de incremento sin la identificación de la tienda sea8.fuente
eav_entity_store. Pero para el primer orden no hay registro en esa tabla. Entonces uno es creado. Cuando se crea, la identificación de la tienda se almacena comoincrement_prefix. Vea cómo funciona en el métodoMage_Eav_Model_Entity_Type::fetchNewIncrementId. A partir de la línea:if (!$entityStoreConfig->getId()) {.Un pedido de ventas contiene dos valores, entity_id (Id. De pedido) e increment_id (Id. De incremento de pedido). Entity_id es la clave principal en la tabla de pedidos. Esto significa que lo usa para cargar la entidad de pedido real. Vea abajo
Y pasar
$order->getId();o$order->getEntityId();El increment_id es normalmente un número más amigable que a menudo es específico del sitio web / tienda, es decir, 20001201 el 2 en el frente a menudo significará que es un pedido de su segunda tienda / sitio web (no puedo recordar cuál). Esto a menudo se conoce como el ID de orden real. Puede cargar una entidad de pedido utilizando este increment_id
Y pasar
fuente
La
order_id, que creo que es la mismaentity_id, es la clave principal en la tabla sales_order utilizada para unir todas las tablas eav. Se usa internamente en magento.order_increment_idse utiliza para mostrar al clientefuente