public void ЗаполнитьТребованиеНакладнаяПоРезервамЗаказаНаПроизводство(/*ДокументОбъект, ЗаказНаПроизводство*/)
{
//Запрос = Новый Запрос;
//Запрос.УстановитьПараметр("Заказ", ЗаказНаПроизводство);
//Запрос.УстановитьПараметр("ДатаОстатков", ОбщегоНазначения.ПолучитьДатуОстатков(ДокументОбъект));
//Запрос.УстановитьПараметр("Склад", ДокументОбъект.Склад);
/*Запрос.Текст = "
|ВЫБРАТЬ РАЗРЕШЕННЫЕ
| Остатки.Номенклатура КАК Номенклатура,
| Остатки.Номенклатура.ЕдиницаХраненияОстатков КАК ЕдиницаИзмерения,
| Остатки.Номенклатура.ЕдиницаХраненияОстатков КАК ЕдиницаИзмеренияМест,
| Остатки.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК Коэффициент,
| Остатки.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
| Остатки.СерияНоменклатуры КАК СерияНоменклатуры,
| Остатки.Номенклатура.СтатьяЗатрат КАК СтатьяЗатрат,
| Остатки.Номенклатура.НоменклатурнаяГруппаЗатрат КАК НоменклатурнаяГруппа,
| Остатки.Склад КАК Склад,
| Остатки.ДокументРезерва КАК ЗаказРезерв,
| ЗаказНаПроизводство.Количество КАК КоличествоДокумент,
| МАКСИМУМ(Остатки.КоличествоОстаток) КАК КоличествоРезерв
|ИЗ
| РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(&ДатаОстатков,
| ДокументРезерва = &Заказ
| И Склад = &Склад) КАК Остатки
|
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ (
| ВЫБРАТЬ
| ЗаказНаПроизводство.Номенклатура,
| ЗаказНаПроизводство.ХарактеристикаНоменклатуры,
| СУММА(Количество * Коэффициент / Номенклатура.ЕдиницаХраненияОстатков.Коэффициент) КАК Количество
| ИЗ
| Документ.ЗаказНаПроизводство.Материалы КАК ЗаказНаПроизводство
| ГДЕ
| ЗаказНаПроизводство.Ссылка = &Заказ
| И Не ЗаказНаПроизводство.Номенклатура.Услуга
| СГРУППИРОВАТЬ ПО
| ЗаказНаПроизводство.Номенклатура,
| ЗаказНаПроизводство.ХарактеристикаНоменклатуры
| ) КАК ЗаказНаПроизводство
| ПО
| Остатки.Номенклатура = ЗаказНаПроизводство.Номенклатура
| И Остатки.ХарактеристикаНоменклатуры = ЗаказНаПроизводство.ХарактеристикаНоменклатуры
|
|ГДЕ
| НЕ Остатки.Номенклатура.Услуга
|
|СГРУППИРОВАТЬ ПО
| Остатки.Номенклатура,
| Остатки.ХарактеристикаНоменклатуры,
| Остатки.СерияНоменклатуры,
| Остатки.Склад,
| Остатки.ДокументРезерва,
| ЗаказНаПроизводство.Количество
|
|УПОРЯДОЧИТЬ ПО
| Остатки.Номенклатура
|
|ИТОГИ ПО
| Остатки.Номенклатура,
| Остатки.ХарактеристикаНоменклатуры,
| Остатки.СерияНоменклатуры,
| Остатки.Склад
|";*/
//РезультатЗапроса = Запрос.Выполнить();
//ОбходПоНоменклатуре = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
while(true/*ОбходПоНоменклатуре.Следующий()*/)
{
//ОбходПоХарактеристике = ОбходПоНоменклатуре.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
while(true/*ОбходПоХарактеристике.Следующий()*/)
{
//ОбходПоСерии = ОбходПоХарактеристике.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
while(true/*ОбходПоСерии.Следующий()*/)
{
//ОбходПоСкладу = ОбходПоСерии.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
while(true/*ОбходПоСкладу.Следующий()*/)
{
//КоличествоРезерв = ОбходПоСкладу.КоличествоРезерв;
//Обход = ОбходПоСкладу.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
while(true/*Обход.Следующий()*/)
{
//КоличествоДокумент = Обход.КоличествоДокумент;
//СтрокаТабличнойЧасти = ДокументОбъект.Материалы.Добавить();
//ЗаполнитьЗначенияСвойств(СтрокаТабличнойЧасти, Обход);
if(true/*КоличествоРезерв > КоличествоДокумент*/)
{
//СтрокаТабличнойЧасти.Количество = КоличествоДокумент;
//КоличествоРезерв = КоличествоРезерв - КоличествоДокумент;
}
//СтрокаТабличнойЧасти.Качество = Справочники.Качество.Новый;
//СтрокаТабличнойЧасти.ОтражениеВУСН = Перечисления.ОтражениеВУСН.Принимаются;
if(true/*КоличествоРезерв = 0*/)
{
}
}
//;;
}
//;;
}
//;;
}
//;;
}
/*;
СчетаУчетаВДокументах.ЗаполнитьСчетаУчетаТабличнойЧасти("Материалы", ДокументОбъект.Материалы, ДокументОбъект, ДокументОбъект.ОтражатьВБухгалтерскомУчете, ДокументОбъект.ОтражатьВНалоговомУчете, истина, истина);*/
}