208 похожих чатов

Добрый день Как можно связать пользовательские поля профиля и поля заказа? Поля

профиля обязательные ,соответственно сейчас при создании заказа неавторизованным пользователем выдается ошибка "такое-то поле не заполнено". Например ,для юр. лица "Контактное лицо".
Если назвать поле заказа как UF_FIELD_CODE - как пользовательское поле, это не решит проблему?

15 ответов

24 просмотра

Разные типы полей и между собой ника не связаны. Даже если обзывать одинаково.

Nadezhda-Kurganova Автор вопроса
Vladislav Umrikhin
Разные типы полей и между собой ника не связаны. Д...

как тогда в регистрацию при оформлении заказа передать поля из заказа? на какое-то событие повесить "заполнение" данных по UF_ полям профиля?

Поле от обязательств ника не избавить? Зачем оно было в профиле помечено как обязательное? Это поле есть в заказе выходит? Если снять обязательность то можно прокинуть из заказа через события

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

Nadezhda-Kurganova Автор вопроса
Vladislav Umrikhin
Поле от обязательств ника не избавить? Зачем оно б...

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

Nadezhda Kurganova
нет. есть специфические 3 пользовательских поля с ...

то есть эти поля не светятся если человек уже зарегестрирован?

Nadezhda Kurganova
"светятся"

Но их не должно быть при повторном поидее? Но суть в том, что можно пробросить поля из заказа в профиль через событие OnSaleOrderSaved

Nadezhda-Kurganova Автор вопроса
Vladislav Umrikhin
Но их не должно быть при повторном поидее? Но сут...

должны быть. теоретически при оформлении заказа человек может их изменить. как и все остальные - по адресу ,контактным данным

Nadezhda Kurganova
"светятся"

заказ создается после регистрации и там уже есть ID пользователя по которому можно его обновить. Но придется снять обязательность

Nadezhda-Kurganova Автор вопроса
Vladislav Umrikhin
заказ создается после регистрации и там уже есть ...

и допиливать стандартную регистрацию ,чтобы снятые с обязательности поля всё равно считались обязательными?

Nadezhda Kurganova
должны быть. теоретически при оформлении заказа че...

\Bitrix\Main\EventManager::getInstance()->addEventHandler( 'sale', 'OnSaleOrderBeforeSaved', '\Partner\MyClass::onSaleOrderBeforeSaved' ); class MyClass { function onSaleOrderBeforeSaved(\Bitrix\Main\Event $event) { $order = $event->getParameter("ENTITY"); if($order->getId()) return; Тут что то делать с полями //https://mrcappuccino.ru/blog/post/work-with-order-bitrix-d7 Здесь методы для работы с заказом, // Получить значение свойства по ID: // $somePropValue = $propertyCollection->getItemByOrderPropertyId($orderPropertyId); //После получения присвоить пользователю // $order->getUserId(); Id пользователя } }

Nadezhda Kurganova
и допиливать стандартную регистрацию ,чтобы снятые...

так там вроде через REQUIRED_FIELDS можно передать любое поле как обязательное даже если оно не обязательное по своей сути

Nadezhda Kurganova
и допиливать стандартную регистрацию ,чтобы снятые...

https://dev.1c-bitrix.ru/user_help/components/sluzhebnie/user/main_register.php Поля, обязательные для заполнения REQUIRED_FIELDS Указываются обязательные для заполнения поля. Список допустимых значений такой же, что и в предыдущем пункте.

Nadezhda-Kurganova Автор вопроса

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта