Без рубрики

Ошибка в формировании номеров заказа и присвоение номера на стороне Мс

После последних обновлений на стороне сервиса Мой Склад номера заказов переданные с сайта через плагин стали сбивать нумерацию заказов в Мой Склад тех заказов что формируются через интерфейс Мой Склад.

Так как Мой Склад стал прибавлять 1 к заказам созданым в системе мой склад, это стало вызывать ошибку что номер заказа такой уже существует.

Ошибка сохранения объекта: нарушено ограничение
уникальности параметра ‘name

Пока есть два решения это добавлять постпрефикс, но тогда появляется следующая ошибка Мой склад начинает добавлять к заказам созданым в интерфейсе сервиса цифры.

Например вы передали с сайта заказ с номером 5

Если был добавлен префикс то номер будет выглядеть так WC5

После вы создаете заказ в системе мой склад через их интерфейс этому заказу присвоится  автоматически номер WC6.

Следом с сайта вы пробуете передать заказ и у него номер 6 с префиксом WC6, такой заказ уже не пройдет вызовет ошибку которая описана выше.

Мы добавляем постпрефикс наример M, заказ получается такой WC6M, Этот заказ уже пройдет в систему.

После вы снова создаете заказ в системе мой склад через их интерфейс этому заказу присвоится  автоматически номер WC6M-1.

Что тоже не всегда хорошо такие номера придется в ручную исправлять, это может повлечь за собой ошибки.

 

Есть второй вариант это оставить формирование номеров заказа на стороне Мой Слад, они теперь это могут.

Единственный минус что номера на сайте и в мс не будут совпадать, но информация о номере заказа передается в комментарии к заказу.

На сайте же присвоенный номер пишиться в сообщениях о заказе, а также в мета поле.

Позже добавлю код для вывода номера в отдельном метабоксе с возможностью перехода в сервис .

Пока данный подход реализован в в виде сниппета.

Данный сниппет нужно добавить в functions.php вашей темы.