Использование отборов в скд.  Система компоновки данных - практика разработкиСКД Консоль - изучение Системы Компоновки Данных OnLine Курс по системе компоновки данных скд

Расширение языка запросов для системы компоновки данных

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

Синтаксические элементы расширения языка запросов системы компоновки данных

ВЫБРАТЬ

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

Например:

{ВЫБРАТЬ Номенклатура, Склад}

После псевдонима поля может находиться комбинация символов «.*», что обозначает возможность использования дочерних полей от данного поля.

Например, запись Номенклатура.* обозначает возможность использования дочерних полей поля «Номенклатура» (например, поля «Номенклатура.Код»). Элемент ВЫБРАТЬ может присутствовать только в первом запросе объединения.

ГДЕ

Описываются поля, на которые пользователь сможет накладывать отбор. В данном предложении используются поля таблиц. Использование псевдонимов полей списка выборки недопустимо. Каждая часть объединения может содержать собственный элемент ГДЕ.

{ГДЕ Номенклатура.*, Склад }

Нехитрый пример

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

Для решения задачи можно составить запрос соединяющий левым соединением номенклатуру и таблицу оборотов Продажи, в результате, для номенклатуры, которая не продавалась в выбранном периоде мы получим значения полей Контрагент , Договор , Количество , Сумма = Null. Такой запрос:

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

Вот результат:

Контрагент Договор Номенклатура Количество Сумма
null null _Тест1 null null
ООО "Рога и копыта" Договор1 Тапочки 10 1200
ОАО "Газпром" Клевый договор Сапоги 5 13000
null null Галоши null null
null null Сланцы null null

В данном примере не было продаж номенклатуры: "Галоши" и "Сланцы"

И все бы ничего, если мы сгруппируем выборку по контрагенту то вся не продаваемая номенклатура попадет в отдельную группировку, где Контрагент = Null, но клиент хочет иметь в отчете произвольный отбор по полю контрагент(естественно имеется ввиду контрагент из регистра Продажи). Как быть? Ведь по сути нам нужно фильтровать только таблицу Продажи . Если мы используем автозаполнение в конструкторе СКД, то в доступные поля отбора попадет поле Контрагент , все вроде бы хорошо, но при исполнении отчета с отбором по контрагенту мы потеряем все записи из соединения с номенклатурой. Например, установим отбор: Контрагент = ООО "Рога и копыта" . Результат будет выглядеть так:

Совсем не то что нам нужно, правда?

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

Решение есть: для этого в конструкторе запросов на вкладке Компоновка данных => Таблицы добавим поле-условие в условия виртуальной таблицы ПродажиОбороты и сменим ему псевдоним на КонтрагентОтбор

Для того чтобы не путать пользователя с полями отбора, отключим поле-условие Контрагент и сменим заголовок для поля КонтрагентОтбор


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

ВЫБРАТЬ СпрНоменклатура.Ссылка КАК Номенклатура, ПродажиОбороты.Контрагент КАК Контрагент, ПродажиОбороты.ДоговорКонтрагента КАК ДоговорКонтрагента, ПродажиОбороты.КоличествоОборот КАК >Количество, ПродажиОбороты.СтоимостьОборот КАК Стоимость, ПРЕДСТАВЛЕНИЕССЫЛКИ(ПродажиОбороты.ДоговорКонтрагента) КАК ДоговорКонтрагентаПредставление, ПРЕДСТАВЛЕНИЕССЫЛКИ(ПродажиОбороты.Контрагент) КАК КонтрагентПредставление, СпрНоменклатура.Представление КАК НоменклатураПредставление ИЗ Справочник.Номенклатура КАК СпрНоменклатура ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи.Обороты(&П , , , Контрагент = &П3 ) КАК ПродажиОбороты ПО СпрНоменклатура.Ссылка = ПродажиОбороты.Номенклатура

И соответственно результат:

Контрагент Договор Номенклатура Количество Сумма
null null _Тест1 null null
ООО "Рога и копыта" Договор1 Тапочки 10 1200
null null Сапоги null null
null null Галоши null null
null null Сланцы null null

Тест1 - это группа в справочнике Номенклатура, в которой все лежит

К публикации прикреплена схема XML-схема отчета, использовавшегося в публикации. Схему создавал в Комплексной автоматизации, но думаю, все будет прекрасно работать и в УПП и в УТ 10

Подведение итогов

Данный пример показывает каким образом создать свои настройки отборов в СКД и отключить автосоздаваемые, если вы конструируете схему с включенным флагом Автозаполнение .

Если же вы имеете достаточно опыта, чтобы создавать схемы без использования Автозаполнения - то данный совет не имеет смысла.

Использовавшийся софт

  • Программа создания скриншотов SnimOK!
  • Редактор XML-файлов

