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