При работе в программе 1С:Зарплата и управление персоналом 8 (редакция 3.1) пользователи могут столкнуться с неожиданным поведением интерфейса: в справочнике сотрудников при выборе режима просмотра "По подразделениям" названия подразделений в левой части окна отображаются зачеркнутым шрифтом. При этом сами подразделения являются действующими, не расформированы, и в них числятся активные сотрудники. Разберем подробно, почему возникает эта визуальная аномалия и какими способами можно вернуть нормальное отображение списка.
Проанализируем техническую сторону вопроса. Данная проблема не является следствием неправильных действий пользователя или случайного нажатия клавиш. Это системная ошибка, которая массово проявилась в релизах ветки 3.1.8. Рассмотрим основные факторы, которые приводят к зачеркиванию текста:
Настройки — Кадровый учет — Настройка штатного расписания) не установлен флаг Ведется штатное расписание.8.3.13.1513. Платформа некорректно интерпретирует запросы конфигурации к данным о состоянии подразделений при определенных условиях визуализации.Посмотрим на ситуацию глубже: зачеркнутый шрифт в 1С традиционно используется для обозначения объектов, помеченных на удаление или признанных неактуальными (например, уволенные сотрудники или закрытые склады). В случае с подразделениями программа проверяет поле ДатаРасформирования. Если штатное расписание не ведется, алгоритм проверки в некоторых релизах "ломается", и система считает, что подразделение уже не функционирует, даже если дата расформирования пуста.
Поскольку проблема официально признана разработчиками 1С как программная ошибка, самым правильным и надежным решением будет обновление конфигурации. Рассмотрим, какие шаги необходимо предпринять:
Проанализируем текущую версию вашей программы. Если вы используете релиз в диапазоне 3.1.8.113 — 3.1.8.155, вам необходимо обновиться до версии 3.1.8.185 или выше. В современных ветках, таких как 3.1.10, 3.1.14 и актуальных 3.1.27+, эта ошибка полностью устранена.
Если оперативное обновление всей конфигурации невозможно (например, из-за большого количества доработок), проверьте наличие официальных патчей (исправлений). В современных версиях 1С:ЗУП поддерживается автоматическая загрузка патчей, которые исправляют подобные программные ошибки без изменения номера версии релиза.
Если обновление требуется "здесь и сейчас", а работать с зачеркнутым списком неудобно, разберем обходной путь через изменение настроек учета. Помните, что это может повлиять на логику кадровых документов, поэтому действуйте осторожно.
Выполним следующую последовательность действий:
Настройки.Кадровый учет.Настройка штатного расписания.Ведется штатное расписание.После записи настроек зачеркивание в списке сотрудников обычно исчезает. Однако, если ваша организация принципиально не использует функционал штатного расписания (например, для упрощения учета), этот метод может создать лишние сложности при оформлении приемов на работу и кадровых переводов, так как система начнет требовать указания позиций "штатки".
Проанализируем ситуацию, когда мы не можем ни обновиться, ни менять настройки учета. В этом случае мы можем изменить способ представления данных в самом справочнике Сотрудники. Ошибка визуализации привязана именно к иерархическому представлению "По подразделениям".
Рассмотрим, как изменить вид списка:
В окне справочника Сотрудники найдите поле Вид списка (обычно находится над табличной частью). Вместо значения По подразделениям выберите значение Плоский список. В этом режиме дерево подразделений слева исчезнет, а сотрудники будут отображаться единым списком. Поскольку иерархия слева не отрисовывается, эффект зачеркивания не будет мозолить глаза, хотя вы потеряете возможность быстрой фильтрации по папкам подразделений.
Если вы обладаете правами администратора или программиста, разберем, как эта ошибка выглядит "под капотом". В динамическом списке справочника задействовано Условное оформление. Система анализирует данные запроса, который формирует дерево подразделений.
Проанализируем фрагмент логики, который может приводить к ошибке. В коде это выглядит примерно так (утрированно):
// Условное оформление для динамического списка
ЭлементОформления = Список.УсловноеОформление.Элементы.Добавить();
ЭлементОформления.Оформление.УстановитьЗначениеПараметра("Шрифт", Новый Шрифт(,,,,,Истина)); // Истина - зачеркнутый
ЭлементОформления.Условие = Новый ПолеКомпоновкиДанных("Расформировано") = Истина;
При ошибке в релизе 3.1.8 при выключенном штатном расписании значение поля Расформировано в запросе динамического списка могло возвращать NULL или Истина из-за некорректного левого соединения таблиц в недрах конфигурации. Именно поэтому очистка кэша (которую часто советуют на форумах) здесь помогает редко — проблема кроется в самом тексте запроса или логике работы платформы с этим запросом.
Подводя итог, можно сказать, что зачеркнутые подразделения — это классический "баг" переходного периода развития ЗУП 3.1. Для решения проблемы мы рекомендуем:
8.3.18 и выше) и обновить конфигурацию до текущего релиза.Плоский список в справочнике сотрудников.Подразделение расформировано не установлен, а дата формирования не превышает текущую дату.Соблюдение этих рекомендаций позволит вам вернуть интерфейс программы в рабочее состояние и избежать путаницы при работе с кадровыми документами.