Расширения 1С — создание и установка

Как использовать механизм расширений для доработки типовых конфигураций 1С без снятия с поддержки.

📋 Что такое расширения

Расширение — это способ доработки конфигурации без изменения основного кода. Преимущества:

  • ✅ Конфигурация остаётся на поддержке
  • ✅ Упрощается обновление типовой
  • ✅ Доработки изолированы в отдельном файле
  • ✅ Можно включать/отключать без перезагрузки

Что можно делать в расширениях

  • Добавлять реквизиты — новые поля в документы и справочники
  • Изменять формы — добавлять элементы, менять видимость
  • Перехватывать события — аннотации &Перед, &После, &Вместо
  • Добавлять новые объекты — справочники, документы, обработки
  • Создавать роли — права доступа к новым объектам
⚠️ Ограничения: Нельзя удалять объекты основной конфигурации, изменять структуру таблиц, модифицировать некоторые метаданные.

Создание расширения

Шаг 1. Создание

  1. Откройте Конфигуратор
  2. Меню Конфигурация → Расширения конфигурации
  3. Нажмите Добавить
  4. Укажите имя, префикс (например, МОЙ_)
  5. Установите флаг «Безопасный режим» если нужно

Шаг 2. Добавление реквизита

  1. В дереве расширения: ПКМ → Добавить → Документ (или справочник)
  2. Выберите объект из основной конфигурации
  3. Добавьте новый реквизит
  4. Имя начинается с префикса расширения

Перехват событий

Аннотация &Перед

Выполняется до основной процедуры:

&Перед("ПередЗаписью")
Процедура МОЙ_ПередЗаписью(Отказ)
    // Ваш код выполнится ДО основной процедуры
    Если НЕ ПроверитьМоиУсловия() Тогда
        Отказ = Истина;
    КонецЕсли;
КонецПроцедуры

Аннотация &После

Выполняется после основной процедуры:

&После("ПриЗаписи")
Процедура МОЙ_ПриЗаписи(Отказ)
    // Ваш код выполнится ПОСЛЕ основной процедуры
    ЗаписатьВЛог(Ссылка);
КонецПроцедуры

Аннотация &Вместо

Полностью заменяет основную процедуру:

&Вместо("РассчитатьСумму")
Функция МОЙ_РассчитатьСумму()
    // Полностью своя логика
    // Можно вызвать оригинал:
    // Результат = ПродолжитьВызов();
    Возврат МояФормулаРасчёта();
КонецФункции

Установка расширения

Через Конфигуратор:

  1. Конфигурация → Расширения конфигурации
  2. Нажмите «Добавить из файла»
  3. Выберите файл .cfe
  4. Подтвердите установку

Через 1С:Предприятие:

  1. Главное меню → Все функции → Стандартные → Управление расширениями
  2. Добавить из файла
  3. Выбрать .cfe файл

Программно:

ДвоичныеДанные = Новый ДвоичныеДанные("C:\extension.cfe");
РасширенияКонфигурации.ДобавитьИзФайла(ДвоичныеДанные);

⚠️ Частые ошибки

«Процедура не найдена»

Имя процедуры в аннотации не совпадает с исходной. Проверьте регистр и написание.

«Расширение не применяется»

Возможно, объект был изменён в основной конфигурации. Пересоздайте расширение.

Конфликты при обновлении

После обновления основной конфигурации проверьте, не сломались ли расширения.

Нужно расширение?

Разработаю расширение для вашей типовой конфигурации без снятия с поддержки.

Заказать разработку →