Блог Горошко Андрея 1C-Битрикс Bitrix как убрать заказы из очереди на выгрузку с сайта в 1С

Bitrix как убрать заказы из очереди на выгрузку с сайта в 1С

Средний рейтинг
5 из 5 звезд. 1 голосов.

В данной статье мы рассмотрим, как можно убрать заказы из очереди на выгрузку с сайта bitrix в 1С.

Флаг EXTERNAL_ORDER используется для обозначения заказов, которые были созданы в 1С. Если этот флаг установлен, то выгрузка заказа в 1С не требуется.

Флаг UPDATED_1C устанавливается в “Y” после успешного импорта заказа из 1С на сайт. Заказы с этим флагом не участвуют в дальнейших экспортах до тех пор, пока они не будут обновлены на сайте. При обновлении заказа на сайте, UPDATED_1C устанавливается обратно в “N”.

Для этого мы будем использовать следующий код:

$orderList = \Bitrix\Sale\Order::getList([
    'filter' => [], // здесь вы можете добавить фильтры, если нужно
]);

while ($orderData = $orderList->fetch())
{
    $order = \Bitrix\Sale\Order::load($orderData['ID']);
    $order->setField('EXTERNAL_ORDER', 'Y'); // изменить любой параметр
    $order->setField('UPDATED_1C', 'Y'); // изменить любой параметр
    $order->save();
}

Объяснение кода

  1. $orderList = \Bitrix\Sale\Order::getList(['filter' => []]); — Эта строка кода получает список всех заказов. Вы можете добавить фильтры в массив ‘filter’, если нужно выбрать определенные заказы.
  2. while ($orderData = $orderList->fetch()) — Этот цикл проходит по всем заказам, полученным на предыдущем шаге.
  3. $order = \Bitrix\Sale\Order::load($orderData['ID']); — Здесь мы загружаем данные конкретного заказа по его ID.
  4. $order->setField('EXTERNAL_ORDER', 'Y'); и $order->setField('UPDATED_1C', 'Y'); — Эти строки кода изменяют параметры заказа. В данном случае, мы устанавливаем ‘EXTERNAL_ORDER’ и ‘UPDATED_1C’ в ‘Y’.
  5. $order->save(); — Эта строка сохраняет изменения, сделанные в заказе.

Таким образом, данный код позволяет убрать заказы из очереди на выгрузку, изменяя их статус. Это может быть полезно, если вы хотите контролировать процесс выгрузки заказов.

Мой рейтинг:

Добавить комментарий

Related Post

Основы работы с компонентами Битрикс: Структура, $arParams, $arResult и template.phpОсновы работы с компонентами Битрикс: Структура, $arParams, $arResult и template.php

Средний рейтинг 5 из 5 звезд. 1 голосов. Компоненты — это строительные блоки, из которых состоит любой сайт на 1С-Битрикс. Это самодостаточные программные модули, которые решают конкретную задачу: выводят новости,

Использование Bitrix\Main\ORM\Query\Query для построения сложных запросов к Highload-блокамИспользование Bitrix\Main\ORM\Query\Query для построения сложных запросов к Highload-блокам

Средний рейтинг Еще нет оценок Highload-блоки в Битрикс — это эффективный инструмент для работы с крупными объемами данных, значительно превосходящий стандартные инфоблоки по производительности, особенно в условиях высоких нагрузок. Они

Гибкая выборка в D7 ORM: Мастер-класс по классу QueryГибкая выборка в D7 ORM: Мастер-класс по классу Query

Средний рейтинг Еще нет оценок Хотя статический метод ::getList() удобен для простых выборок, его возможности ограничены, когда условия запроса нужно формировать динамически. Для таких задач в D7 ORM существует специальный класс-конструктор — \Bitrix\Main\Entity\Query.