Как менять данные и конфигурацию в 1С 8.3 и не сломать учёт

· 10 мин

Содержание

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

Обычная ситуация: бухгалтер находит 300 карточек номенклатуры без единицы измерения, а программист просит «просто добавить поле в договор». Первое решается за пять минут групповой обработкой. Второе, сделанное напрямую в типовой конфигурации, потом годами усложняет каждое обновление. Ниже — какой способ подходит под какую правку и в каком порядке действовать.

Перед правкой базы: копия, права и закрытый период

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

Что делаетеКакая копия нужнаГде сделать
Правите данные вручнуюВыгрузка базы в .dtКонфигуратор → Администрирование → Выгрузить информационную базу
Меняете конфигурацию.dt + файл конфигурации .cfКонфигуратор → Конфигурация → Сохранить конфигурацию в файл
Запускаете массовую обработку.dt, сделанная прямо перед запускомТам же, что и выше
Файловая база, всё сразуКопия папки с файлом 1Cv8.1CDПри закрытой программе у всех пользователей

Восстанавливаться из копии придётся целиком: загрузка .dt заменяет всю базу, включая документы, которые коллеги успели ввести после выгрузки. Поэтому массовые правки делайте вне рабочего дня или договоритесь, что в базу никто не заходит.

Права пользователя

  • 🔑 Для правки данных нужна роль с полными правами или группа доступа, которая разрешает изменять нужные объекты. Проверить — Администрирование → Настройки пользователей и прав → Пользователи, вкладка прав пользователя.
  • 🛠 Для входа в Конфигуратор у пользователя должны быть административные права. Обычный бухгалтер с ограниченным профилем туда не попадёт — это правильно.
  • 📅 Если документ лежит в закрытом периоде, программа не даст его записать. Дата запрета настраивается в Администрирование → Настройки пользователей и прав → Даты запрета изменения. Сдвигайте её только на время правки и возвращайте обратно.

Открытие закрытого периода в учёте, по которому уже сдана отчётность, меняет цифры в сданных декларациях. Сначала решите, нужна ли уточнёнка, потом правьте.

Режим 1С:Предприятие или Конфигуратор: где что редактировать

Новички часто пытаются «поправить базу через конфигуратор», когда нужно изменить одну проводку. И наоборот, ищут в пользовательском режиме, как добавить реквизит . Разделение простое.

ЗадачаГде делаетсяРиск
Исправить реквизит документа, карточку контрагента1С:ПредприятиеНизкий: перепроведение
Заменить значение у сотен элементов1С:Предприятие, групповое изменениеСредний: задевает много объектов
Подправить движения документа1С:Предприятие, ручная корректировкаСредний: документ перестаёт пересчитываться
Добавить реквизит, форму, печатную формуКонфигуратор, расширениеСредний
Изменить код типового модуляКонфигуратор, снятие с поддержкиВысокий: трудные обновления
Проверить и починить структуру базыКонфигуратор, тестирование и исправлениеВысокий: только на копии
Что нужно изменить в базе?

Редактирование данных: справочники, документы и регистры

Справочники и документы

Карточки справочников и документы правятся прямо в форме: открыли, изменили, нажали Записать и закрыть. У проведённого документа после правки нажмите Провести и закрыть, иначе движения останутся старыми.

Если документов много, используйте групповое изменение. В списках БП 3.0, ЗУП 3.1 и УТ 11 выделите строки (Ctrl или Shift), откройте меню Ещё и найдите команду изменения выделенных. В открывшейся обработке:

  1. Отметьте реквизит, который меняете.
  2. Задайте новое значение.
  3. Нажмите кнопку изменения и дождитесь итогового сообщения.
  4. Проверьте результат на 2–3 случайных элементах.

💡 Обработка умеет менять и табличные части. Например, проставить ставку НДС во всех строках выделенных поступлений.

Объекты, которых нет в меню

Часть справочников и регистров не выведена в разделы. Включите Главное меню → Сервис → Параметры → Отображать команду «Все функции». После этого в главном меню появится пункт Все функции: там любые справочники, документы, регистры сведений и накопления, а также стандартные обработки.

Движения документа и регистры

Проводки и записи регистров меняются через сам документ. В БП 3.0 откройте документ, нажмите кнопку Дт/Кт (показать проводки и другие движения). В форме движений установите флажок «Ручная корректировка (разрешает редактирование движений документа)» и правьте строки на вкладках регистров.

После ручной корректировки документ перестаёт пересчитывать движения при перепроведении. Если потом поменяете сумму в шапке, проводки останутся прежними. Снимите флажок, когда правка больше не нужна, и перепроведите документ.

Когда исправление не привязано ни к одному документу, создайте ручную операцию: Операции → Операции, введенные вручную. В ней можно добавить не только проводки, но и записи других регистров через выбор регистров в меню операции.

Регистры сведений (курсы валют, цены, сведения о сотрудниках) редактируются как обычный список: открыли через Все функции, нашли запись по фильтру, изменили. Записи, у которых есть документ-регистратор, напрямую не правятся — только через документ.

Удаление лишнего

Удаление в 1С двухшаговое. Сначала объект помечается на удаление (Delete в списке), затем помеченные объекты удаляются обработкой Администрирование → Обслуживание → Удаление помеченных объектов. Обработка сама проверяет ссылки: если на элемент ссылаются документы, он не удалится, и вы увидите, кто мешает.

Дубли контрагентов и номенклатуры лучше не удалять вручную, а сливать: в БП 3.0 это Администрирование → Обслуживание → Корректировка данных → Поиск и удаление дублей. Обработка заменяет ссылки на дубль ссылкой на оригинал во всех документах.

Изменение конфигурации: формы, отчёты, макеты

Конфигурацию меняют в Конфигураторе: Конфигурация → Открыть конфигурацию. Типовая база стоит на поддержке поставщика, поэтому объекты по умолчанию закрыты для правки (значок замка в дереве).

Расширение — основной способ для типовых

Расширения появились в платформе 8.3.6 и сейчас покрывают почти все задачи доработки:

  • ➕ новый реквизит справочника или документа;
  • 🖨 своя печатная форма или изменённый макет;
  • 📝 правка формы: добавить поле, скрыть лишнее, переставить группы;
  • ⚙️ перехват процедур модуля (аннотации &Перед, &После, &Вместо).

Порядок такой:

  1. В Конфигураторе откройте Конфигурация → Расширения конфигурации.
  2. Добавьте новое расширение, задайте имя и префикс (например, мр_).
  3. В дереве основной конфигурации щёлкните правой кнопкой по нужному объекту и выберите добавление в расширение.
  4. Внесите правки: добавьте реквизит, заимствуйте форму или макет.
  5. Нажмите Обновить конфигурацию базы данных (F7) — только после этого изменение увидят пользователи.

💡 Готовое расширение сохраняется в файл .cfe. Его можно перенести в другую базу через Администрирование → Печатные формы, отчеты и обработки → Расширения без захода в Конфигуратор. Загрузка .cfe и применение к базе — разные шаги: после загрузки расширение нужно ещё активировать.

Правка самой конфигурации

Если без изменения типового модуля не обойтись, включите возможность изменения: Конфигурация → Поддержка → Настройка поддержки → Включить возможность изменения. Для отдельных объектов выберите режим «Объект поставщика редактируется с сохранением поддержки». Тогда при обновлении придётся сравнивать и объединять ваши правки с новым релизом.

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

Внешние отчёты, обработки и сторонние инструменты

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

ФайлРасширениеДля чего
Внешний отчёт.erfСвой отчёт на запросе и СКД
Внешняя обработка.epfМассовые правки, загрузки, печатные формы
Расширение.cfeИзменение объектов и форм конфигурации

Создать внешний файл можно в Конфигураторе: Файл → Новый → Внешняя обработка. Подключить в рабочей базе — Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки. Разовую обработку можно открыть и через Файл → Открыть, если пользователю это разрешено.

Что ещё используют разработчики и администраторы:

  • 🧰 1C:Enterprise Development Tools (EDT) — среда разработки на базе Eclipse, хранит конфигурацию в файлах, удобна для работы с Git.
  • 🗄 Хранилище конфигурации — когда конфигурацию правят несколько программистов: объект захватывается, правится и помещается обратно.
  • 🔌 COM-соединение и OData — чтение и запись данных из внешних программ через объектную модель 1С.
  • 🔍 Консоль запросов — проверить, сколько объектов попадёт под правку, до запуска обработки.

Не меняйте данные напрямую в таблицах SQL Server или PostgreSQL. Платформа хранит ссылки, итоги регистров и служебные данные по своим правилам. Ручной UPDATE в СУБД обходит проверки, ломает итоги и не попадает в журнал регистрации.

Скрипты и пакетный режим: автоматизация правок

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

&НаСервере
Процедура ЗаполнитьЕдиницыНаСервере()

    ЕдиницаШт = Справочники.КлассификаторЕдиницИзмерения.НайтиПоКоду("796");
    Если ЕдиницаШт.Пустая() Тогда
        Сообщить("В классификаторе нет единицы с кодом 796");
        Возврат;
    КонецЕсли;

    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    |    Номенклатура.Ссылка КАК Ссылка
    |ИЗ
    |    Справочник.Номенклатура КАК Номенклатура
    |ГДЕ
    |    НЕ Номенклатура.ЭтоГруппа
    |    И Номенклатура.ЕдиницаИзмерения = ЗНАЧЕНИЕ(Справочник.КлассификаторЕдиницИзмерения.ПустаяСсылка)";

    Выборка = Запрос.Выполнить().Выбрать();
    Изменено = 0;
    Пока Выборка.Следующий() Цикл
        Объект = Выборка.Ссылка.ПолучитьОбъект();
        Объект.ЕдиницаИзмерения = ЕдиницаШт;
        Попытка
            Объект.Записать();
            Изменено = Изменено + 1;
        Исключение
            Сообщить("Не записан: " + Строка(Выборка.Ссылка) + " — " + ОписаниеОшибки());
        КонецПопытки;
    КонецЦикла;

    Сообщить(СтрШаблон("Изменено элементов: %1", Формат(Изменено, "ЧГ=0")));

КонецПроцедуры

&НаКлиенте
Процедура Заполнить(Команда)
    ЗаполнитьЕдиницыНаСервере();
КонецПроцедуры

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

Пакетный запуск

Обслуживание можно запускать без интерфейса, например из планировщика Windows ночью:

rem Выгрузка базы в .dt
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER /F"D:\Base\Buh" /N"Админ" /P"пароль" /DumpIB"D:\Backup\buh.dt" /Out"D:\Backup\log.txt"

rem Применение изменений конфигурации к базе
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER /F"D:\Base\Buh" /N"Админ" /P"пароль" /UpdateDBCfg /Out"D:\Backup\log.txt"

rem Запуск внешней обработки в режиме предприятия
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" ENTERPRISE /F"D:\Base\Buh" /N"Админ" /P"пароль" /Execute"D:\Tools\fix.epf"

Номер платформы в пути замените на свой. Для серверной базы вместо /F используется /S"сервер\база". Пароль в bat-файле храните только на сервере с ограниченным доступом к папке.

Повторяющиеся правки внутри базы оформляют регламентными заданиями в расширении: платформа сама запускает их по расписанию на сервере 1С.

Где чаще всего ломают базу при редактировании

Диагностика: выберите симптом

Ещё одна частая беда — запуск Администрирование → Тестирование и исправление в Конфигураторе «на всякий случай» прямо на рабочей базе. Режим требует монопольного доступа, может удалять объекты с битыми ссылками и идёт долго. Запускайте его только при реальных ошибках структуры и только после выгрузки .dt.

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

Частые вопросы

Можно ли редактировать базу 1С, если в ней работают пользователи?
Данные — да, правка карточек и документов идёт в обычном режиме. Обновление конфигурации базы данных, загрузка .dt и тестирование требуют, чтобы пользователи вышли.
Как узнать, кто и что поменял в базе?
Откройте журнал регистрации: Администрирование → Обслуживание → Журнал регистрации. Отбор по пользователю, периоду и объекту покажет время и вид изменения.
Слетит ли расширение при обновлении типовой конфигурации?
Нет, расширение хранится отдельно и остаётся. Но если в новом релизе изменился заимствованный объект, расширение может перестать применяться — после обновления проверьте его в списке расширений.
Можно ли отредактировать базу 1С без Конфигуратора?
Данные — полностью. Новые поля, формы и печатные формы — через расширение, загружаемое в режиме предприятия, либо через внешние отчёты и обработки.
Чем групповое изменение лучше своей обработки?
Оно не требует программирования и проверяет права пользователя. Свою обработку пишут, когда новое значение зависит от условий, которые не выразить одним отбором.