Почему после обновления платформы 1С в отчете СКД пропало поле?

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

Представим ситуацию: после планового обновления платформы 1С до новой версии в одном из типовых отчетов, который раньше работал безупречно, внезапно пропадает важное поле. Оно исчезает из списка доступных полей для выбора и отбора, хотя в самой схеме компоновки данных (СКД) оно по-прежнему присутствует. Попытки перевыбрать его в настройках ни к чему не приводят. Стандартные действия, вроде очистки кэша, не помогают. Именно с такой проблемой столкнулся автор темы на форуме, когда после перехода на платформу 1С:Предприятие 8.3 (8.3.23.1688) в типовом отчете "АнализСебестоимостиТоваровРасширенный" из конфигурации "Управление торговлей 11" пропало поле "Номенклатура".

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

Анализ проблемы и пошаговая диагностика

Странное поведение системы, особенно после обновлений, требует системного подхода к поиску причины. Проанализируем шаги, которые помогают локализовать источник неисправности.

  1. Первичная проверка: кэш и настройки отчета

    Первое, что приходит на ум в таких случаях, — это проблемы с кэшем или сохраненными пользовательскими настройками. На форуме были предложены стандартные методы:

    • Сохранить отчет под другим именем. Иногда это помогает обойти проблемы, связанные с кэшированием метаданных конкретного объекта.
    • Полная очистка кэша. Это удаление временных файлов 1С из папок %APPDATA%\1C\1Cv8 и %LOCALAPPDATA%\1C\1Cv8. Это более радикальный способ, который решает множество проблем с "фантомным" поведением интерфейса.
    • Перезапуск служб 1С. Если работа ведется в клиент-серверном варианте, перезапуск сервера 1С также может помочь.

    В рассматриваемом случае эти действия не принесли результата. Более того, автор уточнил, что проблема видна даже в Конфигураторе при открытии схемы отчета. Этот факт — ключевой момент диагностики. Если ошибка воспроизводится на уровне метаданных в Конфигураторе, это почти полностью исключает влияние пользовательского кэша и указывает на более глубокую проблему: либо в самой конфигурации, либо в платформе.

  2. Углубленная диагностика: изоляция проблемы

    Когда простые методы не работают, нужно изолировать "виновника". Для этого используется метод переноса проблемного объекта между разными средами, как было предложено в сообщении (18) на форуме. Проанализируем этот подход подробнее.

    Цель: понять, где находится источник проблемы — в самом файле отчета, в настройках базы данных или в версии платформы.

    Порядок действий:

    1. Создайте тестовый контур. У вас должно быть как минимум две базы: рабочая (прод), где наблюдается проблема, и тестовая. В идеале, нужна еще одна тестовая база на предыдущей, стабильной версии платформы.
    2. Экспорт из рабочей базы. В рабочей базе, где есть ошибка, выгрузите проблемный отчет во внешний файл (например, АнализСебестоимости.erf). Также выгрузите настройки этого отчета в XML-файл.
    3. Импорт в тестовую базу (новая платформа). Откройте тестовую базу, работающую на той же "проблемной" версии платформы (8.3.23.1688). Попробуйте открыть в ней выгруженный отчет. Если ошибка воспроизводится, значит, проблема не в "мусоре" рабочей базы, а в связке "отчет + платформа".
    4. Проверка на старой платформе. Запустите этот же внешний отчет на базе со старой, стабильной платформой (например, 8.3.21.1622). Если здесь отчет работает корректно, это почти стопроцентное доказательство того, что проблема в новой платформе.
    5. Обратный тест. Выгрузите аналогичный типовой отчет из "здоровой" базы на старой платформе и попробуйте запустить его на новой. Если он тоже "сломается", это окончательно подтвердит гипотезу о баге платформы.

    Такой перекрестный метод позволяет с высокой точностью определить, что именно вызывает сбой.

Решение: ошибка платформы и способы ее исправления

В результате обсуждения и проверок выяснилось, что первопричиной странного поведения СКД является ошибка в платформе 1С:Предприятие версии 8.3.23.1688. Первые релизы новых веток платформы часто содержат "детские болезни", которые исправляются в последующих сборках. В данном случае проблема затронула механизм работы Системы Компоновки Данных.

Существует два основных пути решения этой проблемы.

Вариант 1: Откат на предыдущую стабильную версию (быстрое решение)

Автор темы поступил именно так — вернулся на платформу 8.3.21.1622, и проблема полностью исчезла. Это надежный и быстрый способ восстановить работоспособность системы, если нет острой необходимости использовать функции новой платформы.

Когда использовать этот метод:

Однако стоит помнить, что это временное решение, так как оставаясь на старой версии, вы не получаете исправлений других ошибок и новых возможностей.

Вариант 2: Обновление до исправленного релиза (рекомендуемое решение)

Наиболее правильный и долгосрочный подход — это не откат назад, а движение вперед к стабильному релизу. Фирма "1С" оперативно выпускает исправления для найденных ошибок. Как показывают данные из открытых источников, начальные сборки ветки 8.3.23 действительно были нестабильны.

Например, помимо проблем с СКД, в них встречалась критическая ошибка, связанная с патчем EF_00_00594218, которая могла полностью блокировать вход пользователей в информационную базу.

Рекомендация: Вместо возврата на устаревшую ветку 8.3.21, следует установить последний стабильный релиз ветки 8.3.23 (например, 8.3.23.2040 или выше) или перейти на более новую стабильную ветку платформы (например, 8.3.24, 8.3.25 и т.д., предварительно изучив информацию о их стабильности).

Это позволит:

Выводы и общие рекомендации

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

  1. Относитесь с осторожностью к первым релизам. Не спешите устанавливать самые первые сборки новых веток платформы на критически важные рабочие базы. Лучше дождаться выхода нескольких обновлений (минорных версий), в которых исправляются основные ошибки.
  2. Имейте тестовый контур. Всегда проводите обновление сначала на тестовой копии рабочей базы, чтобы проверить работоспособность ключевых бизнес-процессов.
  3. Действуйте методично при диагностике. При возникновении необъяснимых ошибок после обновлений, последовательно исключайте возможные причины: кэш -> настройки пользователя -> целостность базы -> версия конфигурации -> версия платформы.
  4. Следите за информацией. Регулярно просматривайте технологические блоги, форумы и официальный баг-трекер 1С. Часто о проблемах в новых релизах становится известно очень быстро, и там же можно найти рекомендации по их обходу или исправлению.

Таким образом, проблема с пропавшим полем в отчете СКД — это яркий пример того, как ошибка в платформе может вызвать непредсказуемое поведение системы. Правильная диагностика и выбор между временным откатом и стратегическим обновлением до стабильной версии являются ключом к успешному решению подобных инцидентов.

← На главную