Открыть сервис

Управляемое приложение 1С

Управляемое приложение 1С — это архитектура клиентского интерфейса и модель взаимодействия с пользователем в системе «1С:Предприятие», при которой визуальное отображение данных и логика управления ими полностью контролируются платформой на стороне сервера, а клиентское приложение лишь отображает готовые формы и передаёт команды пользователя. Данная концепция была внедрена в версии платформы 8.2 и стала основой для разработки новых конфигураций, заменив устаревшую модель «обычного приложения».

История и предпосылки появления

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

Разработчики платформы поставили задачу создать новую модель, которая бы:

Результатом стала концепция управляемого приложения, впервые реализованная в платформе 8.2. Впоследствии она стала обязательной для всех новых конфигураций, а «обычное приложение» было объявлено устаревшим (хотя поддержка его сохраняется для обратной совместимости).

Архитектура и принципы работы

Управляемое приложение базируется на трёхзвенной архитектуре «клиент — сервер — база данных», где ключевым звеном является сервер 1С:Предприятия.

Разделение кода на клиентский и серверный

В отличие от обычного приложения, где код мог выполняться в любом месте, в управляемом приложении введено строгое разделение контекстов выполнения:

Это разделение автоматически обеспечивается платформой: разработчик помечает процедуры и функции директивами &НаКлиенте, &НаСервере, &НаСервереБезКонтекста. Попытка обратиться к данным базы из клиентского кода вызывает ошибку компиляции.

Формы как объекты платформы

Форма в управляемом приложении — это не просто набор элементов управления, а полноценный объект встроенного языка, который:

Расположение элементов задаётся не жёстко (как в обычной форме), а с помощью системы компоновки данных (СКД) и групп-контейнеров (обычная группа, страницы, колонки). Платформа автоматически подстраивает отображение под ширину экрана, разрешение и тип клиента (толстый, тонкий, веб-клиент).

Роль сервера

Сервер 1С:Предприятия выполняет две ключевые функции:

  1. Управление сеансами — поддерживает соединения с клиентами, обрабатывает запросы.
  2. Выполнение серверного кода — все операции с базой данных (чтение, запись, проведение) происходят исключительно на сервере. Клиент получает только готовые данные для отображения.

Благодаря этому снижается трафик между клиентом и сервером, повышается безопасность (код не передаётся на клиент) и упрощается администрирование.

Классификация клиентов

Управляемое приложение поддерживает несколько типов клиентских приложений, каждый из которых предназначен для определённых сценариев использования:

Все клиенты взаимодействуют с сервером по единому протоколу, что обеспечивает унификацию разработки.

Особенности разработки

Разработка конфигураций для управляемого приложения требует соблюдения ряда правил и использования специфических механизмов платформы.

Система компоновки данных (СКД)

СКД — это механизм, который позволяет описывать отчёты и динамические списки декларативно, без написания кода. Разработчик определяет набор полей, группировок, отборов и оформления, а платформа сама генерирует запрос к базе данных и формирует результат. СКД является обязательным инструментом для создания отчётов в управляемом приложении.

Командный интерфейс

Вместо традиционных меню и панелей инструментов управляемое приложение использует командный интерфейс, который гибко настраивается:

Командный интерфейс автоматически адаптируется под права доступа пользователя и может быть настроен администратором.

Универсальные механизмы

Платформа предоставляет ряд готовых механизмов, упрощающих разработку:

Преимущества и недостатки

Преимущества

Недостатки

Применение

Управляемое приложение является стандартом для всех современных конфигураций на платформе «1С:Предприятие 8.3» и выше. Оно используется в типовых решениях фирмы «1С»:

Все эти конфигурации разработаны исключительно в парадигме управляемого приложения и не поддерживают режим обычного приложения.

Сравнение с обычным приложением

ХарактеристикаОбычное приложениеУправляемое приложение
АрхитектураДвухзвенная (клиент-база)Трёхзвенная (клиент-сервер-база)
Выполнение кодаНа клиенте и сервере без строгого разделенияСтрогое разделение на клиентский и серверный контексты
ФормыЖёсткая вёрстка элементовАвтоматическая компоновка на основе СКД
КлиентыТолько толстый клиентТолстый, тонкий, веб, мобильный
ИнтерфейсФиксированные меню и панелиКомандный интерфейс, адаптивный
ОбновлениеТребуется обновление на каждом клиентеЦентрализованное обновление на сервере
ПроизводительностьВысокая на одном клиенте, низкая при масштабированииЗависит от сервера, хорошо масштабируется

Перспективы развития

Платформа «1С:Предприятие» продолжает развиваться, и управляемое приложение остаётся основной архитектурой. В версии 8.3 (2013 год) были добавлены:

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

Источники

  1. Радченко М.Г., Хрусталёва Е.Ю. «1С:Предприятие 8.3. Практическое пособие разработчика». — М.: 1С-Паблишинг, 2020.
  2. Документация к платформе «1С:Предприятие 8.3» (встроенная справка).
  3. Официальные методические материалы фирмы «1С» по разработке управляемых форм.
  4. Книга «Профессиональная разработка в системе 1С:Предприятие 8» под редакцией А.П. Гончарова. — СПб.: Питер, 2018.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →