Имя: Пароль:
1C
1C 7.7
v7: Вопрос по отчету.
0 volker99
 
16.03.12
09:28
Создал отчет с помощью конструктора. Он нормально работает, выводит все проданные товары за период. А как сделать, чтобы считал не все товары, а выбранные? Вставил дополнительное поле ввода, не могу задать группировку по товару, который выбирается из диалога?

//*******************************************
// Процедура генерации запроса Сформировать.
//
Процедура Сформировать()
   Перем Запрос, ТекстЗапроса, Таб;
   //Создание объекта типа Запрос
   Запрос = СоздатьОбъект("Запрос");
   ТекстЗапроса =
   "//{{ЗАПРОС(Сформировать)
   |Период с ВыбНачПериода по ВыбКонПериода;
   |Обрабатывать НеПомеченныеНаУдаление;

   |Номенклатура = Документ.Реализация.Номенклатура;

   |Наименование = Документ.Реализация.Номенклатура.Наименование;
   |Количество = Документ.Реализация.Количество;
   |Сумма = Документ.Реализация.Сумма;
   |Площадь = Документ.Реализация.Площадь;
   |Функция КоличествоСумма = Сумма(Количество);
   |Функция ПлощадьСумма = Сумма(Площадь);
   |Функция СуммаСумма = Сумма(Сумма);
   |Группировка Номенклатура упорядочить по Номенклатура.Наименование все;
   |"//}}ЗАПРОС
   ;
   // Если ошибка в запросе, то выход из процедуры
   Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
       Возврат;
   КонецЕсли;

   // Подготовка к заполнению выходных форм данными запроса
   Таб = СоздатьОбъект("Таблица");
   Таб.ИсходнаяТаблица("Сформировать");
   // Заполнение полей "Заголовок"
   Таб.ВывестиСекцию("Заголовок");
   Состояние("Заполнение выходной таблицы...");
   Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0);
   Пока Запрос.Группировка(1) = 1 Цикл
       // Заполнение полей Номенклатура
       Таб.ВывестиСекцию("Номенклатура");
   КонецЦикла;
   // Заполнение полей "Итого"
   Таб.ВывестиСекцию("Итого");
   // Вывод заполненной формы
   Таб.ТолькоПросмотр(1);
   Таб.Показать("Сформировать", "");
КонецПроцедуры
1 povar
 
16.03.12
09:31
при чем тут группировка, тебе "Условие" надо
2 povar
 
16.03.12
09:32
3 Boroda
 
16.03.12
09:33
Добавь строку Условие(Номенклатура в спНужныхТоваров); а в список набери то, что надо.
4 ЧеловекДуши
 
16.03.12
09:34
Освой в мастере Условие :)
5 ale-sarin
 
16.03.12
09:34
(0) А в типовых отчетах не посмотреть? Надо всегда так делать. А не выдумывать.
6 volker99
 
16.03.12
13:22
Boroda, да, именно это я искал! Спасибо!
А типовой отчет не может подойти, ибо я добавлял свой реквизит.
7 ale-sarin
 
16.03.12
13:34
(6) Имеется ввиду, что надо в типовых смотреть, как условие делается. Или у тебя по особому?
8 volker99
 
16.03.12
14:03
Немного по другому. Я то создавал запрос через конструктор. А стандартные отчеты созданы чисто "программно".
9 ale-sarin
 
16.03.12
14:08
Во многих стандартных отчетах есть отбор по списку. Можно там посмотреть как ставится условие в запросе.
Ну, да ладно. Главное, что решил проблему.
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн