Имя: Пароль:
1C
1С v8
Как в запросе выводить информацию за период
0 ДимДимыч
 
02.12.15
15:53
Доброго времени суток!
есть отчет, есть макет отчета, есть команда которая формирует печать, сделал в модуле менеджера отчета запрос, получил нужные параметры, все выводиться да только выводиться за весь период, а не за указанный в форме, подскажите сделать чтобы выводилась инфа за тот период, который указал пользователь при формировании отчета
1 ДимДимыч
 
02.12.15
15:54
код в модуле менеджера след-ий:
Процедура Печать(ТабДок, Ссылка) Экспорт      
  Макет = Отчеты.ДвижениеТовараНаСкладе.ПолучитьМакет("Макет");        
  Запрос = Новый Запрос;      
  Запрос.Текст =          
  "ВЫБРАТЬ
  |    НоменклатураКоличествоОстаткиИОбороты.Номенклатура,
  |    НоменклатураКоличествоОстаткиИОбороты.КоличествоНачальныйОстаток КАК СальдоНаНачалоПериода,
  |    НоменклатураКоличествоОстаткиИОбороты.КоличествоПриход КАК Приход,
  |    НоменклатураКоличествоОстаткиИОбороты.КоличествоРасход КАК Расход,
  |    НоменклатураКоличествоОстаткиИОбороты.КоличествоКонечныйОстаток КАК СальдоНаКонецПериода,
  |    Договора.Ссылка КАК Договор,
  |    Договора.ДатаДоговора КАК ДоговорДатаДоговора
  |ИЗ
  |    РегистрНакопления.НоменклатураКоличество.ОстаткиИОбороты КАК НоменклатураКоличествоОстаткиИОбороты,
  |    Справочник.Договора КАК Договора";
  Результат = Запрос.Выполнить();
  ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
  ОбластьШапка = Макет.ПолучитьОбласть("Шапка");  
  ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("Строка");
  ОбластьИтог = Макет.ПолучитьОбласть("Итог");
  ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
  ТабДок.Очистить();
  ВыборкаДетальныеЗаписи = Результат.Выбрать();
  Пока ВыборкаДетальныеЗаписи.Следующий()Цикл
      ОбластьЗаголовок.Параметры.Заполнить(ВыборкаДетальныеЗаписи);
  КонецЦикла;
  ТабДок.Вывести(ОбластьЗаголовок);
  ТабДок.Вывести(ОбластьШапка);
  ВыборкаСтрока = Результат.Выбрать();
  ИтогНачало = 0;
  ИтогПриход = 0;
  ИтогРасход = 0;
  ИтогКонец = 0;
  НомерПоПорядку = 0;
    Пока ВыборкаСтрока.Следующий() Цикл
            ОбластьШапкаТаблицы.Параметры.Заполнить(ВыборкаСтрока);
            НомерПоПорядку = НомерПоПорядку + 1;
            ОбластьШапкаТаблицы.Параметры.НомерПоПорядку = НомерПоПорядку;
            ТабДок.Вывести(ОбластьШапкаТаблицы);
            ИтогНачало = ИтогНачало + ВыборкаСтрока.СальдоНаНачалоПериода;
            ИтогПриход = ИтогПриход + ВыборкаСтрока.Приход;
            ИтогРасход = ИтогРасход + ВыборкаСтрока.Расход;
            ИтогКонец = ИтогКонец + ВыборкаСтрока.СальдоНаКонецПериода;
    КонецЦикла;
  ОбластьИтог.Параметры.ВсегоНачало = ИтогНачало;
  ОбластьИтог.Параметры.ВсегоПриход = ИтогПриход;
  ОбластьИтог.Параметры.ВсегоРасход = ИтогРасход;
  ОбластьИтог.Параметры.ВсегоКонец = ИтогКонец;
  ТабДок.Вывести(ОбластьИтог);
  ТабДок.Вывести(ОбластьПодвал);
  


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

Код в модуле команды слудующий:
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
    ТабДок = Новый ТабличныйДокумент;
        ТабДок.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
        Печать(ТабДок, ПараметрКоманды);
        ТабДок.ОтображатьСетку = Ложь;      
        ТабДок.Защита = Ложь;      
        ТабДок.ТолькоПросмотр = Истина;      
        ТабДок.ОтображатьЗаголовки = Ложь;      
        ТабДок.Показать();
КонецПроцедуры

&НаСервере
Процедура Печать(ТабДок, ПараметрКоманды)
      Отчеты.ДвижениеТовараНаСкладе.Печать(ТабДок, ПараметрКоманды);      
        Отчеты.ДвижениеТовараНаСкладе.ПолучитьМакет("Макет");
КонецПроцедуры
2 VikingKosmo
 
02.12.15
15:55
сделать отчет на СКД, а не изобретать велосипед, не предлагать?
3 ДимДимыч
 
02.12.15
15:57
в СКД я сделал, но мне надо шапку там и подписи у отчета, я видел там вкладку "макет" но у меня ничего не получилось..
4 Nuobu
 
02.12.15
16:00
РегистрНакопления.НоменклатураКоличество.ОстаткиИОбороты КАК НоменклатураКоличествоОстаткиИОбороты,

Задай здесь параметры.
5 VikingKosmo
 
02.12.15
16:03
создать две группировки и задать им области макета?
6 aleks_default
 
02.12.15
16:05
Модуль менеджера отчета? И такого много в типовых?
7 ДимДимыч
 
02.12.15
16:10
(6) не типовая это
(5) создал я группировку, задал область, но при сформировывании отчета не видит.. 100% не прописал где нужно что должно вылезать так, как в макете
8 ДимДимыч
 
02.12.15
16:13
(4)  НачалоПериода и КонецПериода?
AdBlock убивает бесплатный контент. 1Сергей