Меню


Курсы СтимулСправочникПолезные материалы1С:Предприятие 8.2РазработчикамПрактикум

1С:Предприятие 8.2 /
Разработчикам /
Практикум

Оглавление

Практикум 6. Создание отчетов

Отчет Выручка мастеров

Отчет Перечень услуг

Отчет Рейтинг Клиентов

 

Отчет Выручка мастеров

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

1. Создадим новый объект конфигурацииОтчет. Назовем его ВыручкаМастеров и запустим конструктор основной схемы компоновки данных.

2. Создадим Набор данных → запрос и запустим конструктор запроса.

3. Выберем виртуальную таблицу регистра накопленияПродажи.Обороты.

4. Зададим один из параметров этой виртуальной таблицы → Периодичность. Для этого перейдем в поле Таблицы и нажмем кнопку Параметры виртуальной таблицы.

Т аблицы EHI,

5. В открывшемся окне параметров зададим значение параметра Периодичность → День.

Параметры виртуальной таблицы НачалоПериода КонецПериода Периодичность Условие Ч х Период 1 Запись Регистратор Секунда Минута Час День Неделя Декада Месяц V

6. Нажмем ОК. После этого выберем из таблицы следующие поля:

Т аблицы В-И ПродажиО бороты ! .....— Период [+]••• 1— Номенклатура В' I Клиент Й , Мастер КоличествоО борот .....I. ......................................... СтоимостьО борот ВыручкаОборот Поля I.....I— ПродажиО бороты. Мастер .....- ПродажиО бороты. Пери

7. Теперь перейдем на закладкуОбъединения/Псевдонимы и зададим псевдоним Выручка для поля ПродажиОбороты.ВыручкаОборот.

гїй Конструктор запроса П Таблицы и поля Группировка Условия Дополнительно Объединения/Псевдонимы Порядок Компоновка данных Характеристики Имя Запрос 1 Без дубл. Имя поля Запрос 1 . ....и. Мастер . ....и. ПродажиОбороты.Мастер . ....— Период . ....- Продаж

8. На закладке Группировка определим, что группировка будет проводиться по полям Мастер, Период и Клиент, а значения поля ВыручкаОборот будут суммироваться:

Таблицы и поля Группировка Условия Дополнительно Объединения/Псевдонимы Порядок Компоновка данных Характеристики Поля Г рупповое поле ЩпД= Все ПОЛЯ Ш ШИ Продажии бороты. Клиент . .....1+ ПродажиО бороты. Мастер . ....- ПродажиО бороты. Период Суммируемое п

9. На закладке Порядок определим, что результат запроса будет отсортирован по возрастанию значения поля Период.

гїй Конструктор запроса П Таблицы и поля Группировка Условия Дополнительно Объединения/Псевдонимы Порядок Компоновка данных Характеристики Поля Поле Сортировка і л 1.....1— Мастер Период Возрастание • • ! ..... Выручка Ш-Я Все поля V Запрос Назад Далее О К

10. Нажмем ОК.

Рассмотрим текст запроса, сформированный конструктором.

ВЫБРАТЬ ПродажиОбороты.Мастер, ПродажиОбороты.Период КАК Период, ПродажиОбороты.Клиент, СУММА ПродажиОбороты.ВыручкаОборот КАК Выручка ИЗ _ РегистрНакопления.Продажи.Оборотыц,, День, п КАК ПродажиОбороты СГРУППИРОВАТЬ ПО ПродажиОбороты.Клиент, ПродажиОборо

В части описания запроса обратите внимание, что у источника данных кроме задания начала и окончания периода расчета итогов задана периодичность выбираемых данных → День.

Именно благодаря этому у нас появляется возможность описать среди выбранных полей поле Период.

11. Теперь перейдем к редактированию схемы компоновки данных. На закладке Ресурсы нажмем >> и убедимся, что конструктор выбрал единственный имеющийся у нас ресурс → Выручка.

Отчет ВыручкаМастеров: ОсновнаяСхемаКомпоновкиДанных Наборы данных Связи наборов данных Вычисляемые поля Ресурсы Параметры Макеты Вложенные схемы Настройки д Доступные ПОЛЯ Поле Выражение Рассчитывать по... — Выручка Ч — Выручка Сумма Выручка — Клиент / —

12. На закладке Параметры выполним те же действия, что и при создании предыдущего отчета.

Для параметра НачалоПериода зададим заголовок Дата начала. В поле Доступные типы зададим состав даты → Дата.

Для параметра КонецПериода зададим соответствующее выражение и в поле Ограничение доступности установим флаг ограничения доступности .

В заключение добавим еще один параметр → ДатаОкончания, установим его тип как Дата, состав даты → Дата.

В результате перечисленных действий параметры компоновки данных будут иметь следующий вид:

Отчет ВыручкаМастеров: ОсновнаяСхемаКомпоновкиДанных Наборы данных Связи наборов данных Вычисляемые поля Ресурсы Параметры Макеты Вложенные схемы Настройки Имя Заголовок Доступные типы Досту... До... Зна... Выражение В к... Ог... НачалоПериода Дата начала

13. Теперь создадим структуру отчета . На закладке Настройки последовательно создадим две вложенные группировки: верхнего уровня → по полю Мастер,

Отчет ВыручкаМастеров: ОсновнаяСхемаКомпоновкиДанных Отчет Наборы данных Связи наборов данных Вычисляемые поля Ресурсы Параметры Макеты Вложенные схемы Настройки Тр] Выбор поля Настройки: Отчет Отче, П араметры данных В ы Группировка Поле: . .. V Тип: Без

вложенная в нее → по полю Период.

Отчет ВыручкаМастеров: ОсновнаяСхемаКомпоновкиДанных Наборы данных Связи наборов данных Вычисляемые поля Ресурсы Параметры Макеты Вложенные схемы Настройки Ц /

Затем добавим еще одну группировку, вложенную в группировку по полю Период, - детальные записи (без указания группировочного поля):

ВЛЦ Отчет e-0111 Мастер B V]ej Период L 0 Детальные записи

14. Теперь, находясь на уровне Глобального отчета, перейдем на закладку Выбранные поля и добавим в список выбранных полей поля Клиент и Выручка.

Параметры... Выбранные... Отбор Сортировка Условное о... Пользовэте... Другие нас... Доступные ПОЛЯ — Поле i 1 В - Клиент Ш-— Мастер .....— Период - Выбранные поля к: .....— Клиент 0 Вырчч! а ф -1 Ё--1 СистемныеПоля Ш-_1 Параметры Данных

15. В заключение с уровня Глобального отчета перейдем на закладку Другие настройки и изменим следующие параметры. Для параметра Расположение полей группировок установим значение Отдельно и только в итогах;

 Параметр Значение Макет оформления Основной Расположение итогов Авто сСЕасположение полей группировок - Вместе ... Расположение группировок Вместе '— Расположение реквизитов Отдельно Расположение ресурсов Отдельно и только в итогах п рАГППЛПЖРНЫР Л Г-ИИ и

для параметра Расположение общих итогов по вертикали зададим значение Начало и для параметра Заголовок зададим значение Выручка мастеров:

 Параметр Знамение / ч 0 Расположение полей группировок Отдельно и только в итогах • Расположение группировок Начало 0 Расположение общих итогов по вертикали Начало Расположение ресурсов Г оризонтально п Расположение общих итогов по горизонтали Авто 0 Заго

Запустим 1С:Предприятие в режиме отладки посмотрим на результат работы отчета Выручка мастеров за период с 01.09.2008 по 07.09.2008.

Выручка мастеров Параметры данных: Дата начала = 01.09.2008 Дата окончания = 07.09.2008 Мастер Период Клиент Выручка Итого 4 794 Гусаков Николай Дмитриевич 1 700 03.09.2008 0:00:00 1 700 Спиридонова Галина Вячеславовна 1 700 Деловой Иван Сергеевич 950 01.0

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

Вернемся в режим конфигуратора и выполним более тонкую настройку структуры отчета. До сих пор все настройки структуры, которые мы выполняли, относились ко всему отчету в целом. Но система компоновки данных позволяет настраивать также и каждый элемент структуры в отдельности.

1. В нашем случае потребуется изменить настройку группировки Период. Для того чтобы перейти к настройкам именно этой группировки, в поле структуры установим курсор на эту группировку, а затем нажмем кнопку Период в командной панели.

Отчет ВыручкаМастеров: ОсновнаяСхемаКомпоновкиДанных Наборы данных Связи наборо... Вычисляемые... Ресурсы Параметры Макеты Вложенные сх... Настройки В Отчет Й-дисп Мастер В'0‘ _ -у шз Детальные записи Период Настройки: Отчет Период Нужно нажмь эту кнопку П

2. В нижней части формы будут отображены настройки, доступные только для данной группировки.

Перейдем на закладку Поля группировки. Для поля Период установим Тип дополненияДень.

