Как работает тонкий клиент 1С:Предприятия 8.3 и чем он отличается от толстого и веб-клиента

· 10 мин

Содержание

Тонкий клиент 1С — это программа 1cv8c.exe, которая только показывает интерфейс и принимает ввод пользователя, а данные и бизнес-логику обрабатывает сервер 1С:Предприятия. Он работает лишь с управляемым приложением (управляемыми формами) и подключается к базе напрямую по сети, через веб-сервер или к файловой базе. Отличие от толстого клиента простое: толстый 1cv8.exe умеет обычные формы и Конфигуратор, а тонкий легче, быстрее на слабом канале и не держит у себя данные базы.

Типичная ситуация: бухгалтер из филиала жалуется, что 1С «тормозит через VPN», а при открытии появляется сообщение о несовпадении версий клиента и сервера. Обе проблемы решаются настройкой тонкого клиента . Ниже про то, как он устроен, как его поставить и включить и что делать с ошибками.

Как устроен тонкий клиент и где выполняется код

Платформа 1С:Предприятие 8.3 делит работу между двумя сторонами: клиентом и сервером. Тонкий клиент отвечает только за клиентскую часть.

На стороне тонкого клиента:

  • 🖥️ отрисовка форм, командного интерфейса, отчётов;
  • ⌨️ обработка нажатий и ввода;
  • 📎 работа с локальными файлами, буфером обмена, подключаемым оборудованием;
  • 💾 кеш метаданных и пользовательских настроек.

На стороне сервера:

  • 🗄️ чтение и запись в базу данных;
  • 🔎 выполнение запросов;
  • 📑 проведение документов, расчёты, формирование движений;
  • 🔐 проверка прав доступа.

Тонкий клиент не видит таблиц базы и не выполняет запросы сам. Ему недоступны объекты, работающие с данными: Запрос, менеджеры справочников и документов, наборы записей регистров. Когда форме нужны данные, клиент вызывает процедуру на сервере, получает результат и показывает его.

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

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

Тонкий, толстый и веб-клиент: в чём разница

У 1С 8.3 три основных клиентских приложения для компьютера. Их часто путают, хотя назначение разное.

ПараметрТонкий клиентТолстый клиентВеб-клиент
Исполняемый файл1cv8c.exe1cv8.exeбраузер
Установка на компьютернужна (лёгкий дистрибутив)нужна полная платформане нужна
Обычные формынетданет
Управляемые формыдадада
Конфигураторнетданет
Подключение через веб-серверданетда
Работа на медленном каналехорошоплохохорошо
Оборудование, внешние компонентыполноценнополноценнос ограничениями, через расширение браузера
ОСWindows, Linux, macOSWindows, Linuxлюбая с поддерживаемым браузером

Как выбрать на практике:

  • ✅ Тонкий клиент — стандарт для работы в типовых конфигурациях на управляемых формах: БП 3.0, ЗУП 3.1, УТ 11, ERP. Подходит и для офиса, и для удалённого доступа.
  • 🛠️ Толстый клиент — для программиста и администратора: Конфигуратор, старые конфигурации на обычных формах, отладка некоторых сценариев.
  • 🌐 Веб-клиент — когда ставить программу нельзя: чужой компьютер, планшет, жёсткие политики безопасности.

Конфигурацию на обычных формах тонкий клиент не откроет. Старые решения вроде БП 2.0 или УПП работают только в толстом клиенте. Если такая база не запускается в тонком режиме — это не поломка, а ограничение платформы.

Установка тонкого клиента 1С и требования

Тонкий клиент входит в стандартный дистрибутив платформы. Отдельно есть облегчённый дистрибутив только с тонким клиентом — его удобно раздавать на рабочие места.

Что нужно для работы

  • 💻 ОС Windows, Linux или macOS актуальной версии;
  • 🧠 оперативная память: для одного сеанса хватает 4 ГБ на компьютере, больше нужно при нескольких открытых базах и тяжёлых отчётах;
  • 🔑 доступ к лицензии: клиентская лицензия на сервере 1С или на компьютере пользователя;
  • 🔌 сетевой доступ к серверу 1С или к веб-серверу с опубликованной базой.

