Конвертация табличной части
Переношу справочник с табличной частью. В ПВД использую произвольный алгоритм:
ВыборкаДанных = Новый ТаблицаЗначений;
ВыборкаДанных.Колонки.Добавить("Наименование");
ВыборкаДанных.Колонки.Добавить("УНИ_ДоговорыАгенства");
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Агенства.Ссылка,
| Агенства.Код,
| Агенства.Наименование,
| Агенства.НомерДоговораРиэлти,
| Агенства.ДатаДоговораРиэлти,
| Агенства.НомерДоговораСтройРиэлт,
| Агенства.ДатаДоговораСтройриэлт,
| Агенства.НомерДоговораРиэлтрегион,
| Агенства.ДатаДоговораРиэлтрегион,
| ""1660127855/165701001"" КАК ИНН_КПП_РИЭЛТИ,
| ""1657142638/165701001"" КАК ИНН_КПП_РИЭЛТРЕГИОН,
| ""1657193706/165701001"" КАК ИНН_КПП_СТРОЙРИЭЛТ
|ИЗ
| Справочник.Агенства КАК Агенства";
РезультатЗапроса = Запрос.Выполнить();
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
СтрокаШапка = ВыборкаДанных.Добавить();
СтрокаШапка.Наименование = Выборка.Наименование;
СтрокаШапка.УНИ_ДоговорыАгенства = Новый ТаблицаЗначений;
Колонки = СтрокаШапка.УНИ_ДоговорыАгенства.Колонки;
Колонки.Добавить("НомерДоговора");
Колонки.Добавить("ДатаДоговора");
Колонки.Добавить("Организация");
Если Выборка.ДатаДоговораРиэлти <> Дата(1,1,1) Тогда
Организация = Справочники.Продавец.НайтиПоРеквизиту("ИННКПП",Выборка.ИНН_КПП_РИЭЛТИ);
СтрокаТабл = СтрокаШапка.УНИ_ДоговорыАгенства.Добавить();
СтрокаТабл.Организация = Организация.Ссылка;
СтрокаТабл.ДатаДоговора = Выборка.ДатаДоговораРиэлти;
СтрокаТабл.НомерДоговора = Выборка.НомерДоговораРиэлти;
Сообщить(Организация);
КонецЕсли;
КонецЦикла;
Создал ПКО с пустым источником и реквизитами как в запросе. При выгрузке выдается сообщение об ошибке: Ошибка при выгрузке данных: {ВнешняяОбработка.УниверсальныйОбменДаннымиXML(7999)}: Поле объекта не обнаружено (УНИ_ДоговорыАгенства). Если отключаю реквизит организации то перенос срабатывает. В чем может быть моя ошибка.
ВыборкаДанных = Новый ТаблицаЗначений;
ВыборкаДанных.Колонки.Добавить("Наименование");
ВыборкаДанных.Колонки.Добавить("УНИ_ДоговорыАгенства");
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Агенства.Ссылка,
| Агенства.Код,
| Агенства.Наименование,
| Агенства.НомерДоговораРиэлти,
| Агенства.ДатаДоговораРиэлти,
| Агенства.НомерДоговораСтройРиэлт,
| Агенства.ДатаДоговораСтройриэлт,
| Агенства.НомерДоговораРиэлтрегион,
| Агенства.ДатаДоговораРиэлтрегион,
| ""1660127855/165701001"" КАК ИНН_КПП_РИЭЛТИ,
| ""1657142638/165701001"" КАК ИНН_КПП_РИЭЛТРЕГИОН,
| ""1657193706/165701001"" КАК ИНН_КПП_СТРОЙРИЭЛТ
|ИЗ
| Справочник.Агенства КАК Агенства";
РезультатЗапроса = Запрос.Выполнить();
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
СтрокаШапка = ВыборкаДанных.Добавить();
СтрокаШапка.Наименование = Выборка.Наименование;
СтрокаШапка.УНИ_ДоговорыАгенства = Новый ТаблицаЗначений;
Колонки = СтрокаШапка.УНИ_ДоговорыАгенства.Колонки;
Колонки.Добавить("НомерДоговора");
Колонки.Добавить("ДатаДоговора");
Колонки.Добавить("Организация");
Если Выборка.ДатаДоговораРиэлти <> Дата(1,1,1) Тогда
Организация = Справочники.Продавец.НайтиПоРеквизиту("ИННКПП",Выборка.ИНН_КПП_РИЭЛТИ);
СтрокаТабл = СтрокаШапка.УНИ_ДоговорыАгенства.Добавить();
СтрокаТабл.Организация = Организация.Ссылка;
СтрокаТабл.ДатаДоговора = Выборка.ДатаДоговораРиэлти;
СтрокаТабл.НомерДоговора = Выборка.НомерДоговораРиэлти;
Сообщить(Организация);
КонецЕсли;
КонецЦикла;
Создал ПКО с пустым источником и реквизитами как в запросе. При выгрузке выдается сообщение об ошибке: Ошибка при выгрузке данных: {ВнешняяОбработка.УниверсальныйОбменДаннымиXML(7999)}: Поле объекта не обнаружено (УНИ_ДоговорыАгенства). Если отключаю реквизит организации то перенос срабатывает. В чем может быть моя ошибка.
По теме из базы знаний
- Универсальная обработка копирования табличной части "Товары" любого документа из другого документа или файла Excel
- Конвертация данных. Перенос подчиненного справочника из 7.7 в табличную часть 8.x
- Конвертация данных. Выгрузка контактной информации из регистра сведений в табличную часть
- Предварительный просмотр табличной части Товары с комплектующими (Состав набора), для УТ 10.3 до обмена с БП 2.0
- Database Compression Tool (DCT) Универсальный инструмент сжатия, свертки и конвертации баз данных 1С
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот