Пошагово получить информацию о заказах и сохранить как Excel (xls)

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

Задача: Нужно получить информацию о заказах с возможностью указания даты создания "от"" и "до" и выгрузить в Excel файл. Так как заказов может быть очень много, за один шаг это не провернуть (скорее всего, сайт отвалится по таймауту) нужно сделать это пошагово с небольшой паузой между шагами.
Паузу между шагами можно выставит больше, если хостинг/сервер не справляется. Также можно увеличить или уменьшить количество заказов обрабатываемых за шаг и дополнить/удалить данные в отчете. Да, как и сказано выше: позже сделаю это модулем с Ajax и прогресс баром- пока так.
Благодарю, очень нужный функционал!
Вариант выгрузки элементов инфоблока в виде
ID элемента | Навание | Какое-то свойство

Проверено на инфоблоке с 70 000 элементов, экселька была получена за 15 секунд.
Код
<?php
require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_before.php");

use Bitrix\Main\Loader;

Loader::includeModule("iblock");

$iblockId = 4;

// Устанавливаем заголовки для скачивания Excel файла
header("Content-Type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=iblock_elements_" . date('Y-m-d_H-i-s') . ".xls");
header("Pragma: no-cache");
header("Expires: 0");

// Получаем все элементы инфоблока за один запрос
$arFilter = array(
    "IBLOCK_ID" => $iblockId,
);

$dbRes = CIBlockElement::GetList(
    array('ID' => 'ASC'),
    $arFilter,
    false,
    false, // Убираем пагинацию - получаем все элементы
    array('ID', 'NAME', 'PROPERTY_PRODUCER')
);
?>
<html xmlns:x="urn:schemas-microsoft-com:office:excel">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <style>
        td {
            mso-number-format: \@;
        }
    </style>
</head>
<body>
<table border="1">
    <thead>
    <tr>
        <th>ID элемента</th>
        <th>Название элемента</th>
        <th>Производитель</th>
    </tr>
    </thead>
    <tbody>
    <?php while ($element = $dbRes->Fetch()): ?>
        <tr>
            <td><?= (int)$element['ID'] ?></td>
            <td><?= htmlspecialchars($element['NAME']) ?></td>
            <td><?= htmlspecialchars($element['PROPERTY_PRODUCER_VALUE'] ?? '') ?></td>
        </tr>
    <?php endwhile; ?>
    </tbody>
</table>
</body>
</html>
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить файлы
 

Стоимость разработки на 1С-Битрикс:

Индивидуальная разработка магазина

от 500 000 руб. от 5-ти недель

Разработка магазина на 1С-Битрикс с нуля. Дизайн, сборка и оптимизация производительности под конкретный проект и требования. Реализация любого функционала без ограничений готовых решений.

Запуск сайта на готовом решении

от 150 000 руб. от 7-ми дней

Вариант для тех, кто не хочет тратить много средств на индивидуальный проект, и не имеет серьезных требований к сайту. Магазин, быстро запускается на базе одного из 200-та готовых решений.

Мобильное приложение

от 400 000 руб. от 5-ти недель

Разработка кроссплатформенного мобильного приложения, которое не уступает нативным решениям как в производительности, так и пользовательском опыте. Публикуется в AppStore, GooglePlay и RuStore

Сайт компании

от 300 000 руб. от 2-х недель

Корпоративный сайт с информационными разделами, каталогом товаров или услуг. Включает формы обратной связи карточек каталога, любое количество статичных и динамичных разделов.

Инфоресурс

от 300 000 руб. от 4-х недель

Информационный ресурс любой сложности. Сайт для СМИ, городской портал или многопользовательская доска объявлений. Внутренние форумы, блоги- по необходимости.

3D‑моделирование, визуализация

от 25 000 руб. от 3-х дней

По вашим фото, чертежам или описанию создадим 3D‑модели и отрендерим набор изображений для каталога товаров: общий вид, крупные планы и технические ракурсы или 360°‑обзор товара.