0

我正在尝试从 magento 商店导出订单

    $myOrder=Mage::getModel('sales/order'); 
    $orders=Mage::getModel('sales/mysql4_order_collection');
    $allIds=$orders->getAllIds();

但它会将所有订单返回给我。

如何按状态“新”过滤订单?

我正在努力

$orders->addFieldToFilter('state',Array('eq'=>"new"));或者
$myOrder->setData('state','new');

但 magento 仍然返回所有订单。

4

2 回答 2

1

你应该这样尝试

$order= Mage::getModel('sales/order')->getCollection()->addFieldToFilter('state', 'new');
$allIds = $order->getAllIds();

或者你可以使用

Mage::getModel('sales/order')->getCollection()->addAttributeToSelect("*")->addAttributeToFilter(array(array('attribute'=>'status', 'eq'=>'pending')));
于 2013-06-13T08:32:38.987 回答
0

我想澄清更多细节。但是,这会对你有所帮助。

echo "$order->getSelect()->addFieldToFilter('state',Array('eq'=>"new"))->__toString();

该脚本将打印为“ Select * from your_table where state='new'”;然后复制结果并转到 phpmyadmin 或工作台。运行此查询。结果查询会告诉你正确与否。希望这有帮助

于 2013-06-13T08:34:03.310 回答