Были времена, сидел без работы, разработал курс по СКД, думал преподавать его в онлайн-режмие через инет. Сейчас времени не стало, преподавать его возможности нет. Увидел ваш проект, думаю, вам может это пригодиться

С уважением, Дмитрий Салихов.

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

Что представляет из себя курс?

Курс состоит из методического пособия в формате pdf на 63 листах. Главы пособия оформлены подобно статьям на данном ресурсе. Т.е. теореитеческая часть, подкрепленная скриншотами.
Также к курсу прилагается выгрузка тестовой базы (формат.dt) и внешние отчеты, примеры которых рассмотрены в методическом пособии.

Какие вопросы рассмотрены в курсе?

Как я уже говорил, в курсе рассмотрено все то, что обязан знать программист, использующий СКД. Рассмотрены примеры от простого отчета без программирования, до программной работы с расшифровкой и т.д.

  • Шаг первый. Простой отчет без кодирования;
  • Немного теории. Устройство системы компоновки данных;
  • Шаг второй. Работа с параметрами и отборами;
  • Шаг третий. Работа с различными наборами данных. Внешние наборы данных;
  • Шаг четвертый. Макеты компоновки данных. Создание собственных макетов;
  • Шаг пятый. Использование характеристик. Условное оформление. Вычисляемые поля;
  • Шаг шестой. Расшифровка

Конечным результатом учета в любой программе 1С являются отчеты - средство анализа данных, представления результата деятельности и ее итогов. В платформе версии 8 представлен мощный инструмент разработки отчетов - Система компоновки данных . СКД позволяет легко и быстро подготовить нужный вид выходной формы (печатный документ, графики, сводные таблицы), предоставляя пользователю гибкие настройки, эффективно используя ресурсы системы.

Научиться разработке отчетов можно только в процессе решения практических задач. Именно поэтому специалистами Центра V8 создана программа Практика применения СКД 1С Предприятие 8 , позволяющая консультантам и разработчикам не только познакомиться с технологией создания отчетов, но и получить практический опыт их настройки с нуля.

В основе обучающей программы Практика применения СКД лежит Интерактивная технология :

Создание отчетов (практических задач) прямо в программе 1С;

Система автоматической проверки решений;

Качественные методические материалы;

Техническая поддержка учащихся.

В программе изучения СКД представлено несколько десятков заданий - от создания простого отчета, до формирования многоцелевого инструмента анализа данных. Обучение предусматривает у пользователя базовых знаний по программе использования языка запросов .

Подробное описание изучаемых тем

Практические задания представлены по следующим разделам:

- Создание простых отчетов:

Простой отчет без программного кода
- Формирование списков данных
- Базовые настройки представления отчета

- Основные возможности СКД и конструктора схемы компоновки данных:

Настройка полей отчета
- Расчет итогов ресурсов
- Управление выводом общих итогов
- Вывод данных в кросс-таблицу
- Связь нескольких источников данных
- Объединение нескольких источников данных
- Вычисляемые и пользовательские поля
- Использование параметров в отчете
- Стандартные периоды в параметрах отчета
- Установка предопределенных значений параметров
- Использование группы отборов
- Описание группы отчетов и диаграмм

- Управление представлением отчетов:

Настройка представления и группировки полей
- Расположение полей и группировок
- Условное оформление в отчете
- Настройка макета для областей отчета

- Расширенные возможности СКД:

Вывод нарастающего итога
- Дополнение периода
- Использование периодичности Авто
- Вывод характеристик объектов в отчет
- Сложные вычисляемые поля с выражениями
- Вычисляемое значение сортировки данных
- Вывод расширенных значений полей
- Представление итогов по неделям
- Настройка группы отчетов Вложенные схемы

- Самостоятельная работа (несколько заданий).

В заданиях рассмотрены особенности СКД платформы 1С Предприятие 8.3.

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

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

Начать работу

Выберите вариант работы с программой:

Инструкция по установке программы на Ваш компьютер

1. Установить и настроить учебную версию 1С на Ваш компьютер

Запустите скачанный файл setup.exe
(в случае предупреждения об опасности разрешите запуск файла);

Следуйте инструкциям программы установки.



Важно! Для работы программы требуется подключение к сети Интернет.

3. Запустить обучающую программу и выбрать информационную базу

Запустите программу обучения через ярлык "Обучение сайт" на рабочем столе;
- в списке информационных баз выберите созданную ранее;
- запустите "1С:Предприятие".

Так же Вы можете расширить методическую поддержку бесплатной программы,

Описание

Возможности программы:

Создание отчетов прямо в программе 1С (настройка схем компоновки);
- проверка настроек СКД и выдача сведений об ошибках;
- наличие персональной статистики по решению заданий;
- возможность просмотра общего рейтинга участников;
- техническая поддержка учащихся;
- методические материалы и документация по СКД и платформе 1С Предприятие 8;
- рекомендации по решению прикладных задач создания отчетов;
- доступ к иллюстрированным инструкциям, содержащим описание особенностей настройки отчетов.

Начинающим и продвинутым техническим специалистам, желающим освоить особенности технологии создания отчетов на СКД. Специалистам 1С Предприятие 7.7 продукт поможет быстро адаптироваться в технологиях платформы 1С Предприятие 8.

- Выберите курс - Курс Microsoft Office Excel - 16ч Курс Microsoft Office PowerPoint - 18ч Интенсив-семинар Технология создания финансовых моделей в EXCEL - 8ч Экспресс-семинар Прикладное бюджетирование для начинающих - 8ч Курс Оператор 1С широкого профиля - 26ч Курс Оператор 1С - 16ч Курс 1С Бухгалтерия 8 ред.3.0.Практическое освоение бухучета с самого начала - 80ч Курс 1С Бухгалтерия 8 ред.3.0. Использование конфигурации – 32ч Курс 1С Бухгалтерия государственного учреждения 8 - 24ч Курс Пошаговый переход на новые стандарты бюджетного учета в 1С:Бухгалтерия государственного учреждения 8 - 16ч Семинар 1С Особенности учета НДС в программе 1С: Бухгалтерия предприятия 8 (редакция 3.0) - 8ч Семинар Расчеты с подотчётными лицами: от теории до практики в 1С:Бухгалтерии 8 - 6ч Семинар Учет иностранных сотрудников в 1С:ЗУП 8 - 8ч Семинар Дети в 1С:ЗУП 8 - 8ч Семинар НДС и налог на прибыль 2019 - 7 ч. Семинар Зарплата 2019 - 7 ч. Семинар Финансовый анализ для бухгалтера - 7 ч. Семинар Учет операций ВЭД - 7 ч. Курс 1С Ошибки в учете - найти и обезвредить! - 9ч Курс 1С Простой переход на НДС 20% - 5ч Курс 1С Учет НДС (налог на добавленную стоимость) - 24ч Курс 1С Бухгалтерия 8. Первые шаги – 10ч Курс 1С Зарплата и управление персоналом 8. Первые шаги – 10ч Курс 1С Управление торговлей 8. Первые шаги – 10ч Курс 1С:Предприятие 8 Автоматизация налогового учета - 24ч Курс Теория бухгалтерского учета для начинающих - 24ч Курс 1С Управление торговлей редакция 11.3 - 40ч Курс 1С Управление торговлей 8, ред.11. Углубленное изучение возможностей программы - 32ч Курс 1С Управление Персоналом 8 - 16ч Курс 1С Зарплата и Управление Персоналом 8 ред. 3.1 - 32ч Курс 1С Теория и практика расчета заработной платы в 1С Предприятие 8 - 80ч Курс 1С Зарплата и кадры бюджетного учреждения - 32ч Курс Кадровый учет в 1С:Зарплата и Управление Персоналом 3.0 - 24ч Экспресс-курс Управленческий учет в 1С:Зарплата и управление персоналом КОРП - 6ч Курс 1С Розница 8. Использование конфигурации - 20ч Курс 1С: Комплексная автоматизация 8 – 40ч Курс 1С: Комплексная автоматизация 8. Торговые операции – 24ч Курс 1С: Комплексная автоматизация 8. Регламентированный учет – 32ч Курс Оперативное управление в малом бизнесе с использованием программы 1С Управление нашей фирмой 8, ред.1.4 - 24ч Курс 1С: Документооборот 8 – 16ч Курс 1С УПП 8.(ред.1.3)Концепция и торговый функционал - 24ч Курс 1С УПП 8.(ред.1.3)Планирование и Бюджетирование - 16ч Курс 1С УПП 8.(ред. 1.3) Регламентированный учет, Кадры, Зарплата - 24ч Курс 1С УПП 8.(ред. 1.3)Производственный учет - 16ч Курс Концепция прикладного решения 1С:ERP Управление предприятием 2 - 24ч Курс Управление производством и ремонтами в прикладном решении 1С:ERP Управление предприятием 2 - 32ч Курс Управленческий учет затрат, финансовый результат в прикладном решении 1С:ERP Управление предприятием 2 - 24ч Курс Концепция прикладного решения 1С:ERP Управление предприятием 2 - 24ч Курс Контент-менеджер 1С-Битрикс: Управление сайтом. Базовый курс – 16ч Курс Администратор 1С-Битрикс: Управление сайтом" и "1С-Битрикс24: Корпоративный портал" - 16ч Курс Разработчик 1С-Битрикс: Управление сайтом" и "1С-Битрикс24: Корпоративный портал" - 16ч Курс Разработчик 1С-Битрикс: Управление сайтом" и "1С-Битрикс24: Корпоративный портал. Уровень 2" - 16ч Курс 1С Предприятие. Введение в конфигурирование - 24ч Курс Азы программирования в системе 1С:Предприятие 8.3 - 24ч Курс Средства интеграции и обмена данными в системе 1С Предприятие 8 - 24ч Курс Использование языка запросов в системе 1С Предприятие 8.3 - 24ч Курс 1С Система компоновки данных – составление отчетов в системе "1С:Предприятие 8" – 24ч Курс Администрирование системы 1С:Предприятие 8 - 32ч Курс 1С Ведение учета при применении упрощенной системы налогообложения в 1С:Бухгалтерия 8 – 24ч Курс 1С:Предприятие 8. Решение оперативных задач – 16ч Курс 1С Конфигурирование в системе 1С:Предприятие 8.3 Решение бухгалтерских задач - 24ч Курс 1С Конфигурирование в системе 1С:Предприятие 8. Решение расчетных задач - 20ч Курс Основы графического дизайна в Adobe Photoshop для начинающих – 16ч Курс Практическое применение БИТ.ФИНАНС в части подсистем Казначейство и Бюджетирование - 32ч Курс Практические настройки механизма трансляции В БИТ.ФИНАНС - 16ч Курс ЦСО «Практика применения программы «1С:Бухгалтерия 8» на производственных предприятиях - 16 ак. ч. Курс ЦСО Практика применения программы «1С:Бухгалтерия 8» в торговле - 16ч Курс ЦСО Практика применения программы «1С:Бухгалтерия 8» в сфере услуг - 16ч Курс Практическое применение БИТ.ФИНАНС в части подсистем МСФО и Консолидация - 24ч Курс Практическое применение БИТ.ФИНАНС в части подсистемы Управление договорами - 16ч Курс БИТ.СТРОИТЕЛЬСТВО модуль Подрядчик - 16ч Курс БИТ.СТРОИТЕЛЬСТВО.Зарплата - 4ч Курс БИТ.СТРОИТЕЛЬСТВО модуль «Снабжение и склад» - 16ч Курс Быстрый старт в программе «БИТ.ЖКХ 8» - 8ч Курс Льготы и перерасчеты в программе «БИТ.ЖКХ 8» - 8ч Курс Интеграция БИТ.ЖКХ и «1С:Бухгалтерии Проф» - 8ч Семинар 1С: Управление торговлей 8 ред.11.3 для сотрудников склада и операторов 1С - 8ч Семинар 1С: Управление торговлей 8 ред.11.3 для сотрудников склада и операторов 1С - 8ч Семинар 1С: Управление торговлей 8 ред.11.3 для сотрудников склада и операторов 1С - 8ч Семинар 1С Ведение налогового учета и отражение ПБУ 18/02 в программе 1С:Бухгалтерия 8 - 5ч Семинар Особенности учета НДС в программе 1С Бухгалтерия предприятия 8 (редакция 3.0) - 10ч Семинар Расширенный учет основных средств в программе 1С Бухгалтерия 8 редакция 3.0 - 6ч Семинар УПП для бухгалтера - 6ч Курс 1С:Зарплата и управление персоналом. Переход c 2.5 на версию 3.1 Школа программирования для детей Учебная литература по 1С Участие в акции затрудняюсь ответить/другой курс

Система компоновки данных (СКД) — мощный механизм платформы 1С (8.2 и новее) для разработки отчетов, а вовсе не система контроля доступа.

Для чего была придумана «система компоновки данных»? Система была придумана для того, чтобы декларативно создавать отчеты. Отчет создается без необходимости писать программный код. С помощью определенного конструктора и настроек, произведенных в нем, программист задает желаемый результат, система компоновки данных это понимает и выводит этот результат пользователю. Если потребовалось что-то изменить в отчете, достаточно вновь обратиться к конструктору, внести необходимые изменения, и измененный отчет готов.

Видеоурок по созданию отчета «Журнал документов» в 1С СКД:

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

Получите 267 видеоуроков по 1С бесплатно:

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

Несмотря на то, что СКД в 1С 8.3 может создаваться интерактивно с помощью соответствующего конструктора, можно и программным образом выполнить те же самые действия. Можно пойти с самого начала. Программными средствами создать схему компоновки данных, выполнить все необходимые настройки, создать настройку варианта отчета, скомпоновать отчет и вывести его на экран пользователю. Это более трудоемкая задача, но все же выполнимая.

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

Основа управляемого интерфейса 1С — СКД

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

Как освоить и научиться делать отчеты на СКД?