Целевая аудитория обработки - программисты и продвинутые пользователи, занимающиеся анализом данных. Обработка предназначена:
Обработка состоит из трех основных форм-форм редакторов:
Все три формы тесно интегрированы друг с другом, могут использоваться как вместе так и независимо. При этом реализована концепция «выборки всего из всего» - например результат исполнения запроса и схемы компоновки данных можно скомпоновать в одном или нескольких объектах, получить некую сводную информацию, которую использовать в новом запросе и т.д.
Термин «объекты» взят по аналогии с названием внешнего источника данных в схеме компоновки данных. Но кроме получения набора данных, объект - это просто некий произвольный фрагмент исполняемого кода.
Эта форма представляет собой один из вариантов реализации консоли запросов, предназначение которой - написание запроса, его исполнение и анализ полученных данных.
Внешний вид формы запросов
Но в отличие от стандартной и многих других обработок добавлены некие интерфейсные возможности, повышающие удобство работы:
В тексте запроса доступны три варианта алиасов:
Зачем все это? Предположим на закладке результата у вас данные запроса, который выполняется 10 минут или более.
Предположим возникла необходимость сгруппировать данные по каким-либо полям. Чтоб это сделать вам нужно немного подправить текст запроса, но потом еще ожидать 10 или более минут пока он выполнится. Чтобы избежать ненужного ожидания вы можете на новой вкладке обратиться к полученным результатам как к временной таблице. Для этого вкладке, содержащей результат, необходимо присвоить алиас.
Другая ситация - у вас на двух разных вкладках есть запросы, которые необходимо объединить в новый запрос. Обычно вы копировали текст одного запроса, объединяли с текстом другого. Потом заново настраивали параметы. Присвоив алиасы обоим запросам, можно значительно ускорить описанные выше действия - особенно это актуально когда параметров много или они содержат большие списки значений.
Итак, у формы запросов есть три вида алиасов: #Алиас, #Алиас_Текст, #Алиас_Результат (вместо слова "Алиас" вы присваиваете любой идентификатор в свойствах вкладки). Их отличия в следующем:
Для примера создадим новый запрос:
ВЫБРАТЬ * ИЗ Справочник.Валюты
Установим запросу алиас «ВыборкаВалют». Создадим новый запрос, в котором напишем:
ВЫБРАТЬ * ИЗ #ВыборкаВалют
При его выполнении на самом деле будет исполнен следующий текст:
ВЫБРАТЬ * ПОМЕСТИТЬ
CлучайноеИмяВременнойТаблицы ИЗ
Справочник.Валюты ;
ВЫБРАТЬ * ИЗ
CлучайноеИмяВременнойТаблицы ;
УНИЧТОЖИТЬ
CлучайноеИмяВременнойТаблицы
При записи
ВЫБРАТЬ * ИЗ (#ВыборкаВалют_Текст) КАК ВыбратьВалюту
Будет исполнен запрос (обратите внимание, что в этом случае #Алиас_текст берется в скобки ):
ВЫБРАТЬ * ИЗ (ВЫБРАТЬ * ИЗ Справочник.Валюты) КАК ВыбратьВалюту
Кроме того возможно связать запрос и объект через параметр запроса. Для этого надо в тексте запроса поместить внешнюю таблицу - параметр во временную таблицу:
ВЫБРАТЬ * ПОМЕСТИТЬ ВременнаяТаблица ИЗ &Объект КАК Объект
На закладке параметров надо у параметра «Объект» установить флажок «Выражение» и вписать в значение параметра алиас объекта в виде #АлиасОбъекта (возможна запись #АлиасОбъекта_ТаблицаЗначений). Объект должен возвращать в результате таблицу значений.
Переключение на форму СКД осуществляется с помощью кнопки «Схемы компоновки данных» на панели формы запросов и объектов.
Использование схем компоновки данных предполагает наличие базовых знаний по этому вопросу.
В левой части находится список редактируемых схем с подчиненными наборами данных, в правой части - стандартные настройки компоновщика настроек текущей схемы компоновки данных.
Внешний вид формы запросов
Отличительные особенности редактора СКД следующие:
Форма объектов предназначена для:
Интерфейсно форма объектов схожа с формой запросов - каждый объект или фрагмент кода редактируется на новой закладке. Но имеется ряд существенных отличий. При написании кода можно пользоваться параметрами. Они обозначаются также как и в тексте запроса - значком «&». Смысл их в том, чтобы не писать код для вычисления этих параметров, а просто выбрать на форме на закладке «параметры».
Например, нам необходимо выбрать все элементы справочника номенклатуры, подчиненные группе «Стулья офисные». На закладке кода можно написать:
Выборка = Справочники. Номенклатура. Выбрать (&Стулья );
Пока Выборка. Следующий() Цикл
……
КонецЦикла;
На закладке параметров появится параметр «Стулья», значение которого надо будет выбрать интерактивно.
Кроме того у объектов имеются еще две закладки - Таблица значений и Табличное поле. Они могут являться как источниками данных фрагмента кода, так его приемниками. Для наглядности после выполнения фрагмента кода можно переключаться либо на таблицу значений, либо на табличное поле (переключатель в верхней части закладки кода).
Можно заполнить таблицу значений вручную (в действиях с колонками имеется редактор колонок), либо перенести данные из табличного поля, в которое они предварительно загружены, например, из файла и т.д.
Доступ к таблице значений и табличному полю возможен через алиасы #ТаблицаЗначений и #ТабличноеПоле соответственно. Можно обратиться к таблице значений/табличному полю другого объекта (#АлиасДругогоОбъекта_ТаблицаЗначений, #АлиасДругогоОбъекта_ТабличноеПоле).
Фрагмент кода на закладке кода выполняется в контексте функции, которая возвращает значение в переменной Результат.
ВНИМАНИЕ! Если вы используете объект качестве источника данных для СКД, то в его коде обязательно должно присутствовать присвоение возвращаемого набора данных переменной Результат.
Например, если таблица значений заполнена данными:
Результат = # ТаблицаЗначений;
У такого объекта должен быть обязательно установлен алиас - в СКД это будет имя объекта, содержащего данные. Если объект возвращает в переменной Результат некое значение, то его алиас можно использовать в коде другого объекта. Так как во фрагменте кода нельзя использовать выражение «возврат » вместо него можно воспользоваться алиасом #выход. Таблица значений и Табличное поле по умолчанию не сохраняются после закрытия формы. Чтобы их сохранить, надо включить флажок «Сохранять на диске»
Часто возникает необходимость отладки запроса, построителя отчета/запроса, схемы компоновки данных с уже заполненными на какой-то момент параметрами и настройками. Или если текст запроса создается динамически. Для этого необходимо в один из глобальных модулей поместить следующий код:
Функция ОтладкаККД(Объект, НастройкиСКД = Неопределено , ВнешниеДанные = Неопределено ) Экспорт //Если задействовано дополнительное меню Форма = ПолучитьФормуЗарегистрированнойВнешнейОбработки(" Консоль компоновки данных " , , " ФормаНастройки " ) ; //Если не задействовано дополнительное меню //Форма = ВнешниеОбработки.ПолучитьФорму(" -Путь к обработке консоли- КонсольКомпоновкиДанных.epf","ФормаНастройки"); Если Форма = Неопределено Тогда Возврат Ложь; КонецЕсли ; Форма. ОбъектДляОтладки = Объект; Форма. НастройкиСКДДляОтладки = НастройкиСКД; Форма. ВнешниеДанные = ВнешниеДанные; Форма. Открыть() ; Возврат Истина; КонецФункции
И далее в конфигураторе перед выполнением отлаживаемого запроса (СКД, построителя отчета) устанавливаем точку останова. В момент ее срабатывания пишем в редакторе выражений (Shift-F9): ОтладкаККД(Запрос) и нажимаем "Рассчитать". После продолжения отладки (F5) в базе откроется одна из форм консоли компоновки данных с данными (текст, отборы, настройки) выбранного объекта отладки. Кроме этого, можно разместить вызов отладки консоли в любой форме, где она требуется. Для СКД при необходимости можно в параметрах вызываемой функции указать используемые настройки и внешние данные
Для использования этой возможности в конфигурации должны присутствовать объекты метаданных, необходимые для организации дополнительного меню . Также во внешние формы дополнительного меню должна быть подгружен внешний отчет Универсальная форма СКД.erf . При выборе такого пункта меню схема компоновки данных передается универсальной форме СКД вместе со списком объектов для получения внешних данных (если они есть). Потом эта форма открывается у пользователя для выполнения.
Кроме того если есть метаданные, необходимые для работы дополнительного меню, становится доступными обмен элементами консоли компоновки данных в рамках одной базы. Т.е. пользователь А может выбрать пункт меню над списком элементов Файл/передача -> Передать запрос (объект / СКД), выбрать пользователя Б. Пользователь Б, открыв консоль в этой же базе, выбирает пункт Файл/передача -> Получить запрос(объект / СКД). И переданный элемент СКД окажется у него в консоли компоновки со всеми настройками.
Можно ограничить возможности пользователей для работы в консоли, если у них нет достаточной квалификации, но требуются какие-то особые выборки данных. Для этого нужно создать "Категорию метанастроек" с ИД = "ОграниченияКонсолиКомпоновкиДанных", в табличной части которой будут пользователи из справочника пользователей (в поле объект). Если пользователь есть в таблице настройки, ему запрещено редактирование кода (разрешен только просмотр), если при этом показатель в этой строке = 0 тогда запрещено и редактирование запросов. Если показатель больше 0 - редактирование СКД.
Саму внешнюю обработку,а также видеоурок для лучшего понимания возможностей консоли, можно
На данный момент, пожалуй лучшая консоль СКД и не только. Огромнейший функционал. Автором проделана просто невероятная работа! Позволяет в режиме предприятия создать отчет на СКД и экспортировать его во внешний отчет с выбором шаблона.
Из функций:
1. Работает в любой конфигурации
2. Возможность создания произвольной иерархии с удобным переносом элементов
3. Расширенное редактирование параметров (периоды, насл. параметры)
4. Выполнение в фоне (без модификации конфигурации)
5. Сравнение текстов запросов и результатов запроса
6. СКД
Гибкость удобство и настраиваемость. Код открыт.
Регистрация пожеланий и исправление ошибок через http://www.1cpp.ru/bugs/ проект Консоль запросов для 1С 8.1 (желательно)
Конечным результатом учета в любой программе 1С являются отчеты - средство анализа данных, представления результата деятельности и ее итогов. В платформе версии 8 представлен мощный инструмент разработки отчетов - Система компоновки данных . СКД позволяет легко и быстро подготовить нужный вид выходной формы (печатный документ, графики, сводные таблицы), предоставляя пользователю гибкие настройки, эффективно используя ресурсы системы.
Научиться разработке отчетов можно только в процессе решения практических задач. Именно поэтому специалистами Центра V8 создана программа Практика применения СКД 1С Предприятие 8 , позволяющая консультантам и разработчикам не только познакомиться с технологией создания отчетов, но и получить практический опыт их настройки с нуля.
В основе обучающей программы Практика применения СКД лежит Интерактивная технология :
Создание отчетов (практических задач) прямо в программе 1С;
Система автоматической проверки решений;
Качественные методические материалы;
Техническая поддержка учащихся.
В программе изучения СКД представлено несколько десятков заданий - от создания простого отчета, до формирования многоцелевого инструмента анализа данных. Обучение предусматривает у пользователя базовых знаний по программе использования языка запросов .
Практические задания представлены по следующим разделам:
- Создание простых отчетов:
Простой отчет без программного кода
- Формирование списков данных
- Базовые настройки представления отчета
- Основные возможности СКД и конструктора схемы компоновки данных:
Настройка полей отчета
- Расчет итогов ресурсов
- Управление выводом общих итогов
- Вывод данных в кросс-таблицу
- Связь нескольких источников данных
- Объединение нескольких источников данных
- Вычисляемые и пользовательские поля
- Использование параметров в отчете
- Стандартные периоды в параметрах отчета
- Установка предопределенных значений параметров
- Использование группы отборов
- Описание группы отчетов и диаграмм
- Управление представлением отчетов:
Настройка представления и группировки полей
- Расположение полей и группировок
- Условное оформление в отчете
- Настройка макета для областей отчета
- Расширенные возможности СКД:
Вывод нарастающего итога
- Дополнение периода
- Использование периодичности Авто
- Вывод характеристик объектов в отчет
- Сложные вычисляемые поля с выражениями
- Вычисляемое значение сортировки данных
- Вывод расширенных значений полей
- Представление итогов по неделям
- Настройка группы отчетов Вложенные схемы
- Самостоятельная работа (несколько заданий).
В заданиях рассмотрены особенности СКД платформы 1С Предприятие 8.3.
Программа изучения СКД сертифицирована фирмой 1С и рекомендована не только для самостоятельной подготовки технических специалистов, но и для организации учебного процесса в рамках ЦСО, АУЦ, учебных центров и т.д.
Наличие прав на использование платформы не является обязательным.
Выберите вариант работы с программой:
1. Установить и настроить учебную версию 1С на Ваш компьютер
Запустите скачанный файл setup.exe
(в случае предупреждения об опасности разрешите запуск файла);
Следуйте инструкциям программы установки.
Важно! Для работы программы требуется подключение к сети Интернет.
3. Запустить обучающую программу и выбрать информационную базу
Запустите программу обучения через ярлык "Обучение сайт" на рабочем столе;
- в списке информационных баз выберите созданную ранее;
- запустите "1С:Предприятие".
Так же Вы можете расширить методическую поддержку бесплатной программы,
Возможности программы:
Создание отчетов прямо в программе 1С (настройка схем компоновки);
- проверка настроек СКД и выдача сведений об ошибках;
- наличие персональной статистики по решению заданий;
- возможность просмотра общего рейтинга участников;
- техническая поддержка учащихся;
- методические материалы и документация по СКД и платформе 1С Предприятие 8;
- рекомендации по решению прикладных задач создания отчетов;
- доступ к иллюстрированным инструкциям, содержащим описание особенностей настройки отчетов.
Начинающим и продвинутым техническим специалистам, желающим освоить особенности технологии создания отчетов на СКД. Специалистам 1С Предприятие 7.7 продукт поможет быстро адаптироваться в технологиях платформы 1С Предприятие 8.