Untitled
unknown
plain_text
2 years ago
5.4 kB
11
Indexable
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
Дата = НачалоМесяца(Дата);
КонецПроцедуры
Процедура ОбработкаПроведения(Отказ, РежимПроведения)
Движения.ОстаткиНоменклатуры.Записывать = Истина;
Движения.ОстаткиНоменклатуры.Записать();
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("РегистрНакопления.ОстаткиНоменклатуры");
ЭлементБлокировки.УстановитьЗначение("СрокГодности", Новый Диапазон(, Дата));
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
Блокировка.Заблокировать();
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ОстаткиНоменклатурыОстатки.Номенклатура КАК Номенклатура,
| ОстаткиНоменклатурыОстатки.СрокГодности КАК СрокГодности,
| ОстаткиНоменклатурыОстатки.КоличествоОстаток КАК Количество,
| ОстаткиНоменклатурыОстатки.СуммаОстаток КАК Сумма,
| ОстаткиНоменклатурыОстатки.ДатаПрибытия КАК ДатаПрибытия
|ИЗ
| РегистрНакопления.ОстаткиНоменклатуры.Остатки(&МоментВремени, СрокГодности < &Дата) КАК ОстаткиНоменклатурыОстатки";
Запрос.УстановитьПараметр("Дата", Дата);
Запрос.УстановитьПараметр("МоментВремени", МоментВремени());
РезультатЗапроса = Запрос.Выполнить();
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
Движение = Движения.ОстаткиНоменклатуры.ДобавитьРасход();
Движение.Период = Дата;
ЗаполнитьЗначенияСвойств(Движение, Выборка);
КонецЦикла;
Движения.ЭксплатируемоеОборудование.Записывать = Истина;
Движения.ЭксплатируемоеОборудование.Записать();
Блокировка = Новый БлокировкаДанных;
ЭлементБлокировки = Блокировка.Добавить("РегистрНакопления.ЭксплатируемоеОборудование");
ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
ЭлементБлокировки.УстановитьЗначение("СрокГодности", Новый Диапазон(, Дата));
ЭлементБлокировки.УстановитьЗначение("СрокЭксплуатации", Новый Диапазон(, Дата));
Блокировка.Заблокировать();
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ЭксплатируемоеОборудованиеОстатки.Номенклатура КАК Номенклатура,
| ЭксплатируемоеОборудованиеОстатки.СрокГодности КАК СрокГодности,
| ЭксплатируемоеОборудованиеОстатки.СрокЭксплуатации КАК СрокЭксплуатации,
| ЭксплатируемоеОборудованиеОстатки.КоличествоОстаток КАК Количество,
| ЭксплатируемоеОборудованиеОстатки.СуммаОстаток КАК Сумма,
| ЭксплатируемоеОборудованиеОстатки.ДатаПрибытия КАК ДатаПрибытия
|ИЗ
| РегистрНакопления.ЭксплатируемоеОборудование.Остатки(
| &МоментВремени,
| СрокГодности < &Дата
| ИЛИ СрокЭксплуатации < &Дата) КАК ЭксплатируемоеОборудованиеОстатки";
Запрос.УстановитьПараметр("Дата", Дата);
Запрос.УстановитьПараметр("МоментВремени", МоментВремени());
РезультатЗапроса = Запрос.Выполнить();
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
Движение = Движения.ЭксплатируемоеОборудование.ДобавитьРасход();
Движение.Период = Дата;
ЗаполнитьЗначенияСвойств(Движение, Выборка);
КонецЦикла;
КонецПроцедуры
Editor is loading...