- •Введение
- •Цели и задачи курса
- •Объекты системы
- •Классификация объектов конфигурации
- •Прикладные объекты
- •Типы данных
- •Встроенный программный язык
- •Виды модулей
- •Универсальные коллекции значений
- •Контекст выполнения модуля
- •Создание информационной базы данных
- •Константы
- •Определение, настройка свойств
- •Подсистемы
- •Формы констант
- •Справочники
- •Печатные формы
- •Документы
- •Документ «Приходная»
- •Документ «Расходная»
- •Журналы документов
- •Регистры сведений
- •Регистр сведений «Валюты»
- •Чтение значения курса валют
- •Регистр сведений «Цены поставщиков»
- •Планы видов характеристик
- •Регистры накопления
- •Регистр накопления «Продажи»
- •Организация бухгалтерского учета
- •План счетов
- •Регистры бухгалтерии
- •Ведение сложных периодических расчетов
- •Планы видов расчета
- •Регистр расчета
- •Ввод на основании
- •Критерии отбора
- •Организация отбора документов по сотруднику
- •Источники данных
- •Структура запроса (описание запроса)
- •Выполнение и работа с запросами во встроенном языке
- •Указание источников в запросе
- •Фильтрация результатов запроса
- •Упорядочивание результатов запроса
- •Группировки результатов запроса
- •Итоги в запросе
- •Встроенные функции в языке запросов, операция выбора
- •Передача параметров в запрос
- •Основная таблица
- •Основная таблица
- •Значения субконто
- •Сводная таблица
- •Использование диаграмм
- •Картинки
- •Администрирование
- •Определение интерфейсов, ролей, пользователей
- •Выгрузка, загрузка информационной базы
- •Сравнение и объединение конфигураций
- •Определение хранилища конфигурации
- •Администрирование хранилища
- •Работа с хранилищем конфигурации
- •Большая самостоятельная работа
- •Заключение.
Упорядочивание результатов запроса
Просматривая данные из вложенной таблицы видно, что они упорядочены по дате документа. Если требуется получить данные с другим вариантом сортировки, то для этих целей можно использовать конструкцию «Упорядочить По»
Выбрать * Из Документ. Приходная Упорядочить По Контрагент Иерархия |
Следующий текст запроса позволит упорядочить по иерархии:
Выбрать Наименование, Количество, Сумма Из Документ. Приходная. Товары Правое Внешнее Соединение Справочник. Номенклатура Как Номен По Номен. Ссылка=Номенклатура Упорядочить По Наименование Иерархия |
|
Выбрать * Из Документ. Приходная Упорядочить По Контрагент Возр, Номер Убыв |
|
Возможные варианты упорядочивания: «Возр», «Убыв», «Иерархия». В качестве имен полей, по которым производится упорядочивание, можно указывать их псевдонимы.
В случае, если вариант упорядочивания не указан (и не используется «автоупорядочивание»), то упорядочивание будет производиться по значению внутренних идентификаторов.
Важно помнить, что упорядочивание по иерархии возможно только по таблицам с иерархией. Пример неработающего упорядочивания:
Практикум № 13_______________________________________
Измените вид соединения с правого на левое и попытайтесь пояснить результат.
Напишите текст запроса, который позволит вывести перечень из пяти самых дорогих товаров.
Группировки результатов запроса
При просмотре предыдущих результатов выполнения запросов данные получались в том виде, как они вводились в документы. Но если требуется получить ответ на вопрос: сколько какого-то товара закупалось (вообще), то либо придется складывать все вручную, либо использовать группировку.
Данные в запросе могут быть сгруппированы с помощью агрегатных функций, указанных в качестве полей выборки. Очень важно помнить, что в большинстве случаев все поля выборки запроса должны делиться на агрегатные функции и поля, по которым ведется группировка (исключение в определенных случаях составляют поля «Представление», встроенные функции и т. п.).
Рассмотрим текст запроса:
Выбрать Номенклатура Как Товар, Сумма (Количество), Сумма (Сумма) Из Документ. Приходная. Товары Сгруппировать По Номенклатура |
|
При указании группировки псевдоним поля указывать нельзя. В качестве агрегатных функций можно использовать: • Сумма (Выражение) • Среднее (Выражение) • Минимум (Выражение) • Максимум (Выражение) • Количество ([Различные] Выражение) |
|
Практикум № 14 _____________________________________
Напишите текст запроса, который для каждой номенклатурной позиции выводил бы количество поставок (при условии, что номенклатура в рамках документа не повторяется), среднее, минимальное, максимальное количество в поставке.
Вместе с группировкой можно пользоваться упорядочиванием, В соответствии со структурой текста запроса раздел группировки определяется раньше, чем раздел определения способов упорядочивания результатов запроса.
Выбрать Номенклатура Как Товар, Ссылка. Контрагент, Сумма (Количество), Сумма (Сумма) как Сумма Из Документ. Приходная. Товары Сгруппировать По Номенклатура, Ссылка. Контрагент Упорядочить По Сумма Убыв |
|
|||
Условия на значения агрегатных функций Рассмотрим следующий текст запроса: |
|
|||
Выбрать Номенклатура Как Товар, Сумма (Количество), |
|
|||
Выбрать Номенклатура Как Товар, Сумма (Количество), Сумма (Сумма) как Сумма Из Документ. Приходная. Товары Сгруппировать По Номенклатура Упорядочить По Сумма Убыв |
||||
Сумма (Сумма) Из Документ. Приходная. Товары Сгруппировать По Номенклатура Имеющие Сумма (Сумма)> 1000 |
|
|||
Практикум № 15 _________________________________________
Напишите текст запроса, который выдавал бы список покупателей, купивших более чем один товар, и при этом сумма покупки была более 200, отсортируйте список по убыванию количества покупок.
