Текущий пользователь

1. liveAp4u 14.02.12 07:20 Сейчас в теме
Добрый день.
Что-то меня переклинило, туплю.
Необходимо заполнить реквизит значением из справочника Пользователи текущим пользователем (который осуществляет запись в документе). Тип реквизита - справочник Пользователи. Типа поле - ответственный.

ВторойОтветсвенный = ПользователиИнформационнойБазы.ТекущийПользователь();

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

Пробовал заполнить просто строку- всё отлично, заполняет наименование пользователя.
Пробовал НайтиПоНаименованию в пользователи. Опять же, в строку нормально, если тип - справочник пользователи, ни в какую.

Конфигурация 1С БП.
Designer1C; +1 Ответить
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. spartak85 14.02.12 07:25 Сейчас в теме
&НаСервере
Функция ПолучитьТекущегоПользователя () Экспорт
	п = ПользователиИнформационнойБазы.ТекущийПользователь();
	польз =  Справочники.Пользователи.НайтиПоНаименованию(п.Имя);
	Если польз = Справочники.Пользователи.ПустаяСсылка() Тогда
		Возврат -1;
	Иначе
		Возврат Справочники.Пользователи.НайтиПоНаименованию(п.Имя);
	КонецЕсли;
КонецФункции
Показать
Bespechnii_kot; Greek26rusa; degepie; t278; +4 Ответить
7. rhtr 90 22.10.15 12:57 Сейчас в теме
(2) Спартак,

Для типовых лучше так.

&НаСервере
Функция ПолучитьТекущегоПользователя() Экспорт

ИдПользователя = ПользователиИнформационнойБазы.ТекущийПользователь().УникальныйИдентификатор;

польз = Справочники.Пользователи.НайтиПоРеквизиту("ИдентификаторПользователяИБ",ИдПользователя);
Если польз = Справочники.Пользователи.ПустаяСсылка() Тогда
Возврат Неопределено;
КонецЕсли;

Возврат польз;

КонецФункции
Bespechnii_kot; tech96; KirinaAS; +3 Ответить
3. shuhard 14.02.12 07:25 Сейчас в теме
(0) ты перепутал пользователя со стороны предприятия с пользователем информационной базы, а это разные справочники

Возвращаемое значение:

Тип: ПользовательИнформационнойБазы. Если текущий пользователь не задан, то в качестве текущего пользователя будет возвращен пользователь с пустым именем и идентификатором объекта, полученного методом НайтиПоИмени, если в параметре указано пустое имя.
4. liveAp4u 14.02.12 08:07 Сейчас в теме
Ааарр. Сервер, точно.
Спасибо большое.
5. 1cUserAndrew 63 14.02.12 08:37 Сейчас в теме
(4)
Ааарр. Сервер, точно.

Так БП ж на обычном приложении...
6. hunter39 26 14.02.12 08:59 Сейчас в теме
В БП можно просто ПараметрыСеанса.ТекущийПользователь
8. Zayd 10.05.16 13:40 Сейчас в теме
по моему проще:
ПользователиКлиентСервер.ТекущийПользователь()
Designer1C; dialogsoft; ekaterina.vts; alexandrmishinn; GetNight; +5 Ответить
9. dock 44 23.05.17 10:48 Сейчас в теме
изменения в БСП :)
теперь :
Пользователи.ТекущийПользователь();
10. NeviD 23.05.17 12:19 Сейчас в теме
(9) Нет, к общему модулю Пользователи доступ только с сервера, так что в (8) все правильно - так более универсально.
Designer1C; +1 Ответить
11. DrBlack 23 23.05.17 12:22 Сейчас в теме
(10) а БП разве не на стандартных подсистемах? УПП:
глЗначениеПеременной("глТекущийПользователь")
12. Dem1urg 387 21.05.18 15:00 Сейчас в теме
(11) В текущих версиях редакции 3.0 уже нет
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот