Получить текущего пользователя 1с ут 11
Область применения: управляемое приложение, мобильное приложение, обычное приложение.
1.1. Параметры сеанса предназначены для хранения значений определенных типов для каждого клиентского сеанса на время работы этого сеанса. Инициализацию параметров сеанса следует выполнять в модуле сеанса (см. ниже раздел 2.1), а их значения рекомендуется использовать в запросах и условиях ограничения доступа к данным для текущего сеанса.
Примеры параметров сеанса:
- ТекущийПроект – тип СправочникСсылка.Проекты ;
- ОбменДаннымиВключен – тип Булево ;
- РабочееМестоКлиента – тип СправочникСсылка.РабочиеМеста .
Параметры сеанса доступны из встроенного языка 1С:Предприятия , например:
В этом случае, для установки или получения значения параметра сеанса текущий пользователь должен быть наделен соответствующим правом.
Также они могут использоваться в текстах ограничений доступа, например:
ГДЕ Документ.Автор = &ТекущийПользователь
В последнем случае для получения значения параметра сеанса наличия у текущего пользователя соответствующего права не требуется.
1.2. Не рекомендуется использовать параметры сеанса для хранения значений, используемых исключительно в клиентской логике. Поскольку в клиент-серверном варианте 1С:Предприятия параметры сеанса хранятся на сервере, то любое их считывание или изменение в процессе работы на клиенте потребует дополнительного серверного вызова и увеличит объем передаваемых данных с клиента на сервер и обратно.
В таких случаях следует использовать глобальные переменные модуля управляемого приложения (и обычного приложения – для режима обычного приложения, соответственно).
1.3. Также не рекомендуется использовать параметры сеанса для кеширования вычисленных значений, которые многократно используются в серверной бизнес-логике. В таких случаях следует определять функцию в серверном общем модуле с повторным использованием возвращаемых значений. Исключение составляют случаи, когда время вычисления результата функции модуля с повторным использованием возвращаемых значений соизмеримо с периодом сброса платформенного кеша.
Установка параметров сеанса "по требованию"
2.1. Не следует производить инициализацию параметров сеанса при запуске программы, так как:
- не все параметры сеанса запрашиваются из кода конфигурации при запуске программы.
- при работе программы возможно намеренное обнуление значений параметров сеанса из кода на встроенном языке.
Правильным способом установки значений параметров сеанса является установка значений "по требованию" в обработчике УстановкаПараметровСеанса модуля сеанса. Т.е. параметры сеанса должны быть инициализированы только в тот момент, когда к ним происходит первое обращение, как к неустановленным.
Пример установки параметров сеанса "по требованию":
Если ИменаПараметровСеанса = Неопределено Тогда
// Раздел установки параметров сеанса при начале сеанса (ИменаПараметровСеанса = Неопределено)
// Выполняется установка параметров сеанса, которые можно инициализировать
// при начале работы системы
Иначе
// Установка параметров сеанса "по требованию"
// Параметры сеанса, инициализация которых требует обращения к одним и тем же данным
// следует инициализировать сразу группой. Для того, чтобы избежать их повторной инициализации,
// имена уже установленных параметров сеанса сохраняются в массиве УстановленныеПараметры
УстановленныеПараметры = Новый Массив;
Для Каждого ИмяПараметра Из ИменаПараметровСеанса Цикл
УстановитьЗначениеПараметраСеанса(ИмяПараметра, УстановленныеПараметры);
КонецЦикла;
// Установить значения параметров сеанса и возвратить имена установленных параметров сеанса
// в параметре УстановленныеПараметры.
//
// Параметры
// ИмяПараметра – Строка – имя параметра сеанса, который требуется установить (проинициализировать).
// УстановленныеПараметры – Массив – массив, в который добавляются имена
// установленных (проинициализированных) параметров.
//
Процедура УстановитьЗначениеПараметраСеанса(Знач ИмяПараметра, УстановленныеПараметры)
// Если в данном вызове УстановкаПараметровСеанса параметр ИмяПараметра уже
// был установлен – возврат.
Если УстановленныеПараметры.Найти(ИмяПараметра) <> Неопределено Тогда
Возврат;
КонецЕсли;
Если ИмяПараметра = "ТекущийПользователь" Тогда
ПараметрыСеанса.ТекущийПользователь = ;
ПараметрыСеанса. = ;
УстановленныеПараметры.Добавить(ИмяПараметра);
УстановленныеПараметры.Добавить(" ");
КонецЕсли;
Ребят, как можно получить пользователя информационной базы 1С? Это же не справочник в конфигурации. У меня есть только Пользователь, подскажите как решить такую проблему!
У элемента справочника Пользователи есть идентификатор пользователя ИБ, по нему и можно получить пользователя информационной базы.
Параметры сеансы 1С 8.3 — переменная, в которой хранится значение нужного параметра на время сеанса пользователя. По сути, это некая глобальная переменная, привязанная к сеансу текущего пользователя.
Использование параметров сеанса в 1С
Параметры сеанса задаются только программно, универсального интерфейса для установки параметров сеанса в системе нет. Обычно они задаются при старте системы, в «Модуле сеанса». Если параметр не определен, во время обращения к нему будет вызвана ошибка.
Пример установки параметра сеанса 1С
Рассмотрим типичный пример использования параметров сеанса — установку текущего пользователя. Пример я возьму из подготовки к специалисту по платформе.
В древе метаданных создадим новый параметр сеанса — ТекущийПользователь, назначим ему тип — СправочникСсылка.ФизическиеЛица:
Получите 267 видеоуроков по 1С бесплатно:
В модуле сеанса создадим процедуру, в которой будет определяться текущий параметр сеанса:
После этого в любом месте конфигурации Вы можете узнать, кто же у нас текущий пользователь, просто используя конструкцию «ПараметрыСеанса.ТекущийПользователь».
Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):
Юзаю УТ11.2 наверняка в общих модулях есть функция которая возвращает ссылку на текущего пользователя.
Подскажите пожалуйста, сам не смог найти.
Xomka; krovohlebka; user1619761; rabota.v8.1c; criptid; 3man001; user841691; Мах; Gadzhalik; muzipov; InJey; DoctorRoot; user1456656; Новичок1с; FolserZ; LomayaZakat; 778402; a__step; Slypower; Danila7Zz; dimisa; sitec; user639498_dar8313; user1288161; Jejer; Dmitri93; BigRig; user1188623; Jeka44; user1038092; Ariva; Jorje234; FilatovRA; YellowAndBlue; user1042850; JohnConnor; Fator26; Olga12; baracuda; r.moschenskiy; + 40 – Ответить
(1) а как искали-то )
почти в каждом документе в обработке заполнения есть код по начальному заполнению поля Ответственный или Автор
(8) baracuda, ярко выраженный пример в РМК. При кратковременной замене на пользователя с расширенными правами, к примеру, для возврата чека.
(11) spacecraft, и в самом деле. Спасибо за пояснение. Но в принципе при инциализиции РМК я могу смело заполнять продавца текущим пользователем.
Параметры сеанса предназначены для хранения значений определенных типов для каждого клиентского сеанса на время работы этого сеанса. Инициализацию параметров сеанса следует выполнять в модуле сеанса, а их значения рекомендуется использовать в запросах и условиях ограничения доступа к данным для текущего сеанса.
Примеры параметров сеанса:
ТекущийПользователь – тип СправочникСсылка.Пользователи
ОбменДаннымиВключен – тип Булево
РабочееМестоКлиента – тип СправочникСсылка.РабочиеМеста
Параметры сеанса доступны из встроенного языка 1С:Предприятия, например:
Это все устарело правильно использовать:
Клиент - ПользователиКлиент.ТекущийПользователь()
Сервер - Пользователи.ТекущийПользователь()
Hogyoku; VesnaLP; st1ll; mistersam444; Liegina; annak2980; aleksejafonkin; Roflik; InJey; assa; LeXXeR; Thalt; Светлый ум; user1561754; Terabaytus; G_115170862628512093824; MikeSerg; + 17 – Ответить
1. Создаем справочник Пользователи
2. ПараметрыСеанса.ТекущийПользователь - тип справочник Пользователи
3. В модуле Сеанса пишем:
Код 1C v 8.2 УП
4. Создаем общий модуль ОбщийМодульСистема в нем пишем:
Код 1C v 8.2 УП
5. В документах пропишем Автоопределение Текущего пользователя
Код 1C v 8.2 УП
Похожие FAQ
Еще в этой же категории
Ограничение доступа на уровне записей RLS 6
Когда требуется более тонкая настройка доступа, на помощь приходит механизм RLS - Record Level Security. Конфигурации системы «1С:Предприятие» 8 изначально позиционировалась как программа для многофирменного учета, и один из первых возникающих воп Право на изменение и право на редактирование - в чем отличие? 6
В чем собственно отличие? Кратко: Изменение - определяет возможность/невозможность вообще изменить объект. Редактирование - несет интерактивный смысл. Подробнее: Интерактивные и основные права Все права, поддерживаемые системой 1С:Предпри Отключение Пользователей встроенными в платформу функциями 5
Нужно создать ярлыки(в любой папке щелкните правой клавишей мыши - Создать - Ярлык) с командами: Отключение или Завершение работы пользователей: Для Файлового варианта: " C: Program Files 1cv81 bin 1cv8.exe" ENTERPRISE /F путь к базе /N и Сравнение ролей доступа 5
Порядок простых действий для казалось бы сложной операции по сравнению ролей в 1С 8. 1) Открываете Роль1 в ее панели выбираете подменю Действия - Вывести список- сохраняете в Новый1.mxl 2) Открываете Роль2 в ее панели выбираете подменю Действия - В Как программно создать нового пользователя или скопировать настройки существующего? 5
Часто встречаю вопросы касаемые программного создания и настройки прав пользователей. В этот статье я приведу примеры для Обычного и Управляемого приложений, которые программно создают пользователя в конфигураторе и в режиме Предприятие (справочн Посмотреть все в категории Пользователь, роль доступа, интерфейс
1. Создаем справочник Пользователи
2. ПараметрыСеанса.ТекущийПользователь - тип справочник Пользователи
3. В модуле Сеанса пишем:
Код 1C v 8.2 УП
4. Создаем общий модуль ОбщийМодульСистема в нем пишем:
Код 1C v 8.2 УП
5. В документах пропишем Автоопределение Текущего пользователя
Код 1C v 8.2 УП
Похожие FAQ
Как заполнить табличную часть формы программно? 8
Нужно по кнопке Заполнить - сформировать данные для заполнения табличных частей и заполнить их. Форма имеет вид: Рядом с кнопкой Записать и закрыть добавлена кнопка Заполнить документ , код ее команды: // Код заполнения ТЧ НаСервере П 17 правил для составления оптимального ЗАПРОСа к данным базы 1С 44
Для формирования и выполнения запросов к таблицам базы данных в платформе 1С используется специальный объект языка программирования Запрос . Создается этот объект вызовом конструкции Новый Запрос . Запрос удобно использовать, когда требуется получ 1C: Enterprise Development Tools 50
И вот случилось долгожданное: Вышел 1C: Enterprise Development Tools - это среда для разработки конфигурации в IDE Eclipse. С сайта 1С: « 1C:Enterprise Development Tools » – это инструмент нового поколения для разработчиков бизнес-приложений систем Cодержимое указанного ниже веб-сайта в этом приложении блокируется. Aboutsecurity_1cv8c.exe 1
Проблема: После обновления на 1С:Бухгалтерию предприятия 3-й версии, при нажатии на закладку командного интерфейса 1С:предприятие, выскакивает ошибка: Aboutsecurity_1cv8c.exe или Aboutsecurity_1cv8.exe «Содержимое указанного ниже веб-узла в э Google maps : вывод точек на карту и режим панорамы 7
В отличие от яндекс карт в GMaps можно использовать панорамы - за что им большой плюс! Надеюсь в яндексе прочитают этот пост и тоже когда-нибудь это сделают! Для клиента нужно было сделать вывод объектов на карту С возможностью просмотра панора Посмотреть все результаты поиска похожих
Еще в этой же категории
Как программно создать нового пользователя или скопировать настройки существующего? 5
Часто встречаю вопросы касаемые программного создания и настройки прав пользователей. В этот статье я приведу примеры для Обычного и Управляемого приложений, которые программно создают пользователя в конфигураторе и в режиме Предприятие (справочн Ограничение доступа на уровне записей - RLS (Отбор по организации) 1
Часто возникает необходимость в частичном ограничении доступа к данным. Например, когда пользователь должен видеть документы только своей организации. В таких случаях в 1С используется механизм ограничения доступа на уровне записей (так называемый, Посмотреть все в категории Пользователь, роль доступа, интерфейс
1. Создаем справочник Пользователи
2. ПараметрыСеанса.ТекущийПользователь - тип справочник Пользователи
3. В модуле Сеанса пишем:
Код 1C v 8.2 УП
4. Создаем общий модуль ОбщийМодульСистема в нем пишем:
Код 1C v 8.2 УП
5. В документах пропишем Автоопределение Текущего пользователя
Код 1C v 8.2 УП
Похожие FAQ
Еще в этой же категории
Ограничение доступа на уровне записей RLS 6
Когда требуется более тонкая настройка доступа, на помощь приходит механизм RLS - Record Level Security. Конфигурации системы «1С:Предприятие» 8 изначально позиционировалась как программа для многофирменного учета, и один из первых возникающих воп Как программно создать нового пользователя или скопировать настройки существующего? 5
Часто встречаю вопросы касаемые программного создания и настройки прав пользователей. В этот статье я приведу примеры для Обычного и Управляемого приложений, которые программно создают пользователя в конфигураторе и в режиме Предприятие (справочн Использование RLS 3
Начиная с платформы 8.0 системы 1С Предприятие, существует возможность ограничивать права доступа пользователей на уровне записей. Для этого используется механизм RLS (Record Level Security). Такая «тонкая» настройка может быть полезна для ограничени Не отображается Интерфейс 2
Вопрос: У меня добавлен новый пользователь. Создаю новый интерфейс (копированием существующего) и указываю этот интерфейс в качестве основного для данного пользователя. Проблема в том, что созданный новый интерфейс почему-то не отображается. Видн Как сделать, чтобы в интерфейсе не высвечивался Сервис 1
Меню " Сервис" подхватывается автоматически из общего интерфейса, поэтому в своем интерфейсе тоже будет меню Сервис. Можно попробовать так: 1) создать копию общего, 2) в общем удалить пункт меню Сервис, 3) для каждого интерфейса (где необходим С Посмотреть все в категории Пользователь, роль доступа, интерфейс
Читайте также: