В практике администратора и программиста 1С часто возникает ситуация, когда необходимо получить файл конфигурации .cf конкретного старого релиза. Это требуется для корректного сравнения с доработанной базой, выявления списка изменений или подготовки к масштабному обновлению («прыжку») через несколько версий. Часто портал 1С не предоставляет полные дистрибутивы для устаревших версий, ограничиваясь только файлами обновлений .cfu. Рассмотрим подробнее, какими методами можно решить эту задачу, проанализируем технические нюансы и разберем алгоритмы действий. Для задачи обновления доработанной базы с выносом изменений пригодится методика приведения нетиповой конфигурации к типовой.
Прежде чем искать дистрибутив на внешних ресурсах, проанализируем состояние текущей информационной базы. Если база когда-то была обновлена корректно, внутри нее хранится так называемая Конфигурация поставщика. Это эталонный файл .cf того релиза, на который было выполнено последнее обновление.
Разберем по шагам процесс сохранения этого файла:
.cf.Важное примечание: Если, как в рассматриваемом случае, конфигурация поставщика осталась на старом релизе (например, 35.1), а сама база фактически имеет код версии 39.1, этот метод не даст нам нужного файла напрямую. Вы получите .cf версии 35.1, что не позволит корректно выявить доработки, сделанные в периоде между 35-м и 39-м релизами.
Если полного дистрибутива (Install) нет, но есть доступ к файлам обновлений (Update), мы можем «вырастить» нужный нам .cf из более ранней полной версии. Это стандартный и самый надежный способ получения эталона.
Рассмотрим алгоритм действий:
.cf..cfu через меню Конфигурация — Поддержка — Обновить конфигурацию.Этот процесс трудоемок, но гарантирует получение идентичного байт-в-байт файла, который использовался официальным поставщиком. Для последующего контроля корректности данных после обновления или переноса можно использовать программу для автоматической сверки проводок между базами 1С.
Выясним причину, по которой пользователи иногда не могут найти ссылки на старые релизы. На сайте releases.1c.ru структура ссылок подчиняется определенной логике. Иногда файлы физически присутствуют на сервере, но ссылки на них скрыты в интерфейсе. Рассмотрим технический прием подмены имени файла в ссылке.
Стандартная ссылка на дистрибутив выглядит примерно так (условно):
.../version_file?nick=Trade103&ver=10.3.39.1&path=Trade\10_3_39_1\setup1c.zip
Проанализируем суффиксы файлов:
_setup1c.zip — полный установочный дистрибутив (содержит шаблоны для создания новой базы)._setupt1c.zip — технологический дистрибутив (часто содержит только .cf файл и минимум дополнительных материалов)._upd1c.zip — файл обновления.Попробуем вручную изменить окончание ссылки в адресной строке браузера. В некоторых случаях, если основной файл setup1c.zip недоступен, технологический архив setupt1c.zip может все еще храниться в каталоге релиза. Однако стоит помнить, что для старых версий (до 2020 года) такая практика применялась реже, и для конфигурации УТ 10.3 технологические дистрибутивы могли не выпускаться вовсе.
Если технические способы не помогают, вспомним об официальных источниках. До тотального перехода на онлайн-сервисы, компания 1С ежемесячно выпускала DVD-диски ИТС.
Проанализируем ситуацию: релиз 10.3.39.1 вышел в декабре 2016 года. Следовательно, он должен присутствовать на дисках за январь или февраль 2017 года. У многих официальных партнеров (франчайзи) хранятся архивы этих дисков или их ISO-образы. Если ваш текущий партнер утверждает, что не может найти релиз, вы имеете право сослаться на наличие активной подписки ИТС и попросить их поискать в архивах партнерского раздела, доступ к которому у них значительно шире, чем у обычного пользователя.
Также эффективным методом является письмо на почту hline@1c.ru. В письме необходимо указать:
Как правило, поддержка предоставляет временную прямую ссылку на скачивание архивного файла.
Иногда нам нужно программно убедиться, какая версия конфигурации сейчас установлена, чтобы автоматизировать процесс поиска обновлений. Для этого используем метаданные:
ВерсияКонфигурации = Метаданные.Версия;
ИмяКонфигурации = Метаданные.Имя;
Сообщить("Текущая конфигурация: " + ИмяКонфигурации + " Версия: " + ВерсияКонфигурации);
Если же нам нужно проверить версию конфигурации поставщика программно (что сложнее, так как она хранится в системных таблицах), мы обычно прибегаем к анализу через объект КонфигурацияОбъект, но стандартными средствами встроенного языка доступ к истории версий поставщика ограничен — лучше использовать интерактивное окно «Настройка поддержки».
Подведем итог. Получение старого релиза — задача решаемая даже при отсутствии прямых ссылок. Мы рекомендуем начинать с проверки Настройки поддержки в самой базе. Если там пусто или версия не совпадает, переходите к методу цепочки обновлений. Это самый «чистый» способ с точки зрения разработки, так как вы сами контролируете процесс сборки эталонного .cf.
Всегда сохраняйте полные дистрибутивы важных для вас релизов на локальном сервере или в облаке. Как показывает практика (и сообщение 20 из форума), наличие собственного архива объемом в пару терабайт может сэкономить десятки часов работы при возникновении подобных инцидентов. Для автоматизации технического обслуживания и создания резервных копий удобно использовать инструмент для тихого обновления и архивирования нескольких баз 1С.