При обновлении конфигураций "1С:Зарплата и Управление Персоналом" иногда возникают ситуации, когда ошибки появляются не в самой конфигурации, а в выпускаемых к ней исправлениях (патчах). Одной из таких курьезных, но блокирующих работу ошибок, является сообщение "Поле объекта не обнаружено (Щумма)". В этой статье мы подробно разберем, откуда берется эта опечатка, почему стандартный поиск ее не находит и как восстановить работоспособность программы без привлечения разработчиков.
Давайте посмотрим на описание проблемы, с которой сталкиваются пользователи. При попытке заполнить документ НачислениеЗаПервуюПоловинуМесяца (аванс) или при окончательном расчете зарплаты программа выдает ошибку и прекращает работу.
Текст ошибки выглядит следующим образом:
Ошибка выполнения фонового задания ДлительныеОперации.ВыполнитьСКонтекстомКлиента
...
по причине:
Поле объекта не обнаружено (Щумма)
{ОбщийМодуль.УчетНДФЛ.Модуль(19084)}: СтрокаУчета.РазмерВычета = - СтрокаВычета.Щумма;
Здесь мы сразу видим причину: явная опечатка разработчика. Вместо свойства Сумма написано Щумма (на стандартной раскладке клавиатуры буквы "С" и "Щ" находятся далеко друг от друга, но клавиша "O" (Щ) и "C" (С) в английской и русской раскладках могут вносить путаницу при слепом наборе, либо это случайная ошибка автозамены).
Важно обратить внимание на место возникновения ошибки: ОбщийМодуль.УчетНДФЛ.Модуль. Это говорит нам о том, что проблема кроется в алгоритмах расчета Налога на доходы физических лиц.
Многие пользователи, увидев такую ошибку, первым делом открывают Конфигуратор и пытаются найти слово "Щумма" через глобальный поиск, чтобы исправить его вручную. Однако поиск часто выдает результат: "Ничего не найдено".
Давайте разберемся, почему так происходит:
Чтобы найти такой код, необходимо в окне поиска переключить область поиска на "Расширения конфигурации" или искать внутри каждого конкретного расширения.
Исходя из списка расширений, предоставленного в теме, мы видим множество установленных патчей с префиксом EF_.... Поскольку ошибка возникает в модуле УчетНДФЛ, нам необходимо обратить внимание на патчи, которые модифицируют именно этот общий модуль.
Проанализируем ситуацию. Пользователь не менял код конфигурации, он просто обновил программу и позволил ей автоматически установить исправления. Следовательно, "Щумма" приехала с одним из последних патчей.
Наиболее вероятные кандидаты — это патчи, касающиеся расчета НДФЛ. В контексте релиза 3.1.29.38 и подобных, проблема часто кроется в расширениях, исправляющих ошибки учета вычетов или расчета налога (например, EF_70083909, EF_60013960 или аналогичные).
Нам не нужно снимать конфигурацию с поддержки или вызывать программиста для правки кода. Самый безопасный и правильный способ решения — удаление проблемного патча. Рассмотрим, как это сделать в пользовательском режиме.
Шаг 1. Откройте список установленных исправлений
Перейдите в раздел Администрирование, затем выберите пункт Обслуживание. Раскройте группу Обновление программы и нажмите на ссылку Установленные исправления (патчи).
Шаг 2. Найдите проблемный патч
В открывшемся списке вы увидите все установленные расширения EF_.... Вам нужно найти то исправление, которое вызывает конфликт. Если вы не знаете точного номера (так как 1С выпускает их регулярно), можно ориентироваться на дату установки (самые свежие) или действовать методом исключения, отключая патчи, связанные с НДФЛ.
В рассматриваемом случае наиболее вероятным виновником является патч, связанный с ошибкой в модуле УчетНДФЛ. Часто в описании патча (если открыть его карточку) сказано, что он исправляет ошибки расчета вычетов.
Шаг 3. Удаление исправления
Выделите подозрительный патч и нажмите кнопку Удалить исправление (или Отключить, если такая опция доступна и вы хотите временно проверить гипотезу). Программа попросит перезагрузку сеанса.
Шаг 4. Проверка работоспособности
После перезагрузки программы попробуйте снова заполнить документ Начисление зарплаты или Начисление за первую половину месяца. Если ошибка "Поле объекта не обнаружено (Щумма)" исчезла, значит, вы удалили верный патч.
Удаляя патч, вы теоретически возвращаете старую ошибку, которую он должен был исправить. Однако ошибка с "Щуммой" полностью блокирует работу, поэтому её устранение приоритетнее.
Разработчики 1С оперативно реагируют на такие ситуации. Обычно в течение 1-2 дней выпускается исправленная версия патча (часто с тем же номером, но с суффиксом _2, _3 или новый номер). Поэтому:
Если вы являетесь техническим специалистом и по каким-то причинам не можете удалить патч, но имеете доступ к Конфигуратору, вы можете исправить ошибку вручную, не снимая основную конфигурацию с поддержки.
Рассмотрим алгоритм:
УчетНДФЛ.УчетНДФЛ внутри расширения.
СтрокаУчета.РазмерВычета = - СтрокаВычета.Щумма;
Щумма на Сумма.Однако мы рекомендуем использовать метод удаления патча через пользовательский режим, так как это штатный механизм, не требующий квалификации разработчика и вмешательства в структуру базы данных.