Очистить брошенные корзины с помощью API 1С-Битрикс

RSS
Очистить брошенные корзины с помощью API 1С-Битрикс
 
Очистить брошенные корзины с помощью API 1С-Битрикс

Задача: в интернет-магазине накапливается большое количество брошенных корзин, нужно их очистить. Включая и корзины зарегистрированных пользователей, которые просто не дооформили заказ. При этом используя API 1С-Битрикс, а не прямые запросы в базу данных.
 
ORM  getList - шпаргалка

'select'  => ... // имена полей, которые необходимо получить в результате
'filter'  => ... // описание фильтра для WHERE и HAVING
'group'   => ... // явное указание полей, по которым нужно группировать результат
'order'   => ... // параметры сортировки
'limit'   => ... // количество записей
'offset'  => ... // смещение для limit
'runtime' => ... // динамически определенные поля
 
Михайл, добрый день. Я так понимаю, что первый пример можно использовать в файле init.php или лучше создать всё таки отдельный файл и запускать?
 
Лучше на расписание повесить, ни к чему init.php засирать)
 
Цитата
написал:
Лучше на расписание повесить, ни к чему init.php засирать)
Попробовал запустить через командную строку PHP в админке. Пишет, что не может найти класс.
Class 'Bitrix\Sale\Basket' not found (0)

Это битрикс поменял правила работы кода, или в другое место смотреть нужно?))
Заранее. спасибо за ответ))
Изменено: Михаил Базаров - 13.04.2023 11:43:00
 
А если добавить Loader::includeModule('sale'); то начинает выполняться. Может дополнить или тут как на везение?))
 
Ещё заметил, что после удачного выполнения скрипта, таблица b_sale_fuser оказалось такой же полной. А в админке нет не одной брощенной корзины. Очень странно!
 
Цитата
Гость написал:
А если добавить Loader::includeModule('sale'); то начинает выполняться. Может дополнить или тут как на везение?))

Да, добавил в заметку подключение модуля sale, без него перестало работать (хотя точно работало, применял скрипт не раз).
Спасибо, что написали.
 
Цитата
Гость написал:
Ещё заметил, что после удачного выполнения скрипта, таблица b_sale_fuser оказалось такой же полной. А в админке нет не одной брощенной корзины. Очень странно!

Проверил на одном проекте, все в порядке, таблица почти пустая. Проверьте что в ней за записи, возможно там очень много пустых корзин. Могут плодиться компонентом bitrix.basket.basket.small
При каждом заходе пользователей или ботов (хоть поисковиков) создается пустая корзина готовая к наполнению.
Вообще, проверю позже на другом проекте, допишу в заметку как и их грохать периодически.
 
Спасибо большое! Это заметка очень помогает! Так же на одном совём проекте, стандартная функция работает. Так, что как повезёт. Про корзину, большое спасибо! Посмотрим))
 
Можете ещё подсказать как быть. Сравнили с боевым сайтом. Размер таблицы реально уменьшился и уменьшелись записи в ней. В приложении небольшой скрин данных который остался в таблице. Я так понимаю, если они созданы корзиной как вы выше писали, то их можно просто удалить все. И не должно в принципе не чего слететь?
 
Подскажите, куда лучше разместить этот скрипт? В папку local или другую? И в настройках cron указать отдельно именно его?
 
Цитата
Валентин написал:
Подскажите, куда лучше разместить этот скрипт? В папку local или другую? И в настройках cron указать отдельно именно его?

Можно в local - тут исходите из своего проекта
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить файлы
 
Поблагодарить и поддержать:
Или подписаться на boosty канал: Видео на Ютубе