Skip to content
лого - блог 1с программиста

Блог 1С программиста

Наработки, заметки и другая информация по 1С

  • Главная
  • Типовые конфигурации
    • ЗУП 3.1
      • Разработка
        • Обработки
        • Отчеты
        • Печатные формы
        • Расширения
      • Инструкции
      • Ответы техподдержки 1С
      • Общие вопросы
    • ДО 2.1
    • УХ 3.2
    • УПП 1.3
  • Интеграции и обмены
  • Шаблоны и заготовки
    • Типовые приемы
    • Отчеты
    • Обработки
    • Печатные формы
    • Расширения
  • Платформа 1С
  • Разработки
    • Контакты
  • Toggle search form

Программное создание и изменение пользователя 1С

Posted on 25 января 23 г.22 августа 24 г. By Алексей Комментариев к записи Программное создание и изменение пользователя 1С нет

Содержание:

  • Создание нового пользователя
    • Способ 1 — используя функционал БСП
    • Способ 2 — не используя функционал БСП
    • Способ 3 — используя функционал конфигурации ЗУП 3.1
  • Изменение существующего пользователя

В типовом исполнении «Пользователи информационной базы» (которых можно посмотреть в конфигураторе) связаны со справочниками «Пользователи» и «Внешние пользователи» через реквизиты «ИдентификаторПользователяИБ» и «СвойстваПользователяИБ» данных справочников. Соответственно «ПользовательИБ» и «Пользователь» работают в паре и при создании и изменении нужно учитывать эту связь.

Создание нового пользователя
Способ 1 — используя функционал БСП

Создается элемент справочника «Пользователи». В его «Дополнительных свойствах» описываются данные «Пользователя ИБ» и при записи элемента «Пользователь» по указанному описанию автоматически создается и привязывается «Пользователь ИБ». Далее можно включить пользователя в необходимую группу доступа.

1С (Код)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
НовыйПользователь = Справочники.Пользователи.СоздатьЭлемент();
НовыйПользователь.Наименование = "ИвановИИ";
НовыйПользователь.ФизическоеЛицо = Справочники.ФизическиеЛица.НайтиПоНаименованию("Иванов Иван Иванович");
//НовыйПользователь.Недействителен = Ложь;
//НовыйПользователь.Служебный = Ложь;
ОписаниеПользователяИБ = Пользователи.НовоеОписаниеПользователяИБ();
ОписаниеПользователяИБ.Имя = "ИвановИИ";
ОписаниеПользователяИБ.ПолноеИмя = "Иванов Иван Иванович";
ОписаниеПользователяИБ.АутентификацияСтандартная = Истина;
ОписаниеПользователяИБ.ПоказыватьВСпискеВыбора = Истина;
ОписаниеПользователяИБ.Пароль = "1234"; //Пользователи.СоздатьПароль(); //не меньше 4-х символов
ОписаниеПользователяИБ.Вставить("Действие", "Записать");
НовыйПользователь.ДополнительныеСвойства.Вставить("ОписаниеПользователяИБ", ОписаниеПользователяИБ);
НовыйПользователь.Записать();
// Включение пользователя в группу доступа
ГруппаДоступаНовогоПользователя = Справочники.ГруппыДоступа.НайтиПоНаименованию("Бухгалтер");
ГруппаДоступаНовогоПользователяОбъект = ГруппаДоступаНовогоПользователя.ПолучитьОбъект();
ГруппаДоступаНовогоПользователяОбъект.Пользователи.Добавить().Пользователь = НовыйПользователь;
ГруппаДоступаНовогоПользователяОбъект.Записать();
 

Способ 2 — не используя функционал БСП

Создается «Пользователь ИБ», затем создается элемент справочника «Пользователи» и осуществляется привязка.

1С (Код)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
ПользовательИБ = ПользователиИнформационнойБазы.СоздатьПользователя();
ПользовательИБ.Имя = "ИвановИИ";
ПользовательИБ.ПолноеИмя = "Иванов Иван Иванович";
ПользовательИБ.АутентификацияОС = Ложь;
ПользовательИБ.АутентификацияOpenID = Ложь;
ПользовательИБ.АутентификацияСтандартная = Истина;
ПользовательИБ.ЗапрещеноИзменятьПароль = Ложь;
ПользовательИБ.ПоказыватьВСпискеВыбора = Истина;
ПользовательИБ.Пароль ="";  
//ПользовательИБ.ОсновнойИнтерфейс = Метаданные.Интерфейсы[""];    
//ПользовательИБ.Язык = Метаданные.Языки[""];
//ПользовательИБ.Роли.Добавить(Метаданные.Роли[""]);
//ПользовательИБ.РежимЗапуска = РежимыЗапуска[""];
ПользовательИБ.Записать();
НовыйПользователь = Справочники.Пользователи.СоздатьЭлемент();
НовыйПользователь.Наименование = "ИвановИИ";
НовыйПользователь.ОбменДанными.Загрузка = Истина;
НовыйПользователь.ИдентификаторПользователяСервиса = Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000");
НовыйПользователь.ИдентификаторПользователяИБ = ПользовательИБ.УникальныйИдентификатор;
НовыйПользователь.Недействителен = Ложь;
НовыйПользователь.Подготовлен = Истина;
НовыйПользователь.Записать();
 

Способ 3 — используя функционал конфигурации ЗУП 3.1

В ЗУП 3.1 есть стандартная обработка, которая называется «СозданиеПользователейФизическихЛиц» (синоним — Создание пользователей для сотрудников). Данная обработка использует функцию СамообслуживаниеСотрудников.НовыйПользователь(), ниже приведен пример создания нового пользователя на основе данной функции:

1С (Код)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
ФизическоеЛицо = Справочники.ФизическиеЛица.НайтиПоНаименованию("Иванов Иван Иванович");
 
НастройкиПользователей = СамообслуживаниеСотрудниковКлиентСервер.ОписаниеНастроекСозданияПользователей();
НастройкиПользователей.АутентификацияСтандартная = Истина;
НастройкиПользователей.ПоказыватьВСпискеВыбора = Истина;  
ДанныеСотрудника = Новый Структура("Пользователь, ФизическоеЛицо, ПользовательОС, Фамилия, Имя, Отчество", Справочники.Пользователи.ПустаяСсылка(), ФизическоеЛицо, "");
ЗаполнитьЗначенияСвойств(ДанныеСотрудника, ФизическиеЛицаКлиентСервер.ЧастиИмени(ФизическоеЛицо.Наименование));
НовыйПользователь = СамообслуживаниеСотрудников.НовыйПользователь(ДанныеСотрудника, НастройкиПользователей, НастройкиСообщений);
// Присвоение группы доступа
ГруппаДоступаНовогоПользователя = Справочники.ГруппыДоступа.НайтиПоНаименованию("Сотрудник");
ГруппаДоступаНовогоПользователяОбъект = ГруппаДоступаНовогоПользователя.ПолучитьОбъект();
ГруппаДоступаНовогоПользователяОбъект.Пользователи.Добавить().Пользователь = НовыйПользователь;
ГруппаДоступаНовогоПользователяОбъект.Записать();

Изменение существующего пользователя

Пример изменения уже привязанного «Пользователя ИБ»

1С (Код)
1
2
3
4
5
6
7
НайденыйПользовательИБ = ПользователиИнформационнойБазы.НайтиПоИмени("ИвановИИ");
Если НайденыйПользовательИБ <> Неопределено Тогда
НайденыйПользовательИБ.ПоказыватьВСпискеВыбора = Истина;
НайденыйПользовательИБ.Записать();
КонецЕсли;

Рекомендации

  • Как включить РМК в УПП 1.3
  • Шпаргалка по запросам 1С
  • Изменение текста XML в "Хранилище Значений"
Типовые приемы, Шаблоны и заготовки Tags:пользователи

Навигация по записям

Previous Post: Почему суммы начисленные по мобилизованным попадают в колонку 10 отчета П-4
Next Post: Обработка по поиску некорректных адресов сотрудников

Добавить комментарий Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

ДзенTelegram

Разработки

  • Печатная форма "Расходный кассовый ордер" для ЗУП 3.1 Печатная форма "Расходный кассовый ордер" ЗУП 3.1 650,00 ₽
  • Отчет "План-факт отпусков сотрудников в виде диаграммы Ганта Отчет "План-факт по отпускам сотрудников" ЗУП 3.1 650,00 ₽
  • Приказ об отмене трудового договора (рис 1) Печатная форма "Отмена приема на работу" ЗУП 3.1 650,00 ₽
  • Обработка “Выплата сотруднику через банк” ЗУП 3.1 Обработка “Выплата сотруднику через банк” ЗУП 3.1 0,00 ₽
  • Тестирование API Яндекс GPT Обработка "Работа с API YandexGPT" 650,00 ₽

MDM web-сервис XML БСП ЕФС-1 ИИ КД 2.0 НДФЛ СЗВ-СТАЖ СЗВ-ТД СКД СТД-Р СФР СЭДО ФСС ФСС НС больничные листы взносы вычеты длительная операция запрос интерфейс кадровая история кадровые данные кадровые переводы легкий труд мастер-данных обмен данными общий модуль отбор отпуска печать без проверки печать с диалогом пользователи представление прием на работу резервы отпусков сверхурочные синхронизация ЗУП и БП средний заработок табель таблица периодов табличный документ фотография штатное расписание

Яндекс.Метрика

© 2022-2026 myblog-1c.ru

Пользовательское соглашение

Контакты