Заполняем собственные имя, представление и учебный e-mail. Проверяем, что черновик не появился в списке и не получил постоянный UUID.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Используйте отдельную учебную базу с именем конфигурации Учебная85. Работайте под учебным администратором, которому доступно чтение и создание описаний пользователей.
Создайте серверный общий модуль УчебныеЗадачи. Фрагмент вставьте в тело своей экспортной процедуры и запустите учебной командой.
СоздатьПользователя создаёт описание, не запись списка пользователей. В коде намеренно отсутствуют Записать и Удалить: права, пароли и аутентификация существующих людей не меняются.
Не добавляйте Записать к этим черновикам: для реального создания учётной записи нужны отдельная проверка ролей, способов входа и действующих политик.
УчебноеИмя = "Черновик_" + Строка(Новый УникальныйИдентификатор);
Если ПользователиИнформационнойБазы.НайтиПоИмени(УчебноеИмя) <> Неопределено Тогда
ВызватьИсключение "Учебное имя уже занято: черновик не создаётся";
КонецЕсли;
Черновик = ПользователиИнформационнойБазы.СоздатьПользователя();
Черновик.Имя = УчебноеИмя;
Черновик.ПолноеИмя = "Учебный незаписанный пользователь";
Черновик.ПоказыватьВСпискеВыбора = Ложь;
Черновик.АутентификацияСтандартная = Ложь;
Черновик.АутентификацияОС = Ложь;
Черновик.АдресЭлектроннойПочты = "student@example.invalid";
Сообщить(Черновик.Имя = УчебноеИмя);
Сообщить(Черновик.ПолноеИмя = "Учебный незаписанный пользователь");
Сообщить(Черновик.АдресЭлектроннойПочты = "student@example.invalid");
Сообщить(Черновик.ПоказыватьВСпискеВыбора = Ложь);
Сообщить(ПользователиИнформационнойБазы.НайтиПоИмени(УчебноеИмя) = Неопределено);
Сообщить(Черновик.УникальныйИдентификатор = Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000"));Разбор по шагам
Имя создаём с новым UUID, но это строковое имя, не UUID записанного пользователя.
ПолноеИмя — представление человека, Имя — идентификатор выбора пользователя. Эти поля не обязаны совпадать.
Учебный адрес example.invalid никуда не отправляется; свойство адреса не включает почтовую аутентификацию.
Постоянный УникальныйИдентификатор устанавливается после записи нового пользователя; у незаписанного описания он нулевой.
Как проверить результат
Четыре проверки основных полей Истина; сообщения адресованы только учебным данным.
Две последние проверки Истина: имя не появилось в списке, UUID черновика остался нулевым.
Ожидаемый результат
Заполнено описание, но учётная запись не создана.
На что обратить внимание
ПоказыватьВСпискеВыбора=Ложь не является запретом входа уже существующего пользователя.
Случайный UUID в строке имени не должен подменять постоянный UUID учётной записи.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.