更新订单状态时,终身销售总额不会发生变化

时间:2017-12-01 10:59:36

标签: magento-1.9 backend status orders sales

我想从挂起到完整更新大量订单的状态,因此我尝试以编程方式执行此操作,因为magento后端没有选项,通过使用批量更新状态以下方法。

require_once('app/Mage.php');
Mage::app();
Mage::init();
$order = Mage::getModel('sales/order')->loadByIncrementId('100010175');
        //$order->setState(Mage_Sales_Model_Order::STATE_COMPLETE, true);
        $order->setData('state', "complete");
        $order->setStatus("complete");       
        $history = $order->addStatusHistoryComment('Order was set to Complete by our automation tool.', false);
        $history->setIsCustomerNotified(false);
        $order->save();

但是当我使用上述方法更新状态时,只有状态才会更新才能完成。但是,订单金额并没有增加到生命周期销售额,这显示在仪表板主页上。

任何人都可以告诉我,订单金额如何也可以更新到终身销售总额,同时更新订单状态?

1 个答案:

答案 0 :(得分:0)

只有在生成订单发票时,订单金额才会添加到终身销售中。因此,您还需要创建订单的发票。

您可以使用下面给出的代码以编程方式生成订单发票。

 $invoice = $order->prepareInvoice();                
$invoice->register()->capture();
Mage::getModel('core/resource_transaction')
            ->addObject($invoice)
            ->addObject($invoice->getOrder())
            ->save();
$order->addStatusToHistory(Mage_Sales_Model_Order::STATE_PROCESSING,'Invoice generated successfully.');
$order->save();