Мне нужно увеличить каждый новый идентификатор счета на 5, я пробовал ниже код.
Но изменились все счета, отгрузки, заказы и кредитовые авизо.
Мне нужно каждое новое увеличение идентификатора счета на 5, увеличение отгрузки на 5 и увеличение кредитовых авизо на 3.
Также увеличение заказа клиента на 1 (нормальное).
Как я могу это сделать .?
Любой, помогите мне.
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
источник
источник
Ответы:
Вы можете написать триггеры для идентификатора или написать процедуру для изменения идентификатора автоинкремента на значение +5 каждый раз, когда вставляется запись. Убедитесь, что изменили отношения между родителями и детьми.
источник
Вы можете установить различные модели приращений для каждого типа документа в базе данных. Теперь они используют один и тот же класс, поэтому изменения затрагивают все типы.
Кроме того, вы можете проверить тип объекта внутри этого метода и применить собственную логику приращения номера.
В качестве третьего варианта вы можете выполнить поиск magento connect для индивидуального расширения номера заказа.
источник