如何在Magento中按订单ID获取装运增量ID [英] How to get Shipment Increment ID by Order ID in Magento

查看:62
本文介绍了如何在Magento中按订单ID获取装运增量ID的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好.有人可以告诉我如何在Magento中按订单ID获取装运增量ID吗?

Hello Guys. Can someone tell me how to get the shipment increment id by order id in Magento ?

我需要这个,因为我使用外部php文件将跟踪信息添加到货件中,并且它为此需要货件ID.

I need this because I use an outside php file to add tracking information to a shipment and it needs the shipment id for this.

谢谢您的帮助.

我正在使用下面的代码添加跟踪信息

I am using the code below to add tracking info

$shipmentIncrementId='300000002';
$trackNumber='123456';
$carrier='custom';
$title='server10';


$shipment = Mage::getModel('sales/order_shipment')->loadByIncrementId($shipmentIncrementId);

         /* @var $shipment Mage_Sales_Model_Order_Shipment */



         $track = Mage::getModel('sales/order_shipment_track')
                     ->setNumber($trackNumber)
                     ->setCarrierCode($carrier)
                     ->setTitle($title);

         $shipment->addTrack($track);

         try {
             $shipment->save();
         } catch (Mage_Core_Exception $e) {
             $thiss->_fault('data_invalid', $e->getMessage());
         }

         return $track->getId();

print_r($shipment);

推荐答案

理论上,一个订单可以装运多于一个的货物.但是,如果您约定每个订单始终有一个装运,则可以按如下所示获取其增量编号:

In theory an order can have more than one shipment. But if you make a convention to always have one single shipment per order you can get its increment id like this:

$orderIncrementId = 120000012;
$order = Mage::getModel('sales/order')->loadByIncrementId($orderIncrementId);
$shipment = $order->getShipmentsCollection()->getFirstItem();
$shipmentIncrementId = $shipment->getIncrementId();

这篇关于如何在Magento中按订单ID获取装运增量ID的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