Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР8-Запросы.doc
Скачиваний:
7
Добавлен:
16.12.2018
Размер:
758.27 Кб
Скачать

Структура запроса

Для формирования запросов, выборки и обработки результатов запросов в языке предусмотрен специальный набор объектов. С ними можно ознакомиться в Синтакс-Помощнике системы. С помощью этих объектов выполняется формирование запроса, обход записей запроса и т.д. Работа с запросом ведется при помощи трех основных объектов:

  • Запрос – объект, выполняющий сам запрос (представляется переменной с именем Запрос);

  • РезультатЗапроса – объект, содержащий полученные при выполнение запроса данные (представляется переменной с именем РезультатЗапроса);

  • ВыборкаИзРезультатаЗапроса – объект, позволяющий обходить (перебрать) записи из результатов (представляется переменной с именем Выборка).

Для выполнения запроса (получения необходимой выборки данных) необходимо составить текст запроса. Текст запроса - это инструкция, в соответствии с которой должен быть выполнен запрос.

После составления текста запроса его необходимо выполнить. По окончании выполнения полученный результат необходимо «обойти» (разобрать результат запроса).

Для формирования текста запроса существует специализированный язык запросов. Он определяет используемые синтаксические конструкции, структуру запроса.

Можно сказать, что текст запроса состоит из следующих секций:

  1. Описание запроса.

  2. Объединение запросов.

  3. Упорядочивание результатов или Автоупорядочивание.

  4. Описание итогов.

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

Выбрать [Различные] [Первые <Количество>]

<Список полей выборки>

[Из <Список источников>]

[Где <Условие отбора>]

[Сгруппировать По <Поля группировки>]

[Имеющие <Условия отбора>]

[Для изменения [[Of]<Cпиcoк таблиц верхнего уровня>]]

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

Объединение запросов определяет, как будут объединены результаты выполнения нескольких запросов.

Упорядочивание результатов определяет условия упорядочивания строк результата запроса.

Автоупорядочивание позволяет включить режим автоматического упорядочивания строк результата запроса.

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

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

Применение различных синтаксических конструкций языка запросов подробно описано во встроенной справке в режиме Конфигуратор: Справка ► Содержание справки ► 1С:Предприятие ► Встроенный язык ► Работа с запросами.

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

Использование конструктора запросов

Конструктор запросов позволяет сформировать текст запроса в модуле и отредактировать имеющийся запрос. Для вызова конструктора запросов необходимо:

  • открыть модуль и выбрать процедуру, в которую необходимо поместить запрос;

  • установить указатель в той части процедуры, в которой располагается или должно располагаться тело запроса;

  • выбрать пункт Текст - Конструктор запросов (либо в контекстном меню окна модуля - Конструктор запросов).

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

Задание. Ознакомиться с формированием текста запроса, используя конструктор запросов и разработать 3 запроса на выборку.