Редактирование конфигурации 1С в Конфигураторе

· 9 мин

Содержание

Любое изменение конфигурации 1С 8.3 — добавление реквизита, правка печатной формы, своя кнопка или отчёт — делается в режиме Конфигуратор, а не в «Предприятии». Запускаете базу через 1cv8 с выбором режима «Конфигуратор», открываете дерево конфигурации и правите нужный объект. В пользовательском режиме редактировать структуру нельзя — там только работа с данными.

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

С чего начать: режим Конфигуратора и права

Изменения структуры конфигурации доступны только пользователю с правами администратора. Если в базе несколько пользователей, зайдите под администраторской учёткой — иначе часть веток дерева будет недоступна, а обновление базы не выполнится.

Порядок входа:

  1. В окне запуска 1С выделите нужную базу и нажмите Конфигуратор (не «1С:Предприятие»).
  2. Дождитесь открытия окна Конфигуратора.
  3. Откройте дерево: меню Конфигурация → Открыть конфигурацию.

Типовая конфигурация по умолчанию стоит на поддержке — замо́к у корня дерева означает, что объекты защищены от правки. Пока он закрыт, добавить реквизит в типовой документ не получится.

Права на саму правку конфигурации — это права администратора на базу, их выдаёт администратор в списке пользователей (Конфигуратор, Администрирование → Пользователи). А вот то, кто и что сможет делать с вашими новыми объектами в пользовательском режиме, определяют роли. Роль — объект метаданных в ветке Общие → Роли; в ней для каждого объекта проставлены права: чтение, добавление, изменение, проведение. Добавили свой документ или реквизит — не забудьте разрешить к нему доступ в нужных ролях, иначе пользователи его просто не увидят.

Снятие с поддержки — решение надолго. После него типовое обновление перестаёт ставиться автоматически: каждый релиз придётся сравнивать и объединять вручную через «Сравнение, объединение». Это главный довод в пользу расширений.

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

Что сделать до первой правки
Выполнено: 0 / 5

Перед любой правкой структуры сделайте резервную копию базы . Выгрузка — Администрирование → Выгрузить информационную базу (файл .dt), на сервере — средствами СУБД. Откат к копии спасает, если изменение сломает проведение документов или закрытие месяца .

Как ориентироваться в дереве конфигурации

Дерево конфигурации — это список всех объектов метаданных, сгруппированных по видам. Открывается слева в окне Конфигуратора. Структура одинаковая во всех конфигурациях на 8.3: БП 3.0, ЗУП 3.1, УТ 11.

Основные ветки:

  • 📁 Общие — общие модули, формы, картинки, роли, подписки на события.
  • 📄 Справочники — номенклатура, контрагенты, склады и т. д.
  • 🧾 Документы — реализация, поступление, платёжки, кадровые приказы.
  • 📊 Отчёты и Обработки — готовые отчёты и сервисные обработки.
  • 🔢 Регистры — накопления, сведений, бухгалтерии, расчёта.
  • 🧩 Константы, Перечисления, Планы видов характеристик и прочее.

У каждого объекта раскрывается своя структура: реквизиты, табличные части, формы, макеты, команды, модуль. Двойной щелчок по объекту открывает окно редактирования — главную рабочую область. Правка реквизита, формы или модуля начинается отсюда.

Не помните, где лежит объект, — воспользуйтесь поиском по дереву (Правка → Найти или сочетание для поиска). Искать удобнее по синониму (как объект называется в пользовательском интерфейсе), а не по внутреннему имени.

Внутреннее имя объекта (латиница и кириллица без пробелов) используется в коде, синоним — то, что видит пользователь. При добавлении своих объектов имя задавайте латиницей или понятным русским словом без пробелов, синоним — по-человечески.

Правка форм и внешнего вида документов

Форма — это то, что пользователь видит при открытии документа или справочника. В дереве у объекта есть ветка Формы; двойной щелчок по нужной форме открывает редактор форм.

Редактор форм состоит из нескольких панелей:

  • Элементы — дерево полей, групп, кнопок (то, что на экране).
  • Реквизиты — данные, с которыми связана форма.
  • Командный интерфейс и Команды — кнопки и действия.

У одного объекта обычно несколько форм разного назначения: форма элемента (карточка документа или справочника), форма списка (журнал) и форма выбора (когда объект подбирают в поле другого документа). Правьте ту форму, которая открывается в нужном месте, — изменение карточки не затронет вид списка.

Чтобы вывести на форму новый реквизит, сначала добавьте его в сам объект (ветка Реквизиты документа), затем перетащите из панели реквизитов формы в дерево элементов. Поле появится на экране после обновления базы.

Расположение полей меняется перетаскиванием в дереве элементов и свойствами групп (горизонтальная/вертикальная, число колонок). Видимость, доступность и заголовок поля правятся в палитре свойств (окно Свойства, обычно справа; открывается через контекстное меню элемента).

Отдельная история — печатные формы (счёт, акт, накладная). Их макеты лежат в ветке Макеты объекта или в общих макетах. Макет — это табличный документ: правите ячейки, шрифты, добавляете строки. Если нужно изменить типовую печатную форму, это тот случай, где расширение особенно удобно: добавляете в расширение свой макет и команду печати, типовой объект не трогаете.

Изменения в программном коде

Логика объекта живёт в его модуле: модуль объекта, модуль формы, общие модули. Код пишется на встроенном языке 1С. Открыть модуль объекта можно через окно редактирования (вкладка «Модуль объекта» или ссылка «Открыть модуль объекта»), модуль формы — из редактора форм.

Пример обработчика, который при записи документа заполняет комментарий:

Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
    Если ПустаяСтрока(Комментарий) Тогда
        Комментарий = "Создан " + Формат(ТекущаяДата(), "ДЛФ=DD");
    КонецЕсли;
