Альтернативное решение
[CODE]\Bitrix\Main\EventManager::getInstance()->addEventHandler("sale", "OnSaleOrderBeforeSaved", array("SiteEventHandler", "OnSaleOrderBeforeSavedHandler"));
class SiteEventHandler
{
static function OnSaleOrderBeforeSavedHandler($event)
{
$userZip = $_POST['ORDER_PROP_4']; // Индекс, который ввёл пользователь
$order = $event->getParameter("ENTITY");
if ($_POST['ORDER_PROP_4']) {
$propertyCollection = $order->getPropertyCollection();
foreach ($propertyCollection as $prop) {
if ($prop->getField('CODE') == 'ZIP') {
$prop->setField('VALUE', $userZip);
break;
}
}
}
}
}
[/CODE]
[CODE]\Bitrix\Main\EventManager::getInstance()->addEventHandler("sale", "OnSaleOrderBeforeSaved", array("SiteEventHandler", "OnSaleOrderBeforeSavedHandler"));
class SiteEventHandler
{
static function OnSaleOrderBeforeSavedHandler($event)
{
$userZip = $_POST['ORDER_PROP_4']; // Индекс, который ввёл пользователь
$order = $event->getParameter("ENTITY");
if ($_POST['ORDER_PROP_4']) {
$propertyCollection = $order->getPropertyCollection();
foreach ($propertyCollection as $prop) {
if ($prop->getField('CODE') == 'ZIP') {
$prop->setField('VALUE', $userZip);
break;
}
}
}
}
}
[/CODE]