Здравствуйте. Помогите пожалуйста создать запрос в документе возврат товара. В регистре есть измерения: фирма, товар, контрагент. Ресурсы: ОстатокТовара, ЦенаТовара.
Сейчас у меня так:
/ ********************
//
Процедура ОбработкаПроведения()
Перем Запрос, ТекстЗапроса,НомСтр,ВыбТовар,ВыбКол;
СЗВозврат = СоздатьОбъект("СписокЗначений");
ВыгрузитьТабличнуюЧасть(СЗВозврат, "Товар");
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Период с ДатаДок по ДатаДок;
|Фирма = Регистр.ОстатокТовара.Фирма;
|Товар = Регистр.ОстатокТовара.Товар;
|Контрагент = Регистр.ОстатокТовара.Контрагент;
|ОстатокТовара = Регистр.ОстатокТовара.ОстатокТовара;
|ЦенаТовара = Регистр.ОстатокТовара.ЦенаТовара;
|Функция ОстатокТовараКонОст = КонОст(ОстатокТовара);
|Группировка Контрагент Без Групп;
|Группировка Товар без групп;
|Условие(Товар в СЗВозврат);
|"//}}ЗАПРОС
;
// Если ошибка в запросе, то выход из процедуры
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат;
КонецЕсли;
НомСтр = 0;
Если ТЗВозврат.НайтиЗначение(Товар,НомСтр, "Товар") =1 Тогда
ТЗВозврат.ПолучитьСтрокуПоНомеру(НомСтр);
ВыбКол=ТЗВозврат.ОстатокТовараКонОст;
Если ВыбКол <= Количество Тогда
Сообщить(Шаблон("Контрагент [Контрагент] покупал [ВыбКол], а возвращает [Количество]"));
СтатусВозврата(0);
КонецЕсли;
КонецЕсли;
КонецЦикла;
ВыбратьСтроки();
Пока ПолучитьСтроку()>0 Цикл
Если Количество > 0 Тогда
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший