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

   Пока ПолучитьСтроку() = 1 Цикл  
       
       НомСтр = 0;
       Если  ТЗВозврат.НайтиЗначение(Товар,НомСтр, "Товар") =1   Тогда
           ТЗВозврат.ПолучитьСтрокуПоНомеру(НомСтр);
           ВыбКол=ТЗВозврат.ОстатокТовараКонОст;
           Если ВыбКол <= Количество Тогда
               Сообщить(Шаблон("Контрагент [Контрагент] покупал [ВыбКол], а возвращает [Количество]"));
                  СтатусВозврата(0);
           КонецЕсли;
       КонецЕсли;
       
       КонецЦикла;
           
   ВыбратьСтроки();
   Пока ПолучитьСтроку()>0 Цикл
       Если Количество > 0 Тогда
           
   Регистр.ОстатокТовара.Контрагент = Контрагент;
   Регистр.ОстатокТовара.Товар = Товар;
   Регистр.ОстатокТовара.ОстатокТовара = Количество;
   Регистр.ОстатокТовара.ЦенаТовара = ЦенаТовара;
   Регистр.ОстатокТовара.ДвижениеПриходВыполнить();
   
   КонецЕсли;    
КонецЦикла;    

КонецПроцедуры

И при выводе сообщения выводится общий остаток товара. Как сделать чтобы на одного клиента. Я такая понимаю надо группировку добавить?
1 Nutsa12
 
31.10.12
13:45
Млин, тема не туда. Это 1с 7.7