Вложенные таблицы в списке полей выборки
Поле в списке выборки может ссылаться на вложенную таблицу источника данных запроса. В этом случае поле результата запроса будет иметь тип РезультатЗапроса, то есть содержать вложенный результат запроса, сформированный на основе вложенной таблицы - источника.
По умолчанию во вложенный результат включаются все поля вложенной таблицы - источника данных. Имеется возможность явно определить группу полей, которые должны содержаться во вложенном результате запроса. Группа полей вложенного результата описывается по следующему правилу:
( <Список вложенных полей> ) | *
<Вложенное поле [, <Вложенное поле>[, ...] ]
<Список вложенных полей> состоит из одного или нескольких элементов, разделенных запятыми. Если список состоит из одного элемента, его не обязательно заключать в скобки.
Вместо перечисления вложенных полей можно указать звездочку «*»; это будет означать, что во вложенный результат запроса должен содержать все поля, которые есть во вложенной таблице.
<Выражение> [[КАК] <Псевдоним поля>]
<Вложенное поле> может представлять некоторое выражение. В простейшем случае <Выражение> - это ссылка на поле вложенной таблицы. Подробно выражения рассмотрены на стр. 344.
Каждому вложенному полю может быть назначен псевдоним. В дальнейшем <Псевдоним поля> может использоваться для более удобного обращения к данному полю, аналогично псевдонимам полей списка выборки - см. раздел «Псевдонимы полей в списке выборки» на стр. 301.
Псевдонимы вложенным полям могут быть назначены независимо от того, задан ли псевдоним самой вложенной таблице.
Пример:
//В отчет необходимо вывести спецификацию товарных накладных,
// сам документ, номенклатуру и количество.
Выбрать
Документ.РасходнаяНакладная.Ссылка,
Документ.РасходнаяНакладная.Состав.(Номенклатура Как Товар, Количество)
Результат запроса:
Ссылка | Состав | |
Товар | Количество | |
Расходная накладная 00007 от 25.02.2002 21:03:21 | Джинсы женские | 4 |
Расходная накладная 00006 от 25.02.2002 0:00:00 | Джинсы женские | 5 |
Рубашка «Ковбойка» | 5 | |
Расходная накладная 00005 от 24.02.2002 0:00:00 | Джинсы женские | 1 |
Расходная накладная 00004 от 01.03.2002 20:50:40 | Джинсы женские | 1 |
Расходная накладная 00003 от 23.02.2002 0:00:00 | Мойдодыр «Аквариум» | 5 |
Раковина «Лилия» | 8 | |
Смеситель «Ультра» | 10 |
Обратите внимание, что поле «Состав» результата запроса представляет собой вложенную таблицу, имеющую поля «Номенклатура» и «Количество».
Пример:
//В отчет вывести все поля табличной части накладной.
Выбрать
Документ.РасходнаяНакладная.Ссылка,
Документ.РасходнаяНакладная.Состав.*