ordine alfanumerico di incremento id
Domanda
Sono stato utilizzando alfanumerico ordine minimo di ID Da ~ CE 1.1 -. Sono tutti insieme utilizzando un carattere alfabetico nel campo prefisso core_entity_store
Al momento non c'era una vera documentazione di installazione e configurazione multi-store circostante, così abbiamo adottato la pratica che tutti dell'ordine id sono stati preceduti da un Alpha che rappresentava il negozio. Numeri d'ordine tipicamente sembravano M000000003, PA000000004, ecc
Fast-forward 5 anni per EE 1.11 e dal momento che circa il PE / EE 1.10 abbiamo notato che gli ordini tornano periodicamente un errore di SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'PA00505156' for key 'UNQ_SALES_FLAT_ORDER_INCREMENT_ID'
o qualcosa di simile. E 'raro - ma la mia ricerca mi porta al fatto che una gara condizionata riservando l'identificazione di ordine potrebbe essere dovuto al prefisso di essere alfa e non numerico
So che Ashley Schroder stava lavorando su questo un po 'indietro, con una Pro edizione di un modulo ha sviluppato - http://www.aschroder.com/2010/07/easily-set-a-custom- fine-numero-in-Magento-with-my-libera-setstartordernumber-estensione / - Ma non sembra che c'è stato molto movimento c'è, come la versione pro non è su Magento Connect
È qualcun altro usando alfa prefissi? Come si è esibito per te finora? Vedete gli stessi errori?
Soluzione
Sì, abbiamo avuto questo problema anche.
correzione rapida è il seguente: andare in app\code\core\Mage\Sales\Model\Resource\Quote.php
, nella funzione isOrderIncrementIdUsed
sostituire la riga
$bind = array(':increment_id' => (int)$orderIncrementId);
con
$bind = array(':increment_id' => $orderIncrementId);
Tutto dovrebbe funzionare ora.
Si tratta di una correzione file core, ma è possibile ignorare questa funzionalità con estensione (purtroppo fino ad ora non abbiamo avuto tempo per questo) ..
Saluti.