1с конструктор запросов закладка группировка отсутствует
Конструктор запроса 1С - это один из инструментов разработки, который позволяет:
- составить текст запроса на языке запросов исключительно визуальными средствами;
- отредактировать текст имеющегося запроса.
Программный код обычный конструктор не создает.
Конструктор запроса с обработкой результата - это один из инструментов разработки, который позволяет:
- сформировать текст нового запроса;
- сформировать программный код, содержащий создание объекта встроенного языка "Запрос", текста запроса, получение и обработку результата выполнения запроса (фрагмент программного кода, который исполняет запрос и выводит его результаты в табличный документ или диаграмму - отсюда );
- отредактировать текст имеющегося запроса.
Конструктор запросов может использоваться:
- разработчиком - в конфигураторе (необходимо знание языка запросов);
- пользователем - в режиме 1С:Предприятие (как обработка "Консоль запросов").
Использование в режиме 1С:Предприятие позволяет квалифицированным пользователям самостоятельно получать выборки данных, для которых нет типовых отчетов.
Вызов конструктора текста запроса 1С:
- контекстным меню (правой кнопкой мыши) в нужном месте программного кода;
- с помощью команды "Конструктор запроса. " меню "Текст".
Результатом работы конструктора будет являться синтаксически правильный текст запроса.
Таким образом, разработчик может составить работоспособный запрос, даже не владея синтаксисом языка запросов - необходимые синтаксические конструкции конструктор сгенерирует автоматически. Готовый текст запроса может быть сразу же вставлен в текст модуля или скопирован в буфер обмена.
Кроме этого конструктор запросов позволяет редактировать уже имеющийся в программе текст запроса. Для этого достаточно установить курсор внутри существующего текста запроса и вызвать конструктор. Имеющийся текст запроса будет проанализирован и представлен в конструкторе в виде соответствующих выбранных полей базы данных и набора заданных связей, группировок, условий и т.д.
Текст запроса может содержать описание предопределенных данных конфигурации:
- значения системных перечислений (из определенного перечня);
- предопределенных данных (справочники, перечисления, планы видов характеристик, планов счетов, планов видов расчета);
- пустые ссылки;
- значения точек маршрута бизнес процессов.
Вкладки конструктора запроса 1С
На этой вкладке указывается источник данных и поля, которые необходимо выводить в отчет (по сути описываются конструкции ВЫБРАТЬ … ИЗ).
В качестве источников данных могут служить:
- физическая таблица базы данных;
- виртуальная таблица регистров; ;
- вложенные запросы и т.д.
В контекстном меню виртуальных таблиц можно задать параметры этих таблиц.
На закладке "Таблицы и поля" конструктора запросов задают:
- источники данных запросов, в качестве которых могут выступать реальные и виртуальные таблицы;
- набор полей из таблиц - источников данных запроса;
- поля в виде произвольного выражения.
Закладка "Связи" становится доступна сразу после добавления двух таблиц.
На закладке "Связи" конструктора запросов можно определить соединение таблиц-источников данных и связи между ними.
Язык запросов предоставляет широкие возможности по построчному соединению нескольких таблиц.
Соединение таблиц может быть:
- безусловным ;
- условным (или по ключу ), то есть по заданному условию связи:
- полным - все записи обеих таблиц; для тех, которым не нашлось соответствия, запрос возвращает NULL;
- левым/правым - все записи из соответственно левой/правой таблицы (из противоположной только те, которым есть соответствие), для не найденных запрос возвращает NULL. Примечание : консоль запросов всегда преобразует правое соединение в левое, меняя таблицы местами (в случае, если запрос написать вручную, и потом открыть конструктором);
- внутренним - только совпадающие записи обеих таблиц.
В случае безусловного соединения, в конструкторе запросов достаточно определить выбираемые таблицы, не указывая, по каким полям они будут связаны (то есть не заполняя закладку Связи).
На практике чаще встречаются задачи соединения по определенному полю двух таблиц.
В конструкторе запросов тип условного соединения регулируется флажком "Все" - где он стоит, из той таблицы и выбираются все записи.
Флажок "Все", устанавливаемый у таблицы, выбранной на закладке "Связи" конструктора запросов означает что в результат запроса надо включить все записи этой таблицы.
При соединении таблиц-источников данных в конструкторе запросов можно назначить необходимое количество соединений с указанием необходимого количества условий связи, причем эти условия могут быть как простые, так и произвольные.
На данной вкладке система позволяет группировать и суммировать нужные поля результата таблицы. Описывается использование конструкций СГРУППИРОВАТЬ ПО, СУММА, МИНИМУМ, СРЕДНЕЕ, МАКСИМУМ, КОЛИЧЕСТВО, КОЛИЧЕСТВО РАЗЛИЧНЫХ.
При описании группировки в тексте запроса все поля должны делиться:
- на те, по которым производится группировка;
- на агрегатные функции (рассчитываемые поля);
- на поля вложенных таблиц.
Вложенные таблицы не попадают ни в группируемые, ни в агрегируемые поля.
Количество записей в результате запроса можно узнать с помощью агрегатной функции КОЛИЧЕСТВО(*).
Отвечает за все условия, накладываемые на получаемые данные, т.е. за всё, что идёт в тексте запроса после конструкции ГДЕ.
Вкладка "Дополнительно" включает важные параметры.
Группировка "Выборка записей":
- Первые — параметр, возвращающий в запрос только N записей (оператор ПЕРВЫЕ ); позволяет вывести в отчет первые N записей, которые будут отобраны с учетом правил упорядочивания, настроенных в конструкторе запросов;
- Без повторяющихся — обеспечивает уникальность полученных записей (оператор РАЗЛИЧНЫЕ) и позволяет исключить из результирующей таблицы запроса одинаковые строки (данная операция распространяется только на детальные записи );
- Разрешенные — позволяет выбирать только те записи, которые позволяет выбрать система с учетом настройки RLS (конструкция РАЗРЕШЕННЫЕ).
Группировка "Тип запроса":
- определяет тип запроса:
- Выборка данных;
- Создание временной таблицы;
- Уничтожение временной таблицы.
Флаг "Блокировать получаемые данные для последующего изменения":
- позволяет включить возможность установки блокировки данных, которая обеспечивает сохранность данных от момента их чтения до изменения (актуально только для "Автоматического режима блокировок", конструкция ДЛЯ ИЗМЕНЕНИЯ); позволяет заблокировать данные указанных таблиц-источников на чтение (в рамках транзакции).
- в режиме автоматических транзакционных блокировок) происходят блокировки:
- в варианте файл-сервер - на уровне таблиц базы данных;
- в варианте клиент-сервер - на уровне записей таблиц базы данных.
- Если список "Таблицы для изменения" - пуст, то будут блокироваться данные всех таблиц, задействованных в запросе, иначе - только таблиц, указанных в списке.
Конструктор запросов 1с позволяет создавать объединения запросов. При их помощи можно последовательно выводить в результат данные, полученные из нескольких запросов, не используя при этом связи. Единственной условие для объединения — одинаковый набор полей в каждом отдельном запросе.
На этой закладке устанавливается возможность объединения разных таблиц и псевдонимы (конструкция КАК).
В левой части указываются таблицы, если установить флаги напротив таблицы, будут использоваться конструкции ОБЪЕДИНИТЬ, иначе — ОБЪЕДИНИТЬ ВСЕ (отличия двух способов тут ).
В правой части указываются соответствия полей в разных таблицах, если соответствие не указано, запрос будет возвращать NULL.
Особенности использования закладки "Объединения/Псевдонимы" конструктора запросов:
- На закладке "Объединения/Псевдонимы" конструктора запросов можно:
- Задать список запросов (в результирующую выборку попадут записи всех указанных запросов).
- Задать имена полей результирующей таблицы.
- При создании запросов, участвующих в объединении , с помощью конструктора запросов, он сам добавит в каждый запрос необходимое количество недостающих полей со значением NULL. Настроить соответствие добавленных конструктором полей и полей результата запроса можно на закладке "Объединения/Псевдонимы".
- Настройки, сделанные в разделе "Объединения/Псевдонимы" конструктора запросов, отразятся на информации, отображаемой в других разделах конструктора, следующим образом:
- Если заданы псевдонимы полей результирующей таблицы, то новые названия появляются на закладке "Порядок" в списке полей.
- При объединении запросов на ряде закладок (в том числе "Таблицы и поля") появляется возможность переключения между объединяемыми запросами.
- При объединении двух запросов на закладке "Объединения/Псевдонимы" конструктора запросов условие связи между запросами задать нельзя: в случае объединения связь всегда безусловна.
Используя конструктор запроса, повлиять на порядок записей в результирующей таблице запроса можно:
- на закладке "Порядок";
- на закладке "Объединения/Псевдонимы".
Таблица, полученная в результате запроса, может быть отсортирована по алфавиту по нужному полю:
- по полю, присутствующему в запросе;
- по любому полю таблицы-источника (кроме случаев объединенных запросов).
Помимо указания порядка для конкретного поля, можно воспользоваться опцией "Автоупорядочивание", которая отсортирует список по основному представлению объекта.
Указывается порядок сортировки значений (УПОРЯДОЧИТЬ ПО) — по убыванию (УБЫВ) или возрастанию (ВОЗР).
Флаг "Автоупорядочивание" (в запросе — АВТОУПОРЯДОЧИВАНИЕ):
- если установлен, то система будет сортировать данные (по умолчанию система 1С 8.3 выводит данные в «хаотичном» порядке).
Если на закладке "Порядок" конструктора запросов не заданы настройки, то установка флага "Автозаполнение" обусловит следующее:
- записи в результирующей таблице запроса будут упорядочены по полям сортировки по умолчанию для таблиц-источников данных;
- если заданы настройки на станицах "Группировка" или "Итоги", то порядок записей в результирующей таблице запроса будет определяться этими настройками.
В случае установки флага "Автоупорядочивание" на закладке "Порядок" конструктора запросов записи в результирующей таблице запроса (если эта таблица уже упорядочена по полю, хранящему ссылку на иерархический справочник) будут упорядочены по значению основного представления для этого поля. Т.е. если справочник отсортирован по ссылке (= наименованию), но основное его представление - код, то после включения автоупорядочивания сортировка изменится на сортировку по коду.
В зависимости от иерархии справочника, можно выводить итоги связанных таблиц по иерархии. Для этого предназначена закладка "Итоги" конструктора запросов:
В ней указывается:
- Поле, по которому группируем, и тип его итогов:
- Элементы - итоги только по конечным элементам;
- Элементы и иерархия - итоги по папкам и по конечным элементам;
- Только иерахия - итоги только по папкам.
- Флаг "Общие итоги" - суммирование всех полученных запросом строк;
- Итоговое поле - по которому собственно и считаем итоги.
Таким образом, при использовании секции "ИТОГИ . ПО" количество записей в результате запроса увеличится (по сравнению с их количеством без секции "ИТОГИ . ПО").
Результатом запроса с итогами будет дерево значений:
На этой вкладке можно создавать новые пакеты запросов, а также использовать её для навигации.
В тексте запроса пакеты разделяются символом «;» (точка с запятой).
Особенности использования конструктора запросов 1С
- При сохранении текста запроса, открытого повторно с помощью конструктора запроса, без внесения в этот текст изменений, из первоначального текста будут удалены только комментарии.
- Для создания в конструкторе запросов вложенного запроса необходимо:
- открыть закладку "Таблицы и поля";
- в командной панели над деревом "Таблицы" нажать кнопку "Добавить" или выбрать одноименный пункт контекстного меню.
- открыть закладку "Таблицы и поля";
- в командной панели над деревом " Поля " нажать кнопку "Добавить" или выбрать одноименный пункт контекстного меню.
Укажем в конструкторе одно суммируемое поле:По остальным полям будет произведена группировка в тексте запроса:
При использовании в качестве источника данных для запроса внешнего источника (данные которого передаются через параметр) в качестве такого источника может использоваться:
Конструктор запроса состоит из следующих закладок:
1. «Таблицы и поля» - на закладке три иерархических списка:
a. «База данных» - перечислены все доступные объекта, к которым можно сделать за-прос. Также кнопка «Отображать таблицы изменений» , с помощью которой можно получить доступ к таблицам изменений объектов ИБ, если они регистрируются для какого либо плана обмена.
b. «Таблицы» - список выбранных таблиц, к которым будет выполнен запрос. Также в этом окне можно удалить таблицу, переименовать или заменить таблицу, а также добавить внутренний запрос.Для виртуальных таблиц можно назначать параметры, нажав на кнопку «Параметры виртуальных таблиц»:
Рекомендуется активно использовать параметры виртуальных таблиц для отборов по тем или иным измерениям, поскольку при этом увеличивается скорость выполнения запроса. В параметрах можно использовать внешние переменные, название которых предваряется знаком «&».
c. «Поля» - список полей, которые выбираются из таблиц. Также можно добавить вычисляемые поля, для этого при нажатии кнопки «Добавить» открывается конструктор произвольного выражения:Слева окно с доступными в выражении полями. Справа подсказку используемых функций. Внизу конструируемое произвольное выражение. В выражениях можно использовать внешние параметры, для их обозначения используется знак «&», например: &Период, &ДатаНач
Нужно быть внимательным, если в окне будет набрано длинное и сложное выра-жение, в котором будет небольшая синтаксическая ошибка, то после нажатия кноп-ки «ОК» система выдаст предупреждение и закроет окно. Весь набранный код бу-дет потерян, поэтому рекомендую, если нет уверены в правильности выражения, то перед закрытием конструктора всегда сохраняйте содержимое в буфер обмена (Ctrl-C).2. «Связи» - на закладке указываются связи между таблицами.
В таблице указываются связываемые таблицы, отношение между связываемыми таблицами и усло-вие связи. Если условие связи сложно, то можно указать некое вычисляемое выражение, при этом откроется конструктор произвольного поля.3. «Группировка» - на закладке указываются, какие поля группируются, а какие агрегируются (суммируются).
4. Закладка «Условия» - перечисляются условия которые накладываются на запрос.
В условиях тоже можно писать сложные выражения с помощью конструктора простых выражения и ис-пользованием внешних переменных:
5. «Дополнительно»
Дополнительные параметры, накладываемые на запрос
6. «Объединения и псевдонимы»
На этой закладке можно назначать псевдонимы для полей , а также управлять запросами которые соединяется через конструкции «ОБЪЕДИНИТЬ» или «ОБЪЕДИНИТЬ ВСЕ»
7. «Порядок»
В каком порядке будут выводиться получаться результаты запроса
Внимание! В низу закладки можно видеть галочку «Автоупорядочивание» - в текущей версии 1С 8.1 в СКД она бесполезна, более того при установленной галочке при записи СКД выдает ошибку, так что ею пользоваться не стоит.8. «Компоновка данных»
Закладка, в которой определятся служебные поля для СКД. Играет примерно такую же роль, что и закладка «Построитель отчета» в обычном конструкторе отчетов.
a. На закладке «Таблицы» - перечислены таблицы, используемые в запросе, можно указать обязательность включения таблицы в запрос, галочкой «Обязательная». Т.е. если никакие поля в выборку не попадают, то данная таблица в запросе вообще не участвует. Также можно указать параметры для таблиц.
В процессе настройки СКД, мы задаем, какие либо отборы, то все значения отборов будут подставлены в параметры виртуальных таблиц, что снова нам поможет оптимизировать и ускорить запрос.
b. На закладке «Поля» - перечислены поля и их псевдонимы, которые будут добавляться в список полей СКД.
c. «Условия» - в случае указания отборов в настройках СКД, все значения отборов будут добавляться как дополнительные условия, в условия можно также добавлять сложные выражения.9. «Характеристики»
Закладка, не имеющая аналога в обычном конструкторе выходной фор-мы.
Даная закладка обеспечивает расширение работы запросов с характеристиками. Таблица на закладке состоит из нескольких полей:
a. «Тип значения» - тип для которого будут выбираться характеристики. Например если указать «СправочникСсылка.Номенклатура», то в запросе будут выбираться все характеристики для номенклатуры.
b. «Источник» - источник для свойств видов характеристик, может быть запрос или таблица. В данном поле мы можем написать запрос выборки только тех свойств, которые нам нужны.
c. «Список характеристик» - поле в котором указывается источник для свойств характери-стик. Чаще всего это план видов характеристик или запрос. Также нужно указать поля, которые отвечают за «Идентификатор», «Имя» и «Тип» свойства.
d. «Источник» - следующее поле, в котором указываем источник значений характеристик, тоже может быть или таблица или запрос.
e. «Значение характеристик» - таблица или запрос, которые получает значения характери-стик. Например, таблицей значений характеристик может служить регистр сведений «ЗначенияСвойствОбъектов». Мы также должны указать те поля из таблицы (или запро-са), что отвечают за «Объект», «Свойство» и «Значение» характеристики.
После редактирования запроса, текст запроса можно видеть в окне под список полей. Ниже галочкой «Автозаполнение» мы можем регулировать заполнение дополнительных параметров для полей определенных в запросе. Следует обратить внимание, что состав полей определяется только в самом запросе.
Смотрите так же:
Что такое СКД?
Создание отчетов на основе СКД
Конструктор схемы компоновки данных
Конструктор схемы компоновки данных - Закладка Набор данных - Запрос
Конструктор запросов схемы компоновки данных
Конструктор схемы компоновки данных - Закладка Набор данных - Объект
Конструктор схемы компоновки данных - Закладка Набор данных - Объединение
Конструктор схемы компоновки данных - Закладка Связи наборов данных
Конструктор схемы компоновки данных - Закладка Вычисляемые поля
Конструктор схемы компоновки данных - Закладка Ресурсы
Конструктор схемы компоновки данных - Закладка Параметры
Конструктор схемы компоновки данных - Закладка Макеты
Конструктор схемы компоновки данных - Закладка Вложенные схемы
Конструктор схемы компоновки данных - Закладка НастройкиКонструктор запроса состоит из следующих закладок:
1. «Таблицы и поля» - на закладке три иерархических списка:
a. «База данных» - перечислены все доступные объекта, к которым можно сделать за-прос. Также кнопка «Отображать таблицы изменений» , с помощью которой можно получить доступ к таблицам изменений объектов ИБ, если они регистрируются для какого либо плана обмена.
b. «Таблицы» - список выбранных таблиц, к которым будет выполнен запрос. Также в этом окне можно удалить таблицу, переименовать или заменить таблицу, а также добавить внутренний запрос.Для виртуальных таблиц можно назначать параметры, нажав на кнопку «Параметры виртуальных таблиц»:
Рекомендуется активно использовать параметры виртуальных таблиц для отборов по тем или иным измерениям, поскольку при этом увеличивается скорость выполнения запроса. В параметрах можно использовать внешние переменные, название которых предваряется знаком «&».
c. «Поля» - список полей, которые выбираются из таблиц. Также можно добавить вычисляемые поля, для этого при нажатии кнопки «Добавить» открывается конструктор произвольного выражения:Слева окно с доступными в выражении полями. Справа подсказку используемых функций. Внизу конструируемое произвольное выражение. В выражениях можно использовать внешние параметры, для их обозначения используется знак «&», например: &Период, &ДатаНач
Нужно быть внимательным, если в окне будет набрано длинное и сложное выра-жение, в котором будет небольшая синтаксическая ошибка, то после нажатия кноп-ки «ОК» система выдаст предупреждение и закроет окно. Весь набранный код бу-дет потерян, поэтому рекомендую, если нет уверены в правильности выражения, то перед закрытием конструктора всегда сохраняйте содержимое в буфер обмена (Ctrl-C).2. «Связи» - на закладке указываются связи между таблицами.
В таблице указываются связываемые таблицы, отношение между связываемыми таблицами и усло-вие связи. Если условие связи сложно, то можно указать некое вычисляемое выражение, при этом откроется конструктор произвольного поля.3. «Группировка» - на закладке указываются, какие поля группируются, а какие агрегируются (суммируются).
4. Закладка «Условия» - перечисляются условия которые накладываются на запрос.
В условиях тоже можно писать сложные выражения с помощью конструктора простых выражения и ис-пользованием внешних переменных:
5. «Дополнительно»
Дополнительные параметры, накладываемые на запрос
6. «Объединения и псевдонимы»
На этой закладке можно назначать псевдонимы для полей , а также управлять запросами которые соединяется через конструкции «ОБЪЕДИНИТЬ» или «ОБЪЕДИНИТЬ ВСЕ»
7. «Порядок»
В каком порядке будут выводиться получаться результаты запроса
Внимание! В низу закладки можно видеть галочку «Автоупорядочивание» - в текущей версии 1С 8.1 в СКД она бесполезна, более того при установленной галочке при записи СКД выдает ошибку, так что ею пользоваться не стоит.8. «Компоновка данных»
Закладка, в которой определятся служебные поля для СКД. Играет примерно такую же роль, что и закладка «Построитель отчета» в обычном конструкторе отчетов.
a. На закладке «Таблицы» - перечислены таблицы, используемые в запросе, можно указать обязательность включения таблицы в запрос, галочкой «Обязательная». Т.е. если никакие поля в выборку не попадают, то данная таблица в запросе вообще не участвует. Также можно указать параметры для таблиц.
В процессе настройки СКД, мы задаем, какие либо отборы, то все значения отборов будут подставлены в параметры виртуальных таблиц, что снова нам поможет оптимизировать и ускорить запрос.
b. На закладке «Поля» - перечислены поля и их псевдонимы, которые будут добавляться в список полей СКД.
c. «Условия» - в случае указания отборов в настройках СКД, все значения отборов будут добавляться как дополнительные условия, в условия можно также добавлять сложные выражения.9. «Характеристики»
Закладка, не имеющая аналога в обычном конструкторе выходной фор-мы.
Даная закладка обеспечивает расширение работы запросов с характеристиками. Таблица на закладке состоит из нескольких полей:
a. «Тип значения» - тип для которого будут выбираться характеристики. Например если указать «СправочникСсылка.Номенклатура», то в запросе будут выбираться все характеристики для номенклатуры.
b. «Источник» - источник для свойств видов характеристик, может быть запрос или таблица. В данном поле мы можем написать запрос выборки только тех свойств, которые нам нужны.
c. «Список характеристик» - поле в котором указывается источник для свойств характери-стик. Чаще всего это план видов характеристик или запрос. Также нужно указать поля, которые отвечают за «Идентификатор», «Имя» и «Тип» свойства.
d. «Источник» - следующее поле, в котором указываем источник значений характеристик, тоже может быть или таблица или запрос.
e. «Значение характеристик» - таблица или запрос, которые получает значения характери-стик. Например, таблицей значений характеристик может служить регистр сведений «ЗначенияСвойствОбъектов». Мы также должны указать те поля из таблицы (или запро-са), что отвечают за «Объект», «Свойство» и «Значение» характеристики.
После редактирования запроса, текст запроса можно видеть в окне под список полей. Ниже галочкой «Автозаполнение» мы можем регулировать заполнение дополнительных параметров для полей определенных в запросе. Следует обратить внимание, что состав полей определяется только в самом запросе.
Смотрите так же:
Что такое СКД?
Создание отчетов на основе СКД
Конструктор схемы компоновки данных
Конструктор схемы компоновки данных - Закладка Набор данных - Запрос
Конструктор запросов схемы компоновки данных
Конструктор схемы компоновки данных - Закладка Набор данных - Объект
Конструктор схемы компоновки данных - Закладка Набор данных - Объединение
Конструктор схемы компоновки данных - Закладка Связи наборов данных
Конструктор схемы компоновки данных - Закладка Вычисляемые поля
Конструктор схемы компоновки данных - Закладка Ресурсы
Конструктор схемы компоновки данных - Закладка Параметры
Конструктор схемы компоновки данных - Закладка Макеты
Конструктор схемы компоновки данных - Закладка Вложенные схемы
Конструктор схемы компоновки данных - Закладка НастройкиКонструктор запроса состоит из следующих закладок:
1. «Таблицы и поля» - на закладке три иерархических списка:
a. «База данных» - перечислены все доступные объекта, к которым можно сделать за-прос. Также кнопка «Отображать таблицы изменений» , с помощью которой можно получить доступ к таблицам изменений объектов ИБ, если они регистрируются для какого либо плана обмена.
b. «Таблицы» - список выбранных таблиц, к которым будет выполнен запрос. Также в этом окне можно удалить таблицу, переименовать или заменить таблицу, а также добавить внутренний запрос.Для виртуальных таблиц можно назначать параметры, нажав на кнопку «Параметры виртуальных таблиц»:
Рекомендуется активно использовать параметры виртуальных таблиц для отборов по тем или иным измерениям, поскольку при этом увеличивается скорость выполнения запроса. В параметрах можно использовать внешние переменные, название которых предваряется знаком «&».
c. «Поля» - список полей, которые выбираются из таблиц. Также можно добавить вычисляемые поля, для этого при нажатии кнопки «Добавить» открывается конструктор произвольного выражения:Слева окно с доступными в выражении полями. Справа подсказку используемых функций. Внизу конструируемое произвольное выражение. В выражениях можно использовать внешние параметры, для их обозначения используется знак «&», например: &Период, &ДатаНач
Нужно быть внимательным, если в окне будет набрано длинное и сложное выра-жение, в котором будет небольшая синтаксическая ошибка, то после нажатия кноп-ки «ОК» система выдаст предупреждение и закроет окно. Весь набранный код бу-дет потерян, поэтому рекомендую, если нет уверены в правильности выражения, то перед закрытием конструктора всегда сохраняйте содержимое в буфер обмена (Ctrl-C).2. «Связи» - на закладке указываются связи между таблицами.
В таблице указываются связываемые таблицы, отношение между связываемыми таблицами и усло-вие связи. Если условие связи сложно, то можно указать некое вычисляемое выражение, при этом откроется конструктор произвольного поля.3. «Группировка» - на закладке указываются, какие поля группируются, а какие агрегируются (суммируются).
4. Закладка «Условия» - перечисляются условия которые накладываются на запрос.
В условиях тоже можно писать сложные выражения с помощью конструктора простых выражения и ис-пользованием внешних переменных:
5. «Дополнительно»
Дополнительные параметры, накладываемые на запрос
6. «Объединения и псевдонимы»
На этой закладке можно назначать псевдонимы для полей , а также управлять запросами которые соединяется через конструкции «ОБЪЕДИНИТЬ» или «ОБЪЕДИНИТЬ ВСЕ»
7. «Порядок»
В каком порядке будут выводиться получаться результаты запроса
Внимание! В низу закладки можно видеть галочку «Автоупорядочивание» - в текущей версии 1С 8.1 в СКД она бесполезна, более того при установленной галочке при записи СКД выдает ошибку, так что ею пользоваться не стоит.8. «Компоновка данных»
Закладка, в которой определятся служебные поля для СКД. Играет примерно такую же роль, что и закладка «Построитель отчета» в обычном конструкторе отчетов.
a. На закладке «Таблицы» - перечислены таблицы, используемые в запросе, можно указать обязательность включения таблицы в запрос, галочкой «Обязательная». Т.е. если никакие поля в выборку не попадают, то данная таблица в запросе вообще не участвует. Также можно указать параметры для таблиц.
В процессе настройки СКД, мы задаем, какие либо отборы, то все значения отборов будут подставлены в параметры виртуальных таблиц, что снова нам поможет оптимизировать и ускорить запрос.
b. На закладке «Поля» - перечислены поля и их псевдонимы, которые будут добавляться в список полей СКД.
c. «Условия» - в случае указания отборов в настройках СКД, все значения отборов будут добавляться как дополнительные условия, в условия можно также добавлять сложные выражения.9. «Характеристики»
Закладка, не имеющая аналога в обычном конструкторе выходной фор-мы.
Даная закладка обеспечивает расширение работы запросов с характеристиками. Таблица на закладке состоит из нескольких полей:
a. «Тип значения» - тип для которого будут выбираться характеристики. Например если указать «СправочникСсылка.Номенклатура», то в запросе будут выбираться все характеристики для номенклатуры.
b. «Источник» - источник для свойств видов характеристик, может быть запрос или таблица. В данном поле мы можем написать запрос выборки только тех свойств, которые нам нужны.
c. «Список характеристик» - поле в котором указывается источник для свойств характери-стик. Чаще всего это план видов характеристик или запрос. Также нужно указать поля, которые отвечают за «Идентификатор», «Имя» и «Тип» свойства.
d. «Источник» - следующее поле, в котором указываем источник значений характеристик, тоже может быть или таблица или запрос.
e. «Значение характеристик» - таблица или запрос, которые получает значения характери-стик. Например, таблицей значений характеристик может служить регистр сведений «ЗначенияСвойствОбъектов». Мы также должны указать те поля из таблицы (или запро-са), что отвечают за «Объект», «Свойство» и «Значение» характеристики.
После редактирования запроса, текст запроса можно видеть в окне под список полей. Ниже галочкой «Автозаполнение» мы можем регулировать заполнение дополнительных параметров для полей определенных в запросе. Следует обратить внимание, что состав полей определяется только в самом запросе.
Смотрите так же:
Что такое СКД?
Создание отчетов на основе СКД
Конструктор схемы компоновки данных
Конструктор схемы компоновки данных - Закладка Набор данных - Запрос
Конструктор запросов схемы компоновки данных
Конструктор схемы компоновки данных - Закладка Набор данных - Объект
Конструктор схемы компоновки данных - Закладка Набор данных - Объединение
Конструктор схемы компоновки данных - Закладка Связи наборов данных
Конструктор схемы компоновки данных - Закладка Вычисляемые поля
Конструктор схемы компоновки данных - Закладка Ресурсы
Конструктор схемы компоновки данных - Закладка Параметры
Конструктор схемы компоновки данных - Закладка Макеты
Конструктор схемы компоновки данных - Закладка Вложенные схемы
Конструктор схемы компоновки данных - Закладка НастройкиОдной из потенциальных проблем при изучении 1С является тот факт, что встроенный язык 1С и язык запросов отличаются друг от друга. Новичкам приходится не только запоминать всевозможные операторы, но и понимать, где их применять. Но в платформу 1С 8.3 встроен мощный инструмент, облегчающий работу с запросами на языке 1С – конструктор запросов. Не используя его, вы напрасно усложняете себе работу.
Применение конструктора запросов 1С
Перед тем как разбирать функции этого механизма, нам нужно понять, как и где можно открыть конструктор запросов 1С 8.3. Воспользоваться им вы сможете в конфигураторе или специальных обработках – консолях запросов, которые, являясь по сути инструментами доработки 1С 8, позволяют сохранить конфигурацию на поддержке. Чтобы открыть конструктор, необходимо щелкнуть правой кнопкой мыши в модулях или на поле для написания кода и выбрать нужный пункт.
Рис.1 Применение конструктора запросов 1С
В конфигураторе же придется зайти в один из модулей и через контекстное меню выбрать один из двух вариантов. Первый откроет конструктор запроса, и после работы с ним у вас останется лишь текст запроса. Нижний пункт позволит вам не просто написать запрос, но и создаст все необходимые операторы для его выполнения и обработки. Это очень удобно и ускоряет разработку бизнес – приложений, но в некоторых случаях это не нужно.
Рис.2 Применение конструктора запросов 1С
После вызова конструктора перед нами открывается форма этого механизма. Она разделена на несколько закладок, отличающихся по функционалу и назначению.
Таблицы и поля. Начальная вкладка, отражающая информацию о задействованных в запросе таблицах и выбранных полях. Слева отображается общее дерево конфигурации, в центре – источники данных для выборки, справа – конечные поля. Здесь закладывается основа запроса из секций «ВЫБРАТЬ … ИЗ …».
Рис.3 Таблицы и поля
Связи. В данном разделе указываются соединения выбранных таблиц и поля, по которым они соединяются. Зачастую 1С самостоятельно предлагает программистам свои варианты связей на основе схожих типов данных, но в большинстве случаев лучше их изменить. В тексте запроса данные с этой вкладки преобразуются в конструкцию «СОЕДИНЕНИЕ».
Группировка. Здесь устанавливается группировка строк по конкретным полям и простейшие арифметические операции с числовыми реквизитами. В тексте запроса эти данные можно найти в разделе «СГРУППИРОВАТЬ ПО».
Рис.5 Группировка
Условия. Раздел установки дополнительных условий на данные, попадающие в результат выборки. В тексте фигурирует после оператора «ГДЕ».
Дополнительно. Вкладка, содержащая различные стандартные ограничения или возможности выборки:
- Первые – позволяет выбрать определенное количество записей. В текстовом представлении запроса определяется оператором «ПЕРВЫЕ N»;
- Без повторяющихся – исключает попадание в конечную выборку повторяющихся строк. В тексте отражается, как «РАЗЛИЧНЫЕ»;
- Разрешенные – включает учет настроенных прав доступа при выполнении запроса (оператор «РАЗРЕШЕННЫЕ»);
- Определение типа запроса из трех вариантов – обыкновенной выборки, создания или уничтожения временной таблицы;
- Блокировка данных. Предназначена для автоматического режима блокировок, чтобы сохранить целостность данных на время от чтения до записи.
Рис.7 Дополнительно
Объединения/Псевдонимы. Слева представлен список запросов, а справа вы можете изменить имя реквизита или объединить данные из нескольких запросов. Эти настройки можно найти в текстовом виде по операторам «ОБЪЕДИНИТЬ» и «КАК».
Рис.8 Объединения/Псевдонимы
Порядок. На данной вкладке задается сортировка итоговых записей. За нее отвечает оператор «УПОРЯДОЧИТЬ ПО».
Мы рассмотрели основные возможности конструктора запросов. Если у вас возникли сложности при работе с ним или вам необходимо получить консультации по программе 1С, обращайтесь к нашим специалистам по телефону, а также оставляйте заявки на нашем сайте. Мы свяжемся с вами в кратчайшие сроки.
Дополнительные возможности конструктора запросов
Вышеперечисленные вкладки конструктора позволяют настроить запрос на выборку данных практически для любой задачи. Однако в некоторых случаях нам пригодятся дополнительные функции конструктора запросов. Самая распространенная из них – возможность создания пакетных запросов. Для этого нам пригодится последняя вкладка в конструкторе запросов.
Рис.10 Дополнительные возможности конструктора запросов
Пакет запросов нам необходим, когда нужно получить несколько выборок данных за 1 обращение к базе. Также этот механизм пригодится в случае работы с временными таблицами. Это особый тип таблиц с данными, которые может создать 1С на время выполнения запроса. Если их использовать, то они будут доступны во всех последующих запросах в дереве конфигурации на 1 вкладке конструктора.
Вы можете и сами создавать свои временные таблицы с помощью конструктора. На вкладке «Таблицы и поля» в среднем окне есть кнопка создания описания временной таблицы. Наиболее часто эту возможность используют для передачи таблиц в запрос извне. Рядом находится кнопка создания вложенного запроса – обращения к базе данных, результат которого можно использовать в дальнейшем.
Рис.11 Дополнительные возможности конструктора запросов
Еще одна возможность конструктора, которая не так часто используется – вывод итогов. На вкладке «Итоги» вы можете задать нужные вам арифметические операции с числовыми полями с учетом других полей. К примеру, на скриншоте показан подсчет суммы количества по каждой номенклатуре. В тексте мы увидим эту настройку в виде оператора «ИТОГИ … ПО…».
Рис.12 Дополнительные возможности конструктора запросов
Построитель – еще одна закладка конструктора запросов с интересными возможностями. Здесь собраны все настройки, позволяющие выполняться запросу, как интерактивно, так и без участия пользователей. Также есть возможность адаптировать текст запроса в зависимости от введенных начальных данных. В текстовом варианте сделанные настройки построителя выделяются фигурными скобками.
Иногда в процессе работы с конструктором запроса с обработкой результата 1С требуется взглянуть на текстовый вид запроса. Для этого в левом нижнем углу есть кнопка «Запрос». При нажатии на нее открывается новое окно с полным текстом обращения к базе. Присутствует возможность изменения – при нажатии на соответствующую кнопку вы сможете внести изменения, а при закрытии конструктор отразит их на вкладках.
Рис.13 Дополнительные возможности конструктора запросов
Мы ознакомились лишь с основными функциями конструктора запросов и научились им пользоваться. Глубокое знание функционала, понимание принципов работы и внутренних механизмов появится с опытом. Поэтому, чем больше вы будете работать с конструктором, тем более оптимальными будут ваши запросы. Для тех же, кто предпочитает писать код в текстовом виде – открытие конструктора поможет быстро проверить опечатки в операторах. В любом случае, если возникли вопросы, обращайтесь к специалистам технического сопровождения 1С, мы с радостью вам поможем.
Читайте также: