Разработка на 1С-Битрикс Михаил Базаров
Форум

Показать пользователю накопительную скидку за все сделанные заказы, из модуля маркетинга

Вопросы и ответы по 1С-Битрикс, разборы реальных задач и обсуждение заметок блога. Задайте вопрос или помогите другим — все сообщения проходят модерацию.

Внимание! Все сообщения на форуме проходят модерацию. Ваше сообщение появится после проверки.
Показать пользователю накопительную скидку за все сделанные заказы, из модуля маркетинга

Задача: показать, текущему авторизованному, пользователю сумму всех выполненных заказов и процент накопительной скидки- доступной на данный момент.
Спасибо, то что нужно! Не работает на php8, подскажете что поправить?
Цитата
Максим написал:
Спасибо, то что нужно! Не работает на php8, подскажете что поправить?

Какую ошибку выдает?
При вызове .parameters.php выдает ошибку в двух строчках: Argument #1 ($value) must be of type Countable|array, null given (0)

$arDiscountsId = array_combine($arDiscountId, $arDiscountName);
$arOrdersStatus = array_combine($arOrdersStatusId, $arOrdersStatusName);

Их нужно обернуть условием if - я прописал проверку этих $ar...., и вызов параметров заработал. Но теперь невозможно выбрать ID скидки в вашем компоненте. Просто неактивно. Вывод общей суммы заказов получилось сделать.
Вместо CCatalogDiscount::GetList получилось вывести список скидок с помощью CSaleDiscount::GetList
Чуть попозже разберусь что там не так, сам давно этим компонентом не пользовался. Видимо, что то изменилось в битриксе.
Плюс да, если php 8+ надо доп. проверки массива делать на не null
(это в компонент добавил, но не проверяя)
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Загрузить файлы
 
Блог-note

Заметки по 1С-Битрикс