我正在magento管理面板中创建销售订单,我刚刚在 config.xml
中编写了以下代码<global>
<events>
<sales_order_save_after>
<observers>
<mymodule>
<type>singleton</type>
<class>mymodule/observer</class>
<method>handleOrder</method>
</mymodule>
</observers>
</sales_order_save_after>
</events>
</global>
我的观察员文件如下..
class Mycompany_Mymodule_Model_Observer
{
public function handleOrder($observer)
{
}
}
在上面的函数中,我想得到调用此函数的销售订单的增量ID。
谢谢,
答案 0 :(得分:0)
我发现它是我自己......
$orders = Mage::getModel('sales/order')->getCollection()
->setOrder('increment_id','DESC')
->setPageSize(1)
->setCurPage(1);
$orderId = $orders->getFirstItem()->getEntityId();
$order = Mage::getModel('sales/order')->load($orderId);
$Incrementid = $order->getIncrementId();
问题解决了.....
答案 1 :(得分:0)
此时已经分配给订单,所以你可以这样得到它:
$incrementId = $observer->getOrder()->getIncrementId();
<强>解释强>
Mage_Sales_Model_Order::_beforeSave()
“order”是事件的参数,因此您可以使用$observer->getOrder()
实际上是$observer->getEvent()->getData('order')
的快捷方式。 “before_save”和“after_save”事件的参数名称在模型类的$_eventObject
属性中定义:
protected $_eventObject = 'order';