Выгрузка регистров накопления в другую базу

1. Yuriy_P 20 25.07.22 20:20 Сейчас в теме
В помощью конвертации данных делаю перенос остатков по организации из одной базы в другую.
Создал правила выгрузки для регистров накопления:
В ПВД запросом получаю таблицу остатков, через ВходящиеДанные передаю их в ПКО.
Остатки загружаю через документ ОперацияБух.
Все реквизиты движения по регистрам выгружаются, включая реквизиты составного типа. Но как раз с ними при загрузке возникла проблема.
Например, регистр НДСКосвенныеРасходы имеет измерение СчетФактура составного типа из разных документов.
При загрузке, выгруженные из этого измерения документ создается в базе приемнике, но в движениях по этому регистру не появляется.

Период, организация, СтавкаНДС, Сумма и прочее в движениях регистра появились.
А колонка "СчетФактура" осталась пустой. Хотя, документы, которые должны были в неё записаться, создались.

В чем проблема?

Более того.
В событии "После загрузки" в ПКО пытаюсь присвоить этому измерению движения ссылку на существующий документ. Результат это не дает.

Док = Документы.ДокументРасчетовСКонтрагентом.НайтиПоНомеру(....
Объект.Движения.НДСКосвенныеРасходы[0].СчетФактура = Док.Ссылка;
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. RustamZz 25.07.22 20:30 Сейчас в теме
(1) Не надо послезагрузки. ПКС на этот реквизит покажите.
3. Yuriy_P 20 25.07.22 21:02 Сейчас в теме
(2) ПослеЗагрузки - это я экспериментировал. Понятно, что там оно ни к чему.
Прикрепленные файлы:
5. RustamZz 25.07.22 21:05 Сейчас в теме
(3) Тут все норм. Пример одной записи в файле можно посмотреть?
9. RustamZz 26.07.22 07:22 Сейчас в теме
(3) Не внимательно посмотрел. Справа в сравнении должна быть функция Тип.
11. Yuriy_P 20 26.07.22 17:51 Сейчас в теме
(9) Спасибо, исправил. Но ни на что это существенно не повлияло.
Ибо документы и раньше выгружались и загружались.
Проблема в установке ссылок на них в движениях регистров.
12. RustamZz 26.07.22 18:00 Сейчас в теме
(11) Как будто не по этим правилам выгрузка. Потому что в файле типизация поля есть, а по этому условию не должна была быть. Последний вопрос: в ПКО Документа не стоит галка Не запоминать выгруженные объекты?
14. Yuriy_P 20 26.07.22 18:38 Сейчас в теме
(12)Галка не стоит.
То что типизация есть - это нормально. Если ИмяПКО не указать явно, выгрузка пытается подобрать его самостоятельно. Так что, что с этим кодом, что без него - документы выгружаются.
15. RustamZz 26.07.22 19:39 Сейчас в теме
(14) Если ПКО не указан, и на той стороне несколько типов - автоподбора не будет. Реквизит не заполнится.
16. Yuriy_P 20 26.07.22 20:01 Сейчас в теме
(15) Как бы там не было, это не помогает. Документ в файл выгружается, а в измерении регистра не подставляется.
4. Yuriy_P 20 25.07.22 21:03 Сейчас в теме
А весь набор движений регистра получается из входящих данных.
6. Yuriy_P 20 25.07.22 21:14 Сейчас в теме
(5)
Прикрепленные файлы:
7. RustamZz 25.07.22 21:29 Сейчас в теме
(6) Тоже нормально. Документ же до регистра в файле?
8. Yuriy_P 20 26.07.22 03:35 Сейчас в теме
(7) Да. Именно так.
Такое чувство, что измерение не хочет принимать документ этого типа. Хотя в списке типов он указан.
10. karamazoff 118 26.07.22 07:41 Сейчас в теме
Это самоцель сделать это через кд? Перенесите ссылочные данные через кд, а остатки перенесите обработкой как ввод остатков.
13. RustamZz 26.07.22 18:12 Сейчас в теме
(10) Какой обработкой? Я например тоже всегда через правила выгружаю. Вот например ПВД по 19 счету из 2.0 в 3.0:
Запрос = Новый Запрос;
Запрос.Текст = 
"ВЫБРАТЬ
|	&Дата КАК Дата,
|	НДСПредъявленныйОстатки.Организация КАК Организация,
|	НДСПредъявленныйОстатки.Поставщик КАК Контрагент,
|	НДСПредъявленныйОстатки.ДоговорКонтрагента КАК ДоговорКонтрагента,
|	НДСПредъявленныйОстатки.ВидЦенности КАК ВидЦенности,
|	НДСПредъявленныйОстатки.СчетУчетаНДС КАК СчетУчета,
|	НДСПредъявленныйОстатки.СчетФактура КАК СчетФактура,
|	НДСПредъявленныйОстатки.СтавкаНДС КАК СтавкаНДС,
|	НДСПредъявленныйОбороты.НДСРасход КАК НДСПредъявлено,
|	НДСПредъявленныйОбороты.НДСПриход КАК НДС,
|	НДСПредъявленныйОбороты.СуммаБезНДСПриход КАК СуммаБезНДС,
|	НДСПредъявленныйОбороты.СуммаБезНДСРасход КАК СуммаБезНДСПредъявлено,
|	ВЫБОР КОГДА ЖурналУчетаСчетовФактур.СчетФактура IS NULL ТОГДА Ложь ИНАЧЕ Истина КОНЕЦ КАК ПредъявленСФ,
|	ЖурналУчетаСчетовФактур.КодВидаОперации КАК КодВидаОперации,
|	ЖурналУчетаСчетовФактур.НомерСчетаФактуры КАК НомерСФ,
|	ЖурналУчетаСчетовФактур.ДатаСчетаФактуры КАК ДатаСФ
|ИЗ
|	РегистрНакопления.НДСПредъявленный.Остатки(&Дата, ) КАК НДСПредъявленныйОстатки
|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.НДСПредъявленный.Обороты(, &Дата, , ) КАК НДСПредъявленныйОбороты
|		ПО НДСПредъявленныйОстатки.Организация = НДСПредъявленныйОбороты.Организация
|			И НДСПредъявленныйОстатки.СчетФактура = НДСПредъявленныйОбороты.СчетФактура
|			И НДСПредъявленныйОстатки.ВидЦенности = НДСПредъявленныйОбороты.ВидЦенности
|			И НДСПредъявленныйОстатки.СтавкаНДС = НДСПредъявленныйОбороты.СтавкаНДС
|			И НДСПредъявленныйОстатки.СчетУчетаНДС = НДСПредъявленныйОбороты.СчетУчетаНДС
|			И НДСПредъявленныйОстатки.Поставщик = НДСПредъявленныйОбороты.Поставщик
|			И НДСПредъявленныйОстатки.ДоговорКонтрагента = НДСПредъявленныйОбороты.ДоговорКонтрагента
|		ЛЕВОЕ СОЕДИНЕНИЕ Документ.СчетФактураПолученный.ДокументыОснования КАК СчетФактураПолученныйДокументыОснования
|			ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЖурналУчетаСчетовФактур КАК ЖурналУчетаСчетовФактур
|			ПО СчетФактураПолученныйДокументыОснования.Ссылка = ЖурналУчетаСчетовФактур.СчетФактура
|		ПО НДСПредъявленныйОстатки.СчетФактура = СчетФактураПолученныйДокументыОснования.ДокументОснование ГДЕ НДСПриход > 0 
|ИТОГИ ПО
|	Дата,
|	Организация";

Запрос.УстановитьПараметр("Дата", ДатаОкончания);

ВыборкаДанных = Новый Массив;
ВыборкаДата = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаДата.Следующий() Цикл
	ВыборкаОрганизация = ВыборкаДата.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
	Пока ВыборкаОрганизация.Следующий() Цикл
			
		ВводОстатков  = Новый Структура("Организация, Дата");
		ЗаполнитьЗначенияСвойств(ВводОстатков, ВыборкаОрганизация);
			
		ДанныеПоНДС = Новый Массив;
		ВыборкаДетальныеЗаписи = ВыборкаОрганизация.Выбрать();
		Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
			СтрокаРасчета = Новый Структура("СчетУчета, Контрагент, ДоговорКонтрагента, 
											|СчетФактура, ВидЦенности, СтавкаНДС, НДС, НДСПредъявлено,
											|СуммаБезНДС, СуммаБезНДСПредъявлено,
											|ПредъявленСФ, КодВидаОперации, НомерСФ, ДатаСФ");
			ЗаполнитьЗначенияСвойств(СтрокаРасчета, ВыборкаДетальныеЗаписи);
			ДанныеПоНДС.Добавить(СтрокаРасчета);
		КонецЦикла;
		
		ВводОстатков.Вставить("ДанныеПоНДС", ДанныеПоНДС);	
		ВыборкаДанных.Добавить(ВводОстатков);
		
	КонецЦикла;
КонецЦикла;
Показать
Все остальное интерактивно. В принципе все как у автора, только я ВводОстатков использую, а не Операцию.
Прикрепленные файлы:
17. karamazoff 118 26.07.22 21:13 Сейчас в теме
(13)Рукописной обработкой в 10 строк, где поиск по уид или по коду
18. svetanik 5 26.07.22 21:47 Сейчас в теме
19. RustamZz 26.07.22 23:36 Сейчас в теме
(17) У меня 10 строк не получается ни как. Можно пример для РН что описан у автора?
(18) А как этот документ появится в др. базе?
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот