Цитата |
---|
Дмитрий Цыганок написал:
2. Осталась проблема, которая возникла до обновления модуля и увы, не решилась после его обновления. Суть проблемы заключается в том, что при небольшом количестве товара на складе (например 5 автошин), после оплаты заказа в 4 автошины и успешной передачи платежного документа на сайт, после проведения документа реализации товара при обмене не отгружается документ отгрузки , хотя статус "Доставка не разрешена" меняется на "Доставка разрешена", как и должно быть по выставленным настройкам на стороне сайта. В логе обмена прослеживается две ошибки: "Документ с Ид - 102. В отгрузке №102 указано не допустимое количество товара к отгрузке" и "Документ с Ид - 51.Заказ №51 не может быть изменен (находится в финальном статусе, оплачен или разрешена доставка)". Что интересно, если я заказываю 2 автошины (при 5-ти на складе), то документ отгрузки успешно отгружается. Выходит, что для отгрузки необходимо, чтобы количество товара на складе было, как минимум, кратно количеству товара в заказе. Но ведь это неправильно! Хорошо, если остаток на складе большой, но что, если товара осталось мало, как быть?
P.S.: К слову, при обмене платежным поручением после его проведения, в логе зафиксировано сообщение следующего содержания: "Документ с Ид - 52. Произошла ошибка обновления заказа: Вы не можете купить товар "Автошина ACHILLES Desert Hawk A/P 225/75 R16 115/112 L TL" в количестве 4 шт. Для покупки доступно только 1 шт". Хотя при этом также там написано: "Ответ сервера: success" и "Выгрузка пакета 1 документов завершено. Выгружено 1 документов." и заказ на сайте успешно переходит в статус "Оплачен", и остаток на складе после этого, как должно быть - 1шт. До обновления модуля обмена при оплате возникала такая же ошибка, но, как я уже писал выше - на сайте оплата не проводилась. Хорошо бы, если еще и отгрузка проходила успешно при небольших остатках на складе.. |
В общем, если кому-то будет полезно, я решил вторую проблему.
Немного предыстории:
После долгих мучений и десятков неудачных обменов, в процессе переписки с техподдержкой, меня навели на мысль, что у меня стоит запрет на покупку при отсутствии товара, но я не придал этому значения и как оказалось зря... (Почему не придал значения, ниже)
Дело в том, что мой проект сейчас находится на стадии тестирования и отладки до передачи клиенту и я особо не заморачивался с количеством товара на сайте и с остатками по складам, а настроил 1С на передачу только того товара, у которого указана цена, т.е. который поступил на склад 1С. Поступил на склад у меня единственный товар в количестве 12 штук.
Так вот, когда я сделал тестовый заказ, то в количестве я указал 8 штук, таким образом на складе после отгрузки должно было остаться 6 штук. После этого я запустил обмен с сайтом и в 1С, как положено в последних версиях БУС, прилетело 3 документа: "Заказ покупателя", "Платежное поручение входящее" и "Реализация товаров и услуг". Имитируя оплату, в 1С я провел платежное поручение, снова запустил обмен и на сайте документ оплаты успешно перешел в состояние "Оплачен". Далее, имитируя доставленный заказ, в 1С я провел документ реализации товара и здесь вывалилось сообщение о том, что якобы в отгрузке указано недопустимое количество товара и статус отгрузки на сайте никак не меняется на "Выполнено"...
Что я только не испробовал, разные вариации опций в настройках обмена на стороне сайта и в 1С, а оказалось все было предельно просто! (Хотя додуматься до этого не так легко как может показаться, видимо в этом вина "логики" 1С, до конца понять которую я пока не в силах!). Итак, если Вы тоже упражняетесь, как и я с небольшим количеством товара и делаете заказ более половины от остатка на складе, то идем в настройки торгового каталога на стороне БУС:
"
Настройки/Настройки продукта/Настройки модулей/Торговый каталог", вкладка "
Настройки", раздел "
Значения параметров товаров по умолчанию", там нужно поставить галочку напротив "
Разрешить покупку при отсутствии товара (включая разрешение отрицательного количества товара)" (жмем "
Изменить"). Вуаля! После этих "нехитрых" действий отгрузка проходит на ура!
Теперь почему я не придал этому значение. Наверное я до конца не понимаю логику работы 1С и весь этот его форматно-логический контроль, но мне и в голову не могло прийти, что остатки могут уйти в минус! Потому, что по логике, если обновляется тот же самый документ отгрузки, который был отправлен из сайта в 1С, то и количество в нем должно быть учтено то, которое было выставлено при заказе! Т.е. зачем отгружать новые 8 штук, если эти же 8 штук уже есть в документе отгрузки, созданном при заказе на сайте и отправленном в 1С?? Странная логика или 1С или модуля Интернет-магазина 1С-Битрикс.
Просто совет, подумайте над этим и может как то обозначить это, чтобы не вводить пользователей в заблуждение, потому, что как оказалось я ни одинок в данной проблеме.
P.S.: Также лучше обновиться до последней версии модуля обмена
6.0.3.1.