Отчет ВыручкаМастеров: ОсновнаяСхемаКомпоновкиДанных Наборы данных Связи наборо... Вычисляемые... Ресурсы Параметры Макеты Вложенные сх... Настройки • И Отчет ОЭЗ 7 Л Ё]..[у]сзз Мастер Ига=1В!ЕЗ Период і. у]Еш Детальные записи V И і Настройки: Отчет Период

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

После этого следует указать, в каком именно периоде будет выполняться такое дополнение. В поля, расположенные строчкой ниже, можно ввести даты начала и окончания этого периода. Но указание дат в явном виде вряд ли кого устроит, так как пользователь может пожелать сформировать отчет за произвольный период. И нам нужно, чтобы, чтобы дополнение дат выполнялось не в некотором фиксированном периоде, а именно в том периоде, который выбрал пользователь для всего отчета.

3. Для того чтобы обеспечить именно такую работу отчета, войдем в режим редактирования первого поля (например, дважды кликнув в нем) и нажмем на кнопку очистки (Х). После этого, нажав на кнопку Т, мы сможем выбрать тип данных, отображаемых в этом поле. Выберем Поле компоновки данных. Нажмем ОК.

9- X Наборы данных Связи наборо... Вычисляемые... Ресурсы Параметры Макеты Вложенные сх... Настройки В Отчет Й-дисп Мастер в-0' _ -у шз Детальные записи Период Выбор типа данных Настройки: Отчет Период Поля группировки Выбранные поля Отбор Сс Доступные ПОЛ

4. Теперь нажмем в поле ввода кнопку выбора (…¦) и в открывшемся окне выбора поля отметим параметр НачалоПериода. ОК.

Выбор поля Доступные ПОЛЯ В-и Параметры Данных НамалоПериода — КонецПериода - ДатаОкончания О К Отмена

5. Для второго поля ввода аналогичным образом укажем, что дата окончания периода будет получена из параметра ДатаОкончания.

Поля группировки Выбранные поля Отбор Сортировка Условное оформление Другие настройки Поле Т ип дополнения Начальная дата периода Конечная дата периода 0 — Период День П араметры Данных. Н ачалоП ериода 1П араметры Данных. ДатаО кончания 1 1 Доступные поля

6. Запустим 1С:Предприятие в режиме отладки и выполним отчет Выручка мастеров за период с 03.09.2008 по 07.09.2008.

Выручка мастеров Параметры данных: Дата начала = 03.09.2008 Дата окончания = 07.09.2008 Мастер Период Клиент Выручка Итого 1 700 Гусаков Николай Дмитриевич 1 700 03.09.2008 0:00:00 1 700 Спиридонова Галина Вячеславовна 1 700 04.09.2003 0:00:00 05.09.2003 0

На примере этого отчета мы продемонстрировали, как строить многоуровневые группировки и как установить в системе компоновки обход по всем датам в выбранном периоде.

Отчет Перечень услуг

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

1. Создадим новый объект конфигурацииОтчет с именем ПереченьУслуг и запустим конструктор схемы компоновки данных.

2. Создадим новый Набор данных → запрос и вызовем конструктор запроса.

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

4. Чтобы исключить неоднозначность имен в запросе, переименуем таблицу Номенклатура в СпрНоменклатура.

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

Параметры виртуальной таблицы Период Условие ДатаОтчета О К Отмена Справка

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

Поля . ....— СпрН оменклатура. Родитель. ....- СпрН оменклатура. Ссылка. .... Ц еныСрезП оследних. Ц ена

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

8. На закладке Условия зададим условие выбора элементов справочника Номенклатура → выбираемые элементы должны соответствовать виду номенклатуры , переданному в параметре запроса ВидНоменклатуры.

Номер П... Условие 1 - СпрНоменклатура.ВиаНоменк... = В иаН оменклатуры

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

Имя поля Запрос 1 1.....— ГруппаУслуг . ....- СпрНоменклатура. Родитель У слуга . ....- СпрНоменклатура. Ссылка . .... Цена . ....І Ц еныСрезП оследних. Ц єна

10. На закладке Группировка укажем, что группировка будет производится по полю СпрНоменклатура.Родитель. Значения суммируемых полей задавать не станем.

Г рупповое поле - СпрНоменклсП-ура. Родитель

11. На этом создание запроса завершено, ОК. Теперь рассмотрим текст запроса, сформированный конструктором.

ВЫБРАТЬ СпрНоменклатура.Родитель КАК ГруппаУслуг, СпрНоменклатура.Ссылка КАК Услуга, ЦеныСрезПоследних.Цена ИЗ Справочник.Номенклатура КАК СпрНоменклатура ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Цены.СрезПоследних бДатаОтчета, КАК ЦеныСрезПоследних ПО ЦеныСрезПос

Практически все конструкции, использованные в этом запросе, нам уже известны.

12. Перейдем к редактированию схемы компоновки данных. На закладке Ресурсы нажатием кнопки >> выберем единственный доступный ресурс Цена.

13. На закладке Параметры зададим значение параметра ВидНоменклатуры как Перечисление.ВидыНоменклатуры.Услуга. Кроме этого снимем ограничение доступности для параметра ДатаОкончания и в поле Доступные типы зададим состав даты → Дата. Для параметра Период, наоборот, установим ограничение доступности.

Отчет ПереченьУсяуг: ОсновнаяСхемаКомпоновкиДанных Наборы данных Связи наборов данных Вычисляемые поля Ресурсы] Параметры Макеты Вложенные схемы Настройки Имя Заголовок Доступные типы д... Д... Значение Выражение В к... Ог... Период Период Дата п 0 рщ ВиаН

14. Приступим к созданию структуры отчета. Перейдем на закладку Настройки и создадим группировку по полю ГруппаУслуг, указав тип группировки Иерархия. Внутри этой группировки создадим еще одну группировку без указания группового поля. Она будет содержать детальные записи отчета.

В- ]..у ex ГруппаУслуг Иерархия ' 'у] шз Детальные записи

15. Перейдем на закладку Выбранные поля и укажем, что в отчет будут выводиться поля Услуга и Цена.

Отчет ПереченьУсяуг: ОсновнаяСхемаКомпоновкиДанных Наборы данных Связи наборов... Вычисляемые п... Ресурсы Параметры Макеты Вложенные схе... Настройки реї -у шз ГруппаУслуг Иерархия 5~~д а Детальные записи И і Настройки: Отчет Отчет Параметры дан... Выбран

И в заключение настроим внешний вид отчета на закладке Другие настройки. Так как наш отчет будет представлять собой просто список оказываемых услуг, в котором интересны цены на конкретные услуги, выводить значения ресурса Цена для каждой из группировок и для всего отчета в целом не имеет смысла.

16. Чтобы запретить вывод общих итогов во всем отчете, установим параметр Расположение общих итогов по вертикали в значение Нет.

Для параметра Расположение полей группировок укажем значение Отдельно и только в итогах (так наш отчет будет лучше «читаться»).

17. Затем перейдем к настройкам конкретной группировки → ГруппаУслуг. Для параметра Расположение итогов этой группировки укажем значение Нет.

Отчет ПереченьУсяуг: ОсновнаяСхемаКомпоновкиДанных Наборы данных Связи наборов... Вычисляемые п... Ресурсы Параметры Макеты Вложенные схе... Настройки і V В Отчет Й-.01Ш 10 ГруппаУслуг Иерархия Детальные записи Настройки: Отчет ГруппаУслуг Иерархия Парамет

18. Напоследок зададим заголовок отчета → Перечень услуг.

19. Запустим 1С:Предприятие в режиме отладки и прежде всего откроем периодический регистр Цены. Добавим в него еще одно значение для услуги Диагностика: новая цена услуги на 15.09.2008 → 350. Это позволит нам протестировать отчет.

 ' Список Цены Действия -= = и. о Т р Период Номенклатура Цена V А 31.03.2003 0:00:00 Диагностика 200,00 V А 15.03.2003 0:00:00 Диагностика 350,00 V

21. Теперь выполним отчет Перечень услуг по состоянию на 01.09.2008.

к› "к›Ё"В€: Перечень услуг Параметры данных: Дата отчета = 01.09.2008 Группа услуг Услуга Цена Услуги Стиральные машины Подключение воды 800 Подключение электричества 800 Телевизо эы Диагностика 200 Ремонт отечественного телевизора 600 Ремонт импортного телевизора 800

22. Наш отчет правильно отражает цену услуги Диагностика на 31.08.2008 → 200 руб.

Еще раз выполним отчет, но теперь уже на другую дату → 15.09.2008.

к Ђ"к €"В€: Перечень услуг Параметры данных: Дата отчета = 15.09.2008 Группа услуг Услуга Цена Услуги Стиральные машины Подключение воды 800 Подключение электричества 800 Телевизо эы Диагностика 350 Ремонт отечественного телевизора 600 Ремонт импортного телевизора 800

Как видите, показана новая цена услуги Диагностика → 350 руб.

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

Отчет Рейтинг Клиентов

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

1. Создадим в конфигураторе новый объект конфигурации с именем Рейтинг клиентов и откроем его основную схему компоновки данных.

2. Создадим Набор данных → запрос, вызовем конструктор запроса и выберем виртуальную таблицу регистра накопления Продажи.Обороты и из нее одно поле → ПродажиОбороты.Клиент.

3. Затем добавим новое поле и при помощи построителя выражений (редактор произвольного выражения поля) определим его как разность между выручкой и стоимостью:

4. В результате список выбранных полей будет иметь следующий вид:

П родажиО бороты. Клиент Ы П родажиО бороты. В ыручкаО борот • П родажиО бороты. СтоимостьО борот

5. На закладке Объединения/Псевдонимы укажем, что вычисляемое поле будет иметь псевдоним Доход:

Имя поля Запрос 1 :.....1— Клиент 1.....1-,. ПродажиО бороты. Клиент там Доход 1.....Рм ПродажиО бороты. В ыручкаО борот • Пр...

6.На закладке Порядок укажем, что строки результата нужно упорядочивать по убыванию значения поля Доход.

7. Нажмем ОК и посмотрим, какой текст сформировал конструктор запроса. По сравнению с предыдущими отчетами текст запроса довольно прост. Единственным интересным местом, на которое следует обратить внимание, является поле Доход, являющееся результатом вычисления выражения:

ВЫБРАТЬ ПродажиОбороты.Клиенту ПродажиОбороты.ВыручкаОборот - ПродажиОбороты.СтоимостьОборот ч_КАК Доход_, ИЗ РегистрНакопления.Продажи.Обороты КАК ПродажиОбороты УПОРЯДОЧИТЬ ПО Доход УБЫВ

8. Теперь добавим поле Доход в ресурсы схемы компоновки:

Отчет РейтингКлиентов: ОсновнаяСхемаКомпоновкиДанных Наборы данных Связи наборов данных Вычисляемые поля Ресурсы Параметры Макеты Вложенные с Доступные поля Поле Выражение - Доход - Доход Сумма Доход — Клиент

9. Перейдем на закладку Настройки для того, чтобы создать структуру отчета.

В отличие от всех предыдущих отчетов, структура которых содержала группировки, в этот раз добавим в структуру отчета Диаграмму:

В 0 Й-[у тчет 1ГП Диаграмма I . ....Точки. ....Серии

10. В точки диаграммы добавим группировку по полю Клиент. Серии диаграммы оставим без изменений.

ВЦ Отчет Ё1-0 1 Диаграмма В Точки ;.....Серии Клиент

11. Теперь перейдем на закладку Выбранные поля и выберем поле Доход для вывода в отчет. Структура отчета должна принять следующий вид:

Параметры данных Выбранные поля Отбор Сортировка У -:- - Доступные поля Поле I Ш~— Клиент - Выбранные поля №00 Доход 0 ЖШЭ1 Доход Щ Ё-и СистемныеПоля Ш~_1 Параметры Данных

12. На закладке Другие настройки зададим заголовок отчета Рейтинг клиентов, а также выберем тип диаграммыКруговая объемная.

 Параметр Значение у: Т ип диаграммы 01 Круговая объемная. .. . ....Базовое значение ; Гистограмма нормированная горизонтальная объемная / ч . ....Пропускать базовое значение Круговая . ....Состав подписей + Круговая объемная . ....Режим раздвижения 1- Бир

13. Запустим 1С:Предприятие в режиме отладки и откроем отчет Рейтинг клиентов. Обратите внимание, что при наведении курсора на сектор диаграммы появляется подсказка.

Рейтинг клиентов Иванов Михаил Юрьевич I Синицын Роман Г ригорьевич Спириаонова Г алина Вячеславовна

14. Откроем настройки отчета и изменим тип диаграммы на Измерительная. Заново сформируем отчет.

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


Нас находят: параметр период детальные записи, разворотом по клиентам обслуженным в каждый из дней (рис 1) На примере этого отчета мы проиллюстрируем как строить многоуровневые группировки в запросе и как обходить все даты выбранном периоде Также продемонстрируем настройку отдельных элементов структуры


Подписка на новости RSS     Добавьте в закладки Google fusion     Мы в Google+    

 

Мы ВКонтакте

 

Мы на Facebook