Magento 2. После новой установки новый идентификатор заказа будет 100000001, 100000002 и так далее.
Как правильно изменить этот инкрементный идентификатор, чтобы он был больше? Например 155555552, 155555553 и так далее. После изменения это будет выглядеть намного лучше.
В Magento 1.9 Чтобы отредактировать Id по умолчанию для заказов, счетов-фактур или отгрузок, нам просто нужно было изменить значения в базе данных в «eav_entity_store».
Magento 2 выглядит так по-другому ...
Я знаю, что есть некоторые плагины, которые предлагают сделать это, но я хочу знать, как сделать это вручную.
increment_id
как они должны.Ответы:
источник
Зайдите в свою базу данных из phpmyadmin,
Здесь _1 используется для идентификатора магазина после имени таблицы.
Default Frontend store id is 1.
если у вас есть несколько магазинов, вы должны установить запрос для каждого магазина с именем таблицы, например sequence_order_2 до sequence_order _. *Введите ниже запрос для таблицы sequence_order_1 используется для хранилища по умолчанию. Если у вас есть несколько магазинов, вы должны установить имя таблицы в соответствии с идентификатором магазина в запросе ниже.
Это используется только для заказа, размещенного в веб-интерфейсе.
sequence_order_1 используется для управления идентификатором заказа в magento 2.
ALTER TABLE sequence_order_1 AUTO_INCREMENT=155555551;
Следующий идентификатор заказа начинается с 155555551.
Ниже запрос определен для СЧЕТА , если вы хотите изменить идентификатор счета
ALTER TABLE sequence_invoice_1 AUTO_INCREMENT=155555551;
Для отправки
ALTER TABLE sequence_shipment_1 AUTO_INCREMENT=155555551;
источник
То, что было раньше,
eav_entity_store
теперь покрытоsales_sequence_profile
иsales_sequence_meta
. Столsequence_order_1
заполняется при размещении заказов.источник
Формат для нового идентификатора заказа по умолчанию определяется константой в
Magento \ SalesSequence \ Model \ Sequence:
const DEFAULT_PATTERN = "% s% '. 09d% s";
Это шаблон для функции sprintf (), который создает новый идентификатор. Чтобы удалить начальные нули, вы должны передать свой шаблон конструктору следующим образом:
или расширить класс Sequence и изменить по мере необходимости
источник
Хотя все приведенные выше ответы верны полностью / частично, я подумал записать ответ, так как это будет полезно для будущих читателей. Этот ответ будет касаться двух вопросов:
1) Как изменить порядковый номер заказа?
2) Как добавить префикс или суффикс к номеру заказа?
Прежде чем делать какие-либо слепые изменения в базе данных, вы должны понять, какая таблица последовательности связана с чем. Вы можете проверить это из таблицы
sales_sequence_meta
Запустите запрос
select * from sales_sequence_meta;
каждый магазин будет иметь таблицу последовательности, связанную с этим магазином. Обратите внимание на название таблицы, а именно: Заказ, Счет-фактура, Кредитная отметка или Отгрузка.Как только это будет сделано, перейдите к таблице, например, если вы хотите отредактировать номер заказа до таблицы
sequence_order_1
и изменитьAUTO_INCREMENT
значениеalter table sequence_order_1 AUTO_INCREMENT=617;
Это все, что требуется для перехода по порядку следования.
Теперь, двигаясь дальше, если вы копаете больше и у вас есть требование, где вы хотите добавить префикс / суффикс к порядку, выполните следующие шаги:
Перейти к таблице
sales_sequence_profile
и проверить данныеselect * from sales_sequence_profile;
Вы увидите столбец
prefix
и суффикс. Первоначально это было быNULL
. Вы можете добавить туда значение префикса и суффикса для релевантности,meta_id
которые вы можете отобразить из таблицы.sales_sequence_meta
Это изменит префикс / суффикс заказа для всех заказов.
Надеюсь, это поможет всем! Ура !!
источник
Новая установка: если вы используете Magento 2.2.0+ и выполняете новую установку с включенным многозадачным хранилищем (это включено по умолчанию), вы можете просто выполнить следующие запросы, прежде чем размещать заказы на сайте:
Обратите внимание, что
303
это просто номер, который я выбрал для нашего сайта, потому что наша старая платформа остановилась под номером заказа 300, и мне нужна была некоторая последовательность. Также обратите внимание, что вам не нужны никакие запросы, которые заканчиваются,_1
если вы включили режим единого хранилища.Существующая установка:
если вы уже используете Magento 2.2.0+ (или обновлены до него) и просто хотите увеличить цифры, а не изменять отступы или добавлять символы, просто проверьте текущее значение AUTO_INCREMENT в следующих таблицах (при условии, что используется несколько сайтов) ):
И измените их, используя запросы на изменение, показанные выше, но убедитесь, что новое значение, которое вы используете, больше, чем значение, которое вы получаете от проверки текущего значения AUTO_INCREMENT.
Если вы собираетесь возиться с отступами или добавить собственный шаблон, вам нужно посмотреть другие ответы здесь и просмотреть следующие таблицы:
Обновление: Mult-Stores?
Для тех, кто не знаком с мульти-магазинами, эта функция позволяет вам запускать совершенно разные магазины из одной и той же установки Magento. Распространенной причиной для этого является поддержка других языков. В конце концов, именно поэтому вы можете выбрать вид магазина, на который вы смотрите (если мульти-магазин включен), например, при обновлении конфигурации и выполнении других действий.
По этой причине Magento добавит подчеркивание и число в конце определенных таблиц, чтобы отслеживать различные представления магазина. Вы заметите, что представленные мной запросы выглядят как дубликаты таблиц, но они заканчиваются разными числами, в данном случае 0 или 1. Если бы у вас было несколько магазинов / просмотров, эти числа просто продолжали бы увеличиваться, например, _2 или _3. Это позволяет вам по-разному управлять идентификаторами каждого магазина. Внесение изменений в систему идентификаторов в одном представлении (магазине) не обязательно должно быть таким же в другом представлении.
Это выходит за рамки данной статьи, но эта же система нумерации применяется к другим таблицам в базе данных, что позволяет вам по-разному относиться к каждому представлению магазина и влиять на него. Например, у вас может быть совершенно другая тема для магазина.
источник
Изменить последовательность Чтобы изменить заполнение порядкового номера, отредактируйте Sequence.php (я считаю, что есть лучший способ с помощью di.xml)
Редактировать эту строку
Измените "9" на желаемый отступ
пример
Изменить префикс
Для простоты добавьте номер счета-фактуры Fooman.
источник
Изменить идентификатор приращения заказа
Для другого магазина выполните тот же шаг
Это изменит номер заказа для нескольких магазинов
источник
Чтобы настроить номера счетов через PHPMYADMIN
INSERT INTO
sequence_order_1
(sequence_value
) VALUES ('2000');2000 будет новым стартовым номером
источник
Вы можете внести изменения в номер заказа непосредственно в базе данных Magento 2 с помощью этого совета
Прежде всего, вам нужно открыть базу данных PHP Admin. Затем найдите и откройте таблицу «sales_sequence_profile».
После этого вы можете изменить номер заказа по умолчанию на вашем веб-сайте Magento 2:
а. Изменить идентификатор приращения заказа
б. Изменить префикс номера заказа
с. Изменить суффикс номера заказа
д. Начальный номер изменения номера заказа
е. Изменить длину площадки
Я вижу полное руководство в этой статье: Полное руководство по изменению номера заказа в Magento 2
источник
Чтобы окончательно избавиться (или изменить) лишние нули, вы не должны переопределять основные файлы. В
app/etc/di.xml
добавьте следующее и измените"%s%'.09d%s"
значение соответствующим образом (в этом примере два 00 дополнены):Редактирование базы данных для номеров заказа и счета-фактуры прекрасно описано в ответе Ракеша Джесадии.
источник