Не рассчитывает стоимость доставки клиенту

[16 июля 2019 г.]    Российская сборка Magento 2.52.2
Magento 2: модули и услуги
magereport.com: составление перечня необходимых для установки заплаток SUPEE
#1 Андрей Наумов
  • Группа: Клиент
  • Сообщений: 108
  • Регистрация: 25.07.2011

14.09.2011 12:37

Настроил способы доставки:

-Система-Конфигурация-Методы доставки-Table Rates: текущая область действия "Конфигурация по умолчанию". Подробнее на скрине:

Прикрепленное изображение: qu7.png

-Система-Конфигурация-Методы доставки-Table Rates: текущая область действия "Main Website". Подробнее на скрине:

Прикрепленное изображение: qu8.png

-создал и заполнил файл tablerates_new.csv, скрин в программе Notepad++:

Прикрепленное изображение: qu9.png

- загрузил его в Система-Конфигурация-Методы доставки-Table Rates: текущая область действия "Main Website"

Если затем пробую рассчитать стоимость доставки в корзине с выбранным товаром, то расчёт не происходит (просто перегружается корзина). Если же перехожу на этап оформления заказа, то на шаге 4 пишет "К сожалению, в данный момент отсутствуют цены для этого заказа":

Прикрепленное изображение: qu10.png

Что я делаю не так?

#2 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8995
  • Регистрация: 20.02.2010

14.09.2011 13:16

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

#3 Андрей Наумов
  • Группа: Клиент
  • Сообщений: 108
  • Регистрация: 25.07.2011

14.09.2011 13:43

Присутствуют:

Прикрепленное изображение: qu11.png

#4 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8995
  • Регистрация: 20.02.2010

14.09.2011 13:46

Обратите внимание, что графы страна и область не импортировались.

#5 Андрей Наумов
  • Группа: Клиент
  • Сообщений: 108
  • Регистрация: 25.07.2011

14.09.2011 14:11

Да, не импортировались. Попробовал ввести вручную "Беларусь" и "Минск" в таблицу БД, выдало предупреждение:

Прикрепленное изображение: qu12.png

Получилось теперь вот так:

Прикрепленное изображение: qu14.png

Посмотрел свойства таблицы, там стоит ограничение 4 символа в поле Страна:

Прикрепленное изображение: qu13.png

Где можно узнать, какие символы допустимы в этих полях, чтобы мадженто их понимал? Ведь на сайте он показывает страну "Беларусь" при выборе из селекта клиентом в стране доставки. Или может быть я могу изменить свойства этой таблицы, чтобы ограничение было не 4 символа, а 256?

#6 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8995
  • Регистрация: 20.02.2010

14.09.2011 14:12

Смотрите таблицу directory_country.

#7 Андрей Наумов
  • Группа: Клиент
  • Сообщений: 108
  • Регистрация: 25.07.2011

14.09.2011 15:59

В этой таблице действительно содержатся сокращения всех стран, однако, как видно из теста ниже мадженто берет информацию о стране доставки из другой таблицы:

1. Открыл таблицу directory_country_region. В ней посмотрел region_id и country_id, например, для любого американского города - взял Алабаму.

Прикрепленное изображение: qu16.png

2. Запомнил region_id и country_id и вставил их в мою таблицу shipping_tablerate, индекс придумал "1111111"

Прикрепленное изображение: qu17.png

3. В итоге пользователем выбрал страну США, мне подгрузился селект города, выбрал Алабаму и ввёл индекс 1111111. Т.е. заведомо те параметры, какие у меня стоят в таблице shipping_tablerate. Нажал "Рассчитать доставку" и, ура!, доставку мне рассчитало правильно:

Прикрепленное изображение: qu18.png

Вопрос: как мне тоже самое сделать для Беларуси? Понимаю, белорусских городов в базе нет. Решил по аналогии с американскими добавить один белорусский город "Минск". Сделал следующее:

