К статье
Практический материал

Администрирование · 9 мин

Как определить тип клиента 1С

Как определить тип клиента 1С: тонкий, толстый или веб-клиент. Признаки интерфейса, проверка через конфигуратор, код и строку запуска, типичные ошибки.

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

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

Какие типы клиентов существуют в 1С

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

Веб-клиент вообще не требует установки платформы: работа идёт в браузере, а база должна быть опубликована на веб-сервере (IIS или Apache). Отдельно существует мобильный клиент для смартфонов и планшетов, но он применяется в специальных мобильных решениях и в офисном учёте встречается редко.

Как определить тип клиента по внешним признакам

Самый быстрый способ — посмотреть, как именно запущена программа. Если работа идёт в окне браузера (Chrome, Firefox, Edge) и в адресной строке виден адрес вида http://сервер/имя_базы — это веб-клиент. Если запущено отдельное приложение Windows из ярлыка 1С — это тонкий или толстый клиент.

Отличить тонкий клиент от толстого «на глаз» сложнее: интерфейс управляемого приложения у них практически одинаковый. Косвенные признаки: толстый клиент обычно запускается ярлыком с параметром RunMode или явным выбором «Толстый клиент» в стартере 1cestart, а в файловой базе в толстом клиенте доступны пункты, которых нет в тонком. Надёжнее проверить программно — об этом ниже.

Адрес в браузереВеб-клиент

Проверьте, открыта ли база в окне браузера по ссылке на веб-сервер

Отдельное окно приложенияТонкий или толстый клиент

Уточните программно через ТекущийРежимЗапуска()

Доступен конфигуратор и отладкаТолстый клиент

Тонкий клиент и веб-клиент не запускают конфигуратор

Обычное приложение (старый интерфейс)Толстый клиент

Обычные формы работают только в толстом клиенте

Как проверить тип клиента через меню «О программе»

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

Обратите внимание на строку режима: там указывается, файловая или клиент-серверная база, а также тип подключения. Если база открыта через веб-сервер, в адресе подключения будет виден протокол http или https — это подтверждает работу через публикацию, что характерно для веб-клиента и тонкого клиента через веб-сервер.

Как определить тип клиента программно

Для разработчика основной инструмент — встроенные функции и конструкции препроцессора. Функция ТекущийРежимЗапуска() возвращает значение системного перечисления РежимЗапускаКлиентскогоПриложения: УправляемоеПриложение или ОбычноеПриложение. Это говорит о режиме интерфейса, но не о типе клиента напрямую.

Точный тип клиента определяют директивы препроцессора: #Если ТонкийКлиент Тогда, #Если ТолстыйКлиентОбычноеПриложение Тогда, #Если ТолстыйКлиентУправляемоеПриложение Тогда, #Если ВебКлиент Тогда, #Если Сервер Тогда. Код внутри таких блоков выполняется только в соответствующем окружении, что позволяет ветвить логику.

bsl
#Если ВебКлиент Тогда
    Сообщить("Работаем в веб-клиенте");
#ИначеЕсли ТонкийКлиент Тогда
    Сообщить("Работаем в тонком клиенте");
#Иначе
    Сообщить("Толстый клиент или сервер");
#КонецЕсли

Дополнительно можно использовать объект СистемнаяИнформация и функции получения сведений о сеансе: в журнале регистрации и в списке активных пользователей (в клиент-серверном режиме — консоль кластера) для каждого сеанса указывается тип клиентского приложения.

Как узнать тип клиента через настройки базы и публикацию

Если вы администратор, откройте свойства информационной базы в списке стартера 1cestart: там виден тип расположения (на этом компьютере, на сервере 1С или на веб-сервере). База, подключённая по адресу веб-сервера, может работать и в тонком клиенте — это частый источник путаницы.

