Имя: Пароль:
1C
 
Типовая Обработка свертки в ут11.5
0 StarSoft777
 
30.07.25
14:31
Здравствуйте, проблема ,при типовой свертки базы в УТ11, обработка метит на удаление расходные складские ордера, в периоде больше даты среза , при этом сам заказ клиента находится до даты среза и остается непомеченным , нашел этот код в обработке - какой в этом смысл непонятно
Процедура ОбработатьОстаткиТоварыКОтгрузке()  
    

    Запрос = Новый Запрос;
    Запрос.Текст = "
    |ВЫБРАТЬ
    |ТабРег.ДокументОтгрузки КАК ДокументОтгрузки,
    |ТабРегОбороты.Регистратор КАК ДокументОрдер,
    |ТабРег.КОтгрузкеОстаток КАК КОтгрузке,
    |ТабРегОбороты.КОтгрузкеРасход КАК Отгружено
    |ИЗ РегистрНакопления.ТоварыКОтгрузке.Остатки(&ГраницаОст) КАК ТабРег
    |ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыКОтгрузке.Обороты(&ГраницаОст,,Регистратор) КАК ТабРегОбороты
    |ПО ТабРегОбороты.ДокументОтгрузки = ТабРег.ДокументОтгрузки
    |ГДЕ ТабРег.КОтгрузкеОстаток > 0  И ТабРегОбороты.Регистратор ЕСТЬ НЕ NULL
    |";
    
    //ОПРЕДЕЛЯЕМ - ОСТАТОК ПО ЗАКАЗУ КЛ В РГ ТОВАРЫ             К ОТГР нА ДАТУ  СРЕЗА с непустым регистратором,    

    
    ЗаполнитьПараметрыЗапросаДатаСвертки(Запрос);

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

        ДокОст.Комментарий = Комментарий_УдалитьПриСверткеБазы;
        ДокОст.ДополнительныеСвойства.Вставить("СверткаИБ", Истина);
        Попытка
            ДокОст.Записать(РежимЗаписиДокумента.Запись);
        Исключение
            СообщениеСвертки(НСтр("ru = 'Ошибка при записи документа'")+ ": " + ДокОст, Истина, ОписаниеОшибки());
        КонецПопытки;
    КонецЦикла;
    
    СообщениеСвертки(НСтр("ru = 'Обработаны Товары к отгрузке'"));

КонецПроцедуры
1 p-soft
 
30.07.25
16:05
возможно, обрабатывают ситуацию с отгрузкой датой позже реализации.
AdBlock убивает бесплатный контент. 1Сергей