Почему 1С:Бухгалтерия начинает требовать обновления платформы не сразу после установки нового релиза?

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

Многие пользователи и 1С-специалисты сталкиваются с достаточно неприятной ситуацией: после успешного обновления конфигурации «Бухгалтерия предприятия» до новой версии (например, 3.0.142.56) на, казалось бы, подходящей платформе (например, 8.3.23.1782), система запускается и работает без нареканий. Однако спустя некоторое время, иногда даже на следующий день, 1С неожиданно начинает выдавать сообщение о необходимости обновить платформу до более новой версии (например, 8.3.23.1865). Давайте вместе разберем, почему возникает такая «отложенная» реакция системы и какие пути решения этой проблемы существуют.

Механизм возникновения проблемы: регламентные задания и динамические проверки

Мы выяснили, что основной причиной такого поведения 1С является динамическая проверка версий технологической платформы, выполняемая регламентными заданиями конфигурации. В современных релизах «1С:Предприятия» существует специальное регламентное задание, например, ОбновлениеИнформацииОВерсияхПлатформы (или в старых релизах ПолучениеОбновленийПрограммы), которое периодически, как правило, один-два раза в сутки, обращается к порталу технической поддержки 1С. Цель этого задания — получить актуальную информацию о минимально допустимых и рекомендуемых версиях технологической платформы для текущей версии конфигурации.

Рассмотрим подробнее этот механизм:

  1. Первоначальное обновление конфигурации: Когда вы обновляете конфигурацию, например, «Бухгалтерия предприятия», программа запускается на вашей текущей платформе. В этот момент, если регламентное задание еще не выполнилось после обновления, или если информация о минимальных версиях не была обновлена, система может не выдать предупреждение сразу.
  2. Отложенная проверка: Через некоторое время, когда регламентное задание ОбновлениеИнформацииОВерсияхПлатформы срабатывает и успешно получает актуальные данные с портала 1С, конфигурация «узнает» о новых, более высоких требованиях к платформе. Если ваша текущая платформа не соответствует этим требованиям, система начинает выдавать соответствующие предупреждения. Это объясняет, почему проблема проявляется не сразу, а с задержкой.
  3. Зависимость от интернет-поддержки: Важно понимать, что этот механизм работает только при подключенной интернет-поддержке и доступности внешних ресурсов. Именно поэтому в некоторых случаях, например, при работе с копией базы, где интернет-поддержка может быть заблокирована или не настроена, система может не выдавать такое предупреждение, создавая иллюзию стабильной работы на старой платформе.

Изменяющиеся требования и ошибки конфигурации

Дополнительной проблемой, которая усугубляет ситуацию, является то, что фирма «1С» может изменять требования к платформе даже после выпуска релиза конфигурации. Специалисты отмечают случаи, когда описание требований к версии «1С БП» правилось уже после выпуска конфигурации, с повышением требуемой платформы. Это означает, что даже если вы внимательно прочитали файл Readme.txt или описание релиза на сайте users.1c.ru до обновления, информация могла устареть к моменту фактического запуска регламентного задания.

Более того, в данной конкретной ситуации с релизом 3.0.142.56 была зафиксирована официальная ошибка. Техническая поддержка 1С подтвердила, что существовала ошибка (Код ошибки: 70061277), при которой система ошибочно выдавала предупреждение о несоответствии версии платформы. Эта ошибка была зарегистрирована 21.09.2023 и исправлена в следующем релизе конфигурации «Бухгалтерия предприятия, редакция 3.0», начиная с версии 3.0.143.24.

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

Временные обходные пути (расширения)

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

1. Изменение функции НомерСборкиПоТекущейВерсииПлатформы

Этот метод предполагает создание расширения, которое переопределяет стандартную функцию НомерСборкиПоТекущейВерсииПлатформы таким образом, чтобы она всегда возвращала заведомо подходящую (или старую) версию платформы. Таким образом, даже если конфигурация запросит минимальную версию, она получит ответ, что текущая платформа соответствует требованиям.

Давайте посмотрим на пример кода для такого расширения:


&Вместо("НомерСборкиПоТекущейВерсииПлатформы")
Функция ВП_НомерСборкиПоТекущейВерсииПлатформы(НомераСборокСтрокой)
    Возврат "8.3.17.1"; // Или любую другую подходящую старую версию
КонецФункции

В данном примере функция всегда будет возвращать строку "8.3.17.1", обманывая систему относительно фактической версии используемой платформы. Вы можете указать любую другую версию, которая гарантированно "пройдет" проверку, например, ту, на которой ваша система работала стабильно ранее.

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

2. Отключение онлайн-проверки версий платформы

Другой подход заключается в блокировании или изменении работы регламентного задания, которое обращается к внешним ресурсам для получения информации о версиях платформы. Это можно сделать, переопределив функцию ИнформацияОВерсияхПлатформы в модуле, отвечающем за получение обновлений.

Вот пример кода для такого расширения:


&Вместо("ИнформацияОВерсияхПлатформы")
Функция ИВЛ_ИнформацияОВерсияхПлатформы()
    Результат = Новый Структура;
    Результат.Вставить("МинимальнаяВерсияПлатформы" , ""); // Устанавливаем пустую строку
    Результат.Вставить("РекомендуемаяВерсияПлатформы", ""); // Устанавливаем пустую строку
    Возврат Результат;
КонецФункции

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

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

Официальное решение проблемы

Как мы уже выяснили, в случае с релизом 3.0.142.56 и его требованиями к платформе, речь шла об ошибке. Компания 1С оперативно исправила ее.

  1. Код ошибки: Проблема была зарегистрирована под кодом 70061277.
  2. Описание ошибки: "Ошибочно при входе выдается предупреждение, что используется версия платформы, ниже минимальной: 8.3.21.1895, 8.3.22.2239, 8.3.23.1865, 8.3.24.1163".
  3. Исправление: Ошибка была исправлена в конфигурации «Бухгалтерия предприятия, редакция 3.0», начиная с версии 3.0.143.24.

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

Рекомендации по обновлению 1С:Предприятия

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

  1. Создание резервных копий: Это критически важно. Перед любыми манипуляциями с системой, будь то обновление платформы или конфигурации, всегда создавайте полные резервные копии всех информационных баз. Это позволит вернуться к рабочему состоянию в случае возникновения непредвиденных проблем.
  2. Последовательность обновления: Стандартная и рекомендуемая последовательность действий при обновлении 1С:Предприятия такова: сначала мы обновляем технологическую платформу (при необходимости), а затем уже обновляем конфигурацию.
  3. Тщательная проверка совместимости: Всегда внимательно изучайте документацию к новому релизу конфигурации (файл Readme.txt или описание на портале users.1c.ru) на предмет минимально требуемых версий платформы. Убедитесь, что выбранная для установки версия платформы соответствует этим требованиям. Помните, что требования могут меняться, поэтому актуальная информация всегда на вес золота.
  4. Планирование времени обновления: Обновление платформы и конфигурации требует остановки работы пользователей. Планируйте эти работы на время с минимальной нагрузкой на систему, например, в нерабочие часы или выходные.
  5. Тестирование на копии: Если есть возможность, сначала выполняйте обновление на копии рабочей базы. Это позволяет выявить потенциальные проблемы и убедиться в корректной работе системы до применения изменений на основной базе. Обратите внимание на то, включена ли интернет-поддержка на копии, чтобы имитировать поведение рабочей базы.
  6. Установка патчей: После основного обновления конфигурации иногда могут выпускаться отдельные патчи — небольшие исправления, которые устраняют мелкие ошибки, обнаруженные после выхода основного релиза. Следите за ними и устанавливайте по мере необходимости.
  7. Актуальные версии платформы: Фирма «1С» регулярно выпускает новые версии платформы. Рекомендуется использовать финальные (стабильные) версии платформы для обеспечения стабильной работы. Общие аппаратные требования для работы с «1С:Предприятием 8.3» включают наличие 64-разрядной операционной системы, процессора Intel Core i3 (или аналогичного AMD Ryzen) и выше, не менее 4 ГБ оперативной памяти (рекомендуется 8 ГБ и выше), а также SSD-диска для лучшей производительности.

Надеемся, что этот подробный разбор поможет вам избежать проблем с «отложенными» требованиями к платформе и обеспечит более гладкий процесс обновления вашей системы 1С.

← На главную