我正在完成RMA过程,现在我已经使用不同的产品下达了4个订单,并且每次尝试创建RMA时,都会收到以下错误消息

There are no applicable items for return in this order

关于我做错了什么的想法?

有帮助吗?

解决方案

例外被扔进 Enterprise_Rma_Adminhtml_RmaController::newAction() 如果此代码返回false。

Mage::helper('enterprise_rma')->canCreateRma($orderId, true)

进一步挖掘 Enterprise_Rma_Helper_Data::canCreateRma() 这将返回false如果$this->getOrderItems($order) 不返回任何物品,或者如果$forceCreate || $this->isEnabled()) 返回false。可以排除第二种情况,因为$ forcecreate是正确的(是发送到方法的第二个参数 canCreateRma()).

这意味着 $this->getOrderItems($order) 没有返回项目。这等同于

Mage::getResourceModel('enterprise_rma/item')->getOrderItems($orderId)

没有返回物品。

这可能意味着 Enterprise_Rma_Model_Resource_Item::getOrderItemsCollection() 没有返回项目。当订单中没有项目“ qty_shipped> qty_returned”中,这会发生这种情况。

如果不是这样, Enterprise_Rma_Model_Resource_Item::getOrderItems() 仍然没有返回的物品,也许您的产品没有标记为可返回的。以相同的方法查看此代码:

if (!Mage::helper('enterprise_rma')->canReturnProduct($product, $item->getStoreId())) {
    $allowed = false;
}

检查产品的“启用RMA”属性的值。如果是“否”将其设置为“是”或“使用config”。

如果设置为 “使用配置” 然后检查该字段的值 系统 - >配置 - > sales-> RMA设置 - >在产品级别上启用RMA. 。这应该是“是”(如果您想要RMA可用的所有产品)。

让我知道这是否有帮助。我希望我在解释中很清楚。

许可以下: CC-BY-SA归因
scroll top