Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
today2 / today2 / Лабраб10.doc
Скачиваний:
281
Добавлен:
08.11.2013
Размер:
41.58 Mб
Скачать

2.10.1.4 Отчет «ПереченьУслуг»

Отчет «Перечень услуг» будет содержать информацию о том, какие услуги и по какой цене оказывает предприятие. На его примере мы познакомимся с возможностью получения последних значений из периодического регистра сведений и вывода иерархических справочников. Создадим новый объект конфигурации «Отчет «ПереченьУслуг»».

Рис. 46

Перейдем на закладку «Макеты» и вызовем конструктов выходной формы.

Рис. 47

Выберем объектную (ссылочную) таблицу справочника «Номенклатура» и виртуальную таблицу регистра сведений «ЦеныНоменклатуры.СрезПоследних». Для того чтобы исключить неоднозначность имен в запросе, переименуем таблицу «Номенклатура» в «СпрНоменклатура».

Рис. 48

Вызовем диалог ввода параметров виртуальной таблицы «ЦеныСрезПоследних» и укажем, что период будет передан в параметре «ДатаОтчета».

Рис. 49

Затем выберем из таблиц следующие поля:

  • «СпрНоменклатура.Родитель»,

  • «СпрНоменклатура.Ссылка»,

  • «ЦеныСрезПоследних.Цена».

Рис. 50

Перейдем на закладку «Связи» и сбросим флаг «Все» у таблицы регистра и установим его у таблицы справочника.

Рис. 51

На закладке «Условия» зададим условие выбора элементов справочника «Номенклатура» - выбираемые элементы должны принадлежать группе, переданной в параметре запроса «ВидНоменклатуры»:

Рис. 52

На закладке «ОбъединенияПсевдонимы» укажем, что поле «Родитель» будет иметь псевдоним «ГруппаУслуг», а поле «Ссылка» - «Услуга».

Рис. 53

Перейдем на закладку «Итоги» и укажем, что группировка будет производиться по полю «ГруппаУслуг» с типом итогов «Элементы и иерархия», а значения суммируемых полей задавать не станем.

Рис. 54

На закладке «Отчет» сбросим флаг «Использовать построитель отчета». На закладке «Выходная форма» отметим, что тип параметра «ДатаОтчета» будет «Дата», а параметр «ВидНоменклатуры» в форме редактироваться не будет. Нажмем «ОК».

Рис. 55

Откроем модуль формы и в процедуре «ДействияФормыПереченьУслугСформировать()» определим значение параметра процедуры «ПереченьУслуг».

Рис. 56

Откроем модуль формы и в процедуре «ПереченьУслуг()» определим значение параметра запроса.

Рис. 57

Теперь рассмотрим текст запроса, сформированный конструктором. Практически все конструкции, использованные в этом запросе, нам уже известны, за исключением ключевого слова «ИЕРАРХИЯ», использованного в части описания итогов. Это ключевое слово позволяет рассчитывать итоги по иерархии справочника, однако поскольку в нашем случае какие либо итоги в отчете не нужны, мы использовали эту возможность для создания группировок по иерархии справочника «Номенклатура». Теперь запустим 1С:Предприятие в режиме отладки и, прежде всего, откроем периодический регистр «ЦеныНоменклатуры» и добавим изменение цены некоторой услуги на текущую дату. После этого выполним отчет «Переченьуслуг» на текущую дату, и убедимся, что в отчет выдается последняя исправленная цена. Затем выполним отчет «Переченьуслуг» на предыдущую дату, и убедимся, что в отчет выдается старое значение цены.

Таким образом, на примере этого отчета мы показали, как при помощи запроса можно получить последние значения из периодического регистра сведений и как вывести группировки по иерархии справочника.

Рис. 58

Соседние файлы в папке today2