После корзины идёт 2 списка товаров из bitrix:sale.products.gift.basket но узнать сколько подарков доступно по условию правил корзины не получается... может у кого-то есть идеи как это реализовать?
пробовал выбрать саму скидку (CSaleDiscount::GetByID) там есть функции, но не понимаю, что я от них получу и что в них нужно передать (фейковый заказ?).. [UNPACK] => function($arOrder){... }; (?) [APPLICATION] => function (&$arOrder){....}; (?)
В \Bitrix\Sale\Discount\Gift\Manager::getCollectionsByBasket() только список id подарков
Нельзя добавлять для обмена товары внутри раздела Номенклатуры (но не входящие в следующие подразделы по вложенности) при помощи самого раздела (ведь тем самым подхватываются и входящие подразделы с товарами). Если потом еще отдельно добавлять подразделы внутри этого раздела - то наступает конфликт. По моему все очевидно, если один раз добавили Компьютеры со всеми папками внутри, для чего потом добавлять подпапку Компьютеры -> Компьютеры Apple?
не очень по-русски... Петр, отладчиком в php или который отладчик от ТП bx_1c_import.php ?
Сергей Васильев написал: Интернет-магазин (sale) Позволяет осуществлять продажи товаров посетителям сайта. Версия 18.6.500 [*]Исправлена ошибка добавления товара в заказ. [*] Добавлена возможность регистрации покупателей по номеру телефона в компоненте sale.order.ajax. дождались!)
нет там такого функционала... вся форма регистрации собирается на js в котором нет упоминания телефона...
Найти папку /bitrix/components/bitrix/sale.personal.section/templates и скопировать оттуда нужный шаблон в /local/templates/{.default}/components/bitrix/sale.personal.section/...
Посоветовался с разработчиком, само правильное делать свою логику на уровне таблета \Bitrix\Sale\Internals\FuserTable К слову архитектура продукта пока не позволяет реализовать грамотно вашу задачу.
Fuser::getId использует Fuser::getIdByUserId в котором берется первая запись при сортировке по ID 'order' => array('ID' => "DESC") можете подсказать почему именно ID а не DATE_UPDATE ?
Это очень старый метод, уже сложно сказать почему именно так было принято, но можно доработать, если нужно.
Есть идея хранить слепки корзин (либо только FUSER_ID) в профиле пользователя и при авторизации восстанавливать корзины, но вопрос какой объём данных требуется хранить и будут ли сложности...
Можно работать с FUSER_ID но всё ядро выбирает последний fuser_id сортируя по ID! получается нужно либо править ядро (исправлять сортировку) либо в какой-то момент удалять все записи нашего пользователя из таблицы b_sale_fuser кроме нужной нам... общаюсь с ТП по реализации(обращение 2436351), может помогут...
А архивировать/удалять старые документы складского учёта нельзя? У нас последняя проводка через БУС была полтора года назад, после стали использовать только 1С, но теперь к этим документам подвязаны товары/разделы и их не удалить! В тему нашёл только такое https://idea.1c-bitrix.ru/9887/
Изменение (исключение) диапазона свойств из фасетного индекса (умного фильтра), Как изменить диапазон отображаемого значения в умном фильтре (или при создании фасета)
Владимир Савельев написал: При использовании метода CSaleDiscount::DoProcessOrder для получение цен с учетом "правил работы с корзиной" получил неожиданный результат при котором правильная цена отдавалась не всегда. По совету техподдержки решил проблему таким кодом: