# Управление отображением и событиями платформы

**Модули конфигурации**

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

**Модуль управляемого приложения** Автоматически выполняется при загрузке конфигурации, при старте системы в режимах тонкого клиента, веб-клиента, толстого клиента в режиме управляемого приложения.  
Предназначен для отработки действий, связанных с сеансом работы конечного пользователя (прежде всего обработки начала и окончания сеанса работы). Недоступен для процедур, работающих на сервере. Процедуры и функции модуля управляемого приложения, а также переменные, для которых в заголовке указано ключевое слово Экспорт, являются доступными в неглобальных клиентских общих модулях, клиентских процедурах и функциях модуля команды, клиентских процедурах и функциях модуля управляемой формы.  
В контексте модуля управляемого приложения доступны часть глобального контекста, которая может исполняться в управляемом приложении; экспортируемые процедуры и функции любых клиентских общих модулей; экспортируемые процедуры и функции серверных неглобальных общих модулей, у которых установлено свойство Вызов сервера.

**Модуль внешнего соединения** Процедуры-обработчики событий при старте и окончании работы системы в режиме внешнего соединения (СОМ-соединения). Возможно объявление переменных, а также объявление и описание процедур и функций, которые будут доступны для внешнего приложения. Объекты, доступные извне через COM-соединение:

- экспортируемые переменные и процедуры/функции модуля внешнего соединения;
- экспортируемые переменные и процедуры/функции общих модулей:
- включение и исключение модулей целиком выполняются с помощью установки свойств общих модулей;
- включение и исключение фрагментов общих модулей выполняются с помощью инструкций препроцессора;
- глобальный контекст «1С:Предприятия».

Модуль присутствует только в сессии внешнего соединения, нет пользовательского интерфейса.

**События платформы**

Основные направления общей настройки платформы: внешний вид и события. Переход в элементы настройки производится через окно свойств конфигурации.

**События формы**

Для настройки обработки событий формы необходимо сначала создать форму вместо формы по умолчанию. ПКМ на любом добавленном элементе формы -&gt; События выведет список доступных обработчиков событий. Или в свойствах этого элемента.

[![1c_forms_actions.jpg](http://bobrobotirk.ru/uploads/images/gallery/2025-01/scaled-1680-/1c-forms-actions.jpg)](http://bobrobotirk.ru/uploads/images/gallery/2025-01/1c-forms-actions.jpg)

При клике будет создан обработчик события. Для обращения к активному в модуле формы используется Элементы, все хранится в Объект. Пример автоматического пересчета итоговой суммы при изменении цены или количества в табличной части:

```
&НаКлиенте
Процедура ПересчитатьИтоговуюСумму() 
	ТабЧасть = Объект.ПереченьТоваров;
	ФиналСумма = 0; 	
	Для каждого Товар из ТабЧасть Цикл
		ФиналСумма = ФиналСумма + Товар.Сумма;
	КонецЦикла;
    Объект.СуммаПоДокументу = ФиналСумма;
КонецПроцедуры

&НаКлиенте
Процедура ПереченьТоваровКоличествоПриИзменении(Элемент)
	СтрТабЧасти = Элементы.ПереченьТоваров.ТекущиеДанные;
	СтрТабЧасти.Сумма = СтрТабЧасти.Цена * СтрТабЧасти.Количество;
	ПересчитатьИтоговуюСумму();
КонецПроцедуры

&НаКлиенте
Процедура ПереченьТоваровЦенаПриИзменении(Элемент)
	СтрТабЧасти = Элементы.ПереченьТоваров.ТекущиеДанные;
	СтрТабЧасти.Сумма = СтрТабЧасти.Цена * СтрТабЧасти.Количество;
	ПересчитатьИтоговуюСумму();
КонецПроцедуры
```

Если будет несколько документов с необходимостью пересчитывать суммы, возможно стоит сделать процедуру НаКлиенте в общих модулях, передавая туда табличную часть, текущие данные, поле для общей суммы,

**Программное создание обработчика события.**

ДобавитьОбработчик &lt;Событие&gt;, &lt;ОбработчикСобытия&gt;;  
Добавляет обработчик события. При добавлении обработчика события производится проверка соответствия числа параметров события числу параметров метода, назначаемого в качестве обработчика.

УдалитьОбработчик &lt;Событие&gt;, &lt;ОбработчикСобытия&gt;;   
Удаляет обработчик события. При удалении обработчика события производится проверка соответствия числа параметров события числу параметров метода, назначенного в качестве обработчика.