Как при помощи апи получить информацию по всем заказам?
Выводим информацию по всем заказам битрикса
Первое что необходимо это создать страницу и ограничить её содержимое только для администратора:
if ($USER->IsAdmin()): CModule::IncludeModule('sale'); endif;
Сразу же подключаем нужный нам модуль sale, методы которого мы будем использовать. Теперь пишем для CSaleOrder::GetList Сортировку и Фильтр:
$order = ['ID' => 'desc']; $select = [ 'ID', 'DATE_INSERT', //'PRICE', //'CURRENCY', 'PROPERTY_VAL_BY_CODE_NAME', ];
Готово, это первые параметры которые будут переданы, пишем дальше:
$orders = \CSaleOrder::GetList( $order, $filter, false, false, $select, [] ); $arNames = []; while ($arOrder = $orders->Fetch()){ if (!in_array($arOrder['PROPERTY_VAL_BY_CODE_NAME'], $arNames)) { $arNames[] = $arOrder['PROPERTY_VAL_BY_CODE_NAME']; } } foreach ($arNames as $key => $value) { echo $value.'
'; }
Вот и всё, у нас готов список всех кто заказывал. Выводить можно разную информацию – телефоны, емейлы, общую сумму. Ограничивать по статусам, по пользователям и т.д. Эта информация может пригодится для дальнейшей смс рекламы, или для емейл-маркетинга.
Еще раз полный код:
if ($USER->IsAdmin()): CModule::IncludeModule('sale'); $order = ['ID' => 'desc']; $select = [ 'ID', 'DATE_INSERT', //'PRICE', //'CURRENCY', 'PROPERTY_VAL_BY_CODE_NAME', ]; $orders = \CSaleOrder::GetList( $order, $filter, false, false, $select, [] ); $arNames = []; while ($arOrder = $orders->Fetch()){ if (!in_array($arOrder['PROPERTY_VAL_BY_CODE_NAME'], $arNames)) { $arNames[] = $arOrder['PROPERTY_VAL_BY_CODE_NAME']; } } foreach ($arNames as $key => $value) { echo $value.'
'; } endif;