Меню


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

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

Оглавление

Практикум 7. Универсальный отчет

Отчет Универсальный2

 

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

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

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

3. Из этой таблицы выберем все поля.

Поля I.....I— П родажиО бороты. Н оменклатура ! .....I- П родажиО бороты. Клиент .....I- П родажиО бороты. Мастер ..... П родажиО бороты. КоличествоО борот ..... П родажиО бороты. В ыручкаО борот :..... П родажиО бороты. СтоимостьО борот

4. На закладке Группировка с помощью кнопки >> выберем все поля, доступные для группировки, а все ресурсы добавим в Суммируемые поля.

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

5. Нажмем ОК и посмотрим не текст, сформированный конструктором запроса.

ВЫБРАТЬ ПродажиОбороты.Номенклатура, ПродажиОбороты.Клиент, ПродажиОбороты.Мастер, СУММА ПродажиОбороты.КоличествоОборот КАК КоличествоОборот, СУММА ПродажиОбороты.ВыручкаОборот КАК ВыручкаОборот, СУММА ПродажиОбороты.СтоимостьОборот КАК СтоимостьОборот ИЗ

6. Закончим создание схемы компоновки данных тем, что на закладке конструктора схемы компоновки Ресурсы выберем все доступные ресурсы (нажмем >>).

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

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

7. Перейдем на закладку Формы и создадим основную форму отчета, нажав на кнопку просмотра у табличного поля Основная форма отчета. Так как основная форма пока отсутствует, система вызовет конструктор форм. Согласимся с тем, что система предлагает по умолчанию , и сразу нажмем Готово.

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

Отчет Универсальный Действия Ў Сформировать Конструктор настроек... Настройки... ~/ / w Свойства: Поле табличного документа 64 Ъ х V Ў Основные: Имя Результат Изменяет Данные П ропускатьП риВ воде ПервыйВ Группе Видимость 0 Имя, по которому будет выполнять

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

0Конфигуратор учебная версия - Конфигурация Файл Правка Форма іЛ-Ін Л! % -б наш Конфигурация х Действия Конфигурация Й • / Общие Константы Ё ' ЗР Справочники Йв1 Документы I •Дй Журналы докумек Й {.Л Перечисления В- 1 Отчеты Ш ’’I Материалы Й - ' РеестрДок

10. Теперь мы можем редактировать табличное поле.

Установим курсор в верхнюю левую ячейку поля табличного документа и выполним Таблица в†’ Встроенные таблицы в†’ Вставить сводную таблицу. Система добавит в табличное поле сводную таблицу и откроет окно полей сводной таблицы:

Отчет Универсальный

11. Для того, чтобы в сводную таблицу вывести данные, нам потребуется написать несколько строк в модуле формы. Откроем модуль формы отчета и добавим в текст переменную, которая нам понадобится:

Перем ИсточникСводнойТаблицьі;

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

Е Процедура ПриОткрытии ИсточникеводнойТаблицы = Новый ИсточникДанныхСводнойТаблицыКомпоновкиДанных ИсточникеводнойТаблицы.УстановитьСхему СхемаКомпоновкиДанных ; ЭлементыФормы.Результат.ВстроенныеТаблицы.СводнаяТаблицаї. ИсточникДанных = ИсточникСводнойТа

Этим текстом мы присваиваем сводной таблице в качестве источника данных схему компоновки данных и устанавливаем ей настройки компоновщика настроек.

13. Запустим 1С:Предприятие в режиме отладки и откроем отчет Универсальный. На экране появится форма отчета и окно выбора полей сводной таблицы:

Отчет Универсальный _ п Область колонок Поля сводной таблицы о о. 43 с; чэ о Область данных Ш-и I Клиент! Й і- Мастер 0 1- Номенклатура 1 Выручка оборот 1 Количество оборот 1 Стоимость оборот Ў ОК

14. Поместим значение ресурса ВыручкаОборот в данные,

Поля сводной таблицы 0 Клиент ЁЧ— Мастер 0 1- Номенклатура 1мижяш 1 Количество оборот 1 Стоимость оборот Сроместить в данные ОК

измерение Номенклатура → в строки, а измерение Мастер → в колонки. Отчет примет следующий вид:

Отчет Универсальный Действия Сформировать Конструктор настроек... Настройки... Выручка об] Мастер // Номенклат Гусаков Николай Дг. Симонов Валерий М Дело в ой Иван Сер г Итог Материалы 900 744 150 1 794 Услуги 800 1 400 800 3 000 Итог 1 700 2144 950 4 794

15. Теперь в окне выбора полей сводной таблицы раскроем группу Номенклатура и добавим значение (Без иерархии) в строки,

Поля сводной таблицы Ш 1ч. Клиент ЁЗЧ— Мастер }!- Номенклатура э Ее::: иерархи и 1 .....1— Т олько иерархия 1 I.....и Код Поместить в строки - Ў ОК

а измерение Клиент добавим в колонки. Отчет примет следующий вид:

Отчет Универсальный _ п Выручка об, Мастер Клиент // Гусаков Николай Дмитриевич Симонов Валерий Михайлович Деловой Иван Сергеевич Итог Номенклат/ Номенклатура. Без иерархии Спиридонова Галин Синицын Роман Гри Иванов Михаил Юрі Материалы 900 900 744 744 150

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

Отчет Универсальный2

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

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

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

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

3. На закладке Ресурсы конструктора схемы компоновки данных нажмем >> и убедимся, что система подобрала три ресурса: ВыручкаОборот, КоличествоОборот и СтоимостьОборот.

4. На закладке Настройки создадим новую группировку Детальные записи (не выбирая поле группировки).

5. Теперь на закладке Формыокна редактирования отчета Универсальный2 с помощью конструктора создадим основную форму отчета и отредактируем ее.

6. Растянем форму и расположим в ней две надписи с именами Поля: и Порядок: соответственно. Для этого:

Отчет Универсальный2

Отчет Универсальный2 Страницаї Действия Ў Сформировать Конструктор настроек... Настройки...! Jk. X С Q а:;:;:;:;:;:; аПоля О::::::::::::::; ;:J3 ::Й Свойства: Надпись хз ! 64 V X v Ў Основные: Имя Заголовок Поля Поля: Г иперСсылка Текст надписи элемента уп

7. Под каждой надписью расположим табличное поле с именами ТабличноеПолеПоля и ТабличноеПолеПорядка, используя кнопку нижнего меню (Табличное поле):

— Отчет Универсальный2: ФормаОтчета _

8. Над табличными полями добавим командные панели, источниками действий которых будут назначены созданные нами табличные поля. С помощью кнопки нижнего меню GF (Командная панель) вставим командные панели. Получим следующую картинку:

Порядок:

9. Вызовем палитру свойств каждой из созданных командных панелей и привяжем к ним ИсточникДействий соответствующего табличного поля. Поставим флажок АвтоЗаполнение.

Свойства: Командная панель Ў Основные: Имя КоманднаяП анельП оля Вспомогательная 0 АвтоЗаполнение 0 1 Источник Действий Т абличноеПолеПоля Изменяет Данные Все источники П ПГіПІ /ГЯ, ЙТкП ГИ.іР: Р;ГіП Форма Определяет источникд Источник Действий, Асі Т абли

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

/ч Свойства: Т абличное поле Поля: 2 ' А ч7.'/ ЕХЭ Ў Основные: Имя Т аблимноеПолеПоля Данные Т ипЗначения Т аблимноеПолеПоля Т аблицаЗначений Изменяет Данные П ропускатьП риВ вод ПереыйВ Группе Видимость 0 Доступность 0 АвтоКонт екстноеМ еь КонтекстноеМеню

11. Теперь для табличного поля ТабличноеПолеПоля зададим источник данных как ОтчетОбъект.КомпоновщикНастроек.Настройки.Выбор. Кроме того, поставим флаг АвтоКонтекстноеМеню. Внимание: внешний вид созданного нами меню изменится.

Отчет Универсальный2: ФормаОтчета Свойства: Табличное поле 9- X Отчет Универсальный2 Щ и ъ X V Страницаї И мя Т абличноеП олеП оля Действия - Сформировать '•• Конструктор настооек... Данные Т абличноеП олеП оля Г Данные х! я Т аблицаЗначений Ў 3 ••ОтчетОбъ

12. Аналогично табличному полю ТабличноеПолеПорядок укажем источник данных ОтчетОбъект.КомпоновщикНастроек.Настройки.Порядок. Получим:

Поля: =, і I О Т Ч// Заголовок Расположение Поле ИЗ Поле ввода [аЫ1 Поле ввода [аЬІІ Поле ввода _1 Порядок: =, і I о Т Ч// Поле Направление сор... ІаЬП Поле ввода ІаЬП Поле ввода _

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

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