КонецПроцедуры

Код исполняется либо на клиенте, либо на сервере — это задаётся директивами компиляции &НаКлиенте и &НаСервере над процедурами и функциями. Работа с базой (чтение и запись объектов, запросы) идёт на сервере; взаимодействие с пользователем (сообщения, открытие форм) — на клиенте. Перепутаете контекст — получите ошибку компиляции ещё в Конфигураторе, до запуска.

Несколько правил, чтобы код не ломался при обновлениях:

  • 🔹 Не дописывайте код прямо в типовые процедуры, если работаете в расширении, — используйте аннотации &Перед, &После, &Вместо над своей процедурой.
  • 🔹 Строку с числом склеивайте через Формат() или СтрШаблон(), а не прямым сложением без приведения типов.
  • 🔹 Проверяйте код синтаксически: Текст → Синтаксический контроль (горячая клавиша в редакторе модулей) — это ловит опечатки до запуска.

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

Что можно изменить без Конфигуратора

Прежде чем лезть в Конфигуратор, проверьте — возможно, задача решается в пользовательском режиме. Это быстрее и не ломает поддержку.

Без Конфигуратора доступно:

  • 🔸 Дополнительные реквизиты и сведения. В типовых конфигурациях на БСП (БП 3.0, ЗУП 3.1, УТ 11) есть механизм добавления своих полей к справочникам и документам: Администрирование → Общие настройки → Дополнительные реквизиты и сведения. Нужно только включить саму возможность и добавить реквизит — Конфигуратор не требуется.
  • 🔸 Свои варианты отчётов. В любом отчёте через настройку (кнопка настроек, расширенный режим) добавляются группировки, отборы, поля. Вариант сохраняется и доступен другим пользователям.
  • 🔸 Настройка форм списков. Пользователь сам меняет состав и порядок колонок, отборы, условное оформление через настройку формы — без правки конфигурации.
  • 🔸 Внешние обработки и печатные формы (.epf, .erf). Подключаются в разделе дополнительных обработок и решают разовые или регулярные задачи без изменения конфигурации.

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

Как выбрать способ изменений

Что именно нужно изменить?

Обновление конфигурации базы данных

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

Шаги:

  1. Сохраните изменения: Конфигурация → Сохранить (или соответствующая кнопка на панели).
  2. Примените к базе: Конфигурация → Обновить конфигурацию базы данных (горячая клавиша F7).
  3. В окне реструктуризации посмотрите список изменений и подтвердите Принять.

Если менялась структура таблиц (добавлен реквизит, табличная часть, новый объект), платформе нужен монопольный доступ: все пользователи должны выйти из базы. Монополия требуется именно для реструктуризации, загрузки .dt, тестирования и исправления — для обычной работы она не нужна.

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

Расширения применяются тем же F7. Загрузка готового .cfe и обновление базы — это два отдельных шага: сначала Конфигурация → Расширения конфигурации, добавляете файл, затем обновляете конфигурацию базы данных. Расширения как механизм появились в платформе 8.3.6 и с тех пор остаются основным способом дорабатывать типовые без снятия с поддержки.

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

Проверка и отладка изменений

Проверять правки на рабочей базе — плохая идея. Сделайте копию (выгрузите .dt и загрузите в тестовую базу) и отлаживайте там. Это особенно важно для изменений в проведении и расчётах.

Отладка в Конфигураторе:

  1. Включите отладку запуском из Конфигуратора: Отладка → Начать отладку (F5) — откроется «Предприятие», подключённое к отладчику.
  2. Поставьте точку останова на нужной строке модуля — щелчок на поле слева или F9. Выполнение остановится на этой строке.
  3. Смотрите значения переменных в окне Табло или наведением курсора; шагайте по коду клавишами пошагового выполнения (F10/F11).

Что проверять после изменения:

  • ✅ Объект открывается и записывается без ошибок.
  • ✅ Документ проводится, движения по регистрам корректные.
  • ✅ Печатная форма формируется и печатается.
  • ✅ Закрытие месяца и типовые отчёты не изменились там, где вы их не трогали.

Если после правок появились непонятные ошибки, а код вы не меняли, помогает Администрирование → Тестирование и исправление в Конфигураторе (реиндексация, пересчёт итогов). Запускать — только в монопольном режиме и с резервной копией.

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

Можно ли вносить изменения прямо в «1С:Предприятии», без Конфигуратора?
Структуру — нет. В пользовательском режиме доступны только данные и пользовательские настройки (свои варианты отчётов, формы списков). Новые реквизиты, формы и код добавляются в Конфигураторе или через внешнюю обработку.
Чем расширение лучше правки типовой конфигурации?
Расширение хранит ваши изменения отдельно. Типовая конфигурация остаётся на поддержке и обновляется автоматически, а ваши доработки накладываются поверх. При правке типовой каждый релиз придётся объединять вручную.
Что будет с обновлениями, если я уже снял конфигурацию с поддержки?
Автоматически они ставиться не будут. Обновлять придётся через «Сравнение, объединение» с конфигурацией поставщика, вручную решая конфликты по изменённым объектам. Поэтому снимать с поддержки стоит только когда без этого никак.
Почему не применяются мои изменения, кнопка обновления неактивна?
Чаще всего объекты всё ещё защищены поддержкой (закрыт замо́к) либо вы зашли не под администратором. Проверьте настройку поддержки и права пользователя. Для изменения структуры также нужен монопольный доступ.
Нужно ли знать программирование, чтобы добавить реквизит или поле на форму?
Для простых правок — нет. Добавить реквизит, вывести его на форму, поправить макет печатной формы можно мышью в редакторах. Код нужен, когда меняется поведение: автозаполнение, проверки, нестандартное проведение.