Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЦОО_ИСБУ_Лек3.doc
Скачиваний:
6
Добавлен:
01.07.2025
Размер:
684 Кб
Скачать
☆

Итоги по иерархии

Если группировочное поле является ссылкой на справочник, то для расчета итогов по группам справочника (или родительским элементам, если справочник состоит из одних элементов) необхо­димо указать ключевое слово ИЕРАРХИЯ. В этом случае в ре­зультат будут добавлены записи с итогами для уровней иерархии справочника.

Например, выберем записи справочника Номенклатура, рассчи­таем объем продаж по каждой позиции и по группам справочника:

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

ИЗ РегистрНакопления.Продажи

ИТОГИ СУММА(Сумма) ПО Номенклатура ИЕРАРХИЯ

АВТОУПОРЯДОЧИВАНИЕ

Заметьте, что в результат запроса включены группы справочника, и по ним подсчитаны итоги:

Номенклатура

Сумма

Клавиатуры

675

Клавиатура Apple Pro Keyboards

600

Клавиатура Apple Pro Keyboards

225

Клавиатура Apple Pro Keyboards

375

Клавиатура Keyboard PS/2

75

Клавиатура Keyboard PS/2

25

Клавиатура Keyboard PS/2

50

Мониторы

1460

Монитор 15' LG Studio works 575N

620

Монитор 15' LG Studioworks 575N

465

Монитор 15' LG Studioworks 575N

155

Монитор 17' Philips 107S20

840

Монитор 17' Philips 107S20

840

Несколько итогов в запросе

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

Ниже представлен запрос, который выбирает данные из расход­ных накладных и дополнительно подсчитывает общие итоги, ито­ги по контрагентам, по каждому товару и группе товаров.

ВЫБРАТЬ

НаклСостав.Ссылка.Контрагент КАК Контрагент,

НаклСостав.Номенклатура КАК Номенклатура,

НаклСостав.Ссылка.Номер,

НаклСостав.Сумма КАК Продажи

ИЗ Документ.РасходнаяНакладная.Состав КАК НаклСостав

ИТОГИ СУММА (Продажи) ПО

ОБЩИЕ, Контрагент, Номенклатура ИЕРАРХИЯ

Контрагент

Номенклатура

Номер

Продажи

4520

Автохозяйство

1 280

Автохозяйство

Клавиатуры

20

Автохозяйство

Клавиатура LK-601

20

Автохозяйство

Клавиатура LK-601

00023

20

Автохозяйство

Мониторы

1260

Автохозяйство

Монитор 17' Philips

210

Автохозяйство

Монитор 17' Philips

00023

210

Автохозяйство

Монитор 19' Hitachi

1050

Автохозяйство

Монитор 19' Hitachi

00023

1 050

Алекс-2002

3240

Алекс-2002

Клавиатуры

3240

Алекс-2002

Клавиатура Apple Pro

3225

Алекс-2002

Клавиатура Apple Pro

00012

3000

Алекс-2002

Клавиатура Apple Pro

00013

225

Алекс-2002

Клавиатура PS/2

15

Алекс-2002

Клавиатура PS/2

00008

15

  • Предложение ОБЪЕДИНИТЬ / UNION

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

Поля результата запроса будут называться так, как описано в списке полей выборки первого из объединяемых запросов. Поля выборки остальных запросов сопоставляются с полями результата в соответствии с порядком их следования в списке полей выбор­ки.

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

Пример, выберем проданные или купленные товары за опреде­ленный период:

ВЫБРАТЬ

НаклСостав.Номенклатура,

НаклСостав.Цена КАК Цена

ИЗ Документ.РасходнаяНакладная.Состав КАК НаклСостав

где НаклСостав.Ссылка.Дата МЕЖДУ &НачДата И &КонДата

ОБЪЕДИНИТЬ

ВЫБРАТЬ

НаклСостав.Номенклатура,

НаклСостав.Цена

ИЗ Документ.ПриходнаяНакладная.Состав КАК НаклСостав

ГДЕ НаклСостав.Ссылка,Дата МЕЖДУ &НачДата И &КонДата

Дата

Номенклатура

Цена

10.01.2002

Клавиатура Apple Pro Keyboards

14

11.01.2002

Монитор 17" Philips 107S20

540

12.01.2002

Клавиатура Keyboard PS/2

12

Обратите внимание, что по умолчанию при объединении запросов полностью одинаковые строки, сформированные разными запро­сами, заменяются одной. Если требуется, чтобы были оставлены все одинаковые строки, необходимо указать ключевое слово ВСЕ.

Например, выберем проданные или купленные нами товары с ука­занием даты, цены покупки или цены продажи. Даже если для какого-то товара в определенный день совпадет цена покупки и цена продажи, то в запросе это все-таки будут две разные строки:

ВЫБРАТЬ

НаклСостав.Ссылка.Дата,

НаклСостав.Номенклатура,

НаклСостав.Цена КАК Цена

ИЗ Документ.РасходнаяНакладная.Состав КАК НаклСостав

ГДЕ НаклСостав.Ссылка.Дата МЕЖДУ &НачДата И &КонДата

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ

НаклСостав.Ссылка.Дата,

НаклСостав.Номенклатура,

НаклСостав.Цена

ИЗ Документ. ПриходнаяНакладная.Состав КАК НаклСостав

ГДЕ НаклСостав.Ссылка.Дата МЕЖДУ &НачДата И &КонДата

Дата

Номенклатура

Цена

10.01.2002

Клавиатура Apple Pro Keyboards

14

10.01.2002

Клавиатура Apple Pro Keyboards

14

11.01.2002

Монитор 17" Philips 107S20

540

12.01.2002

Клавиатура Keyboard PS/2

12

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]