Добрый день,коллеги !
Суть задачи:
Необходимо выгрузить из ут 10 документы "корректировки реализации" и создать в базе "финансист" документ "коректировки записей регистров" на сумму эти реализации(минус).

Сейчас есть уже перенесенные документы "реализации из ут" в док. "Планируемые поступления ДС". Тоесть все гуиды совпадают.

Вопрос: В каком месте в кд2.0 правильнее делать поиск по гуиду этих документов "поступления ДС" и далее подставлять ссылку в док"коррективов регистров". Был бы благодарен за код!

Мысли что просто в пко делаем "корректировка рту" - "корректировка записей регистров" и перед выгрузкой получаю гуид реализации-его в параметр ,дальше ищу по всем документам "планирумое поступления дс" этот гуид и в конечной базе после загрузки подставляю ссылку и делаю минус?верно?
---
Тут немного сложнее, надо переносить движения. То есть из документа сделать набор движений.
Если одной корректировки будет соответствовать один документ корректировки и одна строка движений. То сделать можно достаточно просто.
Все данные передаете через параметры. То есть вручную создаете ПКС и указываете реквизит источник, а приемник не указывается. Ставите галку "передавать в параметр", если это ссылочный тип, то указываете ПКО. И задаете название параметра.

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

```1c
    РегНакопл = Объект.Движения.РегистрНакоплений;
    РегНакопл.Записывать = Истина;
    Движение = РегНакопл.Добавить;
    //Далее заполняете все данные регистра, получая их из параметров
    //параметры получают такой строкой
    ЗначениеПараметры = ПараметрыОбъекта.Получить("ИмяПараметра");
```
---
Зачем такие сложности?
Создаете ПКО и ставите галку искать по внутреннему индентификатору объекта. Это и есть GUID.
Так же, что бы не перезаписались, то ставите галку, не замещать существующие объекты.
---
можно подробнее пожалуйста,совсем новичок в конвертации.
Делаю пко Корект.реализации(источник) в корректировка регистров(приемник)(автоматичеое пкс не делаю) ,у них же ставлю галку поиску по внутр.идкнтфикатору и не замещать уже существующие. Далее что ,как,где? Понимаю где то надо перехватить этот поиск гуида и заполнить значением реквизита (ссылка на док.планируемое поступление ДС) ,но знаний не достаточно.

И в итоговой базе после этого уже заполнять остальные реквизиты в пко в обработчике "после загрузки" объекта и прописывать программное заполнение объект.... =
Значение ; и программная запись с проведением?
---
Согласен с коллегой. В ПКО для корректировки в ПКС для реализации в обработчик "перед выгрузкой"

```1c
    Значение = Новый Структура("Ссылка",Ссылка);
    ИмяПКО = "РеализацияКакПоступлениеДСБезСвойств";
```

А далее в ПКО "РеализацияКакПоступлениеДСБезСвойств" свойства не синхронизируете и ставите галки как сказано выше
---
а в пко в каком обработки,подскажите? Не пойму по вашему тексту..
---
1) ПКО: корректировка реализации - корректировка записей
2) Проставил галки как в (1)
3) В этом пко в пкс выбираю реквизит "ДокументРеализации" и у него пишу( так же что за Ссылка!?, откуда она вообще!?)

```1c
    Значение = Новый Структура("Ссылка",Ссылка);
    ИмяПКО = "РеализацияКакПоступлениеДСБезСвойств";
```

4) Что дальше?
---
Корректировка регистров в базе приемник с реквизитами? или там набор записей регистра?
Если реквизиты, то просто, сопоставляете свойства документа. Если набор записей, то ссылку можно передать через параметр и там указать конвертацию.
---
Там из реквизитов у основной формы датаОТ, ответственный и комментарии.
Для заполнения самого документа сперва открывается "ФормаВыбораРегистра", далее заполняется уже объект.Таблица.Регистров.Добавить().. и на основной форме появляется набор записей регистра которую уже надо заполнить...
Без понятия как это всё кодом в КД описывать.

Так же как связать реквизит "ДокументРеализации"(ссылка.реализации) документа "корректировка реализации"(источник) с уже существующими документа в приемнике ("планируемое поступление ДС") а дальше уже это планируемое поступление подставить в документ "корректирвока записей"??
---
Тут немного сложнее, надо переносить движения. То есть из документа сделать набор движений.
Если одной корректировки будет соответствовать один документ корректировки и одна строка движений. То сделать можно достаточно просто.
Все данные передаете через параметры. То есть вручную создаете ПКС и указываете реквизит источник, а приемник не указывается. Ставите галку "передавать в параметр", если это ссылочный тип, то указываете ПКО. И задаете название параметра.

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

```1c
    РегНакопл = Объект.Движения.РегистрНакоплений;
    РегНакопл.Записывать = Истина;
    Движение = РегНакопл.Добавить;
    //Далее заполняете все данные регистра, получая их из параметров
    //параметры получают такой строкой
    ЗначениеПараметры = ПараметрыОбъекта.Получить("ИмяПараметра");
```
---
А по поводу поиска по гуиду и дальнеишней подстановки ? Понял что надо проставить галки лишь, а где дальше то обрабатывать это..
---
Если у параметра нет источника, то просто перед выгрузкой свойств пропишити
Значение = НужноеЗначение;
Тогда даже источник не нужен.
---
Ни где, после загрузки параметр уже будет ссылкой. То есть конвертация сама все сделает за вас.
---
Можно код ? Из ваших слов в приемник попадёт ссылка на документ "Корректирова реализации", но мне то необходима ссылка реквизита этого документа - "ДокументОснование"(Реализация гуид которой уже есть в приемнике).
---
Выше писал, в ПКС параметра перед выгрузкой пишите:
Значение = Источник.НужныйРеквизитНапримерДокументОснование;
И указываете правило конвертации параметра. Все остальное сделает обработка универсальный обмен данными. Главное галку поставьте в ПКО (ссылки которую конвертируете) не замещать найденные объекты.
---
не понимаю все равно..
Я передам в параметр ссылку на ДокументОснование. Укажу новое пко(реализации в коррективов регистров ) и все что-ли ?
---
Выходит
1) Создаю ПКО - КорректировкаРеализации - КорректировкаРегистров.
2) ПКС "ДокументОснование" - помещаю в параметр [Накладная]
3) В этом же пкс ставлю имя пко на пункт (1)
4) В ПКО после загрузки делаю объект.ДокументОснование = ПараметрыОбъекта["Накладная"];
5) В итоге в приемнике попадёт ссылка на ДокументОснование(накладная) из КорректировкаРеализации !?!??

Но мне то надо подставить ссылку док.ПланируемоеПоступлениеДС(приемник - которая связана из источника по гуиду) и док.КорректировкаРегистров(Приемник);

Запутался..
---
Создаешь ПКО КорректрировкаРеализации.
Удаляешь поиск по внутреннему идентификатору

Далее Обработчик ПриВыгрузке заполняешь так:

```1c
    УзелСсылкиXML = СоздатьУзел("Ссылка");
    УстановитьАтрибут(УзелСсылкиXML,"Нпп",НПП);
    УзелГуид = ДобавитьУзел(УзелСсылкиXML,"Свойство");
    УстановитьАтрибут(УзелГуид,"Тип","Строка");
    УстановитьАтрибут(УзелГуид,"Имя","{УникальныйИдентификатор}");
    одЗаписатьЭлемент(УзелГуид,"Значение", ТвойУникальныйИдентификатор);
    УзелСсылкиXML.ЗаписатьКонецЭлемента();
    УзелСсылкиXML.ЗаписатьКонецЭлемента();
    УзелСсылки = УзелСсылкиXML.Закрыть();
    ДобавитьПодчиненный(Приемник,УзелСсылки);
```

Вместо ТвойУникальныйИдентификатор подставляешь занчение твоего GUID
У меня так работает перегрузка нестандартных документов