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

Толстый клиент 1С

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

История

Термин «толстый клиент» возник в контексте развития архитектуры «1С:Предприятие» в середине 2000-х годов. До появления платформы версии 8.0 (2003 год) все конфигурации 1С работали исключительно в «толстом» режиме: программа полностью устанавливалась на компьютер пользователя, а данные хранились в локальном файле или на файловом сервере. С появлением управляемых форм (версия 8.2, 2009 год) архитектура разделилась на толстый и тонкий клиенты. Толстый клиент сохранил возможность выполнения кода на стороне клиента, но при этом начал поддерживать работу через веб-сервер или сервер «1С:Предприятия». В версии 8.3 (2013 год) толстый клиент получил поддержку нового интерфейса «Такси» и облачных технологий, однако его роль в корпоративных системах постепенно сокращалась в пользу тонкого клиента и веб-клиента.

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

Толстый клиент 1С функционирует в рамках клиент-серверной или файловой архитектуры. В файловом варианте программа напрямую обращается к файлу базы данных (формат 1CD), расположенному на локальном диске или сетевом ресурсе. В клиент-серверном варианте толстый клиент подключается к серверу «1С:Предприятия» (кластеру серверов), который управляет доступом к базе данных (СУБДMicrosoft SQL Server, PostgreSQL, IBM DB2).

Основные компоненты толстого клиента:

  • Исполняемый файл1cv8.exe (для Windows) или 1cv8 (для Linux), который запускает среду выполнения.
  • Библиотеки платформы — набор DLL (Windows) или SO (Linux), реализующих функции работы с формами, отчётами, запросами, внешними компонентами.
  • Конфигурация — файлы метаданных и программных модулей (форм, отчётов, обработок, общих модулей), которые загружаются из базы данных при старте.
  • Временные файлы — кэш конфигурации, временные файлы отчётов и внешних обработок.

При запуске толстый клиент загружает конфигурацию целиком (или её кэшированную копию) в оперативную память. Программный код модулей (на встроенном языке 1С) выполняется на стороне клиента. Это позволяет реализовывать сложные алгоритмы обработки данных, работу с файловой системой, внешними приложениями (например, Microsoft Office) и оборудованием (принтеры, сканеры, кассовые аппараты).

Отличия от тонкого клиента и веб-клиента

Толстый клиент принципиально отличается от других режимов работы платформы «1С:Предприятие»:

  • Тонкий клиент (1cv8c.exe) выполняет только отображение интерфейса и отправку запросов на сервер. Весь программный код выполняется на сервере. Тонкий клиент не может работать в файловом режиме (только клиент-серверный) и не поддерживает работу с внешними компонентами и COM-объектами.
  • Веб-клиент — работает через браузер без установки платформы. Весь код выполняется на сервере, интерфейс отрисовывается средствами HTML/CSS/JavaScript. Веб-клиент имеет ограниченную функциональность (не поддерживает работу с внешними компонентами, файловой системой, COM-объектами).
  • Толстый клиент — единственный режим, который позволяет выполнять код на стороне пользователя, работать с файлами и оборудованием, а также функционировать в файловом варианте без сервера «1С:Предприятия».

Применение

Толстый клиент 1С используется в следующих сценариях:

  • Работа в файловом режиме — для небольших организаций (до 5–10 пользователей), где не требуется серверная инфраструктура. База данных хранится в общем сетевом каталоге.
  • Работа с внешним оборудованием — подключение кассовых аппаратов (ККТ), фискальных регистраторов, сканеров штрихкодов, принтеров чеков, терминалов сбора данных. Толстый клиент может напрямую обращаться к драйверам устройств через COM-порты или USB.
  • Интеграция с внешними приложениями — обмен данными с Microsoft Office (Excel, Word), работа с почтовыми клиентами (MAPI), взаимодействие с веб-сервисами через HTTP-запросы.
  • Сложные расчёты и отчёты — выполнение ресурсоёмких алгоритмов на стороне клиента (например, расчёт заработной платы, формирование сводных отчётов с большим объёмом данных). В тонком клиенте такие операции могут приводить к перегрузке сервера.
  • Разработка и отладка конфигураций — разработчики используют толстый клиент в режиме «Конфигуратор» для редактирования метаданных, написания и отладки кода. Тонкий и веб-клиенты не имеют режима конфигуратора.

Ограничения и недостатки

Толстый клиент имеет ряд ограничений по сравнению с тонким и веб-клиентами:

  • Требования к установке — необходимо устанавливать полную версию платформы на каждый компьютер. Обновление платформы требует административных действий на всех рабочих станциях.
  • Зависимость от операционной системы — толстый клиент работает только под управлением Windows (версии 8.3 поддерживают также Linux, но с ограничениями). Веб-клиент работает в любом браузере на любой ОС.
  • Нагрузка на клиентский компьютер — выполнение кода на стороне клиента требует достаточных ресурсов (процессор, оперативная память). На слабых компьютерах возможны замедления.
  • Сложность масштабирования — при увеличении числа пользователей в файловом режиме резко падает производительность из-за блокировок базы данных. Для масштабирования требуется переход на клиент-серверный вариант.
  • Безопасность — код конфигурации выполняется локально, что может создавать риски при работе с конфиденциальными данными (возможность перехвата или модификации кода).

Перспективы

С развитием облачных технологий и переходом на веб-интерфейсы роль толстого клиента в экосистеме «1С» постепенно снижается. Начиная с версии 8.3, компания «1С» рекомендует использовать тонкий клиент и веб-клиент для большинства задач, особенно в крупных корпоративных системах. Однако толстый клиент остаётся востребованным для работы с оборудованием, интеграции с внешними приложениями и в файловых базах данных малых организаций. В версии 8.3.20 и выше разработчики добавили возможность запуска толстого клиента в режиме «управляемого приложения» с интерфейсом «Такси», что улучшило его совместимость с современными стандартами.

Интересные факты

  • Толстый клиент 1С является единственным режимом, который поддерживает работу в режиме «Конфигуратор» — среды разработки конфигураций.
  • В файловом режиме толстый клиент использует собственную систему блокировок базы данных, отличную от блокировок СУБД.
  • В версии 8.3 появилась возможность запуска толстого клиента в режиме совместимости с тонким клиентом (режим «Толстый клиент. Управляемое приложение»), что позволяет использовать его в клиент-серверных конфигурациях с ограниченной функциональностью.
  • Толстый клиент поддерживает работу с внешними компонентами (Native API), что позволяет подключать библиотеки на C++ и других языках.

Источники

  • Официальная документация «1С:Предприятие 8.3» — раздел «Клиентские приложения»
  • Книга «1С:Предприятие 8.3. Практическое пособие разработчика» (М. Г. Радченко, Е. Ю. Хрусталева, 2020)
  • Статья «Архитектура платформы 1С:Предприятие» на портале «Инфостарт» (2021)
  • Материалы конференции «1С:ERP-Конференция 2022» — доклад «Эволюция клиентских приложений 1С»

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

На главную BFOmetr →