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