Как получить список товаров за месяц из раздела Магазин-Товары-Отчеты без использования компонента bitrix:sale.bestsellers.
Сначала делал так:
CModule::IncludeModule("sale");
$arFilter = [];
$date = new DateTime();
$date->modify("-4 week");
$month_earlier = $date->getTimestamp();
$arFilter = [">=DATE_INSERT" => date($DB->DateFormatToPHP(CSite::GetDateFormat("SHORT")), $month_earlier)];
$db_sales = CSaleOrder::GetList([], $arFilter);
$arOrders = [];
while ($ar_sales = $db_sales->Fetch()) {
$arOrders[] = $ar_sales['ID'];
}
if (count($arOrders)) {
$dbBasketItems = CSaleBasket::GetList([], ["ORDER_ID" => $arOrders, 'ORDER_PAYED' => 'Y'], false, false, []);
$arTopItems = [];
while ($arItem = $dbBasketItems->Fetch()) {
$arr[] = $arItem['NAME'];
$arTopItems[$arItem['PRODUCT_ID']] += 1;
}
arsort($arTopItems);
print_r($arTopItems);
$arTopItems = array_slice($arTopItems, 0, 50, true);
foreach($arTopItems as $k => $v){
$keys[] = $k;
}
но в $keys падают не те id