Имя: Пароль:
1C
1С v8
Обмен УТ10.3 <-> Розница 2.2
0 LuciferArh
 
30.06.17
14:25
Коллеги, уже голову сломал... Имеем редакции конфигураций: УТ 10.3.42.1, Розница 2.2.6.18. Правила обмена штатные, соответствующих редакций. Правда, из них вырезан ЕГАИС за ненадобностью. И вроде бы все хорошо, выгрузка из УТ проходит нормально, а вот загрузка в Розницу обламывается. В журнале запись:

Ошибка в обработчике события ПослеЗагрузкиОбъекта
    ИмяПКО                 =  ПеремещениеТоваров
    ТипОбъекта             =  Перемещение товаров
    Объект                 =  Перемещение товаров ООО00000064 от 11.01.2017 17:19:42
    Обработчик             =  ПослеЗагрузкиОбъекта
    ОписаниеОшибки         =  Недостаточно фактических параметров
    ПозицияМодуля          =  (7)
    КСообщенияОбОшибках    =  21

При этом выгрузка из Розницы нормально грузится в УТ.
Код обработчика в УТ после выгрузки;

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

Что ему тут может не нравиться? Второй день бьюсь...
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший