Magento, números de pedido personalizados e erro de ID de pedido duplicado

Se você personalizar o formato do número do pedido para sua instalação do Magento para conter caracteres não numéricos, você pode experimentar o seguinte comportamento: Depois que um pedido foi feito, o Magento não é capaz de recuperar um número de pedido ‘novo’ e relatar algo como:

'Zend_Db_Statement_Exception' with message 'SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'MY-ORDER-001337' for key 'UNQ_SK24_SALES_FLAT_ORDER_INCREMENT_ID'' in /.../Zend/Db/Statement/Pdo.php:234

Este é um bug na maneira do Magentos para recuperar um novo número de pedido. Para se livrar dele, basta criar uma cópia local do

app/code/core/Mage/Sales/Model/Resource/Quote.php

para

app/code/local/Mage/Sales/Model/Resource/Quote.php

e substituir

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

por

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

Desta forma, o Magento não está tentando realizar uma conversão de tipo inteiro em seu ID de pedido não numérico.