如何通过订单号获取贷记凭证

How to get credit memo by order id

我正在尝试通过 order idmagento 1.9.x

的外部 php 文件中获取 credit memo collection

这是我的代码,用于通过订单 ID 获取贷项通知单。

$collection = Mage::getResourceModel('sales/order_creditmemo_collection')
              ->addFieldToFilter('order_id', $order->getId());
foreach($collection as $item) {
    echo $item->getId();
}

但是它正在显示 NULL

我尝试了 SO 上可用的各种示例,但它们没有帮助我。

任何帮助将不胜感激。

如果你得到了Mage_Sales_Model_Order的对象class那么你就可以通过getCreditmemosCollection()函数得到credit memo集合 例如。 $order->getCreditmemosCollection()

它将return您为当前加载的订单创建的所有creditmemo...

试试这个代码。

<?php
    $orderid = 6; //you order id
    $creditMemos = Mage::getResourceModel('sales/order_creditmemo_collection');
    $creditMemos->addFieldToFilter('order_id', $orderid);
    $creditMemos->setOrder('created_at','DESC');
    $creditMemos->load();

    foreach ($creditMemos as $creditMemo) {
       var_dump($creditMemo->getData());
    }
?>

您可以删除此行以获得完整的集合。

$creditMemos->addFieldToFilter('order_id', $orderid);