Метод CUser::Update не обновляет LOGIN пользователя.

RSS
Метод CUser::Update не обновляет LOGIN пользователя., Если хотите назначить LOGIN пользователя из его EMAIL, CUser::Update - не хочет этого делать
 
Задача: Всем старым пользователям сайта нужно заменить поле LOGIN из EMAIL пользователя.
Почему-то метод  CUser::Update не хочет этого делать, если указать только обновление поля LOGIN.

Пример не работоспособного скрипта: проходим по всем пользователям с помощью метода
CUser::GetList и в цикле, с помощью CUser::Update пытаемся перезаписать логин из электронной почты пользователя.
Код
$USER_UPD = new CUser;
$rsUsers = CUser::GetList(
    ($by = "ID"),
    ($order = "desc"),
    false
);
while ($arUser = $rsUsers->Fetch()) {
    $fields = array(
        "LOGIN" => $arUser['EMAIL']
    );
    $USER_UPD->Update($arUser['ID'], $fields);
}

Почему это не срабатывает разобраться не удалось (в ядро особо не лазил, что бы разобраться, если кто-то знает напишите)

Пример работоспособного кода: просто, добавил перезапись EMAIL поля из самого себя и все сработало:
Код
$USER_UPD = new CUser;
$rsUsers = CUser::GetList(
    ($by = "ID"),
    ($order = "desc"),
    false
);
while ($arUser = $rsUsers->Fetch()) {
    $fields = array(
        "EMAIL" => $arUser['EMAIL'],
        "LOGIN" => $arUser['EMAIL']
    );
    $USER_UPD->Update($arUser['ID'], $fields);
}
Изменено: Михаил Базаров - 05.04.2023 14:52:12
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
 
Поблагодарить и поддержать:
Или подписаться на boosty канал: Видео на Ютубе