Добрый день.
Ситуация:
1) заказ формируется на сайте, к примеру 2 позиции по 10 штук
2) заказ успешно сохраняется и Битриксом создается два документа на отгрузку, один из них системный и его не видно. Второй же - те самые 2 позиции по 10 штук
3) заказ успешно ушел в 1Ску при импорте/экспорте очередном
4) менеджер успешно его корректирует, меняя позиции не по 10 штук на каждую ...а по 8 штук - сохраняет заказ, при этом документы на отгрузку менеджер никакие не создает в 1Ске.
5) происходит обмен 1Ски с сайтом, где вылазит следующее:
Документ с Ид - 69. Произошла ошибка обновления заказа: Товар "Товар номер 50 желтый" распределен по отгрузкам в количестве 10 м. Для того, чтобы уменьшить количество товара в заказе, необходимо уменьшить его количество в отгрузках как минимум на 2 м.
Соль всей ситуации, что в заказе на сайте не меняется кол-во у позиций, так как существует ОТГРУЗКА в которой фигурирует кол-во большее чем новые значения ...
что не так делаю? через АПИ событий не хочется делать велосипед... понимаю что вопрос должен быть весьма тривиален ...
уже нашел кусок логики, который работает именно на уменьшение позиций, но не вижу механизмов как избежать этот шаг ... :
Ситуация:
1) заказ формируется на сайте, к примеру 2 позиции по 10 штук
2) заказ успешно сохраняется и Битриксом создается два документа на отгрузку, один из них системный и его не видно. Второй же - те самые 2 позиции по 10 штук
3) заказ успешно ушел в 1Ску при импорте/экспорте очередном
4) менеджер успешно его корректирует, меняя позиции не по 10 штук на каждую ...а по 8 штук - сохраняет заказ, при этом документы на отгрузку менеджер никакие не создает в 1Ске.
5) происходит обмен 1Ски с сайтом, где вылазит следующее:
Документ с Ид - 69. Произошла ошибка обновления заказа: Товар "Товар номер 50 желтый" распределен по отгрузкам в количестве 10 м. Для того, чтобы уменьшить количество товара в заказе, необходимо уменьшить его количество в отгрузках как минимум на 2 м.
Соль всей ситуации, что в заказе на сайте не меняется кол-во у позиций, так как существует ОТГРУЗКА в которой фигурирует кол-во большее чем новые значения ...
что не так делаю? через АПИ событий не хочется делать велосипед... понимаю что вопрос должен быть весьма тривиален ...
уже нашел кусок логики, который работает именно на уменьшение позиций, но не вижу механизмов как избежать этот шаг ... :
Код |
---|
if (!$allowQuantityChange && $deltaQuantity < 0) { $basketItemQuantity = $this->getBasketItemQuantity($basketItem); if ($basketItemQuantity > $value) { if (!$basketItem->isBundleChild() && !isset($this->errors[$basketItem->getBasketCode()]['SALE_ORDER_SYSTEM_SHIPMENT_LESS_QUANTITY'])) { $result->addError(new ResultError( Loc::getMessage('SALE_ORDER_SYSTEM_SHIPMENT_LESS_QUANTITY', array( '#PRODUCT_NAME#' => $basketItem->getField("NAME"), '#BASKET_ITEM_QUANTITY#' => ($basketItemQuantity), '#BASKET_ITEM_MEASURE#' => $basketItem->getField("MEASURE_NAME"), '#QUANTITY#' => ($basketItemQuantity - $value) ) ), 'SALE_ORDER_SYSTEM_SHIPMENT_LESS_QUANTITY')); $this->errors[$basketItem->getBasketCode()]['SALE_ORDER_SYSTEM_SHIPMENT_LESS_QUANTITY'] = $basketItemQuantity - $value; } return $result; } } |
голову сломал, буду признателен за любые идеи
заранее спасибо