| И СрокГодности < &ДатаДок) КАК ОборудованиеОстатки
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ОстаткиНоменклатурыОстатки. Номенклатура,
| ОстаткиНоменклатурыОстатки. КоличествоОстаток,
| ОстаткиНоменклатурыОстатки. СуммаОстаток
|ПОМЕСТИТЬ ВТ_ОстаткиНоменклатуры
|ИЗ
| РегистрНакопления. ОстаткиНоменклатуры. Остатки(
| &МоментВремени,
| Номенклатура В
| (ВЫБРАТЬ
| ВТ_Оборудование. Номенклатура
| ИЗ
| ВТ_Оборудование КАК ВТ_Оборудование)) КАК ОстаткиНоменклатурыОстатки
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ВТ_Оборудование. Номенклатура КАК Номенклатура,
| ВТ_Оборудование. СрокГодности,
| ВТ_Оборудование. СрокЭкс,
| ВТ_Оборудование. КоличествоОстаток КАК КолОборудования,
| ЕСТЬNULL(ВТ_ОстаткиНоменклатуры. КоличествоОстаток, 0) КАК КолОстаток,
| ЕСТЬNULL(ВТ_ОстаткиНоменклатуры. СуммаОстаток, 0) КАК СуммаОстаток,
| ПРЕДСТАВЛЕНИЕ(ВТ_Оборудование. Номенклатура)
|ИЗ
| ВТ_Оборудование КАК ВТ_Оборудование
| ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ОстаткиНоменклатуры КАК ВТ_ОстаткиНоменклатуры
| ПО ВТ_Оборудование. Номенклатура = ВТ_ОстаткиНоменклатуры. Номенклатура
|ИТОГИ
| СУММА(КолОборудования),
| МАКСИМУМ(КолОстаток),
| МАКСИМУМ(СуммаОстаток)
|ПО
| Номенклатура";
Запрос. УстановитьПараметр("ДатаДок", Дата);
Запрос. УстановитьПараметр("МоментВремени", МоментВремени());
РезультатЗапроса = Запрос. Выполнить();
ВыборкаНоменклатура = РезультатЗапроса. Выбрать(ОбходРезультатаЗапроса. ПоГруппировкам);
Пока ВыборкаНоменклатура. Следующий() Цикл
КоличествоСписать = ВыборкаНоменклатура. КолОборудования;
Если КоличествоСписать = ВыборкаНоменклатура. КолОстаток Тогда
СуммаСписать = ВыборкаНоменклатура. СуммаОстаток;
Иначе
СуммаСписать = ВыборкаНоменклатура. СуммаОстаток * КоличествоСписать / ВыборкаНоменклатура. КолОстаток;
КонецЕсли;
Движение = Движения. ОстаткиНоменклатуры. Добавить();
Движение. ВидДвижения = ВидДвиженияНакопления. Расход;
Движение. Период = Дата;
Движение. Номенклатура = ВыборкаНоменклатура. Номенклатура;
Движение. Количество = КоличествоСписать;
Движение. Сумма = СуммаСписать;
ВыборкаДетальныеЗаписи = ВыборкаНоменклатура. Выбрать();
Пока ВыборкаДетальныеЗаписи. Следующий() Цикл
Движение = Движения. Оборудование. Добавить();
Движение. ВидДвижения = ВидДвиженияНакопления. Расход;
Движение. Период = Дата;
Движение. Номенклатура = ВыборкаДетальныеЗаписи. Номенклатура;
Движение. СрокГодности = ВыборкаДетальныеЗаписи. СрокГодности;
Движение. СрокЭкс = ВыборкаДетальныеЗаписи. СрокЭкс;
Движение. Количество = ВыборкаДетальныеЗаписи. КолОборудования;
КонецЦикла;
КонецЦикла;
КонецПроцедуры
Отчет «СостояниеОборудования»
ВЫБРАТЬ
ОборудованиеОстатки. Номенклатура,
ОборудованиеОстатки. КоличествоОстаток КАК Количество,
РАЗНОСТЬДАТ(&Период, ОборудованиеОстатки. СрокГодности, ДЕНЬ) КАК ОставшийсяСрокГодности,
РАЗНОСТЬДАТ(&Период, ОборудованиеОстатки. СрокЭкс, ДЕНЬ) КАК ОставшийсяСрокЭксплуатации,
ОборудованиеОстатки. КоличествоОстаток * ВЫБОР
КОГДА ЕСТЬNULL(ОстаткиНоменклатурыОстатки. КоличествоОстаток, 0) = 0
ТОГДА 0
ИНАЧЕ ОстаткиНоменклатурыОстатки. СуммаОстаток / ОстаткиНоменклатурыОстатки. КоличествоОстаток
КОНЕЦ КАК Сумма
ИЗ
РегистрНакопления. Оборудование. Остатки(, СрокЭкс <> ДАТАВРЕМЯ(1, 1, 1)) КАК ОборудованиеОстатки
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления. ОстаткиНоменклатуры. Остатки КАК ОстаткиНоменклатурыОстатки
ПО ОборудованиеОстатки. Номенклатура = ОстаткиНоменклатурыОстатки. Номенклатура


РН ОстаткиНоменклатуры

РН «Оборудование»

СрокГодности, СрокЭкс ТИП Дата
Бухгалтерский учет
Необходимо создать документ «Операция», с помощью которого пользователь должен иметь возможность ввести проводки с произвольной корреспонденцией счетов. При решении задач следует учитывать возможность наличия проводок, сформированных с помощью данного документа.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 |


