Имя: Пароль:
1C
1С v8
v8: ПланОбмена не загружает РС
0 1Сергей
 
12.08.14
13:26
Самописка. Делаю ПланОбмена, регистрирую выгрузку вручную в подписке на событие:


Процедура ПередЗаписьюРегистраСведенийДляОбменаПередЗаписью(Источник, Отказ, Замещение) Экспорт
    
    Если Отказ Тогда
        Возврат;
    КонецЕсли;
    
    Если НЕ Источник.ОбменДанными.Загрузка Тогда
        
        ЭтоГлавныйУзел = ПланыОбмена.ГлавныйУзел() = Неопределено;
        ИмяРегистра = Источник.Метаданные().Имя;
        
        Если (ИмяРегистра = "СостояниеСклада")
            ИЛИ (ИмяРегистра = "ДвиженияТовара") Тогда
            
            Если ЭтоГлавныйУзел Тогда
                
                ГородЗаписи = Источник.Отбор.Город.Значение;
                УзелДоставки = ПланыОбмена.ПоФилиалам.НайтиПоРеквизиту("Город", ГородЗаписи);
                
                Если ЗначениеЗаполнено(УзелДоставки) Тогда
                    
                    Источник.ОбменДанными.Получатели.АвтоЗаполнение = Ложь;
                    Источник.ОбменДанными.Получатели.Заполнить();
                    
                    //Источник.ОбменДанными.Получатели.Добавить(УзелДоставки);
                    ПланыОбмена.ЗарегистрироватьИзменения(УзелДоставки, Источник);
                    
                КонецЕсли;
                
            КонецЕсли;
            
        КонецЕсли;
        
    КонецЕсли;
    
КонецПроцедуры


При записи отрабатывает точно такая же процедура. Выгрузка происходит нормально. В файле выгрузки все данные есть.
Но не загружается.

Что я сделал не так?
1 Maxus43
 
12.08.14
13:28
Источник.Получатели.Добавить(узелПолучатель)

а не зарегистрировать изменения
2 1Сергей
 
12.08.14
13:28
(1) ну, пробовал же.. Ладно, попробую ещё раз.
Выгрузка проходит нормально
3 1Сергей
 
12.08.14
13:31
(1) не помогло
4 1Сергей
 
12.08.14
13:32
у РС авторегистрация запрещена, если это важно
5 1Сергей
 
12.08.14
14:02
Пообедали? помогите, плз
6 Maxus43
 
12.08.14
14:34
(2) я не говорил что поможет, я сказал как по феншую делать, метод зарегистрироватьИзменения не для этого нужен.
Если в файле всё есть, то что значит не загружается? что пишет при попытке загрузить? XML читается? в объект сериализуется запись из него?
7 1Сергей
 
12.08.14
14:43
Выясилось, что выгружается не всё. Выгружается пустой набор записей с установленным отбором
8 1Сергей
 
12.08.14
14:44
+ причем это если из центра в перефирийку. Обратно нормально грузится
9 Maxus43
 
12.08.14
14:58
смотри что зарегистрировано после записи. Запросом можно, или обработиной стандартной
10 Maxus43
 
12.08.14
14:58
При записи точно отрабатывает?
11 1Сергей
 
12.08.14
15:01
(9) оброботиной смотрю. Есть записи для выгрузки.
В процедуру (0) поступает набор записей со строками. В выгрузке - уже без записей
12 1Сергей
 
12.08.14
15:05
+ точнее так: процедура ПередЗаписью отрабатывает два раза и процедура ПриЗаписи тоже два раза. Вот в первый раз и там и там пустой набор записей, второй - заполненный
13 Maxus43
 
12.08.14
15:05
в процедуре ПриЗаписи чего?
в обработке тыкни 2 раза на запись, откроет то, что выгружает
14 1Сергей
 
12.08.14
15:10
(13) ПриЗаписи РС
15 1Сергей
 
12.08.14
15:48
Нашёл ошибку. Спасибо Maxus43 за терпение!


                //Если Не(ЭлементДанных.Отбор.Город = Город) Тогда
                Если Не(ЭлементДанных.Отбор.Город.Значение = Город) Тогда
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой