Отчет «Остатки и доступность товаров» (Запрос)

В данном примере мы разберем выгрузку готового отчета информации о доступности товаров и их остатков.

Примечание

Данный пример продемонстрирован на версии 3.12.1.93 Экстрактора 1С.

Итак, заходим в раздел «Проекты» Экстрактора 1С, нажимаем «Создать».

Выбираем тип источника данных «Запрос».

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

Текст запроса для копирования:
ВЫБРАТЬ РАЗРЕШЕННЫЕ ИнформацияОДоступности.Номенклатура КАК Номенклатура, ИнформацияОДоступности.Характеристика КАК Характеристика, ИнформацияОДоступности.Склад КАК Склад, ИнформацияОДоступности.Назначение КАК Назначение, ИнформацияОДоступности.ЗаказНаПоступление КАК Заказ, ИнформацияОДоступности.ДатаПоступления КАК ДатаСобытия, ВЫБОР КОГДА ИнформацияОДоступности.Состояние = ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ОстатокНаСкладе) ТОГДА ИнформацияОДоступности.Запас ИНАЧЕ 0 КОНЕЦ КАК ВНаличииОстаток, ВЫБОР КОГДА ИнформацияОДоступности.Состояние = ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ОжидаемоеПоступление) ТОГДА ИнформацияОДоступности.Запас ИНАЧЕ 0 КОНЕЦ КАК ПоступитОстаток ПОМЕСТИТЬ ЗапасыИПотребности ИЗ РегистрСведений.РаспределениеЗапасов КАК ИнформацияОДоступности ГДЕ ЛОЖЬ ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ИнформацияОДоступности.Номенклатура, ИнформацияОДоступности.Характеристика, ИнформацияОДоступности.Склад, ИнформацияОДоступности.Назначение, ИнформацияОДоступности.ЗаказНаПоступление, ИнформацияОДоступности.ДатаПоступления, ВЫБОР КОГДА ИнформацияОДоступности.Состояние = ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ОстатокНаСкладе) ТОГДА ИнформацияОДоступности.Запас ИНАЧЕ 0 КОНЕЦ, ВЫБОР КОГДА ИнформацияОДоступности.Состояние = ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ОжидаемоеПоступление) ТОГДА ИнформацияОДоступности.Запас ИНАЧЕ 0 КОНЕЦ ИЗ РегистрСведений.РаспределениеЗапасов КАК ИнформацияОДоступности ГДЕ ИнформацияОДоступности.Состояние В (ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ОстатокНаСкладе), ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ОжидаемоеПоступление)) И ИнформацияОДоступности.Запас <> 0 И ИнформацияОДоступности.Склад ССЫЛКА Справочник.Склады И ВЫБОР КОГДА &ПоказатьОбособленныеТовары ТОГДА ИСТИНА ИНАЧЕ ИнформацияОДоступности.Назначение = ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка) КОНЕЦ ИНДЕКСИРОВАТЬ ПО Номенклатура, Характеристика, Склад, Назначение ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РАЗРЕШЕННЫЕ ТоварыКОтгрузке.Номенклатура КАК Номенклатура, ТоварыКОтгрузке.Характеристика КАК Характеристика, ТоварыКОтгрузке.Склад КАК Склад, ТоварыКОтгрузке.Назначение КАК Назначение, ТоварыКОтгрузке.ДокументОтгрузки КАК ДокументОтгрузки, ТоварыКОтгрузке.КОтгрузкеОстаток КАК КОтгрузкеОстаток ПОМЕСТИТЬ ТоварыКОтгрузке ИЗ РегистрНакопления.ТоварыКОтгрузке.Остатки( , ВЫБОР КОГДА &ПоказатьОбособленныеТовары ТОГДА ИСТИНА ИНАЧЕ Назначение = ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка) КОНЕЦ) КАК ТоварыКОтгрузке ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РАЗРЕШЕННЫЕ &ТипЗаписиСейчас КАК ТипЗаписи, ТоварыКОтгрузке.Номенклатура КАК Номенклатура, ТоварыКОтгрузке.Характеристика КАК Характеристика, ТоварыКОтгрузке.Склад КАК Склад, ТоварыКОтгрузке.Назначение КАК Назначение, ТоварыКОтгрузке.ДокументОтгрузки КАК ЗаказНаОтгрузку, НЕОПРЕДЕЛЕНО КАК ЗаказНаПоступление, ДАТАВРЕМЯ(1, 1, 1) КАК ДатаДоступности, ТоварыКОтгрузке.КОтгрузкеОстаток КАК Отгружается, 0 КАК ВНаличии, 0 КАК Поступит, 0 КАК ВРезерве, 0 КАК Доступно, 0 КАК КОбеспечению ПОМЕСТИТЬ ТаблицаДанныхОтчета ИЗ ТоварыКОтгрузке КАК ТоварыКОтгрузке ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ &ТипЗаписиСейчас, ТоварыКОтгрузке.Номенклатура, ТоварыКОтгрузке.Характеристика, ТоварыКОтгрузке.Склад, ТоварыКОтгрузке.Назначение, НЕОПРЕДЕЛЕНО, НЕОПРЕДЕЛЕНО, ДАТАВРЕМЯ(1, 1, 1), 0, 0, 0, 0, 0, 0 ИЗ ТоварыКОтгрузке КАК ТоварыКОтгрузке ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ &ТипЗаписиНеОбеспечено, ИнформацияОДоступности.Номенклатура, ИнформацияОДоступности.Характеристика, ИнформацияОДоступности.Склад, ИнформацияОДоступности.Назначение, ИнформацияОДоступности.ЗаказНаОтгрузку, НЕОПРЕДЕЛЕНО, ДАТАВРЕМЯ(1, 1, 1), 0, 0, 0, 0, 0, ИнформацияОДоступности.Зарезервировано ИЗ РегистрСведений.РаспределениеЗапасов КАК ИнформацияОДоступности ГДЕ ИнформацияОДоступности.Состояние = ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ОжидаетсяПоНеподтвержденномуЗаказу) И ИнформацияОДоступности.Склад ССЫЛКА Справочник.Склады И ИнформацияОДоступности.Зарезервировано > 0 И ВЫБОР КОГДА &ПоказатьОбособленныеТовары ТОГДА ИСТИНА ИНАЧЕ ИнформацияОДоступности.Назначение = ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка) КОНЕЦ ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ &ТипЗаписиНеОбеспечено, ИнформацияОДоступности.Номенклатура, ИнформацияОДоступности.Характеристика, ИнформацияОДоступности.Склад, ИнформацияОДоступности.Назначение, ИнформацияОДоступности.ЗаказНаОтгрузку, НЕОПРЕДЕЛЕНО, ДАТАВРЕМЯ(1, 1, 1), 0, 0, 0, 0, 0, ИнформацияОДоступности.Обеспечено ИЗ РегистрСведений.РаспределениеЗапасов КАК ИнформацияОДоступности ГДЕ ИнформацияОДоступности.Состояние В (ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ОжидаетсяПоНеподтвержденномуЗаказу), ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ОбеспеченКДате), ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ОбеспеченНаСкладе)) И ИнформацияОДоступности.Склад ССЫЛКА Справочник.Склады И ИнформацияОДоступности.Обеспечено > 0 И ВЫБОР КОГДА &ПоказатьОбособленныеТовары ТОГДА ИСТИНА ИНАЧЕ ИнформацияОДоступности.Назначение = ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка) КОНЕЦ ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВЫБОР КОГДА ИнформацияОДоступности.Состояние = ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.Обеспечить) ТОГДА &ТипЗаписиНеОбеспечено КОГДА ИнформацияОДоступности.ДатаПоступления = ДАТАВРЕМЯ(1, 1, 1) ТОГДА &ТипЗаписиСейчас ИНАЧЕ &ТипЗаписиОжидается КОНЕЦ, ИнформацияОДоступности.Номенклатура, ИнформацияОДоступности.Характеристика, ИнформацияОДоступности.Склад, ИнформацияОДоступности.Назначение, ИнформацияОДоступности.ЗаказНаОтгрузку, ИнформацияОДоступности.ЗаказНаПоступление, ИнформацияОДоступности.ДатаПоступления, 0, 0, 0, ИнформацияОДоступности.Зарезервировано, ИнформацияОДоступности.Свободно, ИнформацияОДоступности.НеОбеспечено ИЗ РегистрСведений.РаспределениеЗапасов КАК ИнформацияОДоступности ГДЕ ИнформацияОДоступности.Состояние В (ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ОстатокНаСкладе), ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ОжидаемоеПоступление), ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ОбеспеченНаСкладе), ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ОбеспеченКДате), ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.Обеспечить), ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ВРезерве)) И (ИнформацияОДоступности.Зарезервировано <> 0 ИЛИ ИнформацияОДоступности.НеОбеспечено <> 0 ИЛИ ИнформацияОДоступности.Свободно <> 0) И ИнформацияОДоступности.Склад ССЫЛКА Справочник.Склады И ВЫБОР КОГДА &ПоказатьОбособленныеТовары ТОГДА ИСТИНА ИНАЧЕ ИнформацияОДоступности.Назначение = ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка) КОНЕЦ ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВЫБОР КОГДА ИнформацияОДоступности.ДатаСобытия = ДАТАВРЕМЯ(1, 1, 1) ТОГДА &ТипЗаписиСейчас ИНАЧЕ &ТипЗаписиОжидается КОНЕЦ, ИнформацияОДоступности.Номенклатура, ИнформацияОДоступности.Характеристика, ИнформацияОДоступности.Склад, ИнформацияОДоступности.Назначение, НЕОПРЕДЕЛЕНО, ИнформацияОДоступности.Заказ, ИнформацияОДоступности.ДатаСобытия, 0, ИнформацияОДоступности.ВНаличииОстаток, ИнформацияОДоступности.ПоступитОстаток, 0, 0, 0 ИЗ ЗапасыИПотребности КАК ИнформацияОДоступности ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ Таблица.Номенклатура КАК Номенклатура, Таблица.Характеристика КАК Характеристика, Таблица.Склад КАК Склад, Таблица.Назначение КАК Назначение, Таблица.ЗаказНаПоступление КАК ЗаказНаПоступление, Таблица.ДатаДоступности КАК ДатаДоступности, СУММА(Таблица.ВНаличии + Таблица.Поступит - Таблица.Доступно - Таблица.ВРезерве) КАК ВРезерве ПОМЕСТИТЬ ТаблицаКРаспределению ИЗ ТаблицаДанныхОтчета КАК Таблица СГРУППИРОВАТЬ ПО Таблица.Номенклатура, Таблица.Характеристика, Таблица.Склад, Таблица.Назначение, Таблица.ЗаказНаПоступление, Таблица.ДатаДоступности ИМЕЮЩИЕ СУММА(Таблица.ВНаличии + Таблица.Поступит - Таблица.Доступно) <> СУММА(Таблица.ВРезерве) ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РАЗРЕШЕННЫЕ Набор.ТипЗаписи КАК ТипЗаписи, Набор.Номенклатура КАК Номенклатура, Набор.Характеристика КАК Характеристика, Набор.Склад КАК Склад, Набор.Назначение КАК Назначение, Набор.ЗаказНаОтгрузку КАК ЗаказНаОтгрузку, Набор.ЗаказНаПоступление КАК ЗаказНаПоступление, СУММА(Набор.Отгружается) КАК Отгружается, СУММА(Набор.ВНаличии) КАК ВНаличии, СУММА(Набор.Поступит) КАК Поступит, СУММА(Набор.ВРезерве) КАК ВРезерве, СУММА(Набор.Доступно) КАК Доступно, СУММА(Набор.КОбеспечению) КАК КОбеспечению ПОМЕСТИТЬ ТаблицаДанныхОтчетаБезДополнительныхПолей ИЗ (ВЫБРАТЬ Таблица.ТипЗаписи КАК ТипЗаписи, Таблица.Номенклатура КАК Номенклатура, Таблица.Характеристика КАК Характеристика, Таблица.Склад КАК Склад, Таблица.Назначение КАК Назначение, Таблица.ЗаказНаОтгрузку КАК ЗаказНаОтгрузку, Таблица.ЗаказНаПоступление КАК ЗаказНаПоступление, Таблица.ДатаДоступности КАК ДатаДоступности, Таблица.Отгружается КАК Отгружается, Таблица.ВНаличии КАК ВНаличии, Таблица.Поступит КАК Поступит, Таблица.ВРезерве КАК ВРезерве, Таблица.Доступно КАК Доступно, Таблица.КОбеспечению КАК КОбеспечению ИЗ ТаблицаДанныхОтчета КАК Таблица ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВЫБОР КОГДА Таблица.ДатаДоступности = ДАТАВРЕМЯ(1, 1, 1) ТОГДА &ТипЗаписиСейчас ИНАЧЕ &ТипЗаписиОжидается КОНЕЦ, Таблица.Номенклатура, Таблица.Характеристика, Таблица.Склад, Таблица.Назначение, НЕОПРЕДЕЛЕНО, Таблица.ЗаказНаПоступление, Таблица.ДатаДоступности, 0, 0, 0, Таблица.ВРезерве, 0, 0 ИЗ ТаблицаКРаспределению КАК Таблица ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ &ТипЗаписиНеОбеспечено, Таблица.Номенклатура, Таблица.Характеристика, Таблица.Склад, Таблица.Назначение, НЕОПРЕДЕЛЕНО, НЕОПРЕДЕЛЕНО, ДАТАВРЕМЯ(1, 1, 1), 0, 0, 0, 0, 0, СУММА(Таблица.КОбеспечению - Таблица.ВРезерве) ИЗ (ВЫБРАТЬ ИнформацияОДоступности.Номенклатура КАК Номенклатура, ИнформацияОДоступности.Характеристика КАК Характеристика, ИнформацияОДоступности.Склад КАК Склад, ИнформацияОДоступности.Назначение КАК Назначение, 0 КАК ВРезерве, ИнформацияОДоступности.КОбеспечениюБезРезерва + ИнформацияОДоступности.ОтложитьРезервирование + ИнформацияОДоступности.РезервироватьПоМереПоступления + ИнформацияОДоступности.Резервировать КАК КОбеспечению ИЗ РегистрСведений.РаспределениеЗапасов КАК ИнформацияОДоступности ГДЕ ИнформацияОДоступности.Состояние = ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ОжидаемаяОтгрузка) И ИнформацияОДоступности.Склад ССЫЛКА Справочник.Склады И ВЫБОР КОГДА &ПоказатьОбособленныеТовары ТОГДА ИСТИНА ИНАЧЕ ИнформацияОДоступности.Назначение = ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка) КОНЕЦ ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ Таблица.Номенклатура, Таблица.Характеристика, Таблица.Склад, Таблица.Назначение, Таблица.ВРезерве, -Таблица.КОбеспечению ИЗ ТаблицаДанныхОтчета КАК Таблица ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ Таблица.Номенклатура, Таблица.Характеристика, Таблица.Склад, Таблица.Назначение, Таблица.ВРезерве, 0 ИЗ ТаблицаКРаспределению КАК Таблица) КАК Таблица СГРУППИРОВАТЬ ПО Таблица.Номенклатура, Таблица.Характеристика, Таблица.Склад, Таблица.Назначение ИМЕЮЩИЕ СУММА(Таблица.КОбеспечению - Таблица.ВРезерве) <> 0 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ &ТипЗаписиНеОбеспечено, План.Номенклатура, План.Характеристика, План.Склад, План.Назначение, План.ЗаказНаПроизводство, НЕОПРЕДЕЛЕНО, ДАТАВРЕМЯ(1, 1, 1), 0, 0, 0, 0, 0, План.Требуется ИЗ РегистрСведений.СтруктураЗаказа КАК План ГДЕ План.ВидСтроки = ЗНАЧЕНИЕ(Перечисление.ВидыСтрокСтруктурыЗаказаНаПроизводство.Потребление) И План.Склад ССЫЛКА Справочник.Склады И План.Требуется <> 0 И ВЫБОР КОГДА &ПоказатьОбособленныеТовары ТОГДА ИСТИНА ИНАЧЕ План.Назначение = ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка) КОНЕЦ ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ &ТипЗаписиОжидается, План.Номенклатура, План.Характеристика, План.Склад, План.Назначение, НЕОПРЕДЕЛЕНО, План.ЗаказНаПроизводство, ВЫБОР КОГДА План.ДатаПоступления = ДАТАВРЕМЯ(1, 1, 1) ТОГДА ДатыГрафика.Окончание ИНАЧЕ План.ДатаПоступления КОНЕЦ, 0, 0, ВЫБОР КОГДА План.ВидСтроки = ЗНАЧЕНИЕ(Перечисление.ВидыСтрокСтруктурыЗаказаНаПроизводство.ПроизводствоПродукции) ТОГДА 0 ИНАЧЕ План.Запланировано КОНЕЦ, 0, ВЫБОР КОГДА План.ВидСтроки = ЗНАЧЕНИЕ(Перечисление.ВидыСтрокСтруктурыЗаказаНаПроизводство.ПроизводствоПродукции) ТОГДА 0 ИНАЧЕ План.Запланировано КОНЕЦ, 0 ИЗ РегистрСведений.СтруктураЗаказа КАК План ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НормативныйГрафикСтруктурыЗаказа КАК ДатыГрафика ПО План.ЗаказНаПроизводство = ДатыГрафика.ЗаказНаПроизводство И План.КлючПартия = ДатыГрафика.КлючПартия И (ДатыГрафика.Этап = ЗНАЧЕНИЕ(Справочник.ЭтапыПроизводства.ПустаяСсылка)) ГДЕ План.Склад ССЫЛКА Справочник.Склады И План.Запланировано <> 0 И ВЫБОР КОГДА &ПоказатьОбособленныеТовары ТОГДА ИСТИНА ИНАЧЕ План.Назначение = ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка) КОНЕЦ) КАК Набор СГРУППИРОВАТЬ ПО Набор.ТипЗаписи, Набор.Номенклатура, Набор.Характеристика, Набор.Склад, Набор.Назначение, Набор.ЗаказНаОтгрузку, Набор.ЗаказНаПоступление ИМЕЮЩИЕ (СУММА(Набор.Отгружается) <> 0 ИЛИ СУММА(Набор.ВНаличии) <> 0 ИЛИ СУММА(Набор.Поступит) <> 0 ИЛИ СУММА(Набор.ВРезерве) <> 0 ИЛИ СУММА(Набор.Доступно) <> 0 ИЛИ СУММА(Набор.КОбеспечению) > 0) ИНДЕКСИРОВАТЬ ПО Номенклатура, Характеристика, Склад, Назначение ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ТаблицаСгруппированная.Номенклатура КАК Номенклатура, ТаблицаСгруппированная.Характеристика КАК Характеристика, ТаблицаСгруппированная.Склад КАК Склад, ТаблицаСгруппированная.Назначение КАК Назначение, ТаблицаСгруппированная.Отгружается КАК Отгружается, ВЫБОР КОГДА ТаблицаСгруппированная.КОбеспечению + ТаблицаСгруппированная.ВРезерве - ВЫБОР КОГДА ТаблицаСгруппированная.ВНаличии + ТаблицаСгруппированная.Поступит > 0 ТОГДА ТаблицаСгруппированная.ВНаличии + ТаблицаСгруппированная.Поступит ИНАЧЕ 0 КОНЕЦ > 0 ТОГДА ТаблицаСгруппированная.КОбеспечению + ТаблицаСгруппированная.ВРезерве - ВЫБОР КОГДА ТаблицаСгруппированная.ВНаличии + ТаблицаСгруппированная.Поступит > 0 ТОГДА ТаблицаСгруппированная.ВНаличии + ТаблицаСгруппированная.Поступит ИНАЧЕ 0 КОНЕЦ ИНАЧЕ 0 КОНЕЦ КАК Дефицит, ВЫБОР КОГДА ТаблицаСгруппированная.ВНаличии + ТаблицаСгруппированная.Поступит - ТаблицаСгруппированная.КОбеспечению - ТаблицаСгруппированная.ВРезерве > 0 ТОГДА ТаблицаСгруппированная.ВНаличии + ТаблицаСгруппированная.Поступит - ТаблицаСгруппированная.КОбеспечению - ТаблицаСгруппированная.ВРезерве КОГДА ТаблицаСгруппированная.ВНаличии + ТаблицаСгруппированная.Поступит < 0 ТОГДА ТаблицаСгруппированная.ВНаличии + ТаблицаСгруппированная.Поступит ИНАЧЕ 0 КОНЕЦ КАК Излишек ПОМЕСТИТЬ ТаблицаДанныхОтчетаСгруппированная ИЗ (ВЫБРАТЬ Таблица.Номенклатура КАК Номенклатура, Таблица.Характеристика КАК Характеристика, Таблица.Склад КАК Склад, Таблица.Назначение КАК Назначение, СУММА(Таблица.Отгружается) КАК Отгружается, СУММА(Таблица.ВНаличии) КАК ВНаличии, СУММА(Таблица.Поступит) КАК Поступит, СУММА(Таблица.ВРезерве) КАК ВРезерве, СУММА(Таблица.Доступно) КАК Доступно, СУММА(ВЫБОР КОГДА Таблица.КОбеспечению > 0 ТОГДА Таблица.КОбеспечению ИНАЧЕ 0 КОНЕЦ) КАК КОбеспечению ИЗ ТаблицаДанныхОтчетаБезДополнительныхПолей КАК Таблица СГРУППИРОВАТЬ ПО Таблица.Номенклатура, Таблица.Характеристика, Таблица.Склад, Таблица.Назначение) КАК ТаблицаСгруппированная ИНДЕКСИРОВАТЬ ПО Номенклатура, Характеристика, Склад, Назначение ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РАЗРЕШЕННЫЕ Таблица.ТипЗаписи КАК ТипЗаписи, Таблица.Номенклатура КАК Номенклатура, Таблица.Характеристика КАК Характеристика, Таблица.Склад КАК Склад, Таблица.Назначение КАК Назначение, Таблица.Отгружается КАК Отгружается, Таблица.ВНаличии + ЕСТЬNULL(ТаблицаСгруппированная.Отгружается, 0) КАК ВНаличии, Таблица.Поступит КАК Поступит, Таблица.ВРезерве КАК ВРезерве, Таблица.Доступно КАК Доступно, ЕСТЬNULL(ВЫБОР КОГДА Таблица.КОбеспечению > 0 ТОГДА Таблица.КОбеспечению ИНАЧЕ 0 КОНЕЦ, Таблица.КОбеспечению) КАК КОбеспечению, ЕСТЬNULL(ТаблицаСгруппированная.Дефицит, 0) КАК Дефицит, ЕСТЬNULL(ТаблицаСгруппированная.Излишек, 0) КАК Излишек, Таблица.Номенклатура.ЕдиницаИзмерения КАК ЕдиницаХранения, Таблица.Номенклатура.ЕдиницаДляОтчетов КАК ЕдиницаДляОтчетов, Таблица.Номенклатура.КоэффициентЕдиницыДляОтчетов КАК КоэффициентЕдиницыДляОтчетов, ПРЕДСТАВЛЕНИЕССЫЛКИ(Таблица.Назначение) КАК НазначениеПредставление, Таблица.Назначение.Наименование КАК НазначениеНаименование, ПРЕДСТАВЛЕНИЕССЫЛКИ(Таблица.Номенклатура) КАК НоменклатураПредставление, Таблица.Номенклатура.Артикул КАК НоменклатураАртикул, Таблица.Номенклатура.ЕдиницаДляОтчетов КАК НоменклатураЕдиницаДляОтчетов, Таблица.Номенклатура.ЕдиницаИзмерения КАК НоменклатураЕдиницаИзмерения, Таблица.Номенклатура.Наименование КАК НоменклатураНаименование, ПРЕДСТАВЛЕНИЕССЫЛКИ(Таблица.Склад) КАК СкладПредставление, ПРЕДСТАВЛЕНИЕССЫЛКИ(Таблица.Характеристика) КАК ХарактеристикаПредставление, Таблица.Характеристика.Наименование КАК ХарактеристикаНаименование ИЗ ТаблицаДанныхОтчетаБезДополнительныхПолей КАК Таблица ЛЕВОЕ СОЕДИНЕНИЕ ТаблицаДанныхОтчетаСгруппированная КАК ТаблицаСгруппированная ПО (ТаблицаСгруппированная.Номенклатура = Таблица.Номенклатура) И (ТаблицаСгруппированная.Характеристика = Таблица.Характеристика) И (ТаблицаСгруппированная.Склад = Таблица.Склад) И (ТаблицаСгруппированная.Назначение = Таблица.Назначение) И (Таблица.ЗаказНаОтгрузку = НЕОПРЕДЕЛЕНО) И (Таблица.ЗаказНаПоступление = НЕОПРЕДЕЛЕНО) И (Таблица.ТипЗаписи = &ТипЗаписиСейчас) ГДЕ (Таблица.Отгружается <> 0 ИЛИ Таблица.ВНаличии + ЕСТЬNULL(ТаблицаСгруппированная.Отгружается, 0) <> 0 ИЛИ Таблица.Поступит <> 0 ИЛИ Таблица.ВРезерве <> 0 ИЛИ Таблица.Доступно <> 0 ИЛИ Таблица.КОбеспечению > 0) ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ &ТипЗаписиСейчас, Таблица.Номенклатура, Таблица.Характеристика, Таблица.Склад, Таблица.Назначение, 0, Таблица.Отгружается, 0, 0, 0, 0, Таблица.Дефицит, Таблица.Излишек, Таблица.Номенклатура.ЕдиницаИзмерения, Таблица.Номенклатура.ЕдиницаДляОтчетов, Таблица.Номенклатура.КоэффициентЕдиницыДляОтчетов, ПРЕДСТАВЛЕНИЕССЫЛКИ(Таблица.Назначение), Таблица.Назначение.Наименование, ПРЕДСТАВЛЕНИЕССЫЛКИ(Таблица.Номенклатура), Таблица.Номенклатура.Артикул, Таблица.Номенклатура.ЕдиницаДляОтчетов, Таблица.Номенклатура.ЕдиницаИзмерения, Таблица.Номенклатура.Наименование, ПРЕДСТАВЛЕНИЕССЫЛКИ(Таблица.Склад), ПРЕДСТАВЛЕНИЕССЫЛКИ(Таблица.Характеристика), Таблица.Характеристика.Наименование ИЗ ТаблицаДанныхОтчетаСгруппированная КАК Таблица ЛЕВОЕ СОЕДИНЕНИЕ ТаблицаДанныхОтчетаБезДополнительныхПолей КАК ТаблицаДанных ПО (ТаблицаДанных.Номенклатура = Таблица.Номенклатура) И (ТаблицаДанных.Характеристика = Таблица.Характеристика) И (ТаблицаДанных.Склад = Таблица.Склад) И (ТаблицаДанных.Назначение = Таблица.Назначение) И (ТаблицаДанных.ЗаказНаОтгрузку = НЕОПРЕДЕЛЕНО) И (ТаблицаДанных.ЗаказНаПоступление = НЕОПРЕДЕЛЕНО) И (ТаблицаДанных.ТипЗаписи = &ТипЗаписиСейчас) ГДЕ ТаблицаДанных.Номенклатура ЕСТЬ NULL И (Таблица.Отгружается <> 0 ИЛИ Таблица.Дефицит <> 0 ИЛИ Таблица.Излишек <> 0)

На этапе настройки набора данных оставляем все без изменений.

Пропускаем этап настройки вычисляемых полей. Затем выбираем подключение и создаем таблицу-приемник (6 и 7 этапы инструкции по созданию проекта). На этапе сопоставления полей снимаем флаги для сегмента.

Этап расширенных настроек пропускаем и завершаем настройку проекта.

Затем задаем наименование проекту в соответствующем поле и выполняем полную выгрузку: нажимаем поочередно кнопки «Записать», «Сформировать очередь» и «Выполнить проект».