Инструкция по переносу объектов из расширения Cfe в основную конфигурацию Cf.

29.10.23

База данных - Обновление 1С

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

Инструкция по переносу объектов из расширения Cfe в основную конфигурацию Cf.

 

Аннотация:

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

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

 - Справочник «Сделки» в основной конфигурации, часть реквизитов в «расширение1»

- Документ «Счет» в основной конфигурации, в «расширение1» добавлен реквизит паспорт, в «расширение2» добавлен реквизит номенклатура.

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

В чем подвох:

                - Отладка и так достаточно сложна, а при такой разработке становится практически невозможной.

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

 

  1. Готовим файл CFE

Выгружаем расширение в Файлы.

Удаляем из файла Configuration.xml строки:

<ConfigurationExtensionPurpose>AddOn</ConfigurationExtensionPurpose>

<ObjectBelonging>Adopted</ObjectBelonging>

<KeepMappingToExtendedConfigurationObjectsByIDs>true</KeepMappingToExtendedConfigurationObjectsByIDs>

<NamePrefix>ПР_</NamePrefix>

 Остальные объекты обрабатываем через Total Commander

Выделяем группы/папки которые будем обрабатывать. Тут, как говорится, на ваше усмотрение.

Регистры удобнее обработать отдельно. Забегая вперед: если в регистрах сведений/накопления в расширении не будет измерений, то при применении изменений в пустой конфигурации выдаст ошибку и придется делать все по новой.

 

Примерная таблица папок:

//AccumulationRegisters

Catalogs

ChartsOfCharacteristicTypes

CommandGroups

CommonCommands

CommonPictures

Constants

DataProcessors

Documents

Enums

//InformationRegisters

Languages

Reports

Roles

StyleItems

 

 

 

Выводим на панель

 

 

В результатах поиска выделяем все и перетаскиваем в Нотепад ++

 

 

Делаем замену во всех открытых файлах строки:

<ObjectBelonging>Adopted</ObjectBelonging> на пустую строку.

 

 

Выдаст вопрос: сохранить? - отвечаем да для всех.

  1. Делаем загрузку из файлов в пустую конфигурацию и сохраняем cf-ник.

Внимание! Если при загрузке перенос не прошел, то устраняем в расширении причину ошибки и проводим шаги 1- 4 повторно.

Пример ошибки:

 

 

  1. Объединение с рабочей конфигурацией.

1 Разворачиваем копию с рабочей базы.

2 УДАЛЯЕМ РАСШИРЕНИЕ. Если этого сразу не сделать, будут проблемы с применением объединения. И придется по новой восстанавливать базу и делать сравнение/объединение.

 

 

3 Объединяем рабочую конфигурацию с конфигурацией, полученной из расширения

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

Внимание! Если в результате у вас не получились УСТАНОВИТЬ СООТВЕТСТВИЕ по всем объектам, заимствованным в расширение, то после объединения вы можете получить в реквизите тип «строка». См пример ниже. Найти ошибку получится только когда пользователи начнут работать и у них вдруг полезут ошибки.

Пример ошибки:

 

 

4 Проверяем, что у документов присутствуют все регистры в движениях, добавляем.

 

 

  1. Исправление текстов модулей

Внимание! Обязательно пройдитесь по переносимым документам и проверьте, что в процедуре «ПередЗаписью» в модулях объектов есть строка:

                Если ОбменДанными.Загрузка Тогда Возврат; КонецЕсли;

Если при переносе вы переносите частично заимствованные объекты и у вас в расширении были директивы «#Вместо», «#Перед», «#После», то проверьте и удалите директиву: «ПродолжитьВызов».

После сравнения и объединения еще раз открываем расширение и проходим по модулям объектов, присутствующих в расширении, и переносим коды процедур модуля «перед записью, «обработка проведения», «заполнение объекта», которые были добавлены в расширение.

 

  1. Проверка Команд

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

 

 

  1. Перенос данных Справочников, документов, независимых регистров сведений

Для переноса используем обработку: Выгрузка и загрузка данных XML. (Я использую одну из обработок с Инфостарта с добавленным отбором).

Из копии, в которой присутствует переносимое расширение, начинаем выгрузку/загрузку.

Идем по порядку, сначала выгружаем справочники, документы, регистры.

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

 

 

 

Настройки при выгрузке через обработку:

Важно! Отключить отметки выгружать при необходимости.

 

 

Получили ошибку, добавляем регистраторы, которые потеряли при сравнении объединении:

 

 

 

  1. Выгрузка регистров накопления

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

  1. Сверка данных

Для сверки делаем запросы по всем справочникам, документам, регистрам, которые участвуют в расширении. Обращаем внимание на регистры, которые были изменены в процессе удаления расширения.

 

 

Инструкция расширения Cfe объединение перенос разработка

См. также

БСП (Библиотека стандартных подсистем) Обновление 1С Программист 1C:ERP Бесплатно (free)

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

29.04.2025    733    krasnoshchekovpavel    4    

9

Рефакторинг и качество кода Обновление 1С Программист Платформа 1С v8.3 Бесплатно (free)

Методика, описанная в статье, выработана при переезде с 1С:ДО 2.1 на 1С:ДО 3.0. Может также применяться при переходе с 1С:УПП на 1C:ERP, 1C:ERP на 1C:ERP УХ и т. п. Учтены все необходимые доработки при переезде на новую конфигурацию и предупреждены возможные ошибки.

21.04.2025    998    PROSTO-1C    4    

4

Обновление 1С Программист Платформа 1С v8.3 1C:Бухгалтерия 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1C:ERP Абонемент ($m)

Внешняя обработка для обновления расширений и дополнительных обработок 1С из GitHub. Поддерживает как публичные, так и приватные репозитории, фильтрацию релизов по версии конфигурации, скачивание .cfe, .epf, .erf.

1 стартмани

15.04.2025    1544    4    Aleksandr    0    

21

Обновление 1С Системный администратор Программист Платформа 1С v8.3 Абонемент ($m)

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

1 стартмани

02.04.2025    682    2    DoubleT    8    

5

Обновление 1С Linux Системный администратор Программист Бесплатно (free)

Пошаговая инструкция для обновления платформы 1С на сервере Linux Debian.

28.03.2025    1126    California_Dreaming    2    

5

Обновление 1С Программист Платформа 1С v8.3 Россия Бесплатно (free)

При обновлении релиза конфигурации УТ появилась ошибка "Ошибка формата потока".

21.03.2025    1172    Gummi_pr    10    

7

Обновление 1С Программист Платформа 1С v8.3 1С:ERP. Управление холдингом Абонемент ($m)

Описан практический пример обновления через копию конфигурации 1С:ERP. Управление холдингом с версии 3.2.6.6 на версию 3.2.6.7, который можно применять на других конфигурациях и версиях.

10 стартмани

18.02.2025    1082    PetrovAnton    6    

5

Обновление 1С Программист Платформа 1С v8.3 Абонемент ($m)

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

10 стартмани

18.02.2025    1059    5    kalyaka    0    

8