Пошаговая установка на Windows

  1. Скачайте дистрибутив платформы той же версии, что и сервер 1С. Номер должен совпадать полностью, например 8.3.24.1548.
  2. Запустите setup.exe из папки дистрибутива.
  3. В списке компонентов оставьте тонкий клиент. Для работы с файловыми базами выберите вариант тонкого клиента с поддержкой файлового режима или поставьте полный клиент.
  4. Сервер 1С, модули веб-сервера и Конфигуратор на рабочее место бухгалтера ставить не нужно.
  5. Дождитесь окончания установки. Файлы окажутся в C:\Program Files\1cv8\<версия>\bin\, рядом с 1cv8c.exe.
  6. Запустите ярлык «1С:Предприятие» — откроется окно запуска 1cestart.exe со списком баз.

Порты для клиент-серверной базы

Если база на сервере 1С, клиент сначала обращается к агенту сервера по порту 1540, затем к менеджеру кластера (1541) и к рабочим процессам. Диапазон портов рабочих процессов задаётся в свойствах рабочего сервера, по умолчанию это 1560-1591. Все эти порты должны быть открыты от рабочего места до сервера.

При подключении через интернет не открывайте эти порты наружу. Используйте VPN или публикацию базы на веб-сервере по HTTPS.

Настройка запуска в режиме тонкого клиента

Окно запуска само выбирает клиент по свойствам конфигурации. Если нужно закрепить именно тонкий клиент, сделайте это в настройках базы.

Режим запуска в списке баз

  1. В окне запуска выделите базу и нажмите Изменить.
  2. Пройдите мастер до последней страницы.
  3. В поле «Основной режим запуска» выберите Тонкий клиент вместо «Выбирать автоматически».
  4. В поле «Версия 1С:Предприятия» при необходимости укажите конкретный номер платформы.
  5. Нажмите Готово.

Строки подключения

Тонкий клиент работает с тремя видами баз. Строку подключения видно внизу окна запуска при выделенной базе.

File="D:\Base\Buh";                        // файловая база
Srvr="srv1c";Ref="buh_main";               // база на сервере 1С
ws="https://1c.company.ru/buh";            // база, опубликованная на веб-сервере

Третий вариант особенно полезен для филиалов и удалённых сотрудников. Клиент ходит по HTTPS через обычный веб-сервер, а порты кластера наружу не открываются.

Параметры командной строки

Режим запуска можно задать и в ярлыке. Пара параметров, которые реально пригодятся:

  • /RunModeManagedApplication — запуск в режиме управляемого приложения;
  • /ClearCache — запуск с очисткой клиентского кеша.

Пример ярлыка для конкретной базы на сервере:

"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8c.exe" ENTERPRISE /S"srv1c\buh_main"

Автообновление тонкого клиента

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

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

Проверка рабочего места перед подключением
Выполнено: 0 / 5

Управляемые формы в тонком клиенте: что важно знать

Тонкий клиент и управляемые формы появились вместе и рассчитаны друг на друга. Форма описывается декларативно, а платформа сама строит её внешний вид под конкретного клиента — тонкого, веб или мобильного.

Директивы компиляции

Каждая процедура в модуле формы помечена, где она выполняется:

ДирективаГде выполняетсяДоступ к данным формы
&НаКлиентена клиентеда
&НаСерверена сервереда, форма передаётся на сервер
&НаСервереБезКонтекстана серверенет, только параметры
&НаКлиентеНаСервереБезКонтекстатам, откуда вызвалинет

Каждый вызов с клиента на сервер — это отдельное обращение по сети. В локальной сети это незаметно, а через VPN с задержкой 50-100 мс десять лишних вызовов при открытии формы дают секунду ожидания.

Как это влияет на скорость

Для разработчика правило одно: собирать данные за один серверный вызов. Пример плохого и хорошего подхода:

// Плохо: два обращения к серверу
&НаКлиенте
Процедура КонтрагентПриИзменении(Элемент)
	ИНН = ПолучитьИНН(Объект.Контрагент);
	Договор = ПолучитьОсновнойДоговор(Объект.Контрагент);
КонецПроцедуры

// Хорошо: одно обращение, контекст формы не передаётся
&НаКлиенте
Процедура КонтрагентПриИзменении(Элемент)
	Данные = ДанныеКонтрагента(Объект.Контрагент);
	ИНН = Данные.ИНН;
	Договор = Данные.Договор;
КонецПроцедуры

&НаСервереБезКонтекста
Функция ДанныеКонтрагента(Контрагент)
	Результат = Новый Структура("ИНН, Договор");
	Результат.ИНН = Контрагент.ИНН;
	Результат.Договор = Контрагент.ОсновнойДоговорКонтрагента;
	Возврат Результат;
КонецФункции

Имена реквизитов в примере условные — в вашей конфигурации они могут называться иначе.

Что видит пользователь

Для бухгалтера управляемые формы означают несколько удобных вещей:

  • 📐 настройку формы без программиста: через меню «Ещё» → «Изменить форму» можно скрыть поля и поменять порядок;
  • 📋 сохранение настроек списков, отборов и отчётов на сервере — они «переезжают» с пользователем на другой компьютер;
  • ⏳ фоновое формирование тяжёлых отчётов: форма не зависает, пока сервер считает.

Оборудование и внешние системы через тонкий клиент

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

Торговое оборудование

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

Порядок обычно такой:

  1. Установить драйвер производителя на компьютер с оборудованием.
  2. В конфигурации открыть настройки подключаемого оборудования (в БП и УТ — в разделе Администрирование).
  3. Добавить экземпляр устройства, выбрать драйвер, указать рабочее место.
  4. Выполнить тест устройства из карточки.

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

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

Внешние системы и обмены

Интеграции с банками, сайтами, ЭДО и другими базами 1С обычно работают на сервере: веб-сервисы, HTTP-сервисы, регламентные задания, обмены данными. Для тонкого клиента это прозрачно: он лишь запускает обмен кнопкой или видит результат.

На клиенте выполняется только то, что требует локальных ресурсов:

  • 📁 выбор и чтение файлов с диска пользователя (выписка банка, загрузка из Excel );
  • 🧩 вызов COM-объектов Windows на компьютере пользователя;
  • 🖨️ печать на локальный принтер.

Внешнее COM-соединение с базой (V83.COMConnector) — это отдельный механизм для программ, а не режим работы тонкого клиента.

Ошибки тонкого клиента и как их устранить

Большинство проблем при работе через тонкий клиент связаны с версиями, сетью и кешем. Ниже — что встречается на практике.

Диагностика: выберите симптом

Ручная очистка кеша

Если параметр /ClearCache не помог, кеш удаляют вручную. Он лежит в профиле пользователя:

%APPDATA%\1C\1cv8\
%LOCALAPPDATA%\1C\1cv8\

Внутри — папки с длинными именами-идентификаторами, по одной на базу. Удалите их целиком.

Перед удалением полностью закройте 1С у этого пользователя. Другие пользователи и сервер не пострадают, но файл списка баз ibases.v8i в %APPDATA%\1C\1CEStart\ не трогайте — иначе пропадёт список баз.

Зависшие сеансы

Если пользователь закрыл тонкий клиент аварийно, его сеанс может некоторое время оставаться на сервере и занимать лицензию. Администратор видит такие сеансы в консоли кластера или командой rac session list.

Завершайте только сеанс конкретного пользователя и только убедившись, что он не работает. Принудительное завершение обрывает его несохранённые изменения.

Частые вопросы о тонком клиенте

Нужна ли отдельная лицензия для тонкого клиента?
Нет. Тонкий, толстый и веб-клиент используют одни и те же клиентские лицензии. Считается количество одновременных подключений, а не тип клиента.
Можно ли открыть Конфигуратор из тонкого клиента?
Нет. Конфигуратор работает только в 1cv8.exe. Для разработки и обновления конфигурации на компьютере должна стоять полная платформа.
Работает ли тонкий клиент на Linux и macOS?
Да. Платформа 8.3 выпускает тонкий клиент для Windows, Linux и macOS. Типовые конфигурации на управляемых формах работают в нём так же, как в Windows, кроме функций, завязанных на COM.
Чем тонкий клиент лучше удалённого рабочего стола?
Для удалённого рабочего стола нужен терминальный сервер и лицензии Windows на подключения. Тонкий клиент через веб-публикацию обходится без них и работает на канале в несколько Мбит/с. Зато через удалённый стол проще поддерживать одну версию платформы.
Можно ли в одной базе одновременно работать в тонком и толстом клиенте?
Да, если конфигурация на управляемых формах. Например, бухгалтеры работают в тонком клиенте, а программист в это же время запускает толстый клиент для отладки.