Предложение ПОМЕСТИТЬ

Для того чтобы создать временную таблицу на основе данных базы данных, следует установить объекту Запрос менеджер временных таблиц, а затем выполнить запрос к базе данных, используя ключевое слово ПОМЕСТИТЬ, после которого указать имя создаваемой временной таблицы.

Ключевое слово ПОМЕСТИТЬ располагается после списка выборки запроса. Например:

ВЫБРАТЬ
    Код,
    Наименование
ПОМЕСТИТЬ ВременнаяТаблица
ИЗ Справочник.Номенклатура

Результат исполнения такого запроса будет содержать строки с колонками Код и Наименование, в которых будут находиться записи, помещенные в созданную таблицу.

Если менеджер временных таблиц не установлен, или был закрыт, или в установленном менеджере временных таблиц уже существует таблица с указанным именем и запрос не пакетный, будет выдана ошибка.

Для того чтобы создать временную таблицу на основании внешнего источника, следует в тексте запроса в списке источников указать имя параметра, в который будет помещен внешний источник. Остальной синтаксис идентичен обычному созданию временной таблицы.

В качестве внешнего источника могут выступать:

  • таблица значений;
  • табличная часть;
  • результат запроса.

Ниже приведен пример создания временной таблицы на основе внешнего источника.

ВЫБРАТЬ
    Код,
    Наименование
ПОМЕСТИТЬ ВременнаяТаблица
ИЗ &ВнешнийИсточник КАК ВнешнийИсточник

В данном примере во временную таблицу ВременнаяТаблица будет помещено содержимое колонок Код и Наименование из внешнего источника, например, таблицы значений, переданной в качестве параметра ВнешнийИсточник.

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

Если в качестве источника используется таблица значений, то у этой таблицы значений должны быть явно указаны типы значений, содержащихся в колонках.

Примечание. Предложения АВТОУПОРЯДОЧИВАНИЕ, ИТОГИ, ДЛЯ ИЗМЕНЕНИЯ, ИМЕЮЩИЕ и СГРУППИРОВАТЬ ПО не могут быть использованы в запросе, формирующем временную таблицу на основании таблицы значений.

Для того чтобы создать временную таблицу и заблокировать данные таблиц, на основании которых создается временная, следует использовать предложение ДЛЯ ИЗМЕНЕНИЯ, например:

ВЫБРАТЬ
    РасходнаяНакладная.Ссылка,
    РасходнаяНакладная.Номер,
    РасходнаяНакладная.Дата
ПОМЕСТИТЬ ВременнаяТаблица
ИЗ
    Документ.РасходнаяНакладная КАК РасходнаяНакладная
ГДЕ
    РасходнаяНакладная.Ссылка В(&Документы)
 
ДЛЯ ИЗМЕНЕНИЯ

1C:Enterprise Developer's Community