Pergunta

Como posso alterar o endereço de envio e facturação da ordem por meio de programação?Eu tentei isso, mas não funciona.

$shippingAddress = Mage::getModel('sales/order_address')
->setFirstname("value")
->setMiddlename("value")
->setLastname("value")
->setSuffix("value")
->setCompany("value")
->setStreet("value"))
->setCity("value")
->setCountry_id("value")
->setRegion("value")
->setRegion_id("value")
->setPostcode("value")
->setTelephone("value")
->setFax("value");

e

$order->setShippingAddress($shippingAddress)
->setShipping_method('flatrate_flatrate');
Foi útil?

Solução

se você quiser atualização de endereço de entrega de uma encomenda em seguida, você precisa de ordem de carregamento, em seguida, carregá-lo objeto de endereços:

Passo 1:Order load by orded id

$order = Mage::getModel('sales/order')->load($orderId);

Passo 2:Get shipping address Id.

$order->getShippingAddress()->getId();

Passo 3:Then reset shipping address object:

$shippingAddress = Mage::getModel('sales/order_address')->load($order->getShippingAddress()->getId());

$shippingAddress
->setFirstname("value")
->setMiddlename("value")
->setLastname("value")
->setSuffix("value")
->setCompany("value")
->setStreet("value"))
->setCity("value")
->setCountry_id("value")
->setRegion("value")
->setRegion_id("value")
->setPostcode("value")
->setTelephone("value")
->setFax("value")->save();
Licenciado em: CC-BY-SA com atribuição
Não afiliado a magento.stackexchange
scroll top