Командные панели понадобятся пользователю для настройки значений этих полей.

Используя свойства командных панелей АвтоЗаполнение и ИсточникДействий, мы получили автоматическое формирование команд, основанное на типе данных, содержащихся в каждом из табличных полей.

13. Поместим еще одну надпись с именем Оформление и заголовком Оформление, а под ней расположим поле выбора (кнопка нижнего меню сз ) с именем ПолеВыбораОформление без подписи:

 Заголовок Расположение Поле [аЫ1 Поле ееода Цы] Поле веода Ш Поле ееода : Поле Направление сор... [аЫ1 Поле ееода [аЫ1 Поле ееода Оформление

14. В свойствах нашего поля выбора откроем окно Строки списка выбора и заполним его именами макетов из библиотеки макетов оформления компоновки данных:

І х V Изменяет Данные П ропускатьП риВ вод ПервыйВ Группе Видимость 0 Доступность 0 АвтоКонтекстноеМ еь КонтекстноеМеню Отсутств1; Ў Использование: КнопкаВыбора КнопкаОчистки КнопкаРегулировани КнопкаОткрытия Связанный с ЗУ список значений для выбора 5! Зн

15. Для того чтобы в наше поле выбора изменяло применяемый макет оформления системы компоновки, создадим обработчик ПриИзмении поля выбора:

Е Процедура ПолеВыбораОформлениеПриИзменении Элемент ПараметрыВывода = КомпоновщикНастроек.Настройки.ПараметрыВывода; ПараметрМакетОформления = ПараметрыВывода.НайтиЗначениеПараметра Новый ПараметрКомпоновкиДанных ИакетОформления ПараметрНакетОформления.Ис

Этим текстом для параметра компоновки данных МакетОформления мы указываем имя макета, которым должен оформляться отчет, и устанавливаем признак использования макета оформления.

Запустим 1С:Предприятие в режиме отладки и откроем отчет Универсальный2.

1. В выбранные поля добавим следующие поля:

 -ч Поле - Выбранные поля 0 . .. X Оформлен Выбор поля Доступные ПОЛЯ — Клиент Мастер - Номенклатура 1 Выручка оборот 1 Количество оборот 1 Стоимость оборот -} Системные ПОЛЯ -} Параметры ок- Отмена

2. Зададим порядок сортировки:

 Поле - Выбранные поля 0 . ....— Мастер 0 . ....- Номенклатура 0 . ....- Н оменклатура. В иа номенклатуры 0 . ....1 Выручка оборот Поле Направление сортир... 0 — Мастер По возрастанию 0 - Номенклатура. В... По убыванию 0 3 Н 0 м е Н К Л 8Т у Р И По возраст

3. Выберем оформление, например Зеленый, и нажмем Сформировать. Результат будет выглядеть следующим образом:

і/ Отчет Универсальный2 _ П Страницаї Действия Сформировать Конструктор настроек... Настройки... 1 Мастер Номенклатура, Вид номенклатуры Выручка оборот / ч Гусаков Николай Дмитриевич Ремонт импортного телевизора, Услуга 800 Гусаков Николай Дмитриевич Строч

4. Теперь изменим условия формирования отчета. Выберем поля

Порядок слртировки будет:

Вариант оформления → Море. Выполним отчет:

Отчет Универсальный2 _ п Клиент Номенклатура Выручка оборот // Иванов Михаил Юрьевич Шланг резиновый 150 Иванов Михаил Юрьевич Подключение воды 800 Синицын Роман Григорьевич Строчный трансформатор воМ аг 400 Синицын Роман Григорьевич Транзистор РЫНрэ 2№369

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


Нас находят: Установим курсор в верхнюю левую ячейку поля табличного документа и выполним Таблица, универсальный отчет 1с, практикум 7 1с, универсальный отчет по таблице значений, пример пользовательских полей в универсальном отчете 1с, как в 1с упп с помощью универсального отчета расчеты по приобретению вывести в отчет номенклатуру, УниверсальныйОтчет ЗаполнитьТаблицуДанных, универсальный отчет в 1с 8 3 инструкция, 1с 8 2 как пользоваться универсальным отчетом, 1с ПолеВыбораОформлениеПриИзменении


Подписка на новости RSS

Мы на Facebook