1. В таблицу directory_country_region добавил Минск по аналогии с американскими городами:

Прикрепленное изображение: qu19.png

2. В таблицу directory_country_region_name добавил свой Минск (сомневаюсь, что locale правильно указал):

Прикрепленное изображение: qu20.png

3. В таблицу shipping_tablerate вставил данные Минска, т.е. region_id=485 и country_id=ВЕ.

4. Пошёл на сайт, выбрал в доставке страну "Беларусь", но селект выбора города (Минска) мне не подгрузился:

Прикрепленное изображение: qu21.png

в то время, как для США селект сразу подгружается:

Прикрепленное изображение: qu15.png

5. Решил, ладно, обойдусь без селекта, ввёл руками город Минск и индекс 1111111, нажал "Расчитать стоимость доставки", страница просто перезагрузилась без расчёта.

Как решить проблему?

Кэш отключен, но чистил и его ещё раз, индексы обновлял.

#8 Андрей Наумов
  • Группа: Клиент
  • Сообщений: 108
  • Регистрация: 25.07.2011

14.09.2011 16:42

Разобрался, я ставил ВЕ, думая, что это символ Беларуси, а это оказалась Бельгия. Если выбрать страну "Бельгия", то в селекте "Регион" подгружается мой Минск.

Тогда вопрос такой, как добавить Беларусь в таблицу directory_country? Там уже есть BE и BL. Попробовал добавить под любым свободным на В, т.е. ВС:

Прикрепленное изображение: qu23.png

С какой страной ассоциируется BL-BLM в этой таблице?
После добавления ВС селект "Страна" все равно (логично) не ассоциирует "Беларусь" с ВС из таблицы directory_country.

Скорее вопрос в том, откуда мадженто берет список стран, которые подгружаются в селект в меню "Страна":

Прикрепленное изображение: qu22.png

#9 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8995
  • Регистрация: 20.02.2010

14.09.2011 16:49

коды стран придумывать не нужно, Magento берёт их из международного стандарта ISO.

#10 Андрей Наумов
  • Группа: Клиент
  • Сообщений: 108
  • Регистрация: 25.07.2011

16.09.2011 12:24

Table Rates успешно импортировал значения доставки, все отображается. Но почему-то то работает, то не работает.

Table Rates включены как по умолчанию, так и для сайта:

Прикрепленное изображение: qu33.png

Прикрепленное изображение: qu34.png

Исключил Беларусь из стран, для которых надо вводить индекс:

Прикрепленное изображение: qu36.png

Если пробую оформить заказ (гостем или юзером) доставку не рассчитывает, просто пустое поле остается:

Прикрепленное изображение: qu35.png

Хуже того, если юзером пробую оформить заказ на тот адрес, на который уже оформлял успешно, пишет:

Прикрепленное изображение: 16.09.png

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

Прикрепленное изображение: 16.09-1.png

Оформить заказ, естественно, не удается.

Просто беда какая-то у меня с этой доставкой ))) Нужна помощь.

#11 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8995
  • Регистрация: 20.02.2010

16.09.2011 12:28

В каких ситуациях работает?

#12 Андрей Наумов
  • Группа: Клиент
  • Сообщений: 108
  • Регистрация: 25.07.2011

16.09.2011 12:37

Когда смог импортировать данные в таблицу shipping_tablerate доставку для Беларуси показывало отлично - давало выбирать страну, регион и без индекса показывало стоиомость доставки. Во всех валютах и пускало оформлять заказ.

И не понятно, при каких условиях расчет доставки работает, а при каких нет. Или после перезапуска браузера, или по прошествии какого-то время - около 15 минут. Сегодня ни разу доставку не рассчитало (((

#13 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8995
  • Регистрация: 20.02.2010

16.09.2011 12:44

Заочно тут сложно что-то определённое сказать.
Обратитесь к специалисту - он настроит.

Поделиться темой: