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