Закажите бесплатный расчет стоимости вашей задачи по 1С!
Перезвоним за 10 минут! (в рабочие часы)

Расширения конфигурации в 1С 8.3

В данной статье предлагаю рассмотреть, что такое «расширение конфигурации», как добавить расширение или же отключить его. Начиная с версии 1C 8.3.6.1977 в платформе введен новый механизм – расширения конфигурации. Сначала немного теории.

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

Расширения представляют в 1С собой что-то вроде параллельных конфигураций, которые автоматически объединяются с основной конфигурацией поставщика. Причем в расширениях можно добавлять как свои объекты, так и заимствовать объекты основной конфигурации.

Для чего нужны расширения?

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

Снятие с полной поддержки влечет за собой ряд неудобств:

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

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

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

Видео — расширения в 1С за 45 минут

Пример добавления расширения в 1С

Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>

Чтобы показать, что такое расширение, лучше привести пример его создания в конфигураторе 1С.

В конфигураторе зайдем в меню «Конфигурация» и выберем пункт «Расширения конфигурации». Откроется окно со списком расширений (если они есть). Нажмем кнопку «Добавить» и добавим новое расширение. Теперь можно открыть конфигурацию расширения:

добавление расширения конфигурации

Как видно, конфигурация расширения имеет точно такую же структуру, как и основная. Только она изначально совершенно чистая, без объектов.

Недавно я писал статью о том, как самим сделать обработку для перенумерации объектов.  На её примере я хочу сделать ее встроенной при помощи расширения.

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

Поэтому справочник мы позаимствуем из основной конфигурации:

добавить в расширение

Теперь нажмем правой кнопкой мышки на «Обработки» и выберем «Вставить внешнюю обработку, отчет…» Таким образом, добавим новую обработку в конфигурацию расширения. Если Вы используете мою обработку, то сразу переименуйте ее, так как в основной конфигурации уже есть обработка с таким именем.

Ну и последний штрих. Я хочу, чтобы моя обработка отражалась в меню «Администрирование». Для этого позаимствуем одноименную подсистему основной конфигурации. Не забудьте указать в обработке, что она относится к этой подсистеме.

Вот такая структура у меня получилась:

структура расширения

Посмотрим, что у нас получилось. Обновляем конфигурацию базы данных и запускаем программу в режиме 1C: Предприятие, и идем в меню «Администрирование». Да, чуть не забыл, конфигурацию расширения необходимо закрыть, иначе программа не запустится:

обработка в подсистеме

Таким образом, мы добавили в программу новую обработку, не изменив при этом основную конфигурацию.

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

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

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

Остались вопросы?

СПРОСИТЕ в комментариях!

Комментариев: 13 на “Расширения конфигурации в 1С 8.3
  1. Интересная статья!
    Подскажите стоит ли переходить на платформу 8.3.8.1747? много ли в ней глюков, может кто тестировал?

    Ответить

    • Спасибо, Вадим!

      8.3.8.1747 юзал, ничего плохого сказать не могу 🙂

      Ответить

  2. Добрый день!

    Не подскажите, обновил платформу до 8.3.6.2237 и 1С выдала вот такое сообщение:

    «Структура данных не поддерживает хранение расширений. Необходимо отключить режим совместимости.»

    Что это такое и где отключается?

    Ответить

    • Я сталкивался. На деле оказалось что это просто глюк. Помогает перезагрузка базы через файл dt.

      Если же и дальше будет глючить — режим совместимости устанавливается в свойствах конфигурации (правой кнопкой на корне конфигурации, пункт свойства).

      Ответить

    • Конфигуратор -> Конфигурация ->Свойства. в самом низу режим совместимости. Убираем

      Ответить

  3. Можно ли добовлять в расширении кнопки на формы из основной конфигурации?

    Ответить

  4. Добавил документ расширение, а редактирвание его модуля недоступно. Только форму дает менять. Это лечится?

    Ответить

  5. С расширением функция [ПолучитьСтруктуруХраненияБазыДанных()] работает не корректно.

    Как получить имя полей и соответствие этих полей данным в sql таблицах?

    Ответить

    • Версия платформы: 1С:Предприятие 8.3 (8.3.12.1529)
      Совместимость: не использовать

      Ответить

  6. «В данной статье предлагаю рассмотреть, что такое «расширение конфигурации», как добавить расширение или же отключить его»
    Перечитал 3 раза. Как отключить расширение, так и не нашел…

    Ответить

  7. Как временно отключить хранилище так и не понял 🙁

    Ответить

  8. Доброго дня.

    Подскажите пожалуйста, если в расширении добавлены отчёт или обработка, то при необходимости изменений где нужно менять??
    И как поменять что-то, если можно, то с примерами.
    Благодарю.

    Ответить

  9. Вопрос — зачем добавлять обработку через расширения конфигурации если есть механизм внешних отчетов и обработок который работает и в сервисе в обычных режимах ?

    Ответить

Добавить комментарий:

Ваш адрес email не будет опубликован.