• Как правильно настроить двусторонний обмен заказами с 1С?

    @devjob Автор вопроса
    Виталий Вайти, БУС не обрабатывал входящий документ из 1С (documents__******.xml) .
    На данный момент проблему решил.
    Загрузил вручную xml на сайт и обработал его.
    Как выяснилось - ошибка была в том что нужно было отключить настройки "Складской учет" и "Резервирование товара". (Складской учет уже был отключен), а резервирование - было включено.

    Однако сейчас другая проблема.
    В процессе обновления корзины часть товаров из отгрузок была удалена.

    По какой-то причине документ отгрузки не изменяется. Т.е. штатно - БУС изменяет только привязанную корзину, а сущность "Отгрузка" - не меняет в соответствии с привязанной корзиной..
  • Как правильно настроить двусторонний обмен заказами с 1С?

    @devjob Автор вопроса
    Приветствую.

    Сделал, как сказали.

    БУС: Создал заказ.
    УТ: Обмен прошел, заказ в УТ появился.
    УТ: изменил заказ (добавил количество товара + добавил новый товар в корзину. Запустил обмен. В логах
    Лог обмена
    23.03.2021 17:04:48--Начало обмена узла orders
    23.03.2021 17:04:48-- Каталог на диске: ***\AppData\Local\Temp\379cc9c0-320d-4977-9955-014c04e278b9\webdata\000000019
    23.03.2021 17:04:48--Загрузка информации по документам.
    23.03.2021 17:04:48--Отправка запроса на авторизацию.
    23.03.2021 17:04:48--Отправка запроса на инициализацию, для определения версии обмена данных.
    23.03.2021 17:04:48--Отправка запроса на получение заказов с сайта.
    23.03.2021 17:04:48--Нет документов для обработки
    23.03.2021 17:04:48--Сообщение на сайт, что заказы получены и обработаны, доставлено.
    23.03.2021 17:04:48--Загрузка информации по документам ЗАВЕРШЕНА
    23.03.2021 17:04:48--Выгрузка неотправленных пакетов о информации по документам.
    23.03.2021 17:04:48--Выгрузка пакетов документов в XML.
    23.03.2021 17:04:48--Выгрузка пакетов документов в XML завершена.
    23.03.2021 17:04:48--Выгрузка неотправленных пакетов о информации по документам ЗАВЕРШЕНА
    23.03.2021 17:04:48--Выгрузка информации по документам.
    23.03.2021 17:04:48--Формирование пакетов для документов
    23.03.2021 17:04:48--Формирование пакетов для документов завершено
    23.03.2021 17:04:48--Выгрузка пакетов документов в XML.
    23.03.2021 17:04:48--Отправка запроса на авторизацию.
    23.03.2021 17:04:48--Отправка запроса на инициализацию, для определения версии обмена данных.
    23.03.2021 17:04:48--Процес выполнения обмена: Распаковка архива завершена.
    23.03.2021 17:04:48--documents___8db70a5f-63d9-4318-932a-81f36f6a21e3.xml: Данные успешно обработаны сервером.
    Ответ сервера: success
    Необходимо выключить складской учет и резервирование

    23.03.2021 17:04:48--Выгрузка пакета 1 контейнеров документов завершено. Выгружено 1 контейнеров.
    23.03.2021 17:04:48--Выгрузка пакетов документов в XML завершена.
    23.03.2021 17:04:48--Выгрузка информации по документам ЗАВЕРШЕНА
    23.03.2021 17:04:48--Выгрузка текущего лог файла на сайт.
    23.03.2021 17:04:48--Отправка запроса на авторизацию.
    23.03.2021 17:04:48-- Удаление временных файлов: ***\AppData\Local\Temp\v8_1409_23a19.XSD
    23.03.2021 17:04:48--Завершение обмена imedsnab_orders_live

    БУС: изменения не отразились в заказе.
  • Лишний выскакивает закрывающий div, на боевом сайте битрикс, как исправить?

    @devjob
    Сравнивай файлы включаемых областей по содержимому.
    В phpstorm / WinMerge - есть такая возможность.

    Если проявляется не во всех разделах, то ищи проблему в текстовых полях раздела.
    Вообще так не скажешь сразу, надо учитывать ряд разных факторов.
    Попробуй шаблон компонента раздела сменить на другой (штатный). Если проблема исчезнет, значит ищи в шаблоне компонента который выводи раздел.
  • Bitrix - Как подписаться на событие блокировки заказа?

    @devjob Автор вопроса
    PetrPo, конечно, лови галку.
    Не сразу появилась возможность отметить решением...
  • Bitrix - Как подписаться на событие блокировки заказа?

    @devjob Автор вопроса
    PetrPo, спасибо, но вопрос не в том как работать с историей изменения заказа, а как подписаться на событие, когда происходит блокировка заказа пользователем.

    Поясню: Блокировка заказа происходит каждый раз, когда пользователь, имеющий права на редактирование заказа заходит просто в незаблокированный раннее заказ (без редактирования). В своем описании вопроса я вставил вырезку кода (1). В этом случае - автоматически происхоидит запись полей "DATE_LOCK" и "LOCKED_BY" в таблицу.
  • Как установить nodejs на BitrixVM?

    @devjob
    не так устанавливаете.
    Понятно, что древняя. Я не предлагал использовать установленную версию)

    Если по делу, устанавливайте так:
    curl -sL https://rpm.nodesource.com/setup_12.x | bash -


    После - скачаются исходники и запустится установка скаченного файла.
    далее - по визарду.
  • Почему у товара нулевая цена?

    @devjob Автор вопроса
    Ярослав Александров, Битрикс комплекты.
    TYPE_SET, если имеете в виду.
  • CatalogProvider метод getProductData не вызывается. Почему?

    @devjob Автор вопроса
    Мне нужно переопределить цену для товара, используя свою логику применения скидки.
    Если конкретней, то мне нужно следующее:
    есть товары типа TYPE_SET (наборы / комплекты). Хранятся в инфоблоке 1.
    При добавлении торговых предложений из инфоблока 3 мне нужно проверить, есть ли привязка к свойству в инфоблоке 1, то получаю кол-во такой позиции, скажем "x". Если кол-во добавляемого товара - "y" === "x", то цена 0руб.
    Если "y" > "x", то
    получим кол-во, входящее в состав комплекта "x - "y" = a
    для количества "x" цена = 0,
    и цена для "a" = розничной цене из инфоблока 3.
  • CatalogProvider метод getProductData не вызывается. Почему?

    @devjob Автор вопроса
    PetrPo, верно заметил.
    Но при попытке добавить товар в корзину
    $rs = \Bitrix\Catalog\Product\Basket::addProductToBasket($obBasket, $arFields, ['SITE_ID' => 's3']);


    вылетает исключение:

    2020-09-15 17:13:04 - Host: site.ru:443 - UNCAUGHT_EXCEPTION - [Error]
    Call to a member function isSuccess() on null (0)
    /crm/bitrix/modules/sale/lib/internals/providerbuilderbase.php:139
    #0: Bitrix\Sale\Internals\ProviderBuilderBase->getProductData(string)
    /crm/bitrix/modules/sale/lib/internals/providercreator.php:423
    #1: Bitrix\Sale\Internals\ProviderCreator->callBuilderMethod(string, string)
    /crm/bitrix/modules/sale/lib/internals/providercreator.php:227
    #2: Bitrix\Sale\Internals\ProviderCreator->getProductData()
    /crm/bitrix/modules/sale/lib/internals/catalog/provider.php:56
    #3: Bitrix\Sale\Internals\Catalog\Provider::getProductData(array, array)
    /crm/bitrix/modules/sale/lib/basket/baserefreshstrategy.php:370
    #4: Bitrix\Sale\Basket\BaseRefreshStrategy->getProviderResult(object, array)
    /crm/bitrix/modules/sale/lib/basket/singlerefreshstrategy.php:67
    #5: Bitrix\Sale\Basket\SingleRefreshStrategy->getProductData(object)
    /crm/bitrix/modules/sale/lib/basket/baserefreshstrategy.php:410
    #6: Bitrix\Sale\Basket\BaseRefreshStrategy->refresh(object)
    /crm/bitrix/modules/sale/lib/basketbase.php:770
    #7: Bitrix\Sale\BasketBase->refresh(object)
    /bitrix/modules/sale/lib/basketitembase.php:745
    #8: Bitrix\Sale\BasketItemBase->onFieldModify(string, double, double)
    /crm/bitrix/modules/sale/lib/basketitem.php:934
    #9: Bitrix\Sale\BasketItem->onFieldModify(string, NULL, double)
    /crm/bitrix/modules/sale/lib/internals/entity.php:279
    #10: Bitrix\Sale\Internals\Entity->setField(string, double)
    /crm/bitrix/modules/sale/lib/basketitembase.php:412
    #11: Bitrix\Sale\BasketItemBase->setField(string, double)
    /crm/bitrix/modules/catalog/lib/product/basket.php:591
    #12: Bitrix\Catalog\Product\Basket::add(object, array, array, array)
    /crm/bitrix/modules/catalog/lib/product/basket.php:149
    #13: Bitrix\Catalog\Product\Basket::addProductToBasket(object, array, array)
    /crm/local/lib/basket/mybaskethelper.php:396
    #14: MyBasketHelper::addToBasket(string, string, boolean)
    /crm/api/cart.php:82
    ----------
  • Как удалить товар из корзины?

    @devjob Автор вопроса
    В любом случае спасибо)
    Лайкаю ответ.
  • Как удалить товар из корзины?

    @devjob Автор вопроса
    Благодарю за подсказку.
    В своем коде заменил только 1 метод и все заработало!!

    $basketItems = $basket->getBasketItems(); // было $basket->getOrderableItems();
  • Существует ли товар в корзине Bitrix?

    @devjob Автор вопроса
    В догонку к свойствам.
    Я проверяю инфоблок торговых предложений.
    Соответственно - не хватает ссылки на родительский элемент инфоблока.
    Ее тоже добавлять в формате ['CML2_LINK' => ] ?
  • Существует ли товар в корзине Bitrix?

    @devjob Автор вопроса
    Благодарю за развернутый ответ.
    Проверю, отпишусь.

    Вопрос по свойствам:
    CATALOG.XML_ID
    PRODUCT.XML_ID
    это что за свойства?
    Если с PRODUCT.XML_ID понятно, это свойство, полагаю, берется из таблицы b_catalog_product . Верно?
  • Существует ли товар в корзине Bitrix?

    @devjob Автор вопроса
    Формально конечно интересовал метод getExistsItem, даже с передачей всех свойств возвращается null.

    Способ с циклом подошел, хотя не комильфо.
  • Как удалить товар из корзины?

    @devjob Автор вопроса
    Да, это опечатка.
    Криво вставил код.
    В любом случае с правильным названием переменной не работает.
    Иначе бы у меня код не запустился.
  • Как подобрать прошивку Android 4.4 на новый смартфон?

    @devjob
    Можно, но бывают ограничения вендорные.
    Прошивки есть кастом и оригинальные.
    первое что нужно - получить root права, чтобы получить доступ к ядру.
    Подробную инструкцию можно почитать на сайте.

    Но главное помнить - все делаете на свой страх и риск и ответственность разумеется на вас)