Eu preciso recuperar um pedido no Magento pelo seu ID. Como carrego um pedido específico por ID?
Até agora, consegui construir a consulta inicial:
Mage::getModel('sales/order');
Para carregar um pedido por ID de incremento, seria necessário:
Mage::getModel('sales/order')->loadByIncrementId('10000001'); //use a real increment order id here
Para carregar pelo ID da entidade, basta chamar load
:
Mage::getModel('sales/order')->load(24999); //use an entity id here
A obtenção dos detalhes do pedido depende de alguns componentes:
Carregue seu pedido: (db: sales_flat_order)
Em seguida, filtre sua coleção de itens com base no pedido.
O que mais fará é: (db: sales_flat_order_item)
Qual mostrará os produtos visíveis. O problema é que ele obterá o item "configurável" da coleção (que estranhamente tem o sku da criança no registro). Acho que isso é imprevisível no caso de alterações no SKU, pois o SKU histórico não está mais presente. Em vez disso, acho melhor fazer uma abordagem alternativa da seguinte maneira.
iterar através da coleção de itens do pedido
fonte
intval
ogetQtyOrdered
, mas isso pode ser um valor decimal :)addAttributeToSelect
. Obrigado.