|   |   | 
| 
 | кд и регистры | ☑ | ||
|---|---|---|---|---|
| 0
    
        newphoenix 03.03.16✎ 17:41 | 
        Добрый день.
 Встала необходимость получать из базы-приемника (ут 10.3 на 8.1 нетиповая) некие данные запросом и передавать в виде начальных остатков в приемник (ут 11.2 типовая на 8.3). Все справочники, перечисления итд переносятся без проблем, проблема с остатками. Для этого я делаю ПВД, объект выборки пустой, произвольный алгоритм, правило конвертации "ТоварыНаСкладах". В ПВД перед обработкой: Запрос = Новый Запрос; Запрос.Текст = ..... Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл ВыгрузитьПоПравилу(Выборка,,,, "ТоварыНаСкладах"); КонецЦикла; В ПКО Источник пустой, приемник - документ корректировки записей регистров. Как мне теперь дальше действовать, как обратиться к результату моего запроса? Я понял, что что-то вроде НаборЗаписей.Номенклатура = Источник.Номенклатура? После загрузки в ПКО создавать набор записей с регистратором кзр? Можно пример такого алгоритма (именно - получаем данные запросом из источника, пишем в регистр приемником с регистратором - кзр). | |||
| 1
    
        Rie 03.03.16✎ 17:43 | 
        (0) Это где такое? В правилах выгрузки? Тогда не надо ВыгрузитьПоПравилу, формируй коллекцию - и указывай ПКО, которое будет обрабатывать элементы этой коллекции.     | |||
| 2
    
        newphoenix 03.03.16✎ 17:53 | 
        Сформировать коллекцию? Это ТЗ или структуру? И можно примерно, в каком обработчике пко это писать? Например, у меня есть таблица значений с колонками номенклатура, склад, количество.     | |||
| 3
    
        Rie 03.03.16✎ 18:03 | 
        (2) Коллекция - это таблица значений.
 В ПВД ставишь "Произвольный алгоритм". В "Перед обработкой" - формируешь таблицу значений. Просто пишешь ВыборкаДанных - Запрос.Выполнить().Выгрузить(); Можно даже ВыборкаДанных = Запрос.Выполнить(); Это тоже сгодится. | |||
| 4
    
        newphoenix 03.03.16✎ 18:04 | 
        Отлично, сформировал, а самое для меня непонятное, как я теперь обращусь к ней? В пко после загрузки?     | |||
| 5
    
        Rie 03.03.16✎ 18:15 | 
        (4) Элемент этой коллекции - это источник для ПКО. Просто указывай на картинке соответствующие имена полей. Или обращайся к Источник.ИмяПоля или Объект.ИмяПоля (в зависимости от обработчика).     | |||
| 6
    
        newphoenix 03.03.16✎ 18:47 | 
        Не понимаю, не получается все равно, есть пвд, в произвольный алгоритм, там запрос и таблица значений, которая запрос.выполнить().выгрузить(), в пко после загрузки написал: сообщить(источник.номенклатура) - ничего не выводится     | |||
| 7
    
        mehfk 03.03.16✎ 18:52 | 
        (0) Возьми любые правила, где есть перенос вводом остатков, хоть с 7.7 на 8, хоть с 8 на 8 и посмотри как сделано там.     | |||
| 8
    
        newphoenix 03.03.16✎ 18:53 | 
        можете подкинуть правил для примера? кд 2.1     | |||
| 9
    
        newphoenix 03.03.16✎ 18:58 | 
        и еще, в мною найденных примерах грузят в тч какого-нибудь документа остатков, а мне нужен документ корректировки записи регистров, у которого по факту, как бы и нет табличной части, а есть лишь ее имя     | |||
| 10
    
        mehfk 03.03.16✎ 19:11 | 
        Движения выгружаются так же, как и тч.     | |||
| 11
    
        mehfk 03.03.16✎ 19:16 | 
        Пример можно посмотреть в ЗИК 7.7 - ЗУП 2.5 Док ПереносДанных.     | |||
| 12
    
        newphoenix 03.03.16✎ 19:27 | 
        Я просто не понимаю, создаю пкгс для документа корректировки регистров, а там из приемников можно выбрать только "имя". То есть, я не могу въехать, как мне указать, что это будет для регистра "товары на складах", источник - пустой, приемник - номенклатура, например     | |||
| 13
    
        newphoenix 03.03.16✎ 19:36 | 
        Вот просто по шагам, можно, правильно или нет
 1). В пвд объект выборки пуст, произвольный алгоритм, правило конвертации - мое правило, перед обработкой я выполняю запрос и получаю выборку 2). Там же в пвд я перебираю выборку в цикле и пользуюсь выгрузитьпоправилу(Выборка,,Выборка,,"МоеПКО"); 3). В ПКО после загрузки делаю новый набор записей, регистратор - объект, запись.номенклатура = входязиеданные.номенклатура? | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |