Первый шаг в 1С — абсолютно бесплатно.
Первый отчёт: смотрим, что накопилось Ну что, отдохнули? Голова на месте? Тогда идём дальше. 🚀 В уроке 7 мы создали регистр «Остатки товаров». В уроке 8 научили документ писать движения в этот регистр. Но пока мы смотрим на эти данные только через «Все функции» — то есть как разработчики, а не как пользователи. Пора сделать настоящий отчёт, который покажет остатки красиво и по-человечески. |
Что такое отчёт в 1С Отчёт — это объект конфигурации, который выводит данные в удобном виде. Таблицы, группировки, итоги, диаграммы — всё это отчёты.
Отличия от регистра: Регистр — это «сырые» движения и остатки. Смотреть в него — как читать бухгалтерскую книгу без оглавления. Отчёт — это красивая картинка, сводка, итоги. То, что показывают директору.
Сегодня мы сделаем простой отчёт «Остатки товаров на складе», который покажет: сколько чего у нас сейчас есть. |
Шаг 1. Создаём отчёт Открываем Конфигуратор. В дереве находим ветку «Отчёты». Правая кнопка → «Добавить». Заполняем: * Имя: ОстаткиТоваров * Синоним: Остатки товаров Нажимаем «Закрыть».
Отчёт создан, но пока пустой. Он ничего не выводит, потому что мы не сказали ему, что показывать. |
Шаг 2. Знакомимся с СКД (система компоновки данных) В 1С есть два способа сделать отчёт: «Старый» способ — рисовать форму вручную, писать код вывода. Долго, нудно, но гибко. «Новый» способ — через СКД. Это когда вы говорите отчёту: «Вот тебе данные, вот как их сгруппировать», — а он сам рисует красиво.
Мы будем использовать СКД. Это стандарт современной 1С, и в реальной работе вы столкнётесь именно с ним.
Как открыть СКД: В дереве конфигурации разверните наш отчёт ОстаткиТоваров. Найдите ветку «Схема компоновки данных» → «Открыть схему компоновки данных» (или двойным кликом по соответствующему пункту). Откроется редактор СКД — окно с несколькими вкладками. Не пугайтесь: вкладок много, но нам пока нужны не все. |
Шаг 3. Набор данных: откуда берём информацию Первое, что нужно сказать СКД, — откуда брать данные. Это делается на вкладке «Наборы данных».
Нажмите на зелёный плюсик → «Добавить набор данных — запрос». Откроется окно с текстом запроса. Пока он пустой. Нажмите кнопку «Конструктор запроса» — это визуальный помощник, который соберёт запрос за вас. В конструкторе: Слева увидите список таблиц. Найдите ветку «Регистры накопления» → «ОстаткиТоваров». Разверните её и выберите виртуальную таблицу → «Остатки». (Про виртуальные таблицы — чуть ниже.) В колонке «Поля» отметьте: Товар, КоличествоОстаток. Нажмите «ОК».
Конструктор сам напишет запрос. У вас получится что-то вроде: ВЫБРАТЬ ОстаткиТоваровОстатки.Товар КАК Товар, ОстаткиТоваровОстатки.КоличествоОстаток КАК Количество ИЗ РегистрНакопления.ОстаткиТоваров.Остатки КАК ОстаткиТоваровОстатки Что это значит: «Возьми из виртуальной таблицы Остатки все товары и их остатки по количеству». Всё просто, когда знаешь. 😊 💡 Что такое виртуальная таблица? Это «умная» таблица, которую 1С строит на лету. Вы не храните остатки отдельно — вы храните движения. А Остатки — это то, что получается, если сложить все приходы и вычесть все расходы. 1С делает это за вас. |
Шаг 4. Настройки: как показывать данные Теперь переходим на вкладку «Настройки». Здесь мы говорим СКД: «А покажи-ка это красиво». Нажмите «Добавить» → появится структура отчёта. Пока пустая. В левой части увидите «Выбранные поля» — перетащите туда Товар и Количество из списка доступных полей. Теперь перетащите Товар в раздел «Группировки» — это значит, что данные будут сгруппированы по товару. Для каждого товара — своя строка.
Что получилось: отчёт будет выводить список товаров и количество остатка по каждому. |
Шаг 5. Запускаем и смотрим Сохраняем всё (Ctrl+S). Обновляем базу (F7). Запускаем пользовательский режим (F5). Открываем отчёт: «Все функции» → «Отчёты» → «Остатки товаров».
Нажимаем «Сформировать» — и... 🥁
Перед нами таблица: Кружка с котиком - 3 шт. Чайник электрический - 5 шт.
Настоящий отчёт! С итогами, с группировкой. Вы только что сделали то, чем занимаются 1С-разработчики каждый день. |
Шаг 6. Немного улучшений Итоги. Хотите, чтобы внизу была общая сумма? На вкладке «Настройки» перетащите Количество в раздел «Итоги» — и всё. Отбор. Хотите показывать только товары в наличии? В настройках добавьте «Отбор» → Количество → «Больше» → 0. Готово. Оформление. В свойствах полей можно задать заголовки, формат, цвет. Всё в тех же настройках — просто поиграйтесь. |
Мини-итог Сегодня вы: Узнали, что такое отчёт и зачем он нужен. Познакомились с СКД — системой компоновки данных. Создали набор данных через конструктор запроса. Использовали виртуальную таблицу Остатки. Настроили группировку и получили первый настоящий отчёт.
Это важный рубеж. Теперь у вас есть полный цикл: справочник → документ → регистр → отчёт. Именно так устроена любая 1С-конфигурация. 🎉 |
СКД подробнее: группировки, итоги, параметры В прошлом уроке мы сделали простой отчёт. Он работает, но пока — как велосипед без скоростей: едет, но хочется большего. Сегодня разберём СКД подробнее: научимся делать группировки посложнее, итоги, параметры (чтобы пользователь мог сам выбирать, что показать), и оформление. |
1. Группировки: несколько уровней Сейчас наш отчёт группирует по товару. А что, если мы хотим видеть сначала по складу, потом по товару? Или наоборот? Группировки могут быть вложенными. Представьте, что у нас есть несколько складов. Тогда логично: * Склад «Основной» Чайник — 5 Кружка — 3 * Склад «Резервный» Чайник — 2 Для этого в настройках СКД просто добавьте ещё одну группировку и вложите одну в другую. Перетаскиванием, мышкой. Порядок вложенности = порядок строк. Зачем это нужно? Чтобы видеть данные в разных разрезах. Пользователь может «свернуть» ненужный уровень и смотреть только итоги. Удобно, когда данных много. |
2. Итоги: общие и по группировкам У каждого уровня группировки может быть свой итог. * Внутри группировки «Товар» — итог по этому товару. * Внутри группировки «Склад» — итог по складу. * В самом низу отчёта — общий итог. Включается просто: в настройках перетащите нужное поле в раздел «Итоги» на нужном уровне. Или поставьте галочку «Общие итоги» в свойствах группировки. Кстати, в нашем отчёте про остатки общий итог по количеству — вещь условная: складывать чайники с кружками как-то странно. Но технически это возможно. 😄 |
3. Параметры: даём пользователю рычаги Параметр — это то, что пользователь может задать перед формированием отчёта. Например: «Покажи остатки на конкретную дату» или «Только по выбранному складу». Как добавить параметр: * В СКД перейдите на вкладку «Параметры». * Нажмите «Добавить» — и создайте, например, Период. * Тип — «Стандартный период» или «Дата». Затем в тексте запроса используйте этот параметр: ГДЕ ОстаткиТоваровОстатки.Период = &Период Как это выглядит для пользователя: при открытии отчёта появляется окошко, где нужно выбрать дату. Выбрал — нажал «Сформировать» — получил остатки на эту дату. Особенно полезно для регистров: остатки на начало месяца, на конец, на произвольную дату — всё через параметры. Ещё один полезный параметр — отбор. Можно дать пользователю выбрать конкретный товар из списка и показать только по нему. Это делается через «Параметры» → «Отбор». |
4. Вычисляемые поля и выражения Иногда в отчёте нужно не просто поле из базы, а вычисленное значение. Например: Стоимость = Количество × Цена. Наценка = (Цена продажи − Цена закупки) / Цена закупки × 100.
В СКД это делается через вкладку «Вычисляемые поля»: * Добавляете новое поле, например Стоимость. * Пишете выражение: Количество * Цена. * Используете это поле в настройках как обычное.
Плюс: расчёт делается «на лету» при формировании. Минус: не сохраняется в базе — это только для отображения. |
5. Оформление: чтобы было красиво СКД умеет наводить красоту. Что можно настроить: * Заголовки полей — переименовать «Количество» в «Остаток, шт.» * Формат — например, показывать числа с разделителями (2 500 вместо 2500). * Цвет — например, выделить красным строки, где остаток отрицательный. * Условное оформление — целый раздел, где можно задать правила: «Если остаток < 0, покрасить в красный». Условное оформление — штука мощная. Настраивается на вкладке «Настройки» → «Условное оформление». Можно, например, сделать так, чтобы товары, которых нет в наличии, отображались серым. Или чтобы важные позиции были жирным шрифтом. |
6. Диаграммы: не только таблицы СКД умеет выводить данные не только таблицей, но и диаграммой. Круговая, столбчатая, график — всё есть. Добавляется так: в настройках создаёте новый элемент → «Диаграмма» → выбираете тип → перетаскиваете туда поля для осей и значений. Например, круговая диаграмма «Доля каждого товара в общем остатке». Начальство такое любит. 😄 |
7. Что мы не разобрали (и почему) СКД — большая тема, и за один урок её не объять. Осталось за кадром: Связи наборов данных — когда данных несколько источников. Вложенные схемы — для сложных случаев. Настройки по умолчанию — чтобы отчёт сразу открывался в нужном виде. Расшифровка — когда по двойному клику открывается детализация. Всё это — по мере необходимости. Для новичка главное — понять принцип: «есть данные — есть настройки — есть результат». А остальное придёт с опытом. |
Мини-итог Сегодня вы: Разобрались с многоуровневыми группировками. Поняли, как работают итоги на разных уровнях. Научились добавлять параметры, чтобы пользователь мог настраивать отчёт. Познакомились с вычисляемыми полями и условным оформлением. Узнали, что СКД умеет строить диаграммы. Теперь ваши отчёты — не просто «таблички», а полноценный инструмент. И это, пожалуй, самое востребованное умение в работе 1С-разработчика: 80% задач — это отчёты. Так что вы на правильном пути. 💪 |
Что дальше? Следующие темы, которые логично изучать: Запросы на языке 1С подробнее — СГРУППИРОВАТЬ ПО, СОЕДИНЕНИЕ, ИТОГИ. Обработки — как делать не отчёты, а инструменты (например, «Загрузить товары из файла»). Регламентные задания — чтобы что-то выполнялось по расписанию. Печатные формы — чтобы документ можно было распечатать. Скажете — напишу. А пока — тренируйтесь: добавьте в отчёт параметр «Дата», сделайте условное оформление для отрицательных остатков, попробуйте диаграмму. Чем больше практики, тем крепче навык. До встречи! 👋 |