Новый заказ получение артикула товара

Новый заказ получение артикула товара

Просмотров: 1301
Получение артикулов товаров в новом заказе. Задача по сути заключается в добавлении в файл init.php обработчика события OnOrderNewSendEmail (для модификации данных перед отправкой письма о новом заказе), получение результатов выборки записей из корзины заказа, далее получаем товары заказа из которых получаем свойства товара, и в итоге заветный артикул.
Скачать пример обработчика

Следует обратить внимание, что ключ $arFields["ARTICLES"] и будет нашим значением, которое уйдет в почтовый шаблон. Проверяем результат отработки почтового события:

артикул в почтовом шаблоне битрикс.png

Код обработчика для добавления артикулов в почтовый шаблон битрикс (код актуален для стандартного демо магазина битрикс)


//Констатнта инфоблока торговых предложений

define('SKU_ID_S1', 3);

//-- Добавление обработчика события

AddEventHandler("sale", "OnOrderNewSendEmail", "bxModifySaleMails");

//-- Собственно обработчик события

function bxModifySaleMails($orderID, &$eventName, &$arFields)

{

  $arOrder = CSaleOrder::GetByID($orderID);

  //результат выборки записей из корзины заказа

  $dbBasketItems = CSaleBasket::GetList(array(), array("ORDER_ID" => $orderID), false, false, array());

//получаем товары заказа

while ($arItems = $dbBasketItems->Fetch()) {

$macciw[] = $arItems['PRODUCT_ID'];

}

//получаем свойства товара

$array_product= array();

 foreach ($macciw as $macciw_id) {

$res_product = CIBlockElement::GetProperty(SKU_ID_S1, $macciw_id, array("sort" => "asc"), Array("CODE"=>"ARTNUMBER"));

     while ($ob_product = $res_product->GetNext()) {

$one_product =$ob_product['VALUE'];

}

$array_product[]=$one_product;

 }

//объединяем все артикулы в строку

$string_articles = implode(",", $array_product);

  //-- добавляем новые поля в массив результатов

$arFields["ARTICLES"] = $string_articles;

}


Ещё статьи:

27.11.2024 Ошибка при 1с обмене 502 Bad Gateway
Произошла ошибка на стороне сервера. Получен неизвестный статус импорта.
Обмен не выполнен. Ответ сервера: 502 Bad Gateway ID: 540

20.11.2024 Задача для РНР, разработать Футбольный календарь
На первый взгляд задача кажется не сложной, но это не так. Нужно учитывать, что она займёт время, многие не успевают сделать в сроки. ID: 538

20.11.2024 Нюансы обмена доставок один случай
Описание проблемы.
В сторону 1С синхронизацию доставок она налажена, информация записывается (проставляется тип доставки, зона доставки) ID: 537

© 2015-2025 Web админ
Связаться по WhatsApp