Почему в 1С не сдвигается разделитель расчетного листка в документе Начисление зарплаты и как это исправить?

Системный администратор 1С v8.3 (Обычные формы) 1С:Зарплата и Управление Персоналом IT и автоматизация бизнеса
← На главную

При работе в конфигурации 1С:Зарплата и Управление Персоналом (редакция 2.5 на платформе 1С:Предприятие 8.3 с обычными формами) пользователи могут столкнуться с неприятной ситуацией: в документе Начисление зарплаты сотрудникам организаций область предварительного просмотра расчетного листка становится слишком узкой, а элемент управления РазделительРасчетногоЛистка перестает реагировать на действия пользователя. При наведении курсор мыши меняется на двунаправленную стрелку изменения размера, однако сдвинуть границу вверх или вниз не удается.

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

При детальной диагностике выясняется ключевая закономерность: в стандартном сеансе через полный удаленный рабочий стол (RDP) разделитель перемещается корректно, а сбой возникает исключительно при запуске программы через режим RemoteApp.

Причины сбоя перетаскивания элементов в режиме RemoteApp

Рассмотрим, почему обычные формы платформы 1С теряют управление разделителями внутри бесшовных окон RemoteApp:

  1. Нарушение захвата событий мыши (Mouse Capture): для перемещения разделителей в обычных формах толстого клиента 1С задействует стандартный механизм перехвата событий манипулятора (SetCapture). В среде RemoteApp бесшовное окно транслируется через специальный композитный слой. При попытке перетащить внутренний разделитель фокус координат может теряться, из-за чего клик фиксируется, курсор меняет форму, но само перемещение не транслируется во внутренние структуры формы.
  2. Несовместимость масштабирования экрана (DPI Scaling): если на клиентском компьютере используется масштаб интерфейса Windows, отличный от 100% (например, 125% или 150%), виртуальные координаты мыши в RemoteApp рассинхронизируются с координатами серверного окна 1С.
  3. Влияние графической подсистемы RemoteFX: включенные механизмы аппаратного ускорения графики RemoteApp на терминальном сервере могут вызывать сбои в обработке динамических событий перемещения границ элементов управления.

Способ 1. Отключение RemoteFX Advanced RemoteApp на стороне RDS-сервера

Разберем системное решение, которое стабилизирует передачу событий мыши и обработку графики в бесшовных окнах RemoteApp на сервере удаленных рабочих столов:

  1. Откроем редактор реестра regedit от имени администратора на сервере терминалов (RDS).
  2. Перейдем в ветку реестра: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations.
  3. Создадим или изменим параметр fEnableRemoteFXAdvancedRemoteApp с типом DWORD (32 бита) и установим его значение равным 0.
  4. Выполним перезапуск службы удаленных рабочих столов или перезагрузим терминальный сервер для применения изменений.

Этот шаг отключает проблемный уровень расширенной графической обработки RemoteFX и возвращает классический механизм трансляции событий ввода мыши в бесшовные окна.

Способ 2. Корректировка параметров масштабирования (DPI) на рабочих станциях

Если серверные параметры менять нежелательно, проверим и настроим параметры отображения на клиентских компьютерах пользователей:

  1. Откроем системные параметры экрана Windows на рабочей станции пользователя и выставим масштаб 100%.
  2. В свойствах ярлыка запуска RemoteApp или исполняемого файла клиента перейдем на вкладку Совместимость.
  3. Нажмем кнопку Изменить параметры высокого DPI и включим флаг Переопределите режим масштабирования высокого разрешения, выбрав режим Приложение или Система.

Способ 3. Запуск через Alternate Shell вместо RemoteApp

Если системный администратор ограничивает предоставление полного рабочего стола пользователям, но режим RemoteApp продолжает блокировать перемещение элементов формы, применим альтернативный вариант:

  1. Создадим стандартный файл подключения .rdp без использования бесшовных окон RemoteApp.
  2. В параметрах подключения (вкладка Программы или директива alternate shell внутри файла .rdp) пропишем прямой запуск исполняемого файла 1cv8.exe с указанием пути к информационной базе.
  3. В таком режиме пользователь видит только окно программы 1С без меню «Пуск» и элементов сервера, но само приложение функционирует в рамках стандартной RDP-сессии, где захват разделителей форм отрабатывает без сбоев.

Способ 4. Сброс сохраненных настроек окна в пользовательском профиле

Иногда позиция разделителя блокируется из-за повреждения сохраненных координат формы в профиле пользователя. Проверим следующие действия:

  1. В главном меню программы откроем Окна и выполним команду Восстановить положение окна при открытом документе.
  2. Если стандартный сброс не дал результата, завершим сеанс пользователя и очистим конфигурационный файл настроек пользователя 1Cv8.pfl в каталоге профиля на терминальном сервере (путь %APPDATA%\1C\1Cv8\).

Способ 5. Доработка формы документа в конфигураторе

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

  1. Откроем форму документа в режиме Конфигуратор.
  2. Выберем элемент РазделительРасчетногоЛистка и область табличного поля расчетного листка.
  3. Зададим для области расчетного листка увеличенную высоту по умолчанию или скорректируем свойства привязок элементов к границам формы.
  4. При необходимости добавим на командную панель переключатель или кнопку, программно изменяющую видимость и высоту панели расчетного листка при нажатии.
← На главную