Magento 1.7.2 订单处理问题

Posted

技术标签:

【中文标题】Magento 1.7.2 订单处理问题【英文标题】:Magento 1.7.2 problems with order processing 【发布时间】:2012-09-25 17:51:57 【问题描述】:

希望大家能帮忙,我在 Magento 论坛上运气不佳。我的问题与我最近在 Magento 商店进行的迁移/升级有关。

在我的旧服务器上运行 1.7.0 的站点在订单和 Paypal 方面没有任何问题。不过最近,我搬到了一个新的服务器,所以当我搬家的时候,我想我会升级网站。现在无论出于何种原因(在与 Paypal 高级设置搏斗之后),我可以为客户的订单付款,但我无法为订单开具发票并从系统中运出。出于显而易见的原因,这是一个大问题。我在搬家中错过了什么吗?它只是给了我“无法保存发票”。错误。看起来这不是一个不寻常的问题,但我发现的所有问题都处理的是旧版本,最重要的是,引用了一个我似乎没有的日志文件(var/log 下的 execptions.log)。

任何帮助将不胜感激。

【问题讨论】:

不确定您的问题可能是什么,但您可以在系统 > 配置 > 开发人员(左侧底部选项卡)> 日志设置 > 启用下启用日志记录。然后确保 var/log 目录可由 Apache(或您选择的服务器软件)写入。 Cags,你帮我解决了这个问题。我可以阅读的日志,并且我怀疑存在重复发票。意味着当我将数据库移动到新服务器时我错过了一个表副本。什么表我还不完全确定。代码显示:'异常'PDOException',消息'SQLSTATE [23000]:完整性约束违规:1062 X:\site-hosting\ElectricBrewSupply\lib\Zend\Db\Statement 中键'UNQ_SALES_FLAT_INVOICE_INCREMENT_ID'的重复条目'100000078' \Pdo.php:228 堆栈跟踪:' 【参考方案1】:

对于以后遇到类似问题的人:

Magento 1.7.2 with Paypal Advanced 当我从 1.7.0 升级到 1.7.2 并移动服务器时,我必须执行以下操作。

    Paypal:在支付选项下禁用 SSL 验证(这会破坏与 PayPal 的通信。 重复发票问题:(也可能适用于销售订单和运输) --> 在数据库中找到表 eav_entity_type 和 eav_entity_store --> 使用 eav_entity_type,为您需要的 entity_model(sales/order、sales/order_invoice、sales/order_creditmemo、sales/order_shipment)识别 entity_type_store,然后您可以进入 entity_type_store 并使用最后一个 increment_last_id 交叉 entity_type_id。如果您在管理部分的最后一张发票是 100000070,则设置对应的 entity_type_id col,increment_last_id = 100000070。

这对我来说非常有效,但我不知道在哪里启用日志记录,感谢 Cags 的帮助。

【讨论】:

感谢您的回答!正是我解决类似问题所需要的! 感谢 Hatrickwah 在尝试将开发的客户和订单同步到生产数据库后出现重复。使用 sqlyog 并错过了最后一个增量 ID 的重要 entity_type_store。几乎放弃了。非常感谢,为我节省了很多时间【参考方案2】:

这是 Magento CE 1.6 和 1.7 中引入的已知 bug。如需解决方案,请转到 app/code/core/Mage/Sales/Model/Resource/Quote.php 并更改:

$bind      = array(':increment_id' => (int)$orderIncrementId);

到:

$bind      = array(':increment_id' => $orderIncrementId);

【讨论】:

编辑 Magento 核心是不好的做法。此修复已在此处转换为扩展:github.com/philwinkle/Philwinkle_AlphaIncrement【参考方案3】:

我发现 M2e 与操纵发票号码的 Fooman:SameOrderInvoiceNumber 扩展发生冲突

需要禁用Fooman扩展,或者修改代码 http://www.masterdef.net/blog/magento-m2e-error-invoice-was-not-created-reason-sqlstate23000-integrity-constraint-violation-1062-duplicate-entry-2300011342-for-key-unq_sales_flat_invoice_increment_id/#more-65

【讨论】:

以上是关于Magento 1.7.2 订单处理问题的主要内容,如果未能解决你的问题,请参考以下文章

即使 PayPal 付款失败,Magento 订单状态也会更新为“处理中”

以编程方式将 Magento 订单标记为完整

如何更改 Magento 订单状态默认流程?

PayPal 订单在 Magento 中设置为“可疑欺诈”状态

无法在magento中查看订单

设置 Magento2 后如何安装示例数据?