Откат правок в Конфигураторе 1С: от Ctrl+Z до загрузки копии базы
Содержание
Отменить изменения в Конфигураторе 1С можно четырьмя способами, и выбор зависит от того, как далеко зашла правка. Опечатку в модуле убирает Ctrl+Z. Все несохранённые правки разом откатывает Конфигурация → Конфигурация базы данных → Вернуться к конфигурации БД. Один испорченный объект возвращают через сравнение и объединение с копией. А если изменения уже применены к базе клавишей F7, остаётся только загрузить сохранённый файл .cf или выгрузку .dt.
Главное правило: чем раньше вы спохватились, тем дешевле откат. Пока основная конфигурация не записана в базу данных, вы ничего не теряете и можете вернуть всё к исходному состоянию за пару кликов.
На какой стадии правка и что её отменяет
В Конфигураторе 1С 8.3 есть две конфигурации, и путаница между ними — причина большинства неудачных откатов:
- 🛠 Основная конфигурация — то, что вы редактируете в дереве метаданных. Её можно сохранить (
Ctrl+S), но пользователи её ещё не видят. - 🗄 Конфигурация базы данных — то, с чем работают пользователи в режиме 1С:Предприятие. Основная попадает сюда только после команды «Обновить конфигурацию
базы данных» (
F7).
Пока изменения живут только в основной конфигурации, у заголовка дерева метаданных стоит признак несохранённых или неприменённых изменений. По этой разнице и выбирают инструмент:
| Стадия правки | Чем отменить | Что теряется |
|---|---|---|
| Набрали текст в модуле, окно открыто | Ctrl+Z | Ничего |
| Изменили объекты, конфигурацию не сохраняли | Закрыть без сохранения или «Вернуться к конфигурации БД» | Все несохранённые правки |
Сохранили основную, но не нажимали F7 | «Вернуться к конфигурации БД» | Все правки после последнего обновления БД |
| Нужно вернуть один объект, остальное оставить | Сравнение и объединение с файлом .cf | Только правки этого объекта |
| Уже обновили конфигурацию БД | Загрузка .cf и повторное обновление | Данные удалённых реквизитов не вернутся |
| Повредили данные или структуру | Загрузка выгрузки .dt | Всё, что ввели после выгрузки |
Горячие клавиши отмены в редакторе модулей
Текстовый редактор Конфигуратора хранит историю действий для каждого открытого окна отдельно. Отмена в модуле формы не трогает модуль объекта, открытый в соседней вкладке.
Основные сочетания:
| Клавиши | Действие |
|---|---|
Ctrl+Z | Отменить последнее действие |
Ctrl+Y | Повторить отменённое |
Ctrl+S | Сохранить основную конфигурацию |
F7 | Обновить конфигурацию базы данных |
Те же команды есть в меню Правка: рядом с каждым пунктом указано сочетание, действующее в вашей версии платформы. Если клавиши переназначены через Сервис → Параметры, ориентируйтесь на меню.
Как пользоваться отменой без сюрпризов:
- Остановитесь, как только заметили ошибку. Каждое следующее действие отодвигает нужный шаг вглубь истории.
- Нажимайте
Ctrl+Zпо одному разу и смотрите, что возвращается. Вставка большого фрагмента или автозамена может отменяться одним шагом целиком. - Если откатили лишнее, верните его через
Ctrl+Y. Но после любого нового ввода повтор отменённого пропадает. - Не закрывайте окно модуля, пока не убедились, что текст в порядке. Закрытое окно историю отмены не хранит.
Ctrl+Z работает с текстом, а не со структурой. Удалённый из дерева метаданных реквизит, справочник или форму отмена не вернёт. Для таких правок нужны способы из следующих разделов.
Перед крупной переделкой процедуры скопируйте её целиком в блокнот или закомментируйте старый вариант (Ctrl+Num / в большинстве версий). Это быстрее любой процедуры отката.
Как увидеть все свои правки разом и решить, что откатывать
В Конфигураторе нет отдельного «журнала изменений» по шагам. Его роль играет сравнение основной конфигурации с конфигурацией базы данных: оно показывает каждое изменённое, добавленное и удалённое с момента последнего обновления.
Порядок действий:
- Откройте
Конфигурация → Сравнить конфигурации. - Слева выберите «Основная конфигурация», справа — «Конфигурация базы данных».
- Запустите сравнение. В окне результата включите отбор, при котором показываются только отличия.
- Пройдитесь по дереву: изменённые свойства и модули отмечены, у модулей можно открыть построчное сравнение текста.
Так вы видите полный список правок до того, как что-то отменять. Этот шаг защищает от главной ошибки: откатить всё, включая полезную работу за день.
Тот же инструмент сравнивает основную конфигурацию с файлом. Если утром вы сохранили .cf, укажите его справа и увидите всё, что изменилось с начала работ, даже если за день базу уже обновляли.
Результат сравнения удобно сохранить отчётом: в окне сравнения есть команда формирования отчёта о сравнении. Отчёт пригодится, когда откат делает другой специалист или когда нужно согласовать список возвращаемых объектов с руководителем.
Что искать в дереве отличий в первую очередь:
- 🔍 удалённые объекты и реквизиты — их потеря опаснее всего;
- 🔍 изменённые типы реквизитов — при обновлении базы данные могут преобразоваться;
- 🔍 модули с большим числом отличий — там чаще всего и сидит испорченная правка.
Для истории «кто и когда менял конфигурацию» пригодится журнал регистрации (Администрирование → Журнал регистрации). Факт изменения и обновления конфигурации там фиксируется с пользователем и временем, но содержимого правок журнал не показывает.
Возврат к конфигурации базы данных: откат всех несохранённых правок
Это самый быстрый способ вернуть Конфигуратор к исходному состоянию, если пользователи не видели ваших изменений.
- Закройте все окна модулей и форм.
- Выберите
Конфигурация → Конфигурация базы данных → Вернуться к конфигурации БД. - Подтвердите действие.
Основная конфигурация заменяется копией того, что сейчас работает у пользователей. Все правки после последнего F7 исчезают, включая уже сохранённые через Ctrl+S.
Отменить сам возврат нельзя. Если среди правок есть нужные, сначала сохраните основную конфигурацию в файл: Конфигурация → Сохранить конфигурацию в файл. Потом из этого файла вы вернёте полезное точечно.
Есть и вариант попроще, когда правки не сохранялись вовсе. Закройте Конфигуратор и на вопрос о сохранении изменений ответьте «Нет». Основная конфигурация останется такой, какой была при последнем сохранении.
Если основная конфигурация не открывается или ведёт себя странно после неудачных экспериментов, «Вернуться к конфигурации БД» — тоже рабочее лечение: вы получаете чистую копию рабочей версии.
Точечный откат одного объекта через сравнение и объединение
Частая ситуация: за день вы изменили десять объектов, а испортили один. Откатывать всё жалко. Здесь помогает объединение с файлом, в котором лежит правильная версия объекта.
Шаг 1. Получите файл с правильной версией
Подойдёт любой из вариантов:
- 📄 копия рабочей версии:
Конфигурация → Конфигурация базы данных → Сохранить конфигурацию БД в файл; - 📄 файл
.cf, сохранённый перед началом работ; - 📄 файл поставки или конфигурация из хранилища.
Шаг 2. Объедините только нужное
- Выберите
Конфигурация → Сравнить, объединить с конфигурацией из файлаи укажите файл. - Если система предложит поставить конфигурацию на поддержку, для разового отката откажитесь.
- В дереве сравнения снимите все флажки. Проще всего — снять флажок у корня.
- Отметьте только испорченный объект. Если нужен лишь модуль или одна форма, раскройте объект и отметьте именно их.
- Для модулей можно задать режим объединения: взять модуль из файла целиком или объединить построчно, выбрав нужные процедуры.
- Нажмите «Выполнить» и проверьте результат.
- Запустите синтаксический контроль (
Конфигурация → Проверить конфигурацию), затем сохраните.
Объект часто тянет за собой связи. Если вы возвращаете реквизит, который используется в форме или в запросе другого модуля, система предупредит об объектах, на которые есть ссылки. Читайте это окно, а не жмите «Продолжить» по привычке.
Тот же приём работает и наоборот: вернуть в основную конфигурацию полезную правку, потерянную после «Вернуться к конфигурации БД». Для этого и нужен файл, сохранённый перед откатом.
Если изменения уже ушли в базу: откат из .cf и .dt
После F7 правки становятся рабочей версией. Простого «отменить обновление» нет, но есть два пути.
Вариант 1. Повторное обновление из старого .cf
Подходит, если структура базы почти не менялась: правили модули, формы, макеты, добавляли объекты.
- Загрузите прежнюю версию:
Конфигурация → Загрузить конфигурацию из файлаили объедините с файлом точечно, как описано выше. - Нажмите
F7и примите изменения. - Проверьте работу в режиме 1С:Предприятие.
Если при первом обновлении вы удаляли реквизиты или таблицы, данные в них уже стёрты. Возврат реквизита в конфигурацию вернёт пустое поле, но не значения.
Вариант 2. Загрузка выгрузки базы .dt
Нужен, когда потеряны данные или реструктуризация прошла неудачно.
- Сделайте текущую выгрузку на всякий случай:
Администрирование → Выгрузить информационную базу. - Загрузите прежнюю:
Администрирование → Загрузить информационную базу.
Загрузка .dt полностью заменяет базу: и конфигурацию, и данные. Всё, что пользователи ввели после той выгрузки, пропадёт. Загрузка и обновление структуры требуют монопольного доступа, поэтому заранее попросите пользователей выйти и выбирайте нерабочее время.
| Способ | Возвращает | Данные после копии | Когда выбирать |
|---|---|---|---|
Загрузка .cf целиком | Всю конфигурацию | Сохраняются | Правки были в коде и формах |
Объединение с .cf | Отмеченные объекты | Сохраняются | Испорчено немногое |
Загрузка .dt | Конфигурацию и данные | Теряются | Повреждены данные |
Хранилище конфигурации: отмена захвата и возврат версии
При групповой разработке через хранилище отменять изменения удобнее всего. Хранилище помнит каждую помещённую версию с автором и комментарием.
Откат своих неотправленных правок. Пока объект захвачен и не помещён в хранилище, его можно вернуть к версии из хранилища. В контекстном меню объекта в дереве метаданных есть подменю работы с хранилищем, а в нём — отмена захвата. В диалоге отмены захвата локальные изменения можно не сохранять — тогда объект вернётся к версии из хранилища.
Откат помещённой версии. Откройте Конфигурация → Хранилище конфигурации → История хранилища. Там видно, кто и когда помещал изменения. Нужную версию можно сохранить в файл .cf и дальше объединить с основной конфигурацией точечно, как в разделе выше. Так ошибочный коммит коллеги откатывается без потери чужой работы.
Даже если вы работаете один, хранилище стоит завести: оно бесплатно входит в платформу и даёт историю версий, которой в обычном Конфигураторе нет.
Ошибки, из-за которых откат не удаётся
- ❌ Перепутали основную конфигурацию и конфигурацию БД. Сохранение через
Ctrl+Sне меняет рабочую версию, а «Вернуться к конфигурации БД» стирает и сохранённое. Сначала посмотрите сравнение, потом отменяйте. - ❌ Откат без копии текущего состояния. «Вернуться к конфигурации БД» и загрузка
.cfнеобратимы. Минута на сохранение файла снимает риск. - ❌ Удалили реквизит, нажали
F7, потом вернули реквизит. Поле появится, а данные нет. Спасает только.dt, сделанная до обновления. - ❌ Загрузили
.dtв рабочую базу днём. Пользователи теряют введённые документы. Выгрузку загружают в нерабочее время или в копию базы , чтобы достать оттуда нужное. - ❌ Объединили всю конфигурацию вместо одного объекта. Флажки в дереве сравнения по умолчанию стоят на всех отличиях. Перед «Выполнить» снимите лишнее.
- ❌ Конфигурация на поддержке, а правка в объекте поставщика. Полный возврат к поставке перезапишет и ваши доработки. Если доработки сделаны в расширении, проще отключить или удалить расширение
через
Конфигурация → Расширения конфигурации, не трогая основную.