← На главную
При работе в терминальном режиме (RDP или RemoteApp) в базах 1С на обычных формах иногда возникает специфическая ошибка: при открытии документа или справочника элементы управления (табличные части, поля ввода, многостраничные панели) отображаются некорректно. Они могут наползать друг на друга, сжиматься или выходить за пределы окна. При этом стандартная очистка пользовательского кэша 1С помогает ровно на один запуск — при повторном открытии формы привязки снова сбиваются. Разберем причины такого поведения платформы и рассмотрим эффективные способы решения проблемы.
Причины сбоя геометрии и привязок элементов формы
Проанализируем механику работы обычных форм в 1С:Предприятии, чтобы понять, почему ошибка проявляется только при повторном открытии и привязана к конкретной учетной записи Windows:
- Нестандартный масштаб экрана (DPI) в сессии RDP: В обычных формах расчет координат элементов выполняется в абсолютных единицах (пикселях). Если на клиентском компьютере или в терминальной сессии установлен масштаб отображения, отличный от 100% (например, 125% или 150%), при первом запуске платформа открывает форму с базовыми метаданными. Однако при закрытии формы 1С сохраняет текущие координаты окна с учетом масштабирования. При повторном открытии формулы пересчета привязок дают критический сбой, из-за чего разметка страниц искажается.
- Повреждение сохраненных настроек окна в профиле Windows: Параметры размера, развернутости и положения диалоговых окон сохраняются платформой не только в кэше данных, но и в ветке реестра конкретного пользователя Windows (
HKEY_CURRENT_USER\Software\1C\...). Обычная очистка каталогов %appdata% и %localappdata% не затрагивает эти системные ветки, поэтому искаженная геометрия окна считывается повторно.
- Ошибки в иерархии привязок элементов на вкладках: Если элементы многостраничной панели привязаны напрямую к границам внешней формы, а не к сторонам самой панели, неактивные вкладки при масштабировании не могут корректно рассчитать свои размеры при инициализации.
Способ 1. Пересоздание профиля учетной записи Windows
Рассмотрим радикальный, но наиболее быстрый метод решения для системных администраторов, если ошибка локализована в рамках одной терминальной учетной записи:
- Завершим все активные терминальные сеансы проблемного пользователя.
- В оснастке управления пользователями удалим учетную запись Windows (или переименуем ее профиль на сервере в каталоге
C:\Users\).
- Создадим учетную запись заново и выдадим необходимые права доступа к терминалу и сетевым каталогам базы 1С.
- При новом входе пользователя в систему будет сгенерирован чистый реестр
HKCU с эталонными системными настройками масштабирования, что полностью устранит сбой привязок.
Способ 2. Точечный сброс настроек геометрии и реестра без удаления пользователя
Если удаление учетной записи нежелательно из-за наличия индивидуальных системных настроек, разберем последовательность точечной очистки параметров:
- Восстановление положения окна из интерфейса: Зайдем в проблемную форму документа в режиме «1С:Предприятие». Нажмем правой кнопкой мыши на заголовок окна или системную иконку в левом верхнем углу и выберем пункт «Восстановить положение окна». Затем развернем окно обратно — платформа перезапишет эталонные координаты.
- Очистка пользовательских настроек формы: В режиме предприятия откроем меню управления настройками пользователей и удалим все сохраненные пользовательские настройки для проблемного документа.
- Очистка веток реестра 1С: Зайдем на терминальный сервер под сессией пользователя, откроем редактор реестра (
regedit) и удалим ветку:
HKEY_CURRENT_USER\Software\1C\1Cv8
(а также ветку 1Cv82, если база ранее переносилась с предыдущих версий платформы).
Способ 3. Настройка масштабирования (DPI) и совместимости
Выясним, как предотвратить искажение координат элементов при подключении через RemoteApp или RDP с экранов с высоким разрешением:
- В параметрах дисплея на клиентском компьютере и в терминальной сессии установим масштаб 100% (96 DPI).
- На сервере откроем свойства исполняемого файла
1cv8.exe (или ярлыка запуска 1С).
- Перейдем на вкладку «Совместимость» и нажмем кнопку «Изменить параметры высокого DPI».
- Включим опцию «Переопределите поведение масштабирования высокой четкости» и установим значение «Приложение» (Application) или «Система» (System). Это заблокирует попытки операционной системы произвольно масштабировать форму при изменении размеров экрана.
Способ 4. Проверка и исправление привязок в Конфигураторе
Разберем по шагам, как локализовать и исправить ошибки привязок в коде и макете формы, если проблема периодически повторяется у разных пользователей:
- Откроем проблемную форму в Конфигураторе.
- Нажмем сочетание клавиш
Ctrl + R для запуска режима проверки формы. Изменим размеры окна мышью: некорректно привязанные элементы будут подсвечиваться красным контуром.
- Выделим элементы на проблемных страницах панели и проверим их свойства привязки: они должны быть жестко привязаны к границам страницы-родителя (контейнера), а не к основной форме документа.
- При необходимости выделим элементы панели и нажмем «Сбросить все привязки», после чего настроим их заново.
- Если эластичность документа не требуется, в свойствах самой формы установим фиксированный размер (запретим изменение размера пользователем), что полностью исключит сбои при любых пользовательских DPI.