Профессия — 1С

Рукопашный бой Карташ

Категории

Временные таблицы в конструкторе запросов

рубрики: Конструктор запросов | Дата: 4 Август, 2017

Рассмотрим создание временных таблиц при помощи конструктора запросов. Рассмотрим несколько ситуаций.




Как поместить результат запроса во временную таблицу

Создадим с помощью конструктора вот такой простейший запрос:

Соответственно текст запроса будет выглядеть следующим образом:


ВЫБРАТЬ
	Товары.Ссылка
ИЗ
	Справочник.Товары КАК Товары

Но мы хотим поместить результат запроса во временную таблицу, которую назовем ВТ_Товары, то есть привести наш запрос вот к такому виду


ВЫБРАТЬ
	Товары.Ссылка
ПОМЕСТИТЬ ВТ_Товары
ИЗ
	Справочник.Товары КАК Товары

Для этого нам необходимо перейти на закладку Дополнительно, установить тип запроса в положение Создание временной таблицы и заполнить поле с именем таблицы

Как прочитать временную таблицу из другого запроса

Очень часто при проектировании запросов большого объема возникает необходимость передавать временные таблицы из одного запроса в другой с использованием объекта МенеджерВременныхТаблиц. То есть вот такая ситуация:






МенеджерВТ = Новый МенеджерВременныхТаблиц;

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
|	Товары.Ссылка
|ПОМЕСТИТЬ ВТ_Товары
|ИЗ
|	Справочник.Товары КАК Товары";

Запрос.МенеджерВременныхТаблиц = МенеджерВТ;
Запрос.Выполнить();

.................................

ЗапросВТ = Новый Запрос;
ЗапросВТ.Текст =
"ВЫБРАТЬ
|	ВТ_Товары.Ссылка
|ИЗ
|	ВТ_Товары КАК ВТ_Товары";

ЗапросВТ.МенеджерВременныхТаблиц = МенеджерВТ;
ЗапросВТ.Выполнить();

.................................




Чтобы выбрать данные из временной таблицы, необходимо на закладке Таблицы и поля нажать на кнопку Создать описание временной таблицы и в открывшейся форме заполнить наименование таблицы и ее поля:

Как создать временную таблицу из параметра запроса

А теперь представим, что мы хотим выбрать данные во временную таблицу без использования менеджера временных таблиц — из внешнего источника данных, например, из таблицы значений. Такая ситуация уже рассматривалась ранее в статье о том как правильно поместить таблицу значений во временную. Применительно к текущей статье текст запроса выглядит вот так:


ВЫБРАТЬ
	ТаблицаЗначений.Ссылка
ПОМЕСТИТЬ ВТ_Товары
ИЗ
	&ТаблицаЗначений КАК ТаблицаЗначений

В этом случае нам надо сначала создать описание временной таблицы. А затем прописать ее имя на закладке Дополнительно.




То есть получается комбинация двух предудущих методов. Причем знак амперсанта можно также проставить в поле с именем таблицы:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

   

2018г. Профессия — 1С. Обмен опытом по программированию в 1С