Muszę zwiększać każdy nowy identyfikator faktury o 5, próbowałem poniżej kodu.
Ale zmieniłem wszystkie faktury, przesyłki, zamówienia i noty kredytowe.
Potrzebuję przyrostu każdej nowej faktury o 5, przyrostu dostawy o 5 i przyrostu noty kredytowej o 3.
Przyrost zamówienia sprzedaży o 1 (normalny).
W jaki sposób mogę to zrobić .?
Niech ktoś mi pomoże.
class Mage_Eav_Model_Entity_Increment_Numeric extends Mage_Eav_Model_Entity_Increment_Abstract
{
public function getNextId()
{
$last = $this->getLastId();
if (strpos($last, $this->getPrefix()) === 0) {
$last = (int)substr($last, strlen($this->getPrefix()));
} else {
$last = (int)$last;
}
$next = $last + 5;
return $this->format($next);
}
}
magento-1.8
invoice
eav
database
VijayS91
źródło
źródło
Odpowiedzi:
Możesz napisać wyzwalacze dla ID lub napisać procedurę, aby zmienić identyfikator autoinkrementacji, aby ustawić na +5 za każdym razem, gdy wstawiany jest rekord. Pamiętaj, aby zmienić relacje rodzic-dziecko.
źródło
Można ustawić różne modele przyrostów dla każdego typu dokumentu w bazie danych. Teraz używają tej samej klasy, więc zmiany dotyczą wszystkich typów.
Alternatywnie możesz sprawdzić typ jednostki w ramach tej metody i zastosować niestandardową logikę przyrostu liczby.
Jako trzecią opcję możesz wyszukać w magento connect niestandardowe rozszerzenie numeru zamówienia.
źródło