Модуль приложения 1С
Модуль приложения 1С — это объект встроенного языка платформы «1С:Предприятие», представляющий собой текстовый файл с программным кодом, который выполняется в определённые моменты жизненного цикла прикладного решения (конфигурации). Модули приложения предназначены для описания глобальных алгоритмов инициализации, завершения работы, а также обработки внешних событий на уровне всей информационной базы. В зависимости от контекста выполнения различают модуль обычного приложения, модуль управляемого приложения и модуль внешнего соединения.
Классификация и назначение
В платформе «1С:Предприятие» 8.x существует три основных типа модулей приложения, каждый из которых отвечает за свой сценарий запуска и работы системы.
Модуль обычного приложения
Исполняется при запуске системы в режиме «Обычное приложение» (толстый клиент). Этот режим характерен для конфигураций, созданных на базе платформы версии 8.0–8.2, и обеспечивает работу с формами в классическом оконном интерфейсе. Модуль обычного приложения содержит обработчики событий ПриНачалеРаботыСистемы и ПриЗавершенииРаботыСистемы. В этих процедурах разработчик может задать начальные параметры сеанса, проверить права доступа, выполнить авторизацию или загрузить справочную информацию.
Модуль управляемого приложения
Исполняется при запуске системы в режиме «Управляемое приложение» (тонкий клиент, веб-клиент, мобильный клиент). Этот режим является основным для современных конфигураций на платформе 8.3 и выше. Модуль управляемого приложения содержит более широкий набор событий:
- ПриНачалеРаботыСистемы — выполняется перед открытием окна программы.
- ПриЗавершенииРаботыСистемы — выполняется при закрытии приложения.
- ОбработкаВнешнегоСобытия — вызывается при получении системой внешнего события от операционной системы или другого приложения (например, нажатие горячей клавиши, изменение файла).
- ОбработкаОповещения — используется для обработки уведомлений от фоновых заданий, внешних компонент или других сеансов.
Модуль внешнего соединения
Исполняется при подключении к информационной базе через механизм внешнего соединения (COM-соединение, Web-сервисы). Этот модуль не имеет визуального интерфейса и предназначен для программного доступа к данным без запуска клиентского приложения. Он содержит обработчики ПриНачалеРаботыСистемы и ПриЗавершенииРаботыСистемы, но в упрощённой форме — без работы с формами и диалогами.
Структура и синтаксис
Модуль приложения представляет собой последовательность операторов встроенного языка, сгруппированных в процедуры и функции. Как и любой другой программный модуль в 1С, он состоит из трёх основных разделов:
- Раздел объявления переменных — необязательный, размещается в начале модуля.
- Раздел процедур и функций — содержит все обработчики событий и вспомогательные методы.
- Раздел основной программы — выполняется один раз при инициализации модуля (обычно используется для инициализации глобальных переменных).
Пример типовой структуры модуля управляемого приложения:
``` Перем ГлобальнаяПеременная Экспорт;
Процедура ПриНачалеРаботыСистемы() // код инициализации КонецПроцедуры
Процедура ПриЗавершенииРаботыСистемы() // код завершения КонецПроцедуры ```
Важно отметить, что в модуле приложения запрещено использование операторов, вызывающих модальные окна и диалоги, так как на момент выполнения обработчика ПриНачалеРаботыСистемы интерфейс приложения ещё не полностью сформирован.
События и порядок выполнения
Порядок вызова событий при запуске системы строго регламентирован платформой:
- При старте клиентского приложения:
- Загрузка метаданных конфигурации.
- Выполнение модуля приложения (обычного или управляемого).
- Событие ПриНачалеРаботыСистемы.
- Открытие начальной формы (обычно рабочего стола или формы отчёта).
- При завершении работы:
- Событие ПриЗавершенииРаботыСистемы.
- Сохранение пользовательских настроек.
- Закрытие соединения с базой данных.
В случае аварийного завершения (например, сбой питания) событие завершения не вызывается, поэтому в модуле приложения не следует размещать критически важные операции сохранения данных — для этого используются механизмы транзакций и фоновых заданий.
Практическое применение
Модули приложения широко используются разработчиками для реализации следующих задач:
- Автоматическая установка параметров сеанса: задание рабочей даты, валюты учёта, основного склада для пользователя.
- Проверка лицензий и прав доступа: выполнение авторизации через внешние системы, проверка наличия ключа защиты.
- Интеграция с внешними системами: регистрация обработчиков внешних событий (например, приём данных от торгового оборудования).
- Инициализация фоновых заданий: запуск регламентных процедур при старте системы.
- Логирование действий пользователя: запись в журнал регистрации факта входа/выхода из системы.
Ограничения и особенности
При работе с модулями приложения необходимо учитывать ряд ограничений, накладываемых платформой:
- Отсутствие контекста формы: в модуле приложения недоступны реквизиты и элементы форм, так как он выполняется до их создания.
- Ограниченный набор типов данных: на этапе инициализации могут быть недоступны некоторые глобальные контексты (например, работа с отчётами через СКД).
- Однократное выполнение: код в разделе основной программы модуля выполняется только один раз за сеанс. Для повторного вызова необходимо использовать процедуры-обработчики событий.
- Влияние на производительность: длительные операции в обработчике ПриНачалеРаботыСистемы могут существенно замедлить запуск приложения, поэтому рекомендуется выносить тяжёлые вычисления в фоновые задания.
Разработка и отладка
Модуль приложения редактируется в конфигураторе платформы «1С:Предприятие». Для доступа к нему необходимо открыть дерево метаданных конфигурации, выбрать корневой узел «Конфигурация» и перейти на закладку «Модуль». Отладка модуля приложения производится в режиме «1С:Предприятие» с использованием стандартного отладчика, который позволяет устанавливать точки останова, просматривать значения переменных и выполнять пошаговое выполнение кода.
Источники
- Радченко М.Г., Хрусталёва Е.Ю. «1С:Предприятие 8.3. Практическое пособие разработчика». — М.: 1С-Паблишинг, 2020.
- Официальная документация фирмы «1С»: «Встроенный язык 1С:Предприятие 8.3» (раздел «Модули приложения»).
- ГОСТ Р 53626-2009 «Информационные технологии. Системы автоматизированного управления предприятием. Общие требования».
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →