Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
28 ноя 2024, 11:53

Обработчик

Автор nikitka55, 06 мая 2012, 19:05

0 Пользователей и 1 гость просматривают эту тему.

nikitka55

Здравствуйте.
В 1С 8.2 ещё новичек, так вот :Решил создать Печатную форму "Отчет" с выбором даты (от какой-то даты до такой-то) через объект Конфигурации Обработки, по аналогии с печатной формой документа
1.jpg
так же в "Обработки" добавил в раздел "Команды" код (стоит ли его туда добавлять или нужен другой код)


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


&НаСервере
Процедура Отчет(ТабДок, ПараметрКоманды)
      Обработки.Отчет(ТабДок, ПараметрКоманды);
КонецПроцедуры



и нарисовал в разделе "Макет" сам макет, который будет заполняться данными при выборе промежутка между датами
3.jpg
В "Модуле объекта" Обработчик добавил код (так добавил чуть чуть, для примера, чтобы хоть что то вывелось)


Процедура Смета(ТабДок, Ссылка) Экспорт     
Макет = Обработки.Отчет.ПолучитьМакет("Отчет");
      Запрос = Новый Запрос;      Запрос.Текст =     
"ВЫБРАТЬ         
     |      Константы.НачальникУчастка,
     |      Исполнители.Наименование,
     |      Смета.ДокСмета.(             
     |            ПунктПрейскурантаНаименованиеРабот,       
     |            ЕдИзм,         
     |            ЦенаРуб,       
     |            КолВо,         
     |            СуммаРуб,       
     |            НомерСтроки       
     |      ),       
     |      Смета.Материалы.(     
     |            НаименованиеМатериала,       
     |            ЕдИзм,       
     |            ЦенаРуб,     
     |            КолВо,       
     |            СуммаРуб       
     |      )     
     |ИЗ       
     |      Документ.Смета КАК Смета     
     |            ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Исполнители КАК Исполнители         
     |            ПО Смета.Иcполняющий = Исполнители.Ссылка,       
     |      Константы КАК Константы";
      Запрос.Параметры.Вставить("Ссылка", Ссылка);
      Выборка = Запрос.Выполнить().Выбрать();
      ОбластьВерх=Макет.ПолучитьОбласть("Верх");
      ТабДок.Очистить();
       ВставлятьРазделительСтраниц = Ложь;
            Пока Выборка.Следующий() Цикл     
                  Если ВставлятьРазделительСтраниц Тогда     
                  ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
            КонецЕсли; 
         ТабДок.Вывести(ОбластьВерх);
КонецЦикла;КонецПроцедуры


1) Как мне эту процедуру вызвать на кнопке Вывести на форме Обработки. 1.jpg
2) Что нужно написать в данном коде, чтобы данные выбирались по диапозону введенных дат, т.е. к примеру от  01.01.2012 по 30.01.2012,  при нажатии на кнопку вывести
Пожалуйста помогите

nikitka55

Там процедура не
Процедура Смета(ТабДок, Ссылка) Экспорт
Процедура Отчет(ТабДок, Ссылка) Экспорт

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск