Закажите бесплатный расчет стоимости вашей задачи по 1С!
Перезвоним за 10 минут! (в рабочие часы)

Параметры сеанса в 1С 8.3 и 8.2

Параметры сеансы 1С 8.3 — переменная, в которой хранится значение нужного параметра на время сеанса пользователя. По сути, это некая глобальная переменная, привязанная к сеансу текущего пользователя.

Параметры сеанса

Использование параметров сеанса в 1С

Параметры сеанса задаются только программно, универсального интерфейса для установки параметров сеанса в системе нет. Обычно они задаются при старте системы, в «Модуле сеанса». Если параметр не определен, во время обращения к нему будет вызвана ошибка.

Пример установки параметра сеанса 1С

Рассмотрим типичный пример использования параметров сеанса — установку текущего пользователя. Пример я возьму из подготовки к специалисту по платформе.

В древе метаданных создадим новый параметр сеанса — ТекущийПользователь, назначим ему тип — СправочникСсылка.ФизическиеЛица:
Создание нового параметра

В модуле сеанса создадим процедуру, в которой будет определяться текущий параметр сеанса:

Инициализация параметра в модуле

Код процедуры:

Процедура УстановкаПараметровСеанса(ТребуемыеПараметры)

//ищем физ. лицо по имени пользователя
ТекПользователь = Справочники.ФизическиеЛица.НайтиПоНаименованию(ИмяПользователя());
//если не нашли - создадим нового
Если ТекПользователь.Пустая() Тогда
НовПользователь = Справочники.ФизическиеЛица.СоздатьЭлемент();
НовПользователь.Наименование = ИмяПользователя();
НовПользователь.Записать();
ТекПользователь = НовПользователь.Ссылка;
КонецЕсли;
//присваиваем параметру сеанса ТекущийПользователь ссылку на справочник физ.лиц
ПараметрыСеанса.ТекущийПользователь = ТекПользователь;

КонецПроцедуры

Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>

После этого в любом месте конфигурации Вы можете узнать, кто же у нас текущий пользователь, просто используя конструкцию «ПараметрыСеанса.ТекущийПользователь».

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

Остались вопросы?

СПРОСИТЕ в комментариях!

Комментариев: 8 на “Параметры сеанса в 1С 8.3 и 8.2
  1. Я в модуле управляемого приложения пытаюсь обратиться к «ПараметрыСеанса.ТекущийПользователь», но пишет, что переменная не определена
    В чем может быть проблемма?

    Ответить

    • Модуль управляемого приложения — выполняется на клиенте.
      Чтобы получить Параметры сеанса нужно в модуле приложения вызвать функцию, расположенную в серверном общем модуле,

      Если ОбщийМодульСервер.РоботЭтоЯ() Тогда
      // что то сделать
      КонецЕсли;
      —————— ОбщийМодульСервер——————

      а вот в ней уже прописать

      Функция РоботЭтоЯ() Экспорт
      Возврат ПараметрыСеанса.ЯРобот;
      КонецФункции
      ——————————————————

      Ответить

      • А не видит с клиентской части все равно !Сделал по аналогии!
        Так понимаю серверный модуль, в свойствах стоят галочки
        глобальный, сервер !

        Ответить

        • Если идет переброс с клиента на сервер, то должна быть галка «Вызов сервера», галку «Глобальный» ставить не нужно.

          Ответить

          • Пожалуй, эта ветка — самое важное, что есть на этой странице, так как всё остальное легко понять из типовых конфигураций.

            Ответить

  2. Добрый день! А как открыть модуль сеанса?

    Ответить

    • На Конфигурация правой кнопкой мыши

      Ответить

  3. Здравствуйте! А можно узнать параметры сеанса другого пользователя?

    Ответить

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

Ваш адрес email не будет опубликован.