Similar presentations:
лекция 3 — копия
1.
Программирование отчётов в1С:Предприятие
Дисциплина: 1 С:Предприятие
2.
Отчёты в 1 С: ПредприятиеЧто такое отчёт?
Объекты метаданных для
структурированного представления
инф ормации о работе компании
Ключевая цель
Предоставить пользователю нужную
инф ормацию быстро и понятно
Отчеты являются мощным инструментом для аналитической и
управленческой деятельности, позволяя руководителям принимать
обоснованные решения. Они также незаменимы для ведения учета
бухгалтерией, обеспечивая точность и соответствие требованиям. Кроме того,
отчеты используются для оперативного контроля, например, для проверки
остатков товаров на складах, и могут быть предназначены как для
внутреннего использования, так и для подачи в контролирующие органы
3.
Характеристики и классификация отчетовОсновные свойства
• Наличие электронной экранной формы
Классификация отчетов
Стандартные
• Несколько печатных форм для одного отчета
• Алгоритмы на встроенном языке 1С
Универсальные
• Детализация данных по выбранному объекту
• Быстрый поиск и вывод информации
• Совместимость с Excel, Word
Специализированные
Регламентированные
Эта классификация помогает
ориентироваться в многообразии
отчетности и выбирать наиболее
подходящий инструмент для конкретной
задачи
4.
Стандартные отчеты в 1 С:БухгалтерияСтандартные отчеты формируются за определенный временной промежуток и по
конкретной организации путем отбора соответствующих проводок из журнала операций.
Они являются основой бухгалтерского учета.
Оборотно-с альдовая
ведомость (ОСВ )
Обороты счета
Карточка счета
Показывает начальные и
конечные сальдо, а также
обороты по счетам за период.
Подробная информация об
оборотах по выбранному
счету.
Все операции по конкретному
счету за выбранный период в
хронологическом порядке.
Анализ счета
Глав ная книга
Анализ корреспонденции
счетов, связанных с
выбранным счетом.
Сводная информация по
всем счетам бухгалтерского
учета.
5.
Гибкая настройка отчетов под задачипользователя
В 1 С предусмотрен мощный механизм настройки отчетов, доступный по кнопке «Показать
настройки». Это позволяет адаптировать любой отчет под специф ические требования
пользователя, не прибегая к программированию.
01
02
Стандартные настройки
Расширенные настройки
• Модули представления
• Правила группировки строк и колонок
• Варианты отбора данных
Общие параметры представления
Формат группировки
Способы и варианты отбора инф ормации
Ввод новых полей и изменений
Сортировка данных по параметрам
Настройка оф ормления
Эти инструменты обеспечивают максимальную гибкость в работе с отчетностью, позволяя
получать именно ту инф ормацию, которая необходима в данный момент.
6.
Язык запросов: Сортировка (ORDER BY)Оператор УПОРЯДОЧИТЬ ПО
Используется для упорядочивания
результатов запроса по одному или
нескольким полям.
• ВОЗР – по возрастанию (по умолчанию)
// Пример: Сортировка по наименованию
ВЫБРАТЬ Наименование КАК Товар
ИЗ Справочник.Номенклатура
УПОРЯДОЧИТЬ ПО Товар ИЕРАРХИЯ
• УБЫВ – по убыванию
• ИЕРАРХИЯ – для иерархических данных
Ограничение выборки: ПЕРВЫЕ
Ключевое слово ПЕРВЫЕ N позволяет
получить только N первых записей из
результата запроса. Это особенно полезно
при поиске топ-позиций.
// Пример: Найти 3 самых дорогих товара
ВЫБРАТЬ ПЕРВЫЕ 3 Наименование КАК
Товар, ЦенаПродажи КАК Цена
ИЗ Справочник.Номенклатура
УПОРЯДОЧИТЬ ПО Цена УБЫВ
7.
Я зы к запросов : Группиров ка (GR OUP B Y )СГРУППИРОВ АТЬ ПО
Агрегатны е функции
Оператор для объединения записей
в группы по определенному признаку
и получения суммирующей
информации.
• СУММА() – вычисляет сумму
• МИНИМУМ() – находит минимальное значение
• МАКСИМУМ() – находит максимальное значение
• СРЕДНЕЕ() – вычисляет среднее значение
• КОЛИЧЕСТВО() – подсчитывает количество
Оператор ИМЕЮЩИЕ позволяет фильтровать результаты после группировки, применяя условия к агрегатным функциям.
// Пример: Выбрать товары, которых продали не менее 100 штук
ВЫБРАТЬ Номенклатура,
СУММА(Количество) КАК Продано
ИЗ Документ.ПродажаТоваров.Товары
СГРУППИРОВАТЬ ПО Номенклатура
ИМЕЮЩИЕ СУММА(Количество) >= 100
8.
Я зы к запросов : Итоги и ПараметрыОператор ИТОГИ
Параметры запрос а
Используется для получения общих итогов
по полям запроса, а также итогов по
заданным группировкам.
Переменные, обозначаемые знаком &
(например, &Параметр1), которые позволяют
включать в запрос переменные значения
перед его выполнением.
// Пример: Итоги по контрагентам и номенклатуре
// Пример: Выборка по диапазону цен
ВЫБРАТЬ Контрагент, Номенклатура,
ИЗ РегистрНакопления.Продажи
ИТОГИ СУММА(Сумма)
ПО Контрагент, Номенклатура
АВТОУПОРЯДОЧИВАНИЕ
ВЫБРАТЬ Наименование КАК Товар, ЦенаПокупки
ИЗ Справочник.Номенклатура
ГДЕ ЦенаПокупки МЕЖДУ &МинЦена И &МаксЦена
Сумма
// Установка параметров в коде
Запрос.УстановитьПараметр("МинЦена", 100);
Запрос.УстановитьПараметр("МаксЦена", 1000);
9.
Задача практики №5: Анализ продажЦель практического занятия – разработать отчет «Анализ продаж по менеджерам» на
основе документа «Реализация товаров и услуг». Этот отчет позволит проанализировать
эффективность работы каждого менеджера.
1
2
Вывод данных
Менеджер, Номенклатура,
Количество, Сумма.
3
Фильтрация
Группировка
По периоду (начало и конец) и
по менеджеру (опционально).
4
Сначала по менеджерам,
затем по номенклатуре.
5
Расчет итогов
Сортировка
По количеству и сумме для каждой
группировки и общие итоги.
Менеджеров по убыванию
общей суммы продаж.
10.
Создание новой отчетной формы в конф игуратореДля создания отчета необходимо начать с конф игуратора,
где определяется его структура и логика.
Откры тие конфигурации
Добавл ение нового отчета
Запустите 1 С в режиме Конф игуратор.
В дереве конф игурации: "Отчеты" -> "Добавить" ->
"Отчет".
Именование
Откры тие СКД
Укажите имя (например, ОтчетАнализПродаж) и синоним.Нажмите кнопку "Открыть схему компоновки данных".
Этот процесс является ф ундаментом для разработки любого отчета в 1 С.
11.
Система Компоновки Данных (СКД) в 1С:Предприятие
Мощный инструмент для построения гибких отчетов
12.
Что такое СКД?Система Компоновки Данных (СКД) — это ф ундаментальная технология платф ормы
1 С:Предприятие, предназначенная для гибкого ф ормирования отчетов. Она позволяет
разделить логику получения данных от их визуального представления.
Раздел ение логики
Отделяет запрос данных
от их оф ормления,
обеспечивая гибкость.
Настраиваемы е
отчеты
Пользователи могут
менять вид отчета без
участия программиста.
В ы сокая
производител ь ность
Оптимизированный
механизм для обработки
больших объемов
инф ормации.
13.
Этапы разработки от чета на СКДСоздание отчета с использованием СКД включает несколько последовательных шагов,
каждый из которых добавляет ф ункциональность и гибкость.
01
02
03
Наборы данны х
Параметры
Пол я и Рес урс ы
Определение источников и
полей данных.
Добавление интерактивных
ф ильтров.
Настройка отображаемых и
вычисляемых значений.
04
05
Настройки структ уры
Услов ное оформл ение
Определение визуального макета отчета.
Повышение наглядности с помощью стилей.
14.
СКД: Наборы данных — Определение источниковНа этом этапе мы указываем, откуда СКД будет брать инф ормацию для отчета.
Шаги по настройке
Выбор данных
1. Перейдите на вкладку "Наборы данны х " .
Для нашего примера нам понадобятся
следующие таблицы:
2. Нажмите "Добавить" -> "Добавить
набор данны х " -> "Запрос" .
3. Откройте Конструктор запросов.
• Документ.РеализацияТоваровУслуг (и
его табличная часть Товары )
• Справочник.Сотрудники (для поля Менеджер)
Выберите поля: Дата, Менеджер, Номенклатура, Количество, Сумма.
15.
СКД: Параметры — Расширение функционал ь ностиПараметры предоставляют пользователям возможность интерактивно ф ильтровать и
настраивать данные отчета перед его ф ормированием.
1
Начал оПериода
2
КонецПериода
Тип: Дата.
Тип: Дата.
Значение по умолчанию:
Значение по умолчанию:
НачалоМесяца(ТекущаяДата()) КонецДня(ТекущаяДата())
3
Менеджер
Тип:
СправочникСсылка.Сотрудни
ки. Опциональный параметр.
Использование в запросе: ГДЕ Реализация.Дата МЕ ЖДУ &НачалоПериода И &КонецПериода
16.
СКД: Поля и Ресурсы — Управление даннымиЭта вкладка позволяет детально настроить, какие данные будут отображаться
и как они будут агрегироваться.
Поля Компоновки
Ресурсы
На вкладке "Пол я" вы увидите все поля,
полученные из запроса. Здесь можно:
На вкладке "Ресурсы " определяются поля
для агрегации (суммирования, подсчета
среднего и т.д.). Для нашего отчета:
• Переименовать поля для удобства.
• Скрыть ненужные поля.
• Настроить ф орматирование.
• Количество с ф ункцией Сумма
• Сумма с ф ункцией Сумма
Это автоматически подсчитает итоги по
этим показателям.
17.
СКД: Настройки структуры — Визуализация отчетаВкладка " Настройки" позволяет создать иерархическую структуру отчета, определяя группировки и
детальные записи.
Детальные записи
Отображение Дата, Кол ичество, Сумма.
1
Группировка по номенклатуре
Объединение продаж по каждому товару.
2
Группировка по менеджеру
Сортировка по убыванию Суммы .
3
18.
СКД: Условное оформление — Повышение нагл ядностиУсловное оформление делает отчет более информативным,
автоматически выделяя важные данные.
Пример: Подсветим менеджеров, чьи продажи превысили 100 000 руб.
• На панели "Условное оформление" нажмите "Добавить".
• Условие: Ресурсы.Сумма > 100000
• Оформление: Установите, например, зеленый фон заливки.
В результате успешные менеджеры будут автоматически выделены цветом,
что упрощает анализ данных.
19.
Сохранение и тестирование отчетаЗавершающие шаги перед использованием отчета в рабочей среде.
1
Закрыть схему
Нажмите "ОК" для сохранения
изменений в схеме компоновки данных.
3
Запуск
Откройте 1 С в режиме пользователя для
тестирования.
2
Сохранить конфигурацию
Используйте клавишу F7 для сохранения
конф игурации.
4
Формирование отчета
Найдите ваш отчет, задайте параметры и
нажмите "Сф ормировать".
20.
Пример сформированного отчетаВот как будет выглядеть структурированный отчет с учетом всех настроек.
Менеджер:
Петров А.И.
(Итог: 450 000 руб.)
Товар:
Монитор 24"
(Итог: 200 000 руб.)
1 5.03.2024
5 шт.
1 00 000 руб.
20.03.2024
5 шт.
1 00 000 руб.
Товар:
Клавиатура
(Итог: 250 000 руб.)
Менеджер:
Сидорова В.С.
(Итог: 300 000 руб.)
ОБЩИЙ ИТОГ:
750 000 руб.
21.
Программное ф ормирование отчета в 1С:Ал ьтернатив ны й подход
Изучим программное создание отчетов как мощную альтернативу Системе Компоновки Данных (СКД) для специф ических
задач в 1 С.
22.
Когда использовать программное формированиеотчета?
Программное формирование отчетов — идеальное решение для ситуаций, когда
требуется высокая степень кастомизации и контроль над каждым элементом отчета, а
также для простых отчетов, не требующих гибкости СКД.
Простые отчеты
Для отчетов с
фиксированной
структурой, где нет
необходимости в
динамической настройке
полей, группировок или
отборов.
Высокая
производительност
ь
Когда критична скорость
выполнения, и каждый
миллисекунд имеет
значение. Прямое
выполнение запросов и
вывод данных может
быть быстрее, чем СКД.
Специфический вывод
В случаях, когда
стандартные
возможности СКД по
оформлению и выводу
данных недостаточны, и
требуется полностью
контролировать
представление отчета.
23.
Пример кода для кнопки "Сф ормировать"Рассмотрим базовый пример программного формирования отчета.
Этот код демонстрирует выполнение запроса и подготовку данных для вывода.
Процедура СформироватьОтчет()
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
|
Реализация.Менеджер КАК Менеджер,
|
РеализацияТовары.Номенклатура КАК Номенклатура,
|
СУММА(РеализацияТовары.Количество) КАК Количество,
|
СУММА(РеализацияТовары.Сумма) КАК Сумма
|ИЗ
|
Документ.РеализацияТоваровУслуг КАК Реализация
|
ЛЕВОЕ СОЕДИНЕНИЕ Реализация.Товары КАК РеализацияТовары
|
ПО Реализация.Ссылка = РеализацияТовары.Ссылка
|ГДЕ
|
Реализация.Дата МЕЖДУ &Начало И &Конец
|СГРУППИРОВАТЬ ПО
|
Менеджер,
|
Номенклатура
|УПОРЯДОЧИТЬ ПО
|
Сумма УБЫВ";
Запрос.УстановитьПараметр("Начало", НачалоПериода);
Запрос.УстановитьПараметр("Конец", КонецПериода);
Результат = Запрос.Выполнить();
// ... выгрузка в таблицу документа или вывод на формуКонецПроцедуры
Этот фрагмент кода демонстрирует создание запроса, установку параметров и его выполнение,
получая агрегированные данные по продажам за период.
24.
Экспорт отчета в Excel: Расширяем функциональностьПредоставление пользователю возможности экспортировать данные отчета в Excel значительно повышает его ценность
позволяя проводить дополнительный анализ и обработку вне системы 1С.
Процедура ЭкспортВExcel(ТаблицаДанных)
Попытка Excel = Новый COMОбъект("Excel.Application");
Excel.Visible = Истина;
Книга = Excel.Workbooks.Add();
Лист = Книга.Worksheets(1); // Заголовки
Лист.Cells(1, 1).Value = "Менеджер";
Лист.Cells(1, 2).Value = "Товар";
Лист.Cells(1, 3).Value = "Количество";
Лист.Cells(1, 4).Value = "Сумма"; // Данные
СтрокаExcel = 2;
Для Каждого СтрокаТаблицы Из ТаблицаДанных
Цикл Лист.Cells(СтрокаExcel, 1).Value = СтрокаТаблицы.Менеджер;
Лист.Cells(СтрокаExcel, 2).Value = СтрокаТаблицы.Номенклатура; Лист.Cells(СтрокаExcel, 3).Value
= СтрокаТаблицы.Количество;
Лист.Cells(СтрокаExcel, 4).Value = СтрокаТаблицы.Сумма; СтрокаExcel = СтрокаExcel + 1;
КонецЦикла; // Автоподбор ширины колонок
Лист.Columns.AutoFit();
Исключение Сообщить("Ошибка при экспорте в Excel: " + ОписаниеОшибки());
КонецПопытки;
КонецПроцедуры
25.
Оформление и визуализация данныхВизуальное представление данных играет ключевую роль в восприятии отчета. Помимо экспорта в Excel,
можно использовать типовые механизмы 1С для формирования табличных документов.
Диаграммы и графики
Табличный документ
Условное форматирование
Интеграция диаграмм и графиков
непосредственно в отчет для
наглядного представления
трендов и распределений.
Использование возможностей
табличного документа 1С для
форматирования, выделения
цветом и создания сложных
макетов.
Применение условного
форматирования для
акцентирования внимания на
важных показателях или
отклонениях.
26.
Варианты отчетов: Персонализация и удобство"Варианты отчетов" позволяют пользователям сохранять индивидуальные настройки
(отборы, поля, группировки) для быстрого доступа к персонализированным
представлениям данных.
Сохранение настроек
Быстрый доступ
Разделение доступа
Пользователи могут
сохранять свои ф ильтры
и группировки.
Моментальное
переключение между
различными
представлениями отчета.
Возможность делать
варианты отчетов
доступными для
определенных ролей или
групп пользователей.
27.
Испол ь зование в ы числяемы х полей и объ единениеданны х
Гибкость СКД позволяет создавать вычисляемые поля напрямую в схеме компоновки и
объединять данные из нескольких источников для получения комплексных отчетов.
Вы числяемы е поля
• Создание новых показателей на основе
существующих данных.
Объ единение источников
• Комбинирование данных из разных
таблиц или запросов для полного
анализа.
• Примеры: "Прибыль = Выручка - Себестоимость".
• Примеры: Соединение данных по
продажам с данными по остаткам
товаров.
• Удобство и гибкость без изменения
структуры базы данных.
• Расширенные аналитические возможности.
28.
Оптимизация запросов и типичные ошибкиЭф ф ективность отчетов напрямую зависит от оптимизации запросов и понимания распространенных
ошибок, которые могут замедлить их работу.
2
1
Оптимизация запросов
Типичные ошибки
• Используйте индексы для ускорения поиска.
• Неправильное использование левых/правых
соединений, ведущее к дублированию.
• Избегайте избыточных соединений.
• Минимизируйте объем выбираемых данных.
• Отсутствие учета агрегации данных при
группировках.
• Запросы к большим справочникам без отборов.
29.
СКД против Универс ал ь ного отчетаПонимание различий между Системой Компоновки Данных (СКД) и Универсальным отчетом критично для выбора правильного инс
Гибкость
Производительность
СКД
Сложность
Универс ал ь ны й
отчет
Простота
Выбор между СКД и Универсальным отчетом зависит от конкретных требований к отчетности, сложности данных и уровня детализа
30.
Итоги и заключениеСегодня мы рассмотрели ключевые аспекты создания отчетов в 1 С, от программного ф ормирования до
оптимизации и использования СКД.
Освоили создание запросов Изучили программный подход
Научились эф ф ективно получать
данные из базы 1 С.
1
Рассмотрели альтернативные методы
ф ормирования отчетов.
2
3
4
Познакомились с СКД
Готовность к практике
Поняли основные принципы работы с
Системой Компоновки Данных.
Вы готовы применять полученные
знания на практике.