Обновление 1С:Фитнес клуб без потери доработок, расширений и данных
Содержание
Чтобы обновить 1С:Фитнес клуб, сделайте выгрузку базы в .dt, установите дистрибутив обновления и в Конфигураторе выполните Конфигурация → Поддержка → Обновить конфигурацию… с файлом 1Cv8.cfu. Затем примите изменения структуры (F7) и запустите программу в режиме 1С:Предприятие, чтобы отработали обработчики обновления данных. Для нетиповой конфигурации путь тот же, но вместо простой замены идёт сравнение и объединение с вашими доработками.
Частое заблуждение — что можно скачать последний релиз и «перепрыгнуть» сразу на него. Отраслевые решения обновляются по цепочке: каждый файл обновления принимает только определённые предыдущие версии. Если клуб не обновлялся год, релизов придётся поставить несколько подряд.
1. Подготовка: версия, платформа, копия базы
Начните с трёх проверок. Они занимают десять минут и снимают большую часть проблем.
📌 Текущая версия конфигурации. Откройте программу, главное меню (кнопка с тремя полосками) → Справка → О программе. Запишите номер версии, например 3.0.15.4.
📌 Цепочка обновлений. В описании каждого релиза указано, с каких версий на него можно перейти. Выпишите путь от вашей версии до актуальной. Пример цепочки: 3.0.15.4 → 3.0.17.2 → 3.0.19.1. Номера условные — смотрите описание своего релиза.
📌 Версия платформы. У релиза есть минимальная версия платформы 1С:Предприятие 8.3. Если ваша платформа ниже, сначала обновите её на сервере и на всех рабочих местах, где стоит толстый клиент или Конфигуратор.
Дальше — резервная копия. Без выгрузки .dt обновление не начинайте. Откат «назад» штатными средствами не предусмотрен: если объединение прошло неудачно, единственный путь вернуться — загрузить копию.
- Попросите всех выйти из программы: ресепшн, тренеров, бухгалтерию.
- Откройте Конфигуратор под администратором.
- Выберите
Администрирование → Выгрузить информационную базу…и сохраните файл.dtна другой диск. - Если конфигурация доработана — дополнительно сохраните её через
Конфигурация → Сохранить конфигурацию в файл…в.cf.
Для клиент-серверной базы на MS SQL или PostgreSQL сделайте ещё и бэкап средствами СУБД. Выгрузка .dt большой базы с историей посещений может идти час и больше — планируйте окно вечером или ночью, когда клуб закрыт.
Где взять файлы обновления
Дистрибутивы отраслевых решений выкладываются на портал обновлений 1С для пользователей с действующей подпиской на поддержку (договор 1С:ИТС отраслевой или поддержка разработчика решения). Скачивайте именно файлы обновления, а не полный дистрибутив: полный нужен только для новой установки.
Запустите setup.exe из архива. Он распакует шаблон в каталог шаблонов конфигураций, по умолчанию это %APPDATA%\1C\1cv8\tmplts\. Внутри появится папка с номером версии и файлом 1Cv8.cfu.
2. Обновление типовой 1С:Фитнес клуб
Типовая — значит, конфигурация стоит на поддержке и её не меняли. Проверить просто: Конфигурация → Поддержка → Настройка поддержки…. Если правила поддержки «Изменения не разрешены» или «Объект поставщика не редактируется» — у вас типовая.
Пошагово
- В Конфигураторе:
Конфигурация → Поддержка → Обновить конфигурацию…. - Выберите «Поиск доступных обновлений» или укажите файл
1Cv8.cfuвручную. - Программа покажет подходящие обновления. Выберите ближайший релиз из вашей цепочки.
- Подтвердите обновление. Для типовой конфигурации окно сравнения обычно не появляется.
- На вопрос об обновлении конфигурации базы данных ответьте «Да». Это то же, что
Конфигурация → Обновить конфигурацию базы данных(F7). - Примите список изменений структуры кнопкой «Принять».
- Повторите шаги 1–6 для каждого следующего релиза в цепочке.
- Закройте Конфигуратор и запустите программу в режиме 1С:Предприятие под администратором.
На последнем шаге откроется форма обновления данных. Не закрывайте её и не перезагружайте компьютер, пока она не завершится. В базе с несколькими годами истории абонементов и визитов это может занять 20–40 минут.
Обновление структуры (F7) требует монопольного доступа к базе. Если хоть один пользователь остался в программе, принять изменения не получится. Принудительно завершать чужие сеансы можно только предупредив людей: несохранённые продажи и записи на тренировки пропадут.
Пакетное обновление из командной строки
Если клубов несколько или обновление нужно запускать ночью, удобно использовать пакетный режим Конфигуратора. Пример для файловой базы:
@echo off
set V8="C:\Program Files\1cv8\8.3.24.1691\bin\1cv8.exe"
set BASE="D:\Bases\Fitness"
set USR="Администратор"
set PWD=""
%V8% DESIGNER /F %BASE% /N %USR% /P %PWD% /DumpIB "E:\Backup\fitness.dt" /Out "E:\Backup\dump.log"
%V8% DESIGNER /F %BASE% /N %USR% /P %PWD% /UpdateCfg "C:\Templates\1Cv8.cfu" /UpdateDBCfg /Out "E:\Backup\update.log"
Путь к платформе и шаблону подставьте свои. После скрипта всё равно нужен один запуск в режиме Предприятия — обработчики обновления данных из командной строки Конфигуратора не выполняются. Для нетиповой конфигурации /UpdateCfg не подходит: объединение требует ручного разбора.
3. Нетиповая конфигурация: объединение с доработками
Фитнес-клубы часто дорабатывают: свои виды абонементов, интеграцию с сайтом, нестандартную загрузку из СКУД, печатные формы договоров. Если изменения вносили прямо в конфигурацию, обновление превращается в сравнение и объединение.
Как это устроено
При обновлении участвуют три версии:
| Конфигурация | Что это |
|---|---|
| Основная | Ваша текущая, с доработками |
| Старая конфигурация поставщика | Типовой релиз, на котором делали доработки |
| Новая конфигурация поставщика | Релиз из файла .cfu |
Платформа сравнивает их и для каждого объекта показывает, кто его менял: только поставщик, только вы или обе стороны. Объекты, которые меняли обе стороны, — главный риск.
Порядок действий
- Запустите
Конфигурация → Поддержка → Обновить конфигурацию…и выберите файл. - В окне сравнения включите фильтр «Показывать только дважды измененные свойства».
- Для объектов, изменённых только поставщиком, оставьте режим «Взять из новой конфигурации поставщика».
- Для дважды изменённых модулей выберите объединение с приоритетом основной или новой конфигурации и откройте сравнение модулей по процедурам.
- Разберите каждую процедуру: перенесите доработку в новый код поставщика, а не наоборот.
- Выполните объединение и сохраните конфигурацию. Не принимайте изменения структуры, пока не проверите синтаксис:
Конфигурация → Проверка конфигурации…с флагом синтаксического контроля модулей. - Только после этого —
F7.
Перед первым объединением выгрузите отчёт о сравнении в файл. На следующем релизе будет видно, какие доработки повторяются, и время разбора сократится вдвое.
Если доработок много, а последнее обновление было давно, разумно не объединять каждый релиз, а сделать это на копии базы. Обновите копию по всей цепочке, проверьте, затем повторите на рабочей базе тем же порядком.
Режим поддержки
Иногда при обновлении платформа сообщает, что конфигурация снята с поддержки. Значит, кто-то включил полное редактирование и удалил связь с поставщиком. Восстановить поддержку можно через Конфигурация → Сравнить, объединить с конфигурацией из файла…, указав полный дистрибутив (.cf) того релиза, на котором стоит база. Задача непростая: если не делали такого раньше, отдайте её программисту, который вёл доработки.
4. Расширения и внешние обработки после обновления
Правильные доработки в современном 1С:Фитнес клуб делают не в основной конфигурации, а в расширениях (они есть в платформе начиная с 8.3.6). Расширение не мешает обновлению по шаблону: основная конфигурация остаётся типовой, а доработка лежит отдельно.
Но расширение привязано к объектам основной конфигурации. Если поставщик переименовал реквизит, удалил процедуру или поменял форму, расширение может перестать применяться.
Что проверить
- 🧩 Откройте
Конфигурация → Расширения конфигурациив Конфигураторе. Для каждого расширения выполните проверку применимости в его контекстном меню. - 🧩 Если расширение не применяется — откройте его, найдите объекты, помеченные как отсутствующие в основной конфигурации, и исправьте ссылки.
- 🧩 Обновлённое расширение сохраните в базу, затем снова проверьте применимость.
- 🧩 Внешние печатные формы и обработки (
.epf,.erf) проверьте запуском. Обычно они подключены в разделеАдминистрирование→ «Печатные формы, отчеты и обработки» → «Дополнительные отчеты и обработки».
Внешние обработки ломаются, когда внутри них обращаются к реквизиту или процедуре, которых больше нет. Ошибка появится в момент запуска: «Поле объекта не обнаружено» или «Процедура или функция с указанным именем не определена». Исправляется только правкой кода обработки.
Не загружайте поверх расширения его старую версию из резервной копии «на всякий случай». Если расширение меняет данные (имеет собственные реквизиты), вы рискуете потерять то, что накопилось после обновления.
5. Ошибки при обновлении 1С:Фитнес и как их снять
Большая часть сбоев — это не дефект релиза, а нарушенный порядок или занятая база. Сводка по типичным ситуациям:
Если обновление сорвалось на середине объединения и база ведёт себя странно, не пытайтесь «доделать» его вручную. Загрузите .dt через Администрирование → Загрузить информационную базу… и начните заново. Помните: загрузка .dt полностью заменяет базу, всё, что пользователи успели внести после выгрузки, пропадёт.
6. Проверка 1С:Фитнес клуб после обновления
Обновление закончено, когда клуб может работать как обычно. Пройдите по рабочему дню, а не по меню.
Последний пункт часто пропускают, а зря. Сформируйте перед обновлением 2–3 ключевых отчёта за закрытый месяц и сохраните их. После обновления постройте те же отчёты: цифры должны совпасть до рубля. Расхождение — признак, что обработчик пересчитал данные иначе, и это надо выяснить до начала рабочего дня.
Журнал регистрации за период обновления держите хотя бы неделю. Если через несколько дней всплывёт странность в абонементах, по нему видно, какие обработчики и когда работали.
7. Частые ошибки, из-за которых обновление идёт тяжело
- ❌ Обновление днём при открытом клубе. Монопольный доступ не получить, люди теряют несохранённые продажи. Планируйте окно на время, когда ресепшн закрыт.
- ❌ Пропуск релизов «чтобы быстрее». Платформа не даст это сделать по шаблону, а попытка обойти через загрузку полного
.cfломает данные: обработчики промежуточных версий не выполняются. - ❌ Доработки прямо в конфигурации без документации. Через год никто не помнит, зачем меняли модуль, и объединение превращается в угадайку. Ведите список изменений или переносите доработки в расширения.
- ❌ Обновление только конфигурации без платформы. Новый релиз может не открыться на старой платформе. Сначала платформа, потом конфигурация.
- ❌ Обновили рабочую базу, не проверив на копии. Для нетиповой конфигурации с несколькими релизами в цепочке тестовый прогон обязателен.