База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как правильно вынести доработки в расширение 1С с учётом аннотаций и сопровожден
- В этой теме 1 ответ, 2 участника, последнее обновление 22 минуты назад сделано
Odin — Одинэсник.
-
АвторСообщения
-
-
4 ноября 2025 в 19:45 #34056
OdineskiУчастникКак вынести доработки в расширение
-
4 ноября 2025 в 19:45 #34057
Odin — ОдинэсникУчастникГеннадий, вынесение доработок в расширение — это современный и рекомендованный способ доработки типовой конфигурации 1С без снятия её с поддержки. Вот подробный алгоритм и рекомендации по этому процессу:
1. **Подготовка:**
— Имеется две конфигурации:
— Старая с доработками (снятая с поддержки).
— Обновленная типовая конфигурация (последняя версия).
— Цель — перенести доработки из старой конфигурации в расширение, подключенное к обновленной типовой.2. **Создание расширения:**
— В конфигураторе откройте обновленную типовую конфигурацию.
— Создайте новое расширение (Конфигурация → Расширения конфигурации).
— Задайте имя расширения, в свойствах укажите, что расширение активно и предназначено для адаптации.3. **Выделение доработок:**
— В старой конфигурации через меню «Поддержка» → «Настройка поддержки» → «Сравнить, объединить» сравните с типовой.
— Определите, какие объекты и модули были изменены.4. **Перенос кода в расширение:**
— В обновленной конфигурации найдите нужный объект (например, модуль объекта, форму, обработчик).
— Правой кнопкой мыши на процедуре/функции выберите «Добавить в расширение» (горячие клавиши Alt+Shift+F2).
— Появится выбор аннотации для вставки кода:
—&Перед— код выполнится до типового.
—&После— код выполнится после типового.
—&Вместо— заменяет типовой код (использовать с осторожностью).
—&ИзменениеИКонтроль— позволяет вставлять или удалять части типового кода (через директивы#Вставка,#Удаление).
— Стремитесь использовать&Переди&После— это облегчает сопровождение и обновление.
— Если типовой код полностью переписан, используйте&Вместо.
— Для небольших изменений в коде запросов и алгоритмах —&ИзменениеИКонтроль.5. **Работа с формами:**
— Изменения форм лучше делать программно, а не через редактор форм расширения.
— Например, в обработчике события формыПриОткрытиис аннотацией&Послепрограммно изменяйте свойства элементов (например,Элементы.Поле.УстановитьДоступность(Ложь)).6. **Отладка и тестирование:**
— Проверяйте расширение на синтаксические ошибки.
— Если расширение не видит объекты, добавьте их в расширение (например, общие модули, константы).
— Тестируйте работу расширения в режиме предприятия.7. **Рекомендации по организации расширений:**
— Не дробите расширения для одного объекта — лучше одно расширение на объект.
— Минимизируйте использование&Вместои&ИзменениеИКонтроль.
— Ведите реестр расширений.
— Новые объекты с данными лучше добавлять в основную конфигурацию, а не в расширение.8. **Обновление расширения:**
— При выходе новой версии типовой конфигурации обновляйте её.
— Расширение автоматически объединится с типовой.
— При необходимости корректируйте расширение под новые изменения.—
**Пример использования аннотации &После:**
1С (Код)1234&ПослеПроцедура ОбработкаПриОткрытии(Отказ)Элементы.ПолеТекста.Доступность = Ложь; // Сделать поле нередактируемымКонецПроцедуры—
**Пример использования &ИзменениеИКонтроль:**
1С (Код)12345678910&ИзменениеИКонтрольПроцедура ОбработкаЗапроса()#Удаление// Старый код запроса, который нужно убрать#КонецУдаления#Вставка// Новый код запроса#КонецВставкиКонецПроцедуры—
Рекомендую подробно изучить официальную документацию и статьи по расширениям:
— https://v8.1c.ru/platforma/rasshireniya/
— https://infostart.ru/1c/articles/1535974/
— https://infostart.ru/1c/articles/1039552/Это позволит избежать типичных ошибок и сделать сопровождение конфигурации максимально удобным.
Если нужно, могу помочь с конкретным примером кода или разбором вашей доработки.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/1535974/
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.