В начало

Временная таблица

 

            В нашем распоряжении есть документы «ПриходДенег», «РасходДенег» и справочник «Контрагенты». Нужно сформировать запрос по анализу движения денежных срежств, используя временную таблицу.

Запускаем «1С: Предприятие 8.3», находим консоль запросов, в которой выбираем документ «ПриходДенег», в нем отбираем поля: Контрагент и Сумма. Переходим на закладку «Объединения/Псевдонимы», создаем еще одни запрос, но для документа «РасходДенег». Далее снова переходим на закладку «Объединения/Псевдонимы» и разделяем логически поля сумм прихода и расхода денег.

Рис. 1. Закладка «Объединения/Псевдонимы» конструктора запросов

Рис. 1. Закладка «Объединения/Псевдонимы» конструктора запросов

 

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

Рис. 2. «Временные таблицы» в конструкторе запросов

Рис. 2. «Временные таблицы» в конструкторе запросов

 

            В конструкторе запросов из временных таблиц выбираем таблицу «ДвижениеДенег», а  также справочник «Контрагенты». Далее выбираем поля: Код, Наименование (из справочника) и СуммаПриход, СуммаРасход (из временной таблицы ДвижениеДенег). Затем переходим на закладку «Связи» и меняем Левое соединение на Правое. После чего переходим на закладку «Группировка», где в групповое поле перетаскиваем «Код» и «Наименование», а в суммируемое поле – «СуммаПриход» и «СуммаРасход». Возвращаемся в консоль запросов.

Рис. 3. Закладка «Группировка»

Рис. 3. Закладка «Группировка»

 

            Полученный запрос выглядит так:

ВЫБРАТЬ

      ПриходДенег.Контрагент,

      ПриходДенег.Сумма КАК СуммаПриход,

      NULL КАК СуммаРасход

ПОМЕСТИТЬ ДвижениеДенег

ИЗ

      Документ.ПриходДенег КАК ПриходДенег

 

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

 

ВЫБРАТЬ

      РасходДенег.Контрагент,

      NULL,

      РасходДенег.Сумма

ИЗ

      Документ.РасходДенег КАК РасходДенег

;

 

/////////////////////////////////////////////////////////////

ВЫБРАТЬ

      Контрагенты.Код,

      Контрагенты.Наименование,

      СУММА(ДвижениеДенег.СуммаПриход) КАК СуммаПриход,

      СУММА(ДвижениеДенег.СуммаРасход) КАК СуммаРасход

ИЗ

      Справочник.Контрагенты КАК Контрагенты

            ЛЕВОЕ СОЕДИНЕНИЕ ДвижениеДенег КАК ДвижениеДенег

            ПО ДвижениеДенег.Контрагент = Контрагенты.Ссылка

 

СГРУППИРОВАТЬ ПО

      Контрагенты.Код,

      Контрагенты.Наименование

 

            А результат получился такой:

Рис. 4. Результат запроса

Рис. 4. Результат запроса