При работе в 1С:Предприятие через веб-сервер (IIS или Apache) с использованием тонкого клиента системные администраторы часто сталкиваются с неприятной ситуацией: в справочнике «Рабочие места» начинают бесконтрольно плодиться дубли. Это приводит к тому, что подключенное оборудование (кассы, сканеры штрихкодов, эквайринг) перестает работать, так как оно «привязано» к старому идентификатору рабочего места, а система создала для пользователя новый. Разберем подробно, почему это происходит и как раз и навсегда решить эту проблему.
Для начала проанализируем, как 1С понимает, что пользователь зашел с конкретного компьютера. Идентификатор рабочего места (ClientID) — это не просто случайный набор символов. В типовых конфигурациях на базе «1С:Библиотеки подключаемого оборудования» (БПО) рабочее место жестко привязано к сочетанию следующих параметров:
Если хотя бы один из этих параметров меняется, 1С считает, что запуск выполнен с нового устройства, и создает в базе новую запись в справочнике «Рабочие места». Это критически важно для лицензирования и работы с торговым оборудованием.
Одной из самых частых причин «размножения» рабочих мест является некорректная очистка кэша 1С. Многие администраторы используют скрипты для автоматической очистки временных файлов. Рассмотрим пример такого скрипта, который может нанести вред:
rmdir "%AppData%\1C\1Cv8" /S /Q
rmdir "%LOCALAPPDATA%\1C\1Cv8" /S /Q
Проанализируем ситуацию: в папке %LOCALAPPDATA%\1C\1Cv8 (или в аналогичных подпапках профиля) хранится файл 1cv8u.pfl. Именно в этом файле 1С сохраняет уникальный идентификатор клиента. Если скрипт полностью удаляет эти директории, при следующем запуске программа генерирует новый ID, что и приводит к появлению дубля в базе.
Для решения этой проблемы мы рекомендуем изменить подход к очистке кэша. Вместо полного удаления папок, необходимо сохранять и восстанавливать файл настроек. Рассмотрим правильный алгоритм в скрипте:
@echo off
set "PFL_PATH=%LOCALAPPDATA%\1C\1Cv8\1cv8u.pfl"
set "BACKUP_PATH=%USERPROFILE%\Documents\1c_backups"
if not exist "%BACKUP_PATH%" mkdir "%BACKUP_PATH%"
:: Сохраняем файл с ID рабочего места
if exist "%PFL_PATH%" copy /Y "%PFL_PATH%" "%BACKUP_PATH%\1cv8u.pfl"
:: Очищаем кэш (удаляем только папки с GUID, не трогая корень, где лежит pfl)
for /d %%i in ("%LOCALAPPDATA%\1C\1Cv8\*") do rmdir /s /q "%%i"
:: Восстанавливаем файл, если он был удален случайно
if not exist "%PFL_PATH%" copy /Y "%BACKUP_PATH%\1cv8u.pfl" "%PFL_PATH%"
Если работа ведется через веб-публикацию, идентификация по сетевому имени может давать сбои из-за особенностей проброса заголовков веб-сервером. Самым надежным способом «зацементировать» рабочее место является использование параметра запуска WSID.
Параметр WSID (WorkStation ID) позволяет явно указать имя рабочей станции в строке соединения. Выясним, как это настроить:
/WSID "Kassa_N1".Теперь, даже если пользователь сменит имя в Windows или очистит все файлы профиля, 1С будет передавать на сервер имя Kassa_N1. В справочнике рабочих мест будет всегда выбираться одна и та же запись, и оборудование не «отвалится».
При использовании IIS (Internet Information Services) важно учитывать, как сервер идентифицирует входящие подключения. Бывают случаи, когда из-за настроек прокси-серверов или VPN все клиенты видятся серверу 1С под одним и тем же IP-адресом или с пустым именем хоста. Если в базе включена автоматическая генерация рабочих мест, это вызовет путаницу.
Проверим настройки IIS: убедимся, что включена «Windows Authentication» (если используется в домене) или настроена передача оригинальных заголовков хоста. Также стоит обратить внимание на регистр букв: для некоторых версий платформы COMP1 и comp1 — это разные рабочие места. Старайтесь всегда использовать единообразное написание.
Иногда корень проблемы кроется в обновлении самой «1С:Бухгалтерии». В новых версиях часто обновляется «Библиотека подключаемого оборудования». Даже если вы не трогали драйвер (например, АТОЛ), логика взаимодействия 1С с этим драйвером могла измениться.
Разберем, что нужно сделать в этом случае:
Чтобы забыть о проблеме дублирования рабочих мест, придерживайтесь следующих правил:
Соблюдение этих простых технических регламентов позволит обеспечить стабильную работу торгового оборудования и чистоту в справочниках информационной базы.