Также проверьте режим совместимости и основной режим запуска в конфигураторе: «Сервис → Параметры» и свойства конфигурации содержат настройку «Основной режим запуска». Она задаёт, какой клиент стартует по умолчанию, но пользователь может переопределить её параметром командной строки.

Как выбрать и запустить нужный тип клиента

В окне стартера 1cestart выберите базу и нажмите кнопку с требуемым типом запуска, либо используйте параметры командной строки: для толстого клиента — запуск 1cv8.exe, для тонкого — 1cv8c.exe. Веб-клиент запускается простым переходом по ссылке публикации в браузере.

Маршрут решения

Как выбрать действие

Нужна отладка или работа в обычном приложенииЗапускайте толстый клиент
Нужна быстрая работа пользователей по локальной сети или через веб-серверИспользуйте тонкий клиент
Платформа не установлена на компьютере пользователяОпубликуйте базу и дайте ссылку для веб-клиента
Код ведёт себя по-разному у разных пользователейПроверьте тип клиента каждого сеанса в консоли кластера или журнале регистрации

Ограничения разных клиентов и проверка результата

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

После смены типа клиента проверьте результат: база открылась, интерфейс соответствует ожиданиям, прикладные функции (печать, обмены, отчёты) выполняются без ошибок. Если функция «пропала» — почти наверняка дело в ограничении текущего клиента, а не в самой конфигурации.

Контрольные точки

Как проверить результат

Способ запуска
Норма

Приложение соответствует выбранному типу (ярлык, браузер)

Тревожный признак

Открылся другой клиент — проверьте настройку режима запуска

Работа функций
Норма

Печать, отчёты и обмены выполняются

Тревожный признак

Ошибки вида «метод недоступен» — ограничение клиента

Сеанс в консоли кластера
Норма

Тип клиента сеанса совпадает с ожидаемым

Тревожный признак

Пользователь работает не в том клиенте, который планировался

Частые ошибки при определении типа клиента

Типичные ошибки
01
Судить о типе клиента только по способу подключения: тонкий клиент тоже может работать через веб-сервер, из-за чего его путают с веб-клиентом
02
Использовать ТекущийРежимЗапуска() для определения типа клиента: функция возвращает режим интерфейса, а не клиентское приложение; для точного определения нужны директивы препроцессора
03
Писать код без ветвления по клиентам: функции, доступные только в толстом клиенте, вызывают ошибки у пользователей тонкого и веб-клиента
04
Менять основной режим запуска конфигурации без проверки: пользователи с ярлыками на конкретный клиент продолжат работать как раньше, и диагностика станет запутанной

FAQ: частые вопросы о типах клиентов 1С

Чем тонкий клиент отличается от толстого на практике?

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

Можно ли работать в веб-клиенте без установки платформы?

Да, это главное преимущество веб-клиента: достаточно браузера и ссылки на опубликованную базу. Однако администратор должен заранее настроить веб-сервер (IIS или Apache) и выполнить публикацию информационной базы.

Почему в тонком клиенте недоступна какая-то функция, а в толстом работает?

Функция, скорее всего, использует возможности, недоступные в тонком клиенте: обычные формы, COM-объекты на клиенте или прямой доступ к файловой системе. Решение — перенести логику на сервер или адаптировать код под ограничения тонкого клиента.

Как узнать, в каком клиенте работает конкретный пользователь?

В клиент-серверном режиме откройте консоль кластера серверов 1С: в списке сеансов для каждого пользователя указано клиентское приложение. Альтернатива — журнал регистрации и функциональность активных пользователей в типовых конфигурациях.

Влияет ли тип клиента на скорость работы базы?

Да. Тонкий клиент обычно быстрее на медленных каналах, так как передаёт меньше данных. Толстый клиент может быть быстрее при локальной работе с файловой базой, но сильнее нагружает сеть в клиент-серверном варианте при неоптимальном коде.

Что выбрать для новых пользователей по умолчанию?

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

Итог

Что важно запомнить

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