События после сохранения сущности
События
Событие | Описание и параметры | Полные названия событий | ||||||
---|---|---|---|---|---|---|---|---|
On<наследник>EntitySaved | Происходит непосредственно после сохранения сущности системы заказов.
Параметры
|
OnSaleOrderEntitySaved
OnSaleBasketItemEntitySaved
OnSaleShipmentEntitySaved
OnSaleShipmentItemEntitySaved
OnSalePaymentEntitySaved
OnSalePropertyValueEntitySaved
| ||||||
где <наследник> – это один из наследников класса \Bitrix\Sale\Internals\Entity :
|
Примеры
//рассмотрим пример использования события OnSalePaymentEntitySaved: \Bitrix\Main\EventManager::getInstance()->addEventHandler( 'sale', 'OnSalePaymentEntitySaved', 'myFunction' ); /* В обработчике определяется, что, если оплата выполняется через внутренний счет, то выполняются какие-то свои действия при сохранении сущности: */ function myFunction(\Bitrix\Main\Event $event) { /** @var Payment $payment */ $payment = $event->getParameter("ENTITY"); $oldValues = $event->getParameter("VALUES"); if ($payment->isInner()) { // это внутренний счет // . . . } }
//пример по выполнению некоторых действий при изменении статуса заказа \Bitrix\Main\EventManager::getInstance()->addEventHandler( 'sale', 'OnSaleOrderEntitySaved', 'OnStatusChange' ); function OnStatusChange(Bitrix\Main\Event $event) { $arEmailFields = array(); $order = $event->getParameter("ENTITY"); $oldValues = $event->getParameter("VALUES"); $arOrderVals = $order->getFields()->getValues(); if($arOrderVals['STATUS_ID'] == 'F' && isset($oldValues['STATUS_ID']) && $oldValues['STATUS_ID'] != 'F') // статус изменился { // Выполните необходимые вам действия // ... } }
© «Битрикс», 2001-2024, «1С-Битрикс», 2024