Skip to main content

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

Глобальные переменные сеанса, инициализируемые при старте или первом обращении. Используются для хранения контекста пользователя и в RLS.

Ключевые моменты

ОписаниеВажно
Модуль сеансаМесто установки параметровУстановкаПараметровСеанса() и ПередУстановкойПараметраСеанса()
ИнициализацияПри старте или лениво (при первом обращении)Ленивая инициализация экономит ресурсы
СинтаксисПараметрыСеанса.Имя или &Имя (в запросах/RLS)& — работает только в текстах запросов и RLS
RLSИспользование в условиях ограничения доступаБезопасная передача контекста пользователя

Практическое применение

Примеры сценариев:

  1. Контекст пользователя — роль, подразделение, организация
  2. Настройки сессии — язык, валюта, режим работы
  3. Динамические условия RLSОтветственный = &ТекущийПользователь

Критические нюансы

  1. Объем данных — не хранить большие массивы (справочники лучше кэшировать иначе)
  2. Типы данных — простые типы и ссылки, избегать сложных структур
  3. Инициализация — параметр вычисляется один раз за сеанс

Частые ошибки

  • Циклические зависимости между параметрами
  • Тяжелые вычисления при инициализации
  • Хранение часто изменяемых данных