Тонкий клиент 1С:Предприятия 8.3 — устройство, отличия от толстого и подключение к базе
Содержание
Тонкий клиент 1С — это программа 1cv8c.exe, которая только показывает формы и выполняет клиентский код, а все данные читает и обрабатывает сервер 1С или веб-сервер. Подключиться им можно к серверной базе, к базе, опубликованной через веб-сервер, а при установленном компоненте файлового варианта — и к файловой базе. Режим выбирается в свойствах базы в окне запуска: Изменить → Основной режим запуска → Тонкий клиент.
Типичная ситуация: бухгалтер на удалёнке открывает базу через VPN в толстом клиенте, и каждый отчёт формируется по минуте. Переключение на тонкий клиент часто решает вопрос без смены канала. Ниже — принцип работы, разница с толстым клиентом, настройка по шагам и нюансы, о которых спрашивают администраторы и разработчики.
Как устроен тонкий клиент 1С и что он делает сам
Работа в 1С 8.3 делится на две части: клиент и сервер. Тонкий клиент берёт на себя только клиентскую часть.
🖥️ Что выполняется на компьютере пользователя:
- отрисовка управляемых форм, командного интерфейса, отчётов в виде табличного документа;
- код модулей с директивой
&НаКлиенте; - работа с локальными файлами, буфером обмена, сканером штрихкодов, торговым оборудованием через внешние компоненты.
🗄️ Что выполняется на сервере:
- запросы к базе, запись документов и проведение;
- код с директивами
&НаСервере,&НаСервереБезКонтекста, общие модули с флагом «Сервер»; - формирование данных для отчётов, регламентные задания.
Клиент не обращается к таблицам базы напрямую. Когда пользователь нажимает «Провести», клиент отправляет вызов серверу, тот проводит документ и возвращает результат. По сети идут команды и готовые данные форм, а не содержимое таблиц.
Три способа подключения
| Вариант | Через что идёт связь | Где хранится база |
|---|---|---|
| Клиент-серверный | TCP к кластеру серверов 1С | СУБД (MS SQL, PostgreSQL и др.) |
| Через веб-сервер | HTTP или HTTPS к публикации на IIS или Apache | Файловая или серверная база за веб-сервером |
| Файловый | Локальный или сетевой каталог с файлом 1Cv8.1CD | Каталог на диске |
В клиент-серверном варианте тонкий клиент сначала обращается к агенту сервера (порт 1540), тот передаёт его менеджеру кластера (1541), а дальше соединение уходит на рабочий процесс из диапазона портов. Диапазон задаётся в свойствах рабочего сервера, по умолчанию это 1560–1591.
В файловом варианте тонкий клиент работает, только если на компьютере стоит компонент «Тонкий клиент, файловый вариант» или полная платформа. Отдельный дистрибутив тонкого клиента без этого компонента файловую базу напрямую не откроет — только через веб-сервер.
Тонкий клиент или толстый: в чём разница и что выбрать
Толстый клиент — это 1cv8.exe из полной поставки платформы. Он умеет всё, что тонкий, плюс работу с обычными формами и запуск Конфигуратора.
| Параметр | Тонкий клиент (1cv8c.exe) | Толстый клиент (1cv8.exe) |
|---|---|---|
| Интерфейс | Только управляемое приложение | Управляемое и обычное приложение |
| Конфигуратор | Нет | Есть |
| Объём установки | Небольшой, есть отдельный дистрибутив | Полная платформа |
| Трафик по сети | Минимальный | Выше, особенно в обычном приложении |
| Работа по медленному каналу | Приемлемая | Заметно хуже |
| ОС | Windows, Linux, macOS | Windows, Linux |
| Обычные внешние обработки | Не открываются | Открываются |
| Лицензия | Клиентская | Клиентская |
Лицензия на рабочее место расходуется одинаково: и тонкий, и толстый клиент, и веб-клиент занимают одну клиентскую лицензию на сеанс. Экономии на лицензиях переход не даёт.
Требования тонкого клиента к компьютеру и сети
Требования к рабочему месту у тонкого клиента скромные. Для БП 3.0 или ЗУП 3.1 комфортно работать на компьютере с 4 ГБ оперативной памяти и выше, если параллельно не открыты десятки вкладок браузера. Сам процесс 1cv8c.exe с открытой типовой конфигурацией обычно занимает несколько сотен мегабайт.
📶 Что важнее железа — сеть:
- задержка (пинг) до сервера: до 10–20 мс работа почти не отличается от локальной, при 80–100 мс и выше каждое открытие формы становится заметным;
- стабильность: обрыв соединения рвёт сеанс, несохранённые данные формы теряются;
- ширина канала: тонкому клиенту хватает обычного офисного интернета, но выгрузка файлов и печать больших отчётов идут быстрее на широком канале.
🔧 Сетевые условия для клиент-серверного варианта:
- С рабочего места должны открываться порты 1540, 1541 и диапазон рабочих процессов на сервере 1С.
- Имя сервера должно разрешаться в IP. Если DNS в сети нет, пропишите сервер в файле
C:\Windows\System32\drivers\etc\hosts. - Версия тонкого клиента должна совпадать с версией платформы на сервере вплоть до последней цифры сборки.
Для веб-подключения нужен только доступ по 80 или 443 порту к веб-серверу. Поэтому публикацию через IIS или Apache выбирают для филиалов и удалённых сотрудников: открывать наружу порты кластера не придётся.
На медленном канале запускайте клиент с параметром /O Low — платформа будет реже обращаться к серверу и укрупнит передаваемые порции данных.
Пошаговая настройка тонкого клиента 1С
Шаг 1. Установите нужную версию
Узнайте точную версию платформы на сервере: в открытой базе Справка (знак вопроса в шапке) → О программе или у администратора.
Дальше два пути:
- Отдельный дистрибутив тонкого клиента. Небольшой установщик для Windows, Linux или macOS. Подходит для рабочих мест, где нужна только работа с серверной базой или веб-публикацией.
- Установщик полной платформы. В списке компонентов оставьте «1С:Предприятие — тонкий клиент» и при необходимости «Тонкий клиент, файловый вариант». Остальное отключите.
Несколько версий платформы на одном компьютере уживаются. Нужную версию при запуске выбирает программа запуска 1cestart.exe.
Шаг 2. Добавьте базу в список
- Запустите 1С, в окне запуска нажмите
Добавить. - Выберите «Добавление в список существующей информационной базы».
- Введите понятное имя базы.
- Укажите тип расположения:
- «На сервере 1С:Предприятия» — имя кластера (например,
srv1cилиsrv1c:1541) и имя базы на сервере; - «На веб-сервере» — адрес публикации, например
https://1c.company.ru/buh; - «На данном компьютере или в локальной сети» — путь к каталогу с базой.
- «На сервере 1С:Предприятия» — имя кластера (например,
- На последнем шаге в поле «Основной режим запуска» выберите «Тонкий клиент».
- В поле «Версия 1С:Предприятия» при необходимости укажите конкретную версию, например
8.3.24, чтобы программа запуска не путалась между установленными.
Шаг 3. Проверьте запуск
Нажмите 1С:Предприятие. Если откроется окно авторизации и затем рабочий стол программы — настройка завершена. Проверить, в каком клиенте вы работаете, можно в окне «О программе»: там указан тип клиентского приложения.
Запуск из командной строки и ярлыка
Для ярлыка на рабочем столе или скрипта пригодятся ключи запуска:
:: Серверная база
"C:\Program Files\1cv8\8.3.24.1342\bin\1cv8c.exe" ENTERPRISE /S"srv1c\buh"
:: База на веб-сервере
"C:\Program Files\1cv8\8.3.24.1342\bin\1cv8c.exe" ENTERPRISE /WS"https://1c.company.ru/buh"
:: Файловая база
"C:\Program Files\1cv8\8.3.24.1342\bin\1cv8c.exe" ENTERPRISE /F"D:\Bases\Buh"
:: С пользователем и медленным каналом
"C:\Program Files\1cv8\8.3.24.1342\bin\1cv8c.exe" ENTERPRISE /S"srv1c\buh" /N"Иванова" /O Low
Номер версии в пути подставьте свой. Пароль в ярлык через /P лучше не прописывать: его прочтёт любой, у кого есть доступ к компьютеру.
Частые сбои тонкого клиента и что с ними делать
Кэш хранится в профиле пользователя, в %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8, в подкаталогах с длинными именами-идентификаторами. Удалять их вручную можно только при закрытой 1С у этого пользователя. Список баз (ibases.v8i) не трогайте — иначе пропадёт список информационных баз.
Нюансы тонкого клиента для разработчиков
Тонкий клиент меняет правила для кода. Код, который работал в обычном приложении, в управляемом может не скомпилироваться на клиенте.
🧩 Что недоступно на клиенте:
- запросы, объекты прикладных типов (
ДокументОбъект,СправочникОбъект), менеджеры регистров; - чтение и запись в базу напрямую;
- серверные общие модули без флага «Вызов сервера».
Всё это выполняется на сервере, а клиент обращается к нему через процедуры с директивами компиляции.
Цена серверного вызова
Каждый вызов процедуры &НаСервере из формы передаёт на сервер и обратно данные формы. На форме с большой табличной частью это заметно даже в локальной сети.
Правила, которые реально ускоряют работу:
- Если серверной процедуре не нужны реквизиты формы — объявляйте её
&НаСервереБезКонтекстаи передавайте только нужные параметры. - Не вызывайте сервер в цикле на клиенте. Соберите данные в массив и передайте одним вызовом.
- Проверки, которые можно сделать на клиенте (заполненность поля, формат строки), делайте на клиенте.
&НаКлиенте
Процедура ЗаполнитьЦены(Команда)
МассивНоменклатуры = Новый Массив;
Для Каждого Строка Из Объект.Товары Цикл
МассивНоменклатуры.Добавить(Строка.Номенклатура);
КонецЦикла;
Цены = ПолучитьЦены(МассивНоменклатуры);
Для Каждого Строка Из Объект.Товары Цикл
Цена = Цены.Получить(Строка.Номенклатура);
Если Цена <> Неопределено Тогда
Строка.Цена = Цена;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
&НаСервереБезКонтекста
Функция ПолучитьЦены(МассивНоменклатуры)
Результат = Новый Соответствие;
// здесь один запрос к регистру цен по всему массиву,
// результат складывается в Результат.Вставить(Номенклатура, Цена)
Возврат Результат;
КонецФункции
Один вызов сервера на всю табличную часть вместо вызова на каждую строку.
Файлы и внешние компоненты
Файлы с компьютера пользователя сервер «не видит». Чтобы обработать загруженный Excel или XML, файл сначала передают во временное хранилище (ПоместитьВоВременноеХранилище и асинхронные методы помещения файла), а на сервере читают оттуда.
Внешние компоненты для торгового оборудования ставятся на клиентский компьютер. На Linux и macOS нужна сборка компоненты под эту ОС, иначе подключение оборудования не заработает.
Отладку клиентского кода тонкого клиента ведут так же, как обычно: из Конфигуратора или EDT подключаются к предметам отладки «Тонкий клиент». На рабочем месте пользователя для этого нужно разрешить отладку в параметрах запуска.
Безопасность при работе через тонкий клиент
Тонкий клиент сам по себе не шифрует и не защищает данные лучше толстого. Безопасность держится на настройках сервера и сети.
🔒 Что настроить в первую очередь:
- Внешний доступ только через HTTPS или VPN. Порты кластера 1540, 1541 и диапазон рабочих процессов в интернет не открывайте. Для удалённых сотрудников — веб-публикация с сертификатом или VPN-туннель.
- Пароли у всех пользователей. Пользователь без пароля в серверной базе — открытая дверь для любого, кто знает имя.
- Аутентификация операционной системы. В доменной сети можно связать пользователя 1С с учётной записью Windows и убрать отдельный пароль.
- Права по ролям. Права в базе задают роли конфигурации, а не тип клиента. Ограничения тонкого клиента не мешают пользователю с полными правами что-то удалить.
- Защита от опасных действий. Платформа предупреждает при открытии внешних обработок и отчётов из файла. Не отключайте её без причины в карточке пользователя.
- Администратор кластера с паролем. Без него любой, у кого есть консоль администрирования, может завершать сеансы и менять параметры баз.
Не храните пароли в ярлыках и .bat-файлах. Параметр /P открытым текстом лежит на диске и в истории командной строки.
Частые вопросы о тонком клиенте 1С
Можно ли работать в тонком клиенте без интернета?
Работает ли тонкий клиент 1С на macOS и Linux?
Чем тонкий клиент отличается от веб-клиента?
Можно ли запустить Конфигуратор из тонкого клиента?
1cv8.exe). Для разработки нужна полная установка.