КД2 Заполнение реквизита объекта

1. applesound 1 20.12.21 13:23 Сейчас в теме
Добрый день.
Выгружаю из УТ10.3 в БП 3.0 документ Списание товаров.
В приёмнике необходимо заполнить реквизит объекта ВидОперации. В ПКО ПослеЗагрузки пишу:

Объект.ВидОперации = Перечисления.ВидыОперацийСписаниеТоваров.СписаниеСоСклада;
Объект.Записать()


Должно работать, но не работает.
Подскажите в чём может быть беда, куда смотреть.
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. zelenii 20.12.21 13:56 Сейчас в теме
Объект.Записать() - лишнее.
Только для платформы V8.
Событие выполняется после прочтения и установки атрибутов объекта из файла, но до его записи в информационную базу. Возможна модификация загруженного объекта.
А так должно работать. Если только другие обработчики не выполняются. Может еще событие ПослеЗагрузкиДАнных что-то делает? А так такого быть не должно.
3. applesound 1 20.12.21 16:27 Сейчас в теме
(2)

В Конвертация_ПослеЗагрузкиДанных для списания товаров ничего не нашёл. Полный текст события ниже.

Если РежимЗагрузкиДанныхВИнформационнуюБазу() Тогда

    Если Параметры.ДокументыСОпределениемДопРеквизитов.Количество()  > 0 Тогда
        ТаблицаБанков = Новый ТаблицаЗначений();
        ТаблицаБанков.Колонки.Добавить("БИК", Новый ОписаниеТипов("Строка",,Новый КвалификаторыСтроки(100, ДопустимаяДлина.Переменная)));
        ТаблицаБанков.Колонки.Добавить("Ссылка", Новый ОписаниеТипов("СправочникСсылка.Банки"));
        ТаблицаБанков.Колонки.Добавить("Объект", Новый ОписаниеТипов("СправочникОбъект.Банки"));
        ТаблицаБанков.Индексы.Добавить("Ссылка");
        
        Для Каждого ДокументСОпределениемДопРеквизитов Из Параметры.ДокументыСОпределениемДопРеквизитов Цикл
            
            ДокументОбъектСОпределениемДопРеквизитов = ДокументСОпределениемДопРеквизитов.ПолучитьОбъект();
            Если ДокументОбъектСОпределениемДопРеквизитов = Неопределено Тогда
                Продолжить;
            КонецЕсли;
            
            ТипОбъекта = ТипЗнч(ДокументСОпределениемДопРеквизитов);
            
            Если ТипОбъекта = Тип("ДокументСсылка.ПоступлениеДопРасходов") Тогда
                
            ИначеЕсли ТипОбъекта = Тип("ДокументСсылка.ГТДИмпорт") Тогда
                
            ИначеЕсли ТипОбъекта = Тип("ДокументСсылка.ПоступлениеТоваровУслуг") Тогда
                // Заполнение счетов учета в шапке документа
                Документы.ПоступлениеТоваровУслуг.ЗаполнитьСчетаУчетаРасчетов(ДокументОбъектСОпределениемДопРеквизитов);
                
                КоличествоЗаписейВТаблицах = Макс(    ДокументОбъектСОпределениемДопРеквизитов.Товары.Количество(),
                                                    ДокументОбъектСОпределениемДопРеквизитов.Услуги.Количество(),
                                                    ДокументОбъектСОпределениемДопРеквизитов.ВозвратнаяТара.Количество());
                
                Документы.ПоступлениеТоваровУслуг.ЗаполнитьСчетаУчетаВТабличнойЧасти(ДокументОбъектСОпределениемДопРеквизитов, "Товары");
                Документы.ПоступлениеТоваровУслуг.ЗаполнитьСчетаУчетаВТабличнойЧасти(ДокументОбъектСОпределениемДопРеквизитов, "Услуги");
                Документы.ПоступлениеТоваровУслуг.ЗаполнитьСчетаУчетаВТабличнойЧасти(ДокументОбъектСОпределениемДопРеквизитов, "ВозвратнаяТара");
                //переопределение счетов учета
                Для Итератор = 0 По КоличествоЗаписейВТаблицах - 1 Цикл
                    // Заполнение счетов учета в табличной части Товары
                    Если Итератор <= ДокументОбъектСОпределениемДопРеквизитов.Товары.Количество() - 1 Тогда
                        СтрокаТЧ = ДокументОбъектСОпределениемДопРеквизитов.Товары.Получить(Итератор);
                        Если ДокументОбъектСОпределениемДопРеквизитов.ДоговорКонтрагента.ВидДоговора = Перечисления.ВидыДоговоровКонтрагентов.СКомитентом Тогда
                            СтрокаТЧ.СчетУчета = ПланыСчетов.Хозрасчетный.ТоварыНаСкладе;
                        КонецЕсли;
                    КонецЕсли;
                    // Заполнение счетов учета в табличной части Услуги
                    Если Итератор <= ДокументОбъектСОпределениемДопРеквизитов.Услуги.Количество() - 1 Тогда
                        СтрокаТЧ = ДокументОбъектСОпределениемДопРеквизитов.Услуги.Получить(Итератор);
                        СтатьяЗатрат         = СтрокаТЧ.Субконто1;
                        НоменклатурнаяГруппа = СтрокаТЧ.Субконто2;
                        Подразделение        = СтрокаТЧ.Субконто3;
                        Если ЗначениеЗаполнено(СтрокаТЧ.СчетЗатрат) Тогда
                            Счет = СтрокаТЧ.СчетЗатрат;
                            ЧислоАктивныхСубконто = Счет.ВидыСубконто.Количество();
                            Для Сч = 1 По ЧислоАктивныхСубконто Цикл
                                Если Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.СтатьиЗатрат Тогда
                                    СтрокаТЧ["Субконто"+Сч] = СтатьяЗатрат;
                                ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Контрагенты Тогда
                                    СтрокаТЧ["Субконто"+Сч] = ДокументОбъектСОпределениемДопРеквизитов.Контрагент;
                                ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Договоры Тогда
                                    СтрокаТЧ["Субконто"+Сч] = ДокументОбъектСОпределениемДопРеквизитов.ДоговорКонтрагента;
                                ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Номенклатура Тогда
                                    СтрокаТЧ["Субконто"+Сч] = СтрокаТЧ.Номенклатура;
                                ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.НоменклатурныеГруппы Тогда
                                    СтрокаТЧ["Субконто"+Сч] = НоменклатурнаяГруппа;
                                ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.ОбособленныеПодразделения Тогда
                                    СтрокаТЧ["Субконто"+Сч] = Подразделение;
                                КонецЕсли;
                            КонецЦикла;
                            Счет = СтрокаТЧ.СчетЗатратНУ;
                            ЧислоАктивныхСубконто = Счет.ВидыСубконто.Количество();
                            Для Сч = 1 По ЧислоАктивныхСубконто Цикл
                                Если Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.СтатьиЗатрат Тогда
                                    СтрокаТЧ["СубконтоНУ"+Сч] = СтатьяЗатрат;
                                ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Контрагенты Тогда
                                    СтрокаТЧ["СубконтоНУ"+Сч] = ДокументОбъектСОпределениемДопРеквизитов.Контрагент;
                                ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Договоры Тогда
                                    СтрокаТЧ["СубконтоНУ"+Сч] = ДокументОбъектСОпределениемДопРеквизитов.ДоговорКонтрагента;
                                ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Номенклатура Тогда
                                    СтрокаТЧ["СубконтоНУ"+Сч] = СтрокаТЧ.Номенклатура;
                                ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.НоменклатурныеГруппы Тогда
                                    СтрокаТЧ["СубконтоНУ"+Сч] = НоменклатурнаяГруппа;
                                ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.ОбособленныеПодразделения Тогда
                                    СтрокаТЧ["СубконтоНУ"+Сч] = Подразделение;
                                КонецЕсли;
                            КонецЦикла;     
                        КонецЕсли;
                    КонецЕсли;
                КонецЦикла;
            ИначеЕсли ТипОбъекта = Тип("ДокументСсылка.РеализацияТоваровУслуг") Тогда
              
                //Заполнение счетов учета в шапке документа
                Документы.РеализацияТоваровУслуг.ЗаполнитьСчетаУчетаРасчетов(ДокументОбъектСОпределениемДопРеквизитов);
                Если ДокументОбъектСОпределениемДопРеквизитов.ДоговорКонтрагента.ВидДоговора = Перечисления.ВидыДоговоровКонтрагентов.СКомиссионером Тогда
                    ДокументОбъектСОпределениемДопРеквизитов.СчетУчетаРасчетовСКонтрагентом  = ПланыСчетов.Хозрасчетный.ПустаяСсылка();
                    ДокументОбъектСОпределениемДопРеквизитов.СчетУчетаРасчетовПоАвансам      = ПланыСчетов.Хозрасчетный.ПустаяСсылка();
                    ДокументОбъектСОпределениемДопРеквизитов.СчетУчетаРасчетовПоТаре         = ПланыСчетов.Хозрасчетный.ПустаяСсылка();
                КонецЕсли;
                
                //Заполнение счетов учета в таблице
                Документы.РеализацияТоваровУслуг.ЗаполнитьСчетаУчетаВТабличнойЧасти(ДокументОбъектСОпределениемДопРеквизитов, "Товары");
                
                //строка с параметрами документа
                СтрокаСсылки = Параметры.ТоварыТабличнаяЧасть.Найти(ДокументОбъектСОпределениемДопРеквизитов.Ссылка, "Ссылка");
                Если СтрокаСсылки <> Неопределено 
                    //в ТЧ параметров должы быть ВСЕ строки из ТЧ товары
                    И СтрокаСсылки.ТоварыТабличнаяЧасть.Количество() = ДокументОбъектСОпределениемДопРеквизитов.Товары.Количество() Тогда
                    //нашли товарные строки в параметрах
                    Для НомерСтроки = 0 По СтрокаСсылки.ТоварыТабличнаяЧасть.Количество() - 1 Цикл
                        СтрокаПараметров = СтрокаСсылки.ТоварыТабличнаяЧасть.Получить(НомерСтроки);
                        ЗначениеПараметра = СтрокаПараметров.Комиссия;
                        
                        //идем в товары документа с доопределением
                        СтрокаТЧ = ДокументОбъектСОпределениемДопРеквизитов.Товары.Получить(НомерСтроки);
                        
                        Если ЗначениеПараметра = Истина Тогда
                            СтрокаТЧ.ПереданныеСчетУчета = ПланыСчетов.Хозрасчетный.ТоварыПереданныеНаКомиссию;  //004.02
                            СтрокаТЧ.СчетУчета           = ПланыСчетов.Хозрасчетный.ТоварыНаСкладе;   //004.01
                        КонецЕсли;
                    КонецЦикла;
                Иначе
                    //нет никакой ТЧ параметров. особенно если отключено "Комиссия"
                    Сообщить("стандартное определение счетов учета "+ДокументОбъектСОпределениемДопРеквизитов.Ссылка);
                    //повторка
                    Документы.РеализацияТоваровУслуг.ЗаполнитьСчетаУчетаВТабличнойЧасти(ДокументОбъектСОпределениемДопРеквизитов, "Товары");
                КонецЕсли;
                
                
                Если ДокументОбъектСОпределениемДопРеквизитов.ДоговорКонтрагента.ВидДоговора = Перечисления.ВидыДоговоровКонтрагентов.СКомитентомНаЗакупку тогда
                    ДокументОбъектСОпределениемДопРеквизитов.СчетУчетаРасчетовСКонтрагентом  = ПланыСчетов.Хозрасчетный.РасчетыСПрочимиПокупателямиИЗаказчиками;
                    ДокументОбъектСОпределениемДопРеквизитов.СчетУчетаРасчетовПоАвансам      = ПланыСчетов.Хозрасчетный.РасчетыСПрочимиПокупателямиИЗаказчиками;
                    
                    Для Каждого Стр из ДокументОбъектСОпределениемДопРеквизитов.Товары цикл
                        Стр.СчетУчета = ПланыСчетов.Хозрасчетный.ТМЦпринятыеНаОтветственноеХранение;
                    КонецЦикла;
                КонецЕсли;
                
                
                // Заполнение счетов учета в табличной части Возвратная тара
                Документы.РеализацияТоваровУслуг.ЗаполнитьСчетаУчетаВТабличнойЧасти(ДокументОбъектСОпределениемДопРеквизитов, "ВозвратнаяТара");
                // Заполнение счетов учета в табличной части Услуги
                Документы.РеализацияТоваровУслуг.ЗаполнитьСчетаУчетаВТабличнойЧасти(ДокументОбъектСОпределениемДопРеквизитов, "Услуги");
                
                Документы.РеализацияТоваровУслуг.ЗаполнитьСчетаУчетаВТабличнойЧасти(ДокументОбъектСОпределениемДопРеквизитов, "АгентскиеУслуги");
                
            ИначеЕсли ТипОбъекта = Тип("ДокументСсылка.КорректировкаПоступления") Тогда
                ПараметрыИсправления = Документы.КорректировкаПоступления.СформироватьПараметрыИсправленияКорректировочногоДокумента(
                    ДокументОбъектСОпределениемДопРеквизитов.ВидОперации, ДокументОбъектСОпределениемДопРеквизитов.Дата, ДокументОбъектСОпределениемДопРеквизитов.ДокументПоступления);
                ЗаполнитьЗначенияСвойств(ДокументОбъектСОпределениемДопРеквизитов, ПараметрыИсправления); 
            ИначеЕсли ТипОбъекта = Тип("ДокументСсылка.КорректировкаРеализации") Тогда
                ПараметрыИсправления = Документы.КорректировкаРеализации.СформироватьПараметрыИсправленияКорректировочногоДокумента(
                    ДокументОбъектСОпределениемДопРеквизитов.ВидОперации, ДокументОбъектСОпределениемДопРеквизитов.ДокументРеализации, ДокументОбъектСОпределениемДопРеквизитов.ИсправляемыйДокументРеализации);
                ЗаполнитьЗначенияСвойств(ДокументОбъектСОпределениемДопРеквизитов, ПараметрыИсправления);
            ИначеЕсли ТипОбъекта = Тип("ДокументСсылка.СчетФактураПолученный") Тогда
                ДокументОснование = ДокументОбъектСОпределениемДопРеквизитов.ДокументОснование;
                Если ЗначениеЗаполнено(ДокументОснование) И ДокументОснование.ПолучитьОбъект() <> Неопределено Тогда
                    СтруктураПараметров    = Новый Структура("Дата, Организация, ВидСчетаФактуры, ДокументОснование, Исправление");
                    ЗаполнитьЗначенияСвойств(СтруктураПараметров, ДокументОбъектСОпределениемДопРеквизитов);
                    ДокументОбъектСОпределениемДопРеквизитов.НДСПредъявленКВычету = Документы.СчетФактураПолученный.ПолучитьПорядокОтраженияВычетаПоУмолчанию(СтруктураПараметров);
                Иначе
                    ТекстСобытия = "";
                    Если Не ЗначениеЗаполнено(ДокументОснование) Тогда
                        ТекстСобытия = "Не заполнен документ-основание";
                    ИначеЕсли ДокументОснование.ПолучитьОбъект() = Неопределено Тогда
                        ТекстСобытия = "Документ-основание не загружен в информационную базу";
                    КонецЕсли;
                    Если ТекстСобытия <> "" Тогда
                        ЗаписьЖурналаРегистрации("Загрузка данных", УровеньЖурналаРегистрации.Предупреждение, Метаданные.Документы.СчетФактураПолученный,ДокументСОпределениемДопРеквизитов,ТекстСобытия);
                    КонецЕсли;
                КонецЕсли;
            ИначеЕсли ТипОбъекта = Тип("СправочникСсылка.Банки") Тогда
                СтрокаБанка = ТаблицаБанков.Добавить();
                СтрокаБанка.БИК = ДокументОбъектСОпределениемДопРеквизитов.Код;
                СтрокаБанка.Ссылка = ДокументСОпределениемДопРеквизитов;
                СтрокаБанка.Объект = ДокументОбъектСОпределениемДопРеквизитов;
                продолжить;
            КонецЕсли;
            Если ДокументОбъектСОпределениемДопРеквизитов <> Неопределено Тогда
                ЗаписатьОбъектВИБ(ДокументОбъектСОпределениемДопРеквизитов,ТипОбъекта);
            КонецЕсли;
        КонецЦикла;
        Если ТаблицаБанков.Количество() > 0 Тогда
            Запрос = Новый Запрос();
            Запрос.Текст = "
            |ВЫБРАТЬ
            |    ТаблицаБанков.БИК КАК БИК,
            |    ТаблицаБанков.Ссылка КАК Ссылка
            |ПОМЕСТИТЬ ТаблицаБанков
            |ИЗ
            |    &ТаблицаБанков КАК ТаблицаБанков
            |;
            |ВЫБРАТЬ
            |    ТаблицаБанков.Ссылка,
            |    ВЫБОР    КОГДА КОЛИЧЕСТВО(*) > 1.00 ИЛИ МАКСИМУМ(КлассификаторБанковРФ.Ссылка) ЕСТЬ NULL
            |            ТОГДА 2.00
            |            ИНАЧЕ 0.00
            |    КОНЕЦ КАК РучноеИзменение
            |ИЗ
            |    ТаблицаБанков КАК ТаблицаБанков
            |ЛЕВОЕ СОЕДИНЕНИЕ
            |    Справочник.КлассификаторБанков КАК КлассификаторБанковРФ
            |ПО
            |    ТаблицаБанков.БИК = КлассификаторБанковРФ.Код
            |СГРУППИРОВАТЬ ПО
            |    ТаблицаБанков.Ссылка
            |";
            Запрос.УстановитьПараметр("ТаблицаБанков", ТаблицаБанков);
            Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц();
            ВыборкаБанков = Запрос.Выполнить().Выбрать();
            Пока ВыборкаБанков.Следующий() Цикл
                СтрокаТаблицыЗначений = ТаблицаБанков.Найти(ВыборкаБанков.Ссылка, "Ссылка");
                Если СтрокаТаблицыЗначений <> Неопределено Тогда
                    СтрокаТаблицыЗначений.Объект.РучноеИзменение = ВыборкаБанков.РучноеИзменение;
                    ЗаписатьОбъектВИБ(СтрокаТаблицыЗначений.Объект,ТипЗнч(СтрокаТаблицыЗначений.Ссылка));
                КонецЕсли;
            КонецЦикла;
        КонецЕсли;
        Для каждого ДокументСОпределениемДопРеквизитов Из Параметры.ДокументыСОпределениемДопРеквизитов Цикл
            
            ТипОбъекта = ТипЗнч(ДокументСОпределениемДопРеквизитов);
            Если ТипОбъекта = Тип("ДокументСсылка.КорректировкаПоступления") Тогда
                //переопределение счетов учета
                ДокументОбъектСОпределениемДопРеквизитов = ДокументСОпределениемДопРеквизитов.ПолучитьОбъект();
                
                Если ТипЗнч(ДокументОбъектСОпределениемДопРеквизитов.ДокументПоступления) = Тип("ДокументСсылка.КорректировкаПоступления")
                    ИЛИ ТипЗнч(ДокументОбъектСОпределениемДопРеквизитов.ДокументПоступления) = Тип("ДокументСсылка.ПоступлениеТоваровУслуг")
                Тогда
                    Документы.КорректировкаПоступления.ЗаполнитьСчетаУчетаВТабличнойЧасти(ДокументОбъектСОпределениемДопРеквизитов, "Товары");
                    Документы.КорректировкаПоступления.ЗаполнитьСчетаУчетаВТабличнойЧасти(ДокументОбъектСОпределениемДопРеквизитов, "Услуги");
                    Если ТипЗнч(ДокументОбъектСОпределениемДопРеквизитов.ДокументПоступления) = Тип("ДокументСсылка.КорректировкаПоступления") Тогда
                        ТаблицаДокументаПоступления = "КорректировкаПоступления";
                    Иначе
                        ТаблицаДокументаПоступления = "ПоступлениеТоваровУслуг";
                    КонецЕсли;
                    Запрос = Новый Запрос();
                    Запрос.Текст = "
                    |ВЫБРАТЬ
                    |    КорректировкаПоступленияТовары.ЕстьВДокументеПоступления КАК ЕстьВДокументеПоступления,
                    |    ВЫБОР    КОГДА ДокументПоступления.СчетУчета ЕСТЬ NULL
                    |            ТОГДА ЛОЖЬ
                    |            ИНАЧЕ ИСТИНА
                    |    КОНЕЦ                                                    КАК ЗаполненСчетУчета,
                    |    КорректировкаПоступленияТовары.НомерСтроки               КАК НомерСтроки,
                    |    КорректировкаПоступленияТовары.Номенклатура              КАК Номенклатура,
                    |    ДокументПоступления.СчетУчета                            КАК СчетУчета,
                    |    ДокументПоступления.СчетУчетаНДС                         КАК СчетУчетаНДС
                    |ИЗ
                    |    Документ.КорректировкаПоступления.Товары КАК КорректировкаПоступленияТовары
                    |ЛЕВОЕ СОЕДИНЕНИЕ
                    |    Документ." + ТаблицаДокументаПоступления + ".Товары КАК ДокументПоступления
                    |ПО
                    |    ДокументПоступления.Ссылка = &ДокументПоступления
                    |    И КорректировкаПоступленияТовары.Номенклатура = ДокументПоступления.Номенклатура
                    |    И КорректировкаПоступленияТовары.НомерСтроки = ДокументПоступления.НомерСтроки
                    |    И КорректировкаПоступленияТовары.ЕстьВДокументеПоступления = ИСТИНА
                    |ГДЕ
                    |    КорректировкаПоступленияТовары.Ссылка = &Ссылка
                    |;
                    |ВЫБРАТЬ
                    |    КорректировкаПоступленияТовары.ЕстьВДокументеПоступления КАК ЕстьВДокументеПоступления,
                    |    ВЫБОР    КОГДА ДокументПоступления.СчетЗатрат ЕСТЬ NULL
                    |            ТОГДА ЛОЖЬ
                    |            ИНАЧЕ ИСТИНА
                    |    КОНЕЦ                                                    КАК ЗаполненСчетУчета,
                    |    КорректировкаПоступленияТовары.НомерСтроки               КАК НомерСтроки,
                    |    КорректировкаПоступленияТовары.Номенклатура              КАК Номенклатура,
                    |    ДокументПоступления.СчетЗатрат                           КАК СчетЗатрат,
                    |    ДокументПоступления.СчетЗатратНУ                         КАК СчетЗатратНУ,
                    |    ДокументПоступления.СчетУчетаНДС                         КАК СчетУчетаНДС,
                    |    ДокументПоступления.СубконтоНУ1                          КАК СубконтоНУ1,
                    |    ДокументПоступления.СубконтоНУ2                          КАК СубконтоНУ2,
                    |    ДокументПоступления.СубконтоНУ3                          КАК СубконтоНУ3,
                    |    ДокументПоступления.Субконто1                            КАК Субконто1,
                    |    ДокументПоступления.Субконто2                            КАК Субконто2,
                    |    ДокументПоступления.Субконто3                            КАК Субконто3
                    |ИЗ
                    |    Документ.КорректировкаПоступления.Услуги КАК КорректировкаПоступленияТовары
                    |ЛЕВОЕ СОЕДИНЕНИЕ
                    |    Документ." + ТаблицаДокументаПоступления + ".Услуги КАК ДокументПоступления
                    |ПО
                    |    ДокументПоступления.Ссылка = &ДокументПоступления
                    |    И КорректировкаПоступленияТовары.Номенклатура = ДокументПоступления.Номенклатура
                    |    И КорректировкаПоступленияТовары.НомерСтроки = ДокументПоступления.НомерСтроки
                    |    И КорректировкаПоступленияТовары.ЕстьВДокументеПоступления = ИСТИНА
                    |ГДЕ
                    |    КорректировкаПоступленияТовары.Ссылка = &Ссылка
                    |";
                    Запрос.УстановитьПараметр("ДокументПоступления", ДокументОбъектСОпределениемДопРеквизитов.ДокументПоступления);
                    Запрос.УстановитьПараметр("Ссылка", ДокументОбъектСОпределениемДопРеквизитов.Ссылка);
                    РезультатЗапросаСчета = Запрос.ВыполнитьПакет();
                    ВыборкаСтрокКорректировки = РезультатЗапросаСчета[0].Выбрать();
                    ВыборкаСтрокКорректировкиУслуги = РезультатЗапросаСчета[1].Выбрать();
                    Для Итератор = 1 По Макс(ВыборкаСтрокКорректировки.Количество(), ВыборкаСтрокКорректировкиУслуги.Количество()) Цикл
                        Если Итератор <= ВыборкаСтрокКорректировки.Количество() Тогда
                            ВыборкаСтрокКорректировки.Следующий();
                            СтрокаТЧ = ДокументОбъектСОпределениемДопРеквизитов.Товары.Найти(ВыборкаСтрокКорректировки.НомерСтроки,"НомерСтроки");
                            Если СтрокаТЧ <> Неопределено Тогда
                                Если ВыборкаСтрокКорректировки.ЕстьВДокументеПоступления = Истина
                                    И ВыборкаСтрокКорректировки.ЗаполненСчетУчета = Истина
                                Тогда
                                    СтрокаТЧ.СчетУчета = ВыборкаСтрокКорректировки.СчетУчета;
                                    СтрокаТЧ.СчетУчетаНДС = ВыборкаСтрокКорректировки.СчетУчетаНДС;
                                КонецЕсли;
                            КонецЕсли;
                        КонецЕсли;
                        Если Итератор <= ВыборкаСтрокКорректировкиУслуги.Количество() Тогда
                            ВыборкаСтрокКорректировкиУслуги.Следующий();
                            СтрокаТЧ = ДокументОбъектСОпределениемДопРеквизитов.Услуги.Найти(ВыборкаСтрокКорректировкиУслуги.НомерСтроки,"НомерСтроки");
                            Если СтрокаТЧ <> Неопределено Тогда
                                Если ВыборкаСтрокКорректировкиУслуги.ЕстьВДокументеПоступления = Истина
                                    И ВыборкаСтрокКорректировкиУслуги.ЗаполненСчетУчета = Истина
                                Тогда
                                    СтрокаТЧ.СчетЗатрат   = ВыборкаСтрокКорректировкиУслуги.СчетЗатрат;
                                    СтрокаТЧ.СчетЗатратНУ = ВыборкаСтрокКорректировкиУслуги.СчетЗатратНУ;
                                    СтрокаТЧ.СчетУчетаНДС = ВыборкаСтрокКорректировкиУслуги.СчетУчетаНДС;
                                    СтрокаТЧ.СубконтоНУ1  = ВыборкаСтрокКорректировкиУслуги.СубконтоНУ1;
                                    СтрокаТЧ.СубконтоНУ2  = ВыборкаСтрокКорректировкиУслуги.СубконтоНУ2;
                                    СтрокаТЧ.СубконтоНУ3  = ВыборкаСтрокКорректировкиУслуги.СубконтоНУ3;
                                    СтрокаТЧ.Субконто1    = ВыборкаСтрокКорректировкиУслуги.Субконто1;
                                    СтрокаТЧ.Субконто2    = ВыборкаСтрокКорректировкиУслуги.Субконто2;
                                    СтрокаТЧ.Субконто3    = ВыборкаСтрокКорректировкиУслуги.Субконто3;
                                Иначе
                                    СтатьяЗатрат         = СтрокаТЧ.Субконто1;
                                    НоменклатурнаяГруппа = СтрокаТЧ.Субконто2;
                                    Подразделение        = СтрокаТЧ.Субконто3;
                                    СтрокаТЧ.Субконто1 = Неопределено;
                                    СтрокаТЧ.Субконто2 = Неопределено;
                                    СтрокаТЧ.Субконто3 = Неопределено;
                                    Если ЗначениеЗаполнено(СтрокаТЧ.СчетЗатрат) Тогда
                                        Счет = СтрокаТЧ.СчетЗатрат;
                                        ЧислоАктивныхСубконто = Счет.ВидыСубконто.Количество();
                                        Для Сч = 1 По ЧислоАктивныхСубконто Цикл
                                            Если Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.СтатьиЗатрат Тогда
                                                СтрокаТЧ["Субконто"+Сч] = СтатьяЗатрат;
                                            ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Контрагенты Тогда
                                                СтрокаТЧ["Субконто"+Сч] = ДокументОбъектСОпределениемДопРеквизитов.Контрагент;
                                            ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Договоры Тогда
                                                СтрокаТЧ["Субконто"+Сч] = ДокументОбъектСОпределениемДопРеквизитов.ДоговорКонтрагента;
                                            ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Номенклатура Тогда
                                                СтрокаТЧ["Субконто"+Сч] = СтрокаТЧ.Номенклатура;
                                            ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.НоменклатурныеГруппы Тогда
                                                СтрокаТЧ["Субконто"+Сч] = НоменклатурнаяГруппа;
                                            ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.ОбособленныеПодразделения Тогда
                                                СтрокаТЧ["Субконто"+Сч] = Подразделение;
                                            КонецЕсли;
                                        КонецЦикла;
                                        Счет = СтрокаТЧ.СчетЗатратНУ;
                                        ЧислоАктивныхСубконто = Счет.ВидыСубконто.Количество();
                                        Для Сч = 1 По ЧислоАктивныхСубконто Цикл
                                            Если Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.СтатьиЗатрат Тогда
                                                СтрокаТЧ["СубконтоНУ"+Сч] = СтатьяЗатрат;
                                            ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Контрагенты Тогда
                                                СтрокаТЧ["СубконтоНУ"+Сч] = ДокументОбъектСОпределениемДопРеквизитов.Контрагент;
                                            ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Договоры Тогда
                                                СтрокаТЧ["СубконтоНУ"+Сч] = ДокументОбъектСОпределениемДопРеквизитов.ДоговорКонтрагента;
                                            ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Номенклатура Тогда
                                                СтрокаТЧ["СубконтоНУ"+Сч] = СтрокаТЧ.Номенклатура;
                                            ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.НоменклатурныеГруппы Тогда
                                                СтрокаТЧ["СубконтоНУ"+Сч] = НоменклатурнаяГруппа;
                                            ИначеЕсли Счет.ВидыСубконто[Сч-1].ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.ОбособленныеПодразделения Тогда
                                                СтрокаТЧ["СубконтоНУ"+Сч] = Подразделение;
                                            КонецЕсли;
                                        КонецЦикла;
                                    КонецЕсли;
                                КонецЕсли;
                            КонецЕсли;
                        КонецЕсли;
                    КонецЦикла;
                Иначе
                    Документы.КорректировкаПоступления.ЗаполнитьСчетаУчетаВТабличнойЧасти(ДокументОбъектСОпределениемДопРеквизитов, "Товары");
                    Документы.КорректировкаПоступления.ЗаполнитьСчетаУчетаВТабличнойЧасти(ДокументОбъектСОпределениемДопРеквизитов, "Услуги");
                КонецЕсли;
                
                Если ДокументОбъектСОпределениемДопРеквизитов.КорректироватьБУиНУ Тогда
                    ДокументПоступленияСсылка = УчетНДСПереопределяемый.ПолучитьИсправляемыйДокументПоступления(ДокументОбъектСОпределениемДопРеквизитов.ДокументПоступления, Истина);
                    
                    РеквизитыДокументаПоступления = Неопределено;
                    Если ЗначениеЗаполнено(ДокументПоступленияСсылка) Тогда
                        РеквизитыДокументаПоступления = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ДокументПоступленияСсылка, "Дата");
                    КонецЕсли;
                    ДатаДокументаПоступления    = ?(РеквизитыДокументаПоступления <> Неопределено, РеквизитыДокументаПоступления.Дата, '00010101');
                    
                    Если ЗначениеЗаполнено(ДокументПоступленияСсылка) 
                        И Год(ДатаДокументаПоступления) < Год(ДокументОбъектСОпределениемДопРеквизитов.Дата) Тогда
                        
                        Если НЕ ЗначениеЗаполнено(ДокументОбъектСОпределениемДопРеквизитов.СтатьяПрочихДоходовИРасходов) Тогда
                            ДокументОбъектСОпределениемДопРеквизитов.СтатьяПрочихДоходовИРасходов = ОбщегоНазначенияКлиентСервер.ПредопределенныйЭлемент("Справочник.ПрочиеДоходыИРасходы.ИсправительныеЗаписиПоОперациямПрошлыхЛет");
                        КонецЕсли;
                    КонецЕсли;
                КонецЕсли;
                
                ЗаписатьОбъектВИБ(ДокументОбъектСОпределениемДопРеквизитов,ТипОбъекта);
            ИначеЕсли ТипОбъекта = Тип("ДокументСсылка.КорректировкаРеализации") Тогда
                ДокументОбъектСОпределениемДопРеквизитов = ДокументСОпределениемДопРеквизитов.ПолучитьОбъект();
                Если ТипЗнч(ДокументОбъектСОпределениемДопРеквизитов.ДокументРеализации) = Тип("ДокументСсылка.КорректировкаРеализации")
                    ИЛИ ТипЗнч(ДокументОбъектСОпределениемДопРеквизитов.ДокументРеализации) = Тип("ДокументСсылка.РеализацияТоваровУслуг")
                Тогда
                    Документы.КорректировкаРеализации.ЗаполнитьСчетаУчетаВТабличнойЧасти(ДокументОбъектСОпределениемДопРеквизитов, "Товары");
                    Документы.КорректировкаРеализации.ЗаполнитьСчетаУчетаВТабличнойЧасти(ДокументОбъектСОпределениемДопРеквизитов, "Услуги");
                    Если ТипЗнч(ДокументОбъектСОпределениемДопРеквизитов.ДокументРеализации) = Тип("ДокументСсылка.КорректировкаРеализации") Тогда
                        ТаблицаДокументаРеализации = "КорректировкаРеализации";
                    Иначе
                        ТаблицаДокументаРеализации = "РеализацияТоваровУслуг";
                    КонецЕсли;
                    Запрос = Новый Запрос();
                    Запрос.Текст = "
                    |ВЫБРАТЬ
                    |    КорректировкаРеализацииТовары.ЕстьВДокументеРеализации КАК ЕстьВДокументеРеализации,
                    |    ВЫБОР    КОГДА ДокументРеализации.СчетУчета ЕСТЬ NULL
                    |            ТОГДА ЛОЖЬ
                    |            ИНАЧЕ ИСТИНА
                    |    КОНЕЦ                                                   КАК ЗаполненСчетУчета,
                    |    КорректировкаРеализацииТовары.НомерСтроки               КАК НомерСтроки,
                    |    КорректировкаРеализацииТовары.Номенклатура              КАК Номенклатура,
                    |    ДокументРеализации.СчетДоходов                          КАК СчетДоходов,
                    |    ДокументРеализации.СчетРасходов                         КАК СчетРасходов,
                    |    ДокументРеализации.СчетУчета                            КАК СчетУчета,
                    |    ДокументРеализации.СчетУчетаНДСПоРеализации             КАК СчетУчетаНДСПоРеализации,
                    |    ДокументРеализации.Субконто                             КАК Субконто
                    |ИЗ
                    |    Документ.КорректировкаРеализации.Товары КАК КорректировкаРеализацииТовары
                    |ЛЕВОЕ СОЕДИНЕНИЕ
                    |    Документ." + ТаблицаДокументаРеализации + ".Товары КАК ДокументРеализации
                    |ПО
                    |    ДокументРеализации.Ссылка = &ДокументРеализации
                    |    И КорректировкаРеализацииТовары.Номенклатура = ДокументРеализации.Номенклатура
                    |    И КорректировкаРеализацииТовары.НомерСтроки = ДокументРеализации.НомерСтроки
                    |    И КорректировкаРеализацииТовары.ЕстьВДокументеРеализации = ИСТИНА
                    |ГДЕ
                    |    КорректировкаРеализацииТовары.Ссылка = &Ссылка
                    |;
                    |ВЫБРАТЬ
                    |    КорректировкаРеализацииТовары.ЕстьВДокументеРеализации КАК ЕстьВДокументеРеализации,
                    |    ВЫБОР    КОГДА ДокументРеализации.СчетДоходов ЕСТЬ NULL
                    |            ТОГДА ЛОЖЬ
                    |            ИНАЧЕ ИСТИНА
                    |    КОНЕЦ                                                   КАК ЗаполненСчетУчета,
                    |    КорректировкаРеализацииТовары.НомерСтроки               КАК НомерСтроки,
                    |    КорректировкаРеализацииТовары.Номенклатура              КАК Номенклатура,
                    |    ДокументРеализации.СчетДоходов                          КАК СчетДоходов,
                    |    ДокументРеализации.СчетРасходов                         КАК СчетРасходов,
                    |    ДокументРеализации.СчетУчетаНДСПоРеализации             КАК СчетУчетаНДСПоРеализации,
                    |    ДокументРеализации.Субконто                             КАК Субконто
                    |ИЗ
                    |    Документ.КорректировкаРеализации.Услуги КАК КорректировкаРеализацииТовары
                    |ЛЕВОЕ СОЕДИНЕНИЕ
                    |    Документ." + ТаблицаДокументаРеализации + ".Услуги КАК ДокументРеализации
                    |ПО
                    |    ДокументРеализации.Ссылка = &ДокументРеализации
                    |    И КорректировкаРеализацииТовары.Номенклатура = ДокументРеализации.Номенклатура
                    |    И КорректировкаРеализацииТовары.НомерСтроки = ДокументРеализации.НомерСтроки
                    |    И КорректировкаРеализацииТовары.ЕстьВДокументеРеализации = ИСТИНА
                    |ГДЕ
                    |    КорректировкаРеализацииТовары.Ссылка = &Ссылка
                    |";
                    Запрос.УстановитьПараметр("ДокументРеализации", ДокументОбъектСОпределениемДопРеквизитов.ДокументРеализации);
                    Запрос.УстановитьПараметр("Ссылка", ДокументОбъектСОпределениемДопРеквизитов.Ссылка);
                    РезультатЗапросаСчета = Запрос.ВыполнитьПакет();
                    ВыборкаСтрокКорректировки = РезультатЗапросаСчета[0].Выбрать();
                    ВыборкаСтрокКорректировкиУслуги = РезультатЗапросаСчета[1].Выбрать();
                    Для Итератор = 1 По Макс(ВыборкаСтрокКорректировки.Количество(), ВыборкаСтрокКорректировкиУслуги.Количество()) Цикл
                        Если Итератор <= ВыборкаСтрокКорректировки.Количество() Тогда
                            ВыборкаСтрокКорректировки.Следующий();
                            СтрокаТЧ = ДокументОбъектСОпределениемДопРеквизитов.Товары.Найти(ВыборкаСтрокКорректировки.НомерСтроки,"НомерСтроки");
                            Если СтрокаТЧ <> Неопределено Тогда
                                Если ВыборкаСтрокКорректировки.ЕстьВДокументеРеализации = Истина
                                    И ВыборкаСтрокКорректировки.ЗаполненСчетУчета = Истина
                                Тогда
                                    СтрокаТЧ.СчетДоходов = ВыборкаСтрокКорректировки.СчетДоходов;
                                    СтрокаТЧ.СчетРасходов = ВыборкаСтрокКорректировки.СчетРасходов;
                                    СтрокаТЧ.СчетУчета = ВыборкаСтрокКорректировки.СчетУчета;
                                    СтрокаТЧ.СчетУчетаНДСПоРеализации = ВыборкаСтрокКорректировки.СчетУчетаНДСПоРеализации;
                                    СтрокаТЧ.Субконто = ВыборкаСтрокКорректировки.Субконто;
                                КонецЕсли;
                            КонецЕсли;
                        КонецЕсли;
                        Если Итератор <= ВыборкаСтрокКорректировкиУслуги.Количество() Тогда
                            ВыборкаСтрокКорректировкиУслуги.Следующий();
                            СтрокаТЧ = ДокументОбъектСОпределениемДопРеквизитов.Услуги.Найти(ВыборкаСтрокКорректировкиУслуги.НомерСтроки,"НомерСтроки");
                            Если СтрокаТЧ <> Неопределено Тогда
                                Если ВыборкаСтрокКорректировкиУслуги.ЕстьВДокументеРеализации = Истина
                                    И ВыборкаСтрокКорректировкиУслуги.ЗаполненСчетУчета = Истина
                                Тогда
                                    СтрокаТЧ.СчетДоходов = ВыборкаСтрокКорректировкиУслуги.СчетДоходов;
                                    СтрокаТЧ.СчетРасходов = ВыборкаСтрокКорректировкиУслуги.СчетРасходов;
                                    СтрокаТЧ.СчетУчетаНДСПоРеализации = ВыборкаСтрокКорректировкиУслуги.СчетУчетаНДСПоРеализации;
                                    СтрокаТЧ.Субконто = ВыборкаСтрокКорректировкиУслуги.Субконто;
                                КонецЕсли;
                            КонецЕсли;
                        КонецЕсли;
                    КонецЦикла;
                Иначе
                    Документы.КорректировкаРеализации.ЗаполнитьСчетаУчетаВТабличнойЧасти(ДокументОбъектСОпределениемДопРеквизитов, "Товары");
                    Документы.КорректировкаРеализации.ЗаполнитьСчетаУчетаВТабличнойЧасти(ДокументОбъектСОпределениемДопРеквизитов, "Услуги");
                КонецЕсли;
                Если ДокументОбъектСОпределениемДопРеквизитов <> Неопределено Тогда
                    ЗаписатьОбъектВИБ(ДокументОбъектСОпределениемДопРеквизитов,ТипОбъекта);
                КонецЕсли;
            КонецЕсли;
        КонецЦикла;
    КонецЕсли;
КонецЕсли;


//для обеспечения условия касса на каждый день должна быть 0, при загрузке проводим кассу и делаем РКО на остаток в этот день.

    //проводим кассу
    Для Каждого ЭлементМассива Из Параметры.РКО_ПКО_ДляПроведения Цикл
        
            Попытка
                Об = ЭлементМассива.ПолучитьОбъект();
                Об.Записать(РежимЗаписиДокумента.Проведение);
            Исключение
                ПодробноеОписаниеОшибки = ОписаниеОшибки();
                ЗаписьЖурналаРегистрации("SMG обмен",УровеньЖурналаРегистрации.Ошибка,,,"После загрузки данных. Не удалось провести: " + Строка(ЭлементМассива)+" "+ПодробноеОписаниеОшибки);    
            КонецПопытки;
        
    КонецЦикла;

    //создаем/обновляем ПКО и РКО в эти дни
    Для Каждого ЗначениеМассива Из Параметры.РКО_ДатыДляЗакрытияКассыВНоль Цикл
            //то же самое для ОперационнаяКасса
            //причем в первую очередь
            Запрос = Новый Запрос;
            Запрос.Текст = "ВЫБРАТЬ
            |    ХозрасчетныйОбороты.СуммаОборотДт - ХозрасчетныйОбороты.СуммаОборотКт КАК СуммаОборот,
            |    ПриходныйКассовыйОрдер.Ссылка
            |ИЗ
            |    РегистрБухгалтерии.Хозрасчетный.Обороты(&НачалоПериода, &КонецПериода, , Счет = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ОперационнаяКасса), , , , ) КАК ХозрасчетныйОбороты
            |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПриходныйКассовыйОрдер КАК ПриходныйКассовыйОрдер
            |        ПО (ПОДСТРОКА(ПриходныйКассовыйОрдер.Комментарий, 0, 29) = ""Принято от Операционная касса"")
            |            И ХозрасчетныйОбороты.Организация = ПриходныйКассовыйОрдер.Организация    И НЕ ПриходныйКассовыйОрдер.ссылка.ПометкаУдаления
            |            И (ПриходныйКассовыйОрдер.Дата МЕЖДУ &НачалоПериода И &КонецПериода)
            |ГДЕ
            |    ХозрасчетныйОбороты.СуммаОборотДт - ХозрасчетныйОбороты.СуммаОборотКт > 0";
            Запрос.УстановитьПараметр("НачалоПериода",НачалоДня(ЗначениеМассива));
            Запрос.УстановитьПараметр("КонецПериода",КонецДня(ЗначениеМассива));
            Выборка = Запрос.Выполнить().Выбрать();
            Пока Выборка.Следующий() Цикл
                Попытка
                    Об = Выборка.Ссылка.ПолучитьОбъект();
                    Об.СуммаДокумента                                 = Выборка.СуммаОборот;
                    Об.РасшифровкаПлатежа[0].СуммаПлатежа            = Выборка.СуммаОборот; 
                    Об.РасшифровкаПлатежа[0].СуммаВзаиморасчетов    = Выборка.СуммаОборот;
                    Об.Записать(РежимЗаписиДокумента.Проведение);
                    
                Исключение
                    ПодробноеПредставлениеОшибкиДляЖурналаРегистрации = ОписаниеОшибки();
                    ЗаписьЖурналаРегистрации("SMG обмен",УровеньЖурналаРегистрации.Ошибка,,,"После загрузки данных. ПКО в конце дня: "+Выборка.Ссылка+". Ошибка: "+ПодробноеПредставлениеОшибкиДляЖурналаРегистрации);
                КонецПопытки;
            КонецЦикла;

              
        
            //ЗаписьЖурналаРегистрации("обмен",УровеньЖурналаРегистрации.Ошибка,,, Строка(ЗначениеМассива));
            Запрос = Новый Запрос;
            Запрос.Текст = "ВЫБРАТЬ
            |    ХозрасчетныйОбороты.СуммаОборотДт - ХозрасчетныйОбороты.СуммаОборотКт КАК СуммаОборот,
            |    РасходныйКассовыйОрдер.Ссылка
            |ИЗ
            |    РегистрБухгалтерии.Хозрасчетный.Обороты(&НачалоПериода, &КонецПериода, , Счет = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.КассаОрганизации), , , , ) КАК ХозрасчетныйОбороты
            |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РасходныйКассовыйОрдер КАК РасходныйКассовыйОрдер
            |        ПО (ПОДСТРОКА(РасходныйКассовыйОрдер.Комментарий, 0, 21) = ""Выемка ДС учредителем"")
            |            И ХозрасчетныйОбороты.Организация = РасходныйКассовыйОрдер.Организация    И НЕ РасходныйКассовыйОрдер.ссылка.ПометкаУдаления
            |            И (РасходныйКассовыйОрдер.Дата МЕЖДУ &НачалоПериода И &КонецПериода)
            |ГДЕ
            |    ХозрасчетныйОбороты.СуммаОборотДт - ХозрасчетныйОбороты.СуммаОборотКт > 0";
            Запрос.УстановитьПараметр("НачалоПериода",НачалоДня(ЗначениеМассива));
            Запрос.УстановитьПараметр("КонецПериода",КонецДня(ЗначениеМассива));
            Выборка = Запрос.Выполнить().Выбрать();
            Пока Выборка.Следующий() Цикл
                Попытка
                    Об = Выборка.Ссылка.ПолучитьОбъект();
                    Об.СуммаДокумента                                 = Выборка.СуммаОборот;
                    Об.РасшифровкаПлатежа[0].СуммаПлатежа            = Выборка.СуммаОборот; 
                    Об.РасшифровкаПлатежа[0].СуммаВзаиморасчетов    = Выборка.СуммаОборот;
                    Об.Записать(РежимЗаписиДокумента.Проведение);
                    //Счетчик = Счетчик + 1;
                Исключение
                    ПодробноеПредставлениеОшибкиДляЖурналаРегистрации = ОписаниеОшибки();
                    ЗаписьЖурналаРегистрации("обмен",УровеньЖурналаРегистрации.Ошибка,,,"После загрузки данных. РКО в конце дня: "+Выборка.Ссылка+". Ошибка: "+ПодробноеПредставлениеОшибкиДляЖурналаРегистрации);
                КонецПопытки;
            КонецЦикла;
                        
    КонецЦикла;
Показать
4. starjevschik 20.12.21 17:19 Сейчас в теме
Листинг можно было бы и не такой длинный о)
а так по вопросу
1) поставить вывод после присвоения вида операции - убедимся, что эта строка вызывается
2а) если не вызывается - сделать, чтобы вызывалась
2б) если вызывается, то значит реквизит меняется где-то после этого, например при открытии формы документа, при проведении или что там еще происходит от момент присвоения при конвертации до момента обнаружения отсутствия нужного значения.
5. applesound 1 20.12.21 18:04 Сейчас в теме
(4) Что означает ?
1) поставить вывод после присвоения вида операции - убедимся, что эта строка вызывается
6. starjevschik 20.12.21 20:02 Сейчас в теме
(5) написать
Сообщить("После загрузки Списание вид операции "  + Объект.ВидОперации);

и посмотреть, что будет.
7. applesound 1 21.12.21 11:12 Сейчас в теме
Вопрос решился алиментарно.

Новые правила необходимо добавить ещё в БП, заменив CorrespondentExchangeRules.

Так и не понял почему БП правила тянет не с файла обмена, а с правил корреспондента.
Оставьте свое сообщение

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