Magento Forum

   
Bestellnummer
 
schmidt_as
Member
 
Total Posts:  54
Joined:  2008-12-16
 

Guten Abend,

ich würde gerne die Bestellnummer ändern. Mir sind das einfach zu viele Stellen.
Würde gerne nur 4 oder 5 Stellen haben.

Würde mich freuen, wenn Ihr mir kurz helfen könntet und mir sagen könnten wie und wo ich das ändern kann.

Vielen Dank + einen schönen Abend
Alexander

 
Magento Community Magento Community
Magento Community
Magento Community
 
timste
Guru
 
Total Posts:  645
Joined:  2007-12-26
Leipzig
 

falsch!

den ratschlag nicht befolgen!

anleitung folgt

Grüsse

 
Magento Community Magento Community
Magento Community
Magento Community
 
Rico_Neitzel
Moderator
 
Avatar
Total Posts:  857
Joined:  2007-09-05
Würzburg, Germany
 

Alex - schäm dich smile

Ich hab doch schon gesagt, dass dir das bei nem Update wenn du Pech hast die Datenbank zerlegt… glaub mir doch auch mal was smile

LG rico

 
Magento Community Magento Community
Magento Community
Magento Community
 
kay
Sr. Member
 
Total Posts:  223
Joined:  2008-01-13
Germany 德国,China 中国
 

Hallo zusammen,

mich würde auch sehr interessieren wo man die Länge der Bestellnummer ändern kann. Dies muss doch möglich sein. Ich habe im Source Code (Eav/Model/Entity/Type) folgenden Eintrag gefunden:

$incrementInstance Mage::getModel($this->getIncrementModel())
            ->
setPrefix($entityStoreConfig->getIncrementPrefix())
            ->
setPadLength($entityStoreConfig->getIncrementPadLength())
            ->
setPadChar($entityStoreConfig->getIncrementPadChar())
            ->
setLastId($entityStoreConfig->getIncrementLastId());

Das zusammen bauen der Bestellnummer erfolgt dann bei der Funktion “format” in Eav/Model/Entity/Increment/Numeric

public function format($id)
    
{
        $result 
$this->getPrefix();
        
$result.= str_pad((string)$id$this->getPadLength(), $this->getPadChar(), STR_PAD_LEFT);
        return 
$result;
    
}

Die Länge des Strings findet man in der Tabelle “eav_entity_type” Zeile “entity_type_code=order”.
Doch leider hat das keine Auswirkung, weil im Source Code wiederum steht:

public function getPadLength()
    
{
        $padLength 
$this->getData('pad_length');

        if (empty(
$padLength)) {
            $padLength 
8;
        
}
        
return $padLength;
    
}
Aber $padLength ist irgendwie immer leer. Also wird immer $padLength auf 8 gesetzt.

Könnte das ein Bug sein? Ich habe momentan noch Version 1.1.6

Ich hoffe mir kann jemand helfen. Es ist schon ärgerlich wenn man die Länge der Bestellnummer nicht bestimmen kann.

 
Magento Community Magento Community
Magento Community
Magento Community
 
timste
Guru
 
Total Posts:  645
Joined:  2007-12-26
Leipzig
 

vielleicht hilft dir das hier weiter

http://www.exanto.de/magento-bestellungen-loeschen-und-nummernkreise-definieren.html

grüße

 
Magento Community Magento Community
Magento Community
Magento Community
 
kay
Sr. Member
 
Total Posts:  223
Joined:  2008-01-13
Germany 德国,China 中国
 

Leider hilft mir das nicht weiter, weil Löschen bzw. die Startposition der Bestellnummer setzt, ist kein Problem.
Ich will die Anzahl der “0” ändern. Und das macht eigentlich die funktion “format”, weil die die PHP Funktion “str_pad” aufruft und mit Hilfe von $this->getPadLength() die Länge bzw. die Anzahl der “0” bestimmt.

 
Magento Community Magento Community
Magento Community
Magento Community
 
vianetz
Guru
 
Avatar
Total Posts:  537
Joined:  2008-04-13
Munich, Germany
 

Wieso änderst Du dann nicht einfach in der Tabelle “eav_entity_type” im Feld “increment_pad_length” die Länge?

EDIT:
Sorry, nicht den kompletten Thread gelesen. Also bei mir funktioniert das so einwandfrei.

 
Magento Community Magento Community
Magento Community
Magento Community
 
kay
Sr. Member
 
Total Posts:  223
Joined:  2008-01-13
Germany 德国,China 中国
 

Welche Magento Version hast du?

 
Magento Community Magento Community
Magento Community
Magento Community
 
vianetz
Guru
 
Avatar
Total Posts:  537
Joined:  2008-04-13
Munich, Germany
 

1.2.0.1

 
Magento Community Magento Community
Magento Community
Magento Community
 
Rico_Neitzel
Moderator
 
Avatar
Total Posts:  857
Joined:  2007-09-05
Würzburg, Germany
 

ich halt das für reichlich gefährlich :D das ist ja immerhin ne wichtige nummer im system, und kein mensch weiß, wo da noch was von abhängt....

aber mal was privates: was ist denn so schlimm an der nummer? zu kurz? zu lang?! wen stört die?

LG Rico

 
Magento Community Magento Community
Magento Community
Magento Community
 
vianetz
Guru
 
Avatar
Total Posts:  537
Joined:  2008-04-13
Munich, Germany
 
Rico Neitzel - 30 January 2009 03:15 PM

aber mal was privates: was ist denn so schlimm an der nummer? zu kurz? zu lang?! wen stört die?

Also ich habe bis jetzt noch keine Probleme entdeckt.

Für meinen Kunden waren die Nummern zu lang. Es macht einfach einen besseren Eindruck, wenn man beispielsweise bei der Überweisung nicht eine ewig lange Bestell- und/oder Rechnungsnummer angeben muss.
Außerdem wollte er andere Startnummern, z.B. Lieferscheine bei 400.000, Rechnungen bei 100.000 und Bestellungen bei 600.000.

 
Magento Community Magento Community
Magento Community
Magento Community
 
kein-nickname
Sr. Member
 
Total Posts:  88
Joined:  2007-12-03
Germany
 

Einfach folgenden SQL-Befehl nehmen um die länge der Bestellnummer zu ändern:

update `eav_entity_type` set `increment_pad_length`=5 where `entity_type_code`=’order’;

Danach EAV-Cache leeren…

Fertig

Siehe auch:
http://www.magentocommerce.com/boards/viewthread/5893

Und wer seinen Nummernkreis besonders ändern will:
http://www.magentocommerce.com/extension/1186/custom-order-number

 
Magento Community Magento Community
Magento Community
Magento Community
Magento Community
Magento Community
    Back to top