Здравствуйте!
Нужно в ТИС 7.7 из регистра остатков Заказы получить планируемую дату поступления номенклатуры.
Сделал вот так:
РегЗаказы.УстановитьФильтр(Фирма, Номенклатура);
РегЗаказы.ВыбратьИтоги();
Пока РегЗаказы.ПолучитьИтог() = 1 Цикл
Док = РегЗаказы.ЗаказПоставщику;
КонецЦикла;
Т.е. фильтрую регистр по номенклатуре, потом выборку перебираю и выбираю документ из последней записи, а из него получаю дату поступления.
Подскажите пожалуйста, есть ли способ сделать это более оптимально, без перебора?
(2) бред
.
Какой обратный порядок? вы о чем?
я мог две недели назад заказать товары у поставщика, которые придут завтра.. А после этого заказа могло быть еще тысяча заказов с датой поступления более ранней или более поздней. и выбрать движения даст записи в том порядке в котором они писались в базу, а не в порядке плановых дат поступления.
.
"Нужно в ТИС 7.7 из регистра остатков Заказы получить планируемую дату поступления номенклатуры."
РегЗаказы = СоздатьОбъект("Регистр.Заявки");
РегЗаказы.УстановитьЗначениеФильтра("Фирма",ВыбФирма,1);
РегЗаказы.УстановитьЗначениеФильтра("Номенклатура",ВыбНоменклатура,1);
ТЗ = ""; РегЗаказы.ВыгрузитьИтоги(ТЗ,0);
ТЗ.НоваяКолонка("ПлановаяДатаПоступления","Дата");
ТЗ.ВыбратьСтроки();
Пока ТЗ.ПолучитьСтроку()=1 Цикл
ТЗ.ПлановаяДатаПоступления = ТЗ.ЗаказПоставщику.ДатаОтгрузки; //ДатаОтгрузки реквизит шапки, плановая дата поступления
КонецЦикла;
ТЗ.Сортировать("ПлановаяДатаПоступления+");
ТЗ.ПолучитьСтрокуПоНомеру(1);
БлижайшаяДатаПоступления = ТЗ.ПлановаяДатаПоступления;
Если БлижайшаяДатаПоступления < ТекущаяДата() Тогда
Сообщить("Менеджеры - тридварасы, не закрывают неактуальные заказы");
КонецЕсли;
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой