在 Magento CE 1.9.2.1 的后端显示发票的贷项通知单按钮有啥要求?
Posted
技术标签:
【中文标题】在 Magento CE 1.9.2.1 的后端显示发票的贷项通知单按钮有啥要求?【英文标题】:What are the requirements for showing the credit memo button in the backend of Magento CE 1.9.2.1 for an invoice?在 Magento CE 1.9.2.1 的后端显示发票的贷项通知单按钮有什么要求? 【发布时间】:2015-12-26 15:50:42 【问题描述】:我有一些发票,在 magento 中有错误的状态,但在付款扩展中的正确状态是“已付款”。原因是扩展程序中的错误。
所以我通过将这些发票的状态设置为“2”来解决这个问题,以便在 sales_flat_invoice 和 sales_flat_invoice_grid 中支付(是的,这不是最好的方法...... .).
结果:
现在发票状态正确,已付款,但现在有可用的贷项通知单按钮。
问题:
缺少什么?
显示发票的贷项通知单按钮有什么要求?
我正在使用 Magento CE 1.9.2.1。
【问题讨论】:
订单状态是否设置为“处理中”? @fschmengler 是的,订单表中的状态和状态设置为“处理中” 【参考方案1】:对于在其中显示贷项通知单按钮的发票,付款模块必须保存交易并至少将 $_canRefund 设为 true。
protected $_canRefund = true;
protected $_canRefundInvoicePartial = false;
您可以在 Mage_Sales_Model_Order_Payment::canRefund() 中获取详细信息
【讨论】:
嗨,你能解释一下你的意思吗?【参考方案2】:好的,现在我自己找到了解决方案。
关于数据库,我对支付提供商支付的发票进行了以下更改,但 Magento 尚未完全处理(仅发生这种情况,因为支付扩展中的错误破坏了 magento 流程):
sales_flat_invoice:
"state" should get the value "2"
sales_flat_invoice_grid:
"state" should get the value "2"
sales_flat_order:
"base_total_paid" should get the value of "base_total_invoiced"
"total_paid" should get the value of "total_invoiced"
"base_total_due" should get the value "0.0000"
"total_due" should get the value "0.0000"
sales_flat_order_grid:
"base_total_paid" should get the value of "base_grand_total" and not NULL
"total_paid" should get the value of "base_grand_total" and not NULL
这对我有用,但仅用于修复受影响的发票。
不要乱搞数据库! ;-)
【讨论】:
【参考方案3】:在为同一订单生成发票后,贷项通知单按钮仅出现在订单描述页面上。即在 magento > admin > sales > orders > yourorderno. 下,
参考:http://merch.docs.magento.com/ce/user_guide/content/order-processing/credit-memo-create.html
还可以尝试通过定期结帐生成新订单,然后通过点击“发票”为其生成发票。现在返回您的订单并在此处写信给我们,无论您是否看到贷项通知单按钮。
【讨论】:
提供的链接不再存在。以上是关于在 Magento CE 1.9.2.1 的后端显示发票的贷项通知单按钮有啥要求?的主要内容,如果未能解决你的问题,请参考以下文章
Magento - 我如何通过 GeoIP 按国家/地区运行商店?
忽略 GeoIP Htaccess Rewrite 中的 magento 管理目录