Имя: Пароль:
1C
1С v8
Запрос для универсального отчета
0 Domanoff26
 
12.10.11
15:48
в консоли работает, а вот с построителями по отборам (универсальный отчет) выдает только номенклатуру остальные поля пустые, не могу понять в чем дело, есть подозрения что отбор ложится на обе таблицы (склад - размещение),но имена вроде заданы нормальные
ВЫБРАТЬ
   УчетТоваровОстатки.КоличествоОстаток КАК КоличествоЗаказаноУпоставщиков,
   УчетТоваровОстатки.Размещение.Склад,
   УчетТоваровОстатки.Номенклатура,
   УчетТоваровОстатки.Размещение КАК Счет
ПОМЕСТИТЬ ВТ_Заказано
ИЗ
   РегистрНакопления.УчетТоваров.Остатки КАК УчетТоваровОстатки
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   УчетТоваровОстатки.Номенклатура,
   УчетТоваровОстатки.ХарактеристикаНоменклатуры,
   УчетТоваровОстатки.СерияНоменклатуры,
   УчетТоваровОстатки.Заказ,
   УчетТоваровОстатки.Размещение,
   ВЫБОР
       КОГДА УчетТоваровОстатки.Размещение ССЫЛКА Справочник.Склады
           ТОГДА УчетТоваровОстатки.КоличествоОстаток
       ИНАЧЕ NULL
   КОНЕЦ КАК КоличествоОстаток,
   ВЫБОР
       КОГДА УчетТоваровОстатки.Заказ <> НЕОПРЕДЕЛЕНО
           ТОГДА УчетТоваровОстатки.КоличествоОстаток
       ИНАЧЕ NULL
   КОНЕЦ КАК КоличествоВРезерве,
   ВЫБОР
       КОГДА УчетТоваровОстатки.Размещение ССЫЛКА Справочник.Склады
               И УчетТоваровОстатки.Заказ = НЕОПРЕДЕЛЕНО
           ТОГДА УчетТоваровОстатки.КоличествоОстаток
       ИНАЧЕ NULL
   КОНЕЦ КАК СвободныйОстаток,
   ВТ_Заказано.Счет,
   ВТ_Заказано.КоличествоЗаказаноУпоставщиков
ИЗ
   РегистрНакопления.УчетТоваров.Остатки(&Кон, Размещение = &Склад) КАК УчетТоваровОстатки
       ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Заказано КАК ВТ_Заказано
       ПО УчетТоваровОстатки.Размещение = ВТ_Заказано.РазмещениеСклад
           И УчетТоваровОстатки.Номенклатура = ВТ_Заказано.Номенклатура
1 Domanoff26
 
12.10.11
15:48
с построителем
"ВЫБРАТЬ
    |    УчетТоваровОстатки.КоличествоОстаток КАК КоличествоЗаказаноУпоставщиков,
    |    УчетТоваровОстатки.Размещение.Склад,
    |    УчетТоваровОстатки.Номенклатура,
    |    УчетТоваровОстатки.Размещение КАК Счет
    |ПОМЕСТИТЬ ВТ_Заказано
    |ИЗ
    |    РегистрНакопления.УчетТоваров.Остатки КАК УчетТоваровОстатки
    |;
    |
    |////////////////////////////////////////////////////////////////////////////////
    |ВЫБРАТЬ
    |    УчетТоваровОстатки.Номенклатура,
    |    УчетТоваровОстатки.ХарактеристикаНоменклатуры,
    |    УчетТоваровОстатки.СерияНоменклатуры,
    |    УчетТоваровОстатки.Заказ,
    |    УчетТоваровОстатки.Размещение,
    |    ВЫБОР
    |        КОГДА УчетТоваровОстатки.Размещение ССЫЛКА Справочник.Склады
    |            ТОГДА УчетТоваровОстатки.КоличествоОстаток
    |        ИНАЧЕ NULL
    |    КОНЕЦ КАК КоличествоОстаток,
    |    ВЫБОР
    |        КОГДА УчетТоваровОстатки.Заказ <> НЕОПРЕДЕЛЕНО
    |            ТОГДА УчетТоваровОстатки.КоличествоОстаток
    |        ИНАЧЕ NULL
    |    КОНЕЦ КАК КоличествоВРезерве,
    |    ВЫБОР
    |        КОГДА УчетТоваровОстатки.Размещение ССЫЛКА Справочник.Склады
    |                И УчетТоваровОстатки.Заказ = НЕОПРЕДЕЛЕНО
    |            ТОГДА УчетТоваровОстатки.КоличествоОстаток
    |        ИНАЧЕ NULL
    |    КОНЕЦ КАК СвободныйОстаток,
    |    ВТ_Заказано.Счет,
    |    ВТ_Заказано.КоличествоЗаказаноУпоставщиков
    |{ВЫБРАТЬ
    |    Номенклатура.*,
    |    ХарактеристикаНоменклатуры.*,
    |    СерияНоменклатуры.*,
    |    Заказ.*,
    |    Размещение.*,
    |    КоличествоОстаток,
    |    КоличествоВРезерве,
    |    СвободныйОстаток,
    |    Счет.*,
    |    КоличествоЗаказаноУпоставщиков}
    |ИЗ
    |    РегистрНакопления.УчетТоваров.Остатки КАК УчетТоваровОстатки
    |        ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Заказано КАК ВТ_Заказано
    |        ПО УчетТоваровОстатки.Размещение = ВТ_Заказано.РазмещениеСклад
    |            И УчетТоваровОстатки.Номенклатура = ВТ_Заказано.Номенклатура
    |{ГДЕ
    |    (ВЫБОР
    |            КОГДА УчетТоваровОстатки.Размещение ССЫЛКА Справочник.Склады
    |                ТОГДА УчетТоваровОстатки.КоличествоОстаток
    |            ИНАЧЕ NULL
    |        КОНЕЦ) КАК КоличествоОстаток,
    |    (ВЫБОР
    |            КОГДА УчетТоваровОстатки.Заказ <> НЕОПРЕДЕЛЕНО
    |                ТОГДА УчетТоваровОстатки.КоличествоОстаток
    |            ИНАЧЕ NULL
    |        КОНЕЦ) КАК КоличествоВрезерве,
    |    (ВЫБОР
    |            КОГДА УчетТоваровОстатки.Размещение ССЫЛКА Справочник.Склады
    |                    И УчетТоваровОстатки.Заказ = НЕОПРЕДЕЛЕНО
    |                ТОГДА УчетТоваровОстатки.КоличествоОстаток
    |            ИНАЧЕ NULL
    |        КОНЕЦ) КАК СвободныйОстаток,
    |    УчетТоваровОстатки.Размещение.*,
    |    УчетТоваровОстатки.Заказ.*,
    |    УчетТоваровОстатки.Номенклатура.*,
    |    ВТ_Заказано.Счет.*,
    |    ВТ_Заказано.КоличествоЗаказаноУпоставщиков}
    |{УПОРЯДОЧИТЬ ПО
    |    Номенклатура.*,
    |    ХарактеристикаНоменклатуры.*,
    |    СерияНоменклатуры.*,
    |    Заказ.*,
    |    Размещение.*,
    |    КоличествоОстаток,
    |    КоличествоВРезерве,
    |    СвободныйОстаток,
    |    Счет.*,
    |    КоличествоЗаказаноУпоставщиков}
    |{ИТОГИ ПО
    |    Номенклатура.*,
    |    ХарактеристикаНоменклатуры.*,
    |    СерияНоменклатуры.*,
    |    Заказ.*,
    |    Размещение.*,
    |    КоличествоОстаток,
    |    КоличествоВРезерве,
    |    СвободныйОстаток,
    |    Счет.*,
    |    КоличествоЗаказаноУпоставщиков}"
2 Domanoff26
 
12.10.11
16:01
С временными таблицами можно хоть в универсальном отчете работать?
3 Axel2009
 
12.10.11
16:07
можно. где выдает только номенклатуру. ниче не понятно.
4 ilya_i
 
12.10.11
16:22
понапиши псевдонимов, и в конструкциях построителя в том числе
5 Domanoff26
 
12.10.11
16:32
(4) исправил , работает но только без врТабл,
6 Domanoff26
 
12.10.11
16:33
Если УниверсальныйОтчет.ИспользоватьСвойстваИКатегории Тогда
       
       // Добавление свойств и категорий поля запроса в таблицу полей.
       // Необходимо вызывать для каждого поля запроса, предоставляющего возможность использования свойств и категорий.
       
       // УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля(<ПсевдонимТаблицы>.<Поле> , <ПсевдонимПоля>, <Представление>, <Назначение>);
       УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля("УчетТоваровОстатки.Номенклатура", "Номенклатура", "Номенклатура", ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_Номенклатура);
       УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля("УчетТоваровОстатки.ХарактеристикаНоменклатуры", "ХарактеристикаНоменклатуры", "Характеристика номенклатуры", ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_ХарактеристикиНоменклатуры);
       УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля("УчетТоваровОстатки.Размещение", "Склад", "Склад", ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_Склады);
       УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля("УчетТоваровОстатки.Заказ", "Заказ", "Заказ", ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Документы);
      УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля("ВТ_Заказано.Счет", "Счет", "Счет", ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Документы);

       // Добавление свойств и категорий в исходный текст запроса.
       УниверсальныйОтчет.ДобавитьВТекстЗапросаСвойстваИКатегории(ТекстЗапроса);
       
   КонецЕсли;
       
   // Инициализация текста запроса построителя отчета
   УниверсальныйОтчет.ПостроительОтчета.Текст = ТекстЗапроса;
       ПолеРазмещение = УниверсальныйОтчет.ПостроительОтчета.ДоступныеПоля.Найти("Размещение");
Если ПолеРазмещение <> Неопределено Тогда
ПолеРазмещение.ТипЗначения = Новый ОписаниеТипов("СправочникСсылка.Склады");
   КонецЕсли;

   // Представления полей отчета.
   // Необходимо вызывать для каждого поля запроса.
   // УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить(<ИмяПоля>, <ПредставлениеПоля>);
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Размещение", "Склад");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Номенклатура", "Номенклатура");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ХарактеристикаНоменклатуры", "Характеристика номенклатуры");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СерияНоменклатуры", "Серия номенклатуры");
   //УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Качество", "Качество");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Счет", "Счет");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Заказ", "Заказ");

   
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КоличествоОстаток", "Остаток (в ед. хранения)");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КоличествоВРезерве", "Зарезервировано (в ед. хранения)");
   //УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КоличествоКПолучению", "К получению (в ед. хранения)");
   //УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КоличествоКПередаче", "К передаче (в ед. хранения)");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КоличествоЗаказаноУПоставщика", "Заказано у поставщиков (в ед. хранения)");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СвободныйОстаток", "Свободный остаток (в ед. хранения)");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Размещение", "Склад");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Номенклатура", "Номенклатура");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Счет", "Счет");
7 Domanoff26
 
12.10.11
16:34
а поля соединений нужно в построитель и в структуры полей вводить?
8 Domanoff26
 
12.10.11
17:28
Никто не знает где задается отображение Параметров во отчете (в шапке которые) прописью ОТбор такой то и т.п
9 Domanoff26
 
12.10.11
17:28
в универсальном всмысле