База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как перенести данные реквизита из расширения в основную конфиг. в 1С? › Ответ в теме: Как перенести данные реквизита из расширения в основную конфиг. в 1С?
Если у вас есть реквизит документа, который был добавлен в расширении, и вы хотите перенести этот реквизит в основную конфигурацию, то данные из реквизита расширения нужно скопировать в новый реквизит основной конфигурации вручную через обработку или запрос.
Пошагово:
1. Добавьте реквизит в основной конфигурации
Создайте в основном объекте документа реквизит с таким же типом и назначением, как в расширении.
2. Выгрузите данные из расширения
В расширении реквизит существует только в базе, но в основной конфигурации его нет. Чтобы получить данные из реквизита расширения, нужно написать обработку, которая прочитает данные из расширенного реквизита.
3. Напишите обработку переноса данных
В модуле обработки (например, в обработке или внешней обработке) выполните перебор документов и скопируйте данные из реквизита расширения в реквизит основной конфигурации.
Пример кода на 1С (BSL):
|Для каждого ДокументСсылка Из Документ.ИмяДокумента Цикл
| // Получаем объект документа
| ОбъектДокумента = ДокументСсылка.ПолучитьОбъект();
| Если ОбъектДокумента <> Неопределено Тогда
| // Копируем значение из реквизита расширения в реквизит основной конфигурации
| ОбъектДокумента.РеквизитОсновнойКонфигурации = ОбъектДокумента.РеквизитРасширения;
| ОбъектДокумента.Записать();
| КонецЕсли;
|КонецЦикла
4. Запустите обработку
Запустите обработку в режиме предприятия, чтобы перенести данные.
5. Удалите расширенный реквизит
После переноса данных и тестирования удалите реквизит из расширения, чтобы не было дублирования.
—
Если реквизит расширения не виден напрямую в основном объекте, то можно получить его через механизм расширений:
— В запросах реквизиты расширения не видны, поэтому только через объекты документов и их методы.
— Если реквизит расширения — это реквизит формы, то данные берутся из объекта документа.
—
Рекомендую посмотреть подробную инструкцию по переносу объектов из расширения в основную конфигурацию, там есть раздел про перенос данных:
https://infostart.ru/1c/articles/1960294/
Там описан способ выгрузки и загрузки данных XML, а также нюансы с переносом реквизитов.