| 
    
            
         
         | 
    
  | 
Как в построитель отчета засунуть менеджер временных таблиц? | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        Anchel74    
     22.03.12 
            ✎
    12:25 
 | 
         
        В общем, необходимо сделать отчет на базе универсального отчета.
  
        Проблема в том, что необходимо было преобразовать значение из строки в число, что в запросе невозможно. Поэтому решили сначала отдельно преобразовать нужные значения с созданием ТЗ, а далее помещать ее в запрос. Но в построителе отчета никак не пойму как сделать менеджер временных таблиц. Подскажите, плиз, решение) вот текущий код: ТекстЗапроса = " Выбрать | Значение(Справочник.СерииНоменклатуры.ПустаяСсылка) как СерияНоменклатуры, | ВЫРАЗИТЬ(0 КАК ЧИСЛО(15, 8)) как НомерСерии | ПОМЕСТИТЬ ТаблицаСерий; | |ВЫБРАТЬ РАЗРЕШЕННЫЕ | ВложенныйЗапрос.Период, | ВложенныйЗапрос.Регистратор, | ВложенныйЗапрос.Склад, | ВложенныйЗапрос.Номенклатура, | ВложенныйЗапрос.Качество, | ВложенныйЗапрос.ХарактеристикаНоменклатуры, | ВложенныйЗапрос.СерияНоменклатуры, | ВложенныйЗапрос.КоличествоНачальныйОстаток, | ВложенныйЗапрос.КоличествоПриход, | ВложенныйЗапрос.КоличествоРасход, | ВложенныйЗапрос.КоличествоОборот, | ВложенныйЗапрос.КоличествоКонечныйОстаток, | ВложенныйЗапрос.КоличествоНачальныйОстатокВШт, | ВложенныйЗапрос.КоличествоПриходВШт, | ВложенныйЗапрос.КоличествоРасходВШт, | ВложенныйЗапрос.КоличествоОборотВШт, | ВложенныйЗапрос.КоличествоКонечныйОстатокВШт, | НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, ДЕНЬ) КАК ПериодДень, | НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, НЕДЕЛЯ) КАК ПериодНеделя, | НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, ДЕКАДА) КАК ПериодДекада, | НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, МЕСЯЦ) КАК ПериодМесяц, | НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, КВАРТАЛ) КАК ПериодКвартал, | НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, ПОЛУГОДИЕ) КАК ПериодПолугодие, | НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, ГОД) КАК ПериодГод |ИЗ | (ВЫБРАТЬ | ТоварыНаСкладахОстаткиИОбороты.Период КАК Период, | ТоварыНаСкладахОстаткиИОбороты.Регистратор КАК Регистратор, | ТоварыНаСкладахОстаткиИОбороты.Склад КАК Склад, | ТоварыНаСкладахОстаткиИОбороты.Номенклатура КАК Номенклатура, | ТоварыНаСкладахОстаткиИОбороты.Качество КАК Качество, | ТоварыНаСкладахОстаткиИОбороты.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры, | ТоварыНаСкладахОстаткиИОбороты.СерияНоменклатуры КАК СерияНоменклатуры, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток) КАК КоличествоНачальныйОстаток, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток) КАК КоличествоКонечныйОстаток, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоОборот) КАК КоличествоОборот, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоПриход) КАК КоличествоПриход, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход) КАК КоличествоРасход, | СУММА(ВЫБОР | КОГДА ЕСТЬNULL(ТаблицаСерий.НомерСерии, 0) > 0 | ТОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток / ТаблицаСерий.НомерСерии | ИНАЧЕ 0 | КОНЕЦ) КАК КоличествоНачальныйОстатокВШт, | СУММА(ВЫБОР | КОГДА ЕСТЬNULL(ТаблицаСерий.НомерСерии, 0) > 0 | ТОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток / ТаблицаСерий.НомерСерии | ИНАЧЕ 0 | КОНЕЦ) КАК КоличествоКонечныйОстатокВШт, | СУММА(ВЫБОР | КОГДА ЕСТЬNULL(ТаблицаСерий.НомерСерии, 0) > 0 | ТОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоОборот / ТаблицаСерий.НомерСерии | ИНАЧЕ 0 | КОНЕЦ) КАК КоличествоОборотВШт, | СУММА(ВЫБОР | КОГДА ЕСТЬNULL(ТаблицаСерий.НомерСерии, 0) > 0 | ТОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоПриход / ТаблицаСерий.НомерСерии | ИНАЧЕ 0 | КОНЕЦ) КАК КоличествоПриходВШт, | СУММА(ВЫБОР | КОГДА ЕСТЬNULL(ТаблицаСерий.НомерСерии, 0) > 0 | ТОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход / ТаблицаСерий.НомерСерии | ИНАЧЕ 0 | КОНЕЦ) КАК КоличествоРасходВШт | ИЗ | РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&ДатаНач, &ДатаКон, Регистратор {(&Периодичность)}, ДвиженияИГраницыПериода, ) КАК ТоварыНаСкладахОстаткиИОбороты | ЛЕВОЕ СОЕДИНЕНИЕ ТаблицаСерий КАК ТаблицаСерий | ПО ТоварыНаСкладахОстаткиИОбороты.СерияНоменклатуры = ТаблицаСерий.СерияНоменклатуры | | СГРУППИРОВАТЬ ПО | ТоварыНаСкладахОстаткиИОбороты.Склад, | ТоварыНаСкладахОстаткиИОбороты.Номенклатура, | ТоварыНаСкладахОстаткиИОбороты.Регистратор, | ТоварыНаСкладахОстаткиИОбороты.Качество, | ТоварыНаСкладахОстаткиИОбороты.СерияНоменклатуры, | ТоварыНаСкладахОстаткиИОбороты.ХарактеристикаНоменклатуры, | ТоварыНаСкладахОстаткиИОбороты.Период) КАК ВложенныйЗапрос |ИТОГИ ПО | ОБЩИЕ";  | 
|||
| 
    1
    
        le_    
     22.03.12 
            ✎
    12:32 
 | 
         
        Через ОписаниеИсточникаДанных можно попробовать ТЗ построителю передать.     
         | 
|||
| 
    2
    
        Anchel74    
     23.03.12 
            ✎
    08:47 
 | 
         
        сделала через источник данных, но при формировании отчета не выводятся показатели по измерениям, ставлю "показывать детальные записи" в истина, выводятся. Делала все стандартно, как нужно формировать универсальный отчет. Может при использовании источника данных нужны еще какие то специальные настройки?     
         | 
|||
| 
    3
    
        Anchel74    
     23.03.12 
            ✎
    09:36 
 | 
         
        вот код:
  
        Процедура УстановитьНачальныеНастройки(ДополнительныеПараметры = Неопределено) Экспорт УниверсальныйОтчет.мНазваниеОтчета = СокрЛП(ЭтотОбъект.Метаданные().Синоним); УниверсальныйОтчет.мВыбиратьИмяРегистра = Ложь; Если УниверсальныйОтчет.ДатаНач=Дата(0001,01,01) Тогда УниверсальныйОтчет.ДатаНач=НачалоМесяца(ТекущаяДата()); КонецЕсли; ТаблицаСерий=Новый ТаблицаЗначений; Массив = Новый Массив; Массив.Добавить(Тип("СправочникСсылка.СерииНоменклатуры")); ТаблицаСерий.Колонки.Добавить("Серия", Новый ОписаниеТипов(Массив)); Массив.Очистить(); Массив.Добавить(Тип("Число")); КЧ = Новый КвалификаторыЧисла(15,8); ТаблицаСерий.Колонки.Добавить("НомерСерии", Новый ОписаниеТипов(Массив,,,КЧ)); Запр=Новый Запрос("ВЫБРАТЬ | ВложенныйЗапрос.СерияНоменклатуры КАК СерияНоменклатуры, | ВложенныйЗапрос.Склад КАК Склад, | ВложенныйЗапрос.Номенклатура КАК Номенклатура, | ВложенныйЗапрос.Качество КАК Качество, | ВложенныйЗапрос.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры, | ВложенныйЗапрос.СерияНоменклатуры.СерийныйНомер КАК СерийныйНомер |ИЗ | (ВЫБРАТЬ | ТоварыНаСкладахОстаткиИОбороты.СерияНоменклатуры КАК СерияНоменклатуры, | ТоварыНаСкладахОстаткиИОбороты.Склад КАК Склад, | ТоварыНаСкладахОстаткиИОбороты.Номенклатура КАК Номенклатура, | ТоварыНаСкладахОстаткиИОбороты.Качество КАК Качество, | ТоварыНаСкладахОстаткиИОбороты.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры | ИЗ | РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&ДатаНач, &ДатаКон, Регистратор, ДвиженияИГраницыПериода, ) КАК ТоварыНаСкладахОстаткиИОбороты | ГДЕ | ТоварыНаСкладахОстаткиИОбороты.СерияНоменклатуры <> ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка)) КАК ВложенныйЗапрос |ГДЕ | ВложенныйЗапрос.СерияНоменклатуры.СерийныйНомер <> """""); Запр.УстановитьПараметр("ДатаНач", УниверсальныйОтчет.ДатаНач); Запр.УстановитьПараметр("ДатаКон", УниверсальныйОтчет.ДатаКон); Выборка=Запр.Выполнить().Выбрать(); //Выборка=Справочники.СерииНоменклатуры.Выбрать(); Пока Выборка.Следующий() цикл Если ЗначениеЗаполнено(Выборка.СерийныйНомер) Тогда Попытка НовСтр=ТаблицаСерий.Добавить(); НовСтр.Серия=Выборка.СерияНоменклатуры; НовСтр.НомерСерии=Число(Выборка.СерийныйНомер); //сообщить(Выборка.СерияНоменклатуры); Исключение КонецПопытки; КонецЕсли; КонецЦикла; Запрос=Новый Запрос; Запрос.МенеджерВременныхТаблиц=новый МенеджерВременныхТаблиц; Запрос.УстановитьПараметр("ВнТаб", ТаблицаСерий); Запрос.УстановитьПараметр("ДатаНач", УниверсальныйОтчет.ДатаНач); Запрос.УстановитьПараметр("ДатаКон", УниверсальныйОтчет.ДатаКон); ТекстЗапроса = "ВЫБРАТЬ | ТабСерий.Серия КАК СерияНоменклатуры, | ТабСерий.НомерСерии КАК НомерСерии |ПОМЕСТИТЬ ТаблицаСерий |ИЗ | &ВнТаб КАК ТабСерий |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ РАЗРЕШЕННЫЕ | ВложенныйЗапрос.Период КАК Период, | ВложенныйЗапрос.Регистратор КАК Регистратор, | ВложенныйЗапрос.Склад КАК Склад, | ВложенныйЗапрос.Номенклатура КАК Номенклатура, | ВложенныйЗапрос.Качество КАК Качество, | ВложенныйЗапрос.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры, | ВложенныйЗапрос.СерияНоменклатуры КАК СерияНоменклатуры, | ВложенныйЗапрос.КоличествоНачальныйОстаток КАК КоличествоНачальныйОстаток, | ВложенныйЗапрос.КоличествоПриход КАК КоличествоПриход, | ВложенныйЗапрос.КоличествоРасход КАК КоличествоРасход, | ВложенныйЗапрос.КоличествоОборот КАК КоличествоОборот, | ВложенныйЗапрос.КоличествоКонечныйОстаток КАК КоличествоКонечныйОстаток, | ВложенныйЗапрос.КоличествоНачальныйОстатокВШт КАК КоличествоНачальныйОстатокВШт, | ВложенныйЗапрос.КоличествоПриходВШт КАК КоличествоПриходВШт, | ВложенныйЗапрос.КоличествоРасходВШт КАК КоличествоРасходВШт, | ВложенныйЗапрос.КоличествоОборотВШт КАК КоличествоОборотВШт, | ВложенныйЗапрос.КоличествоКонечныйОстатокВШт КАК КоличествоКонечныйОстатокВШт, | НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, ДЕНЬ) КАК ПериодДень, | НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, НЕДЕЛЯ) КАК ПериодНеделя, | НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, ДЕКАДА) КАК ПериодДекада, | НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, МЕСЯЦ) КАК ПериодМесяц, | НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, КВАРТАЛ) КАК ПериодКвартал, | НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, ПОЛУГОДИЕ) КАК ПериодПолугодие, | НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, ГОД) КАК ПериодГод |{ВЫБРАТЬ | Склад.*, | Номенклатура.*, | Качество.*, | ХарактеристикаНоменклатуры.*, | СерияНоменклатуры.*, | Регистратор.*, | Период, | ПериодДень, | ПериодНеделя, | ПериодДекада, | ПериодМесяц, | ПериодКвартал, | ПериодПолугодие, | ПериодГод, | КоличествоНачальныйОстаток, | КоличествоПриход, | КоличествоРасход, | КоличествоОборот, | КоличествоКонечныйОстаток, | КоличествоНачальныйОстатокВШт, | КоличествоПриходВШт, | КоличествоРасходВШт, | КоличествоОборотВШт, | КоличествоКонечныйОстатокВШт} |ИЗ | (ВЫБРАТЬ | ТоварыНаСкладахОстаткиИОбороты.Период КАК Период, | ТоварыНаСкладахОстаткиИОбороты.Регистратор КАК Регистратор, | ТоварыНаСкладахОстаткиИОбороты.Склад КАК Склад, | ТоварыНаСкладахОстаткиИОбороты.Номенклатура КАК Номенклатура, | ТоварыНаСкладахОстаткиИОбороты.Качество КАК Качество, | ТоварыНаСкладахОстаткиИОбороты.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры, | ТоварыНаСкладахОстаткиИОбороты.СерияНоменклатуры КАК СерияНоменклатуры, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток) КАК КоличествоНачальныйОстаток, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток) КАК КоличествоКонечныйОстаток, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоОборот) КАК КоличествоОборот, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоПриход) КАК КоличествоПриход, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход) КАК КоличествоРасход, | СУММА(ВЫБОР | КОГДА ЕСТЬNULL(ТаблицаСерий.НомерСерии, 0) > 0 | ТОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток / ТаблицаСерий.НомерСерии | ИНАЧЕ 0 | КОНЕЦ) КАК КоличествоНачальныйОстатокВШт, | СУММА(ВЫБОР | КОГДА ЕСТЬNULL(ТаблицаСерий.НомерСерии, 0) > 0 | ТОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток / ТаблицаСерий.НомерСерии | ИНАЧЕ 0 | КОНЕЦ) КАК КоличествоКонечныйОстатокВШт, | СУММА(ВЫБОР | КОГДА ЕСТЬNULL(ТаблицаСерий.НомерСерии, 0) > 0 | ТОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоОборот / ТаблицаСерий.НомерСерии | ИНАЧЕ 0 | КОНЕЦ) КАК КоличествоОборотВШт, | СУММА(ВЫБОР | КОГДА ЕСТЬNULL(ТаблицаСерий.НомерСерии, 0) > 0 | ТОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоПриход / ТаблицаСерий.НомерСерии | ИНАЧЕ 0 | КОНЕЦ) КАК КоличествоПриходВШт, | СУММА(ВЫБОР | КОГДА ЕСТЬNULL(ТаблицаСерий.НомерСерии, 0) > 0 | ТОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход / ТаблицаСерий.НомерСерии | ИНАЧЕ 0 | КОНЕЦ) КАК КоличествоРасходВШт | ИЗ | РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&ДатаНач, &ДатаКон, Регистратор {(&Периодичность)}, ДвиженияИГраницыПериода, ) КАК ТоварыНаСкладахОстаткиИОбороты | ПОЛНОЕ СОЕДИНЕНИЕ ТаблицаСерий КАК ТаблицаСерий | ПО ТоварыНаСкладахОстаткиИОбороты.СерияНоменклатуры = ТаблицаСерий.СерияНоменклатуры | | СГРУППИРОВАТЬ ПО | ТоварыНаСкладахОстаткиИОбороты.Регистратор, | ТоварыНаСкладахОстаткиИОбороты.СерияНоменклатуры, | ТоварыНаСкладахОстаткиИОбороты.ХарактеристикаНоменклатуры, | ТоварыНаСкладахОстаткиИОбороты.Качество, | ТоварыНаСкладахОстаткиИОбороты.Период, | ТоварыНаСкладахОстаткиИОбороты.Номенклатура, | ТоварыНаСкладахОстаткиИОбороты.Склад) КАК ВложенныйЗапрос |{ГДЕ | ВложенныйЗапрос.Склад.*, | ВложенныйЗапрос.Номенклатура.*, | ВложенныйЗапрос.Качество.*, | ВложенныйЗапрос.ХарактеристикаНоменклатуры.*, | ВложенныйЗапрос.СерияНоменклатуры.*, | ВложенныйЗапрос.КоличествоНачальныйОстаток, | ВложенныйЗапрос.КоличествоПриход, | ВложенныйЗапрос.КоличествоРасход, | ВложенныйЗапрос.КоличествоОборот, | ВложенныйЗапрос.КоличествоКонечныйОстаток, | ВложенныйЗапрос.КоличествоНачальныйОстатокВШт, | ВложенныйЗапрос.КоличествоПриходВШт, | ВложенныйЗапрос.КоличествоРасходВШт, | ВложенныйЗапрос.КоличествоОборотВШт, | ВложенныйЗапрос.КоличествоКонечныйОстатокВШт, | ВложенныйЗапрос.Период, | (НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, ДЕНЬ)) КАК ПериодДень, | (НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, НЕДЕЛЯ)) КАК ПериодНеделя, | (НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, ДЕКАДА)) КАК ПериодДекада, | (НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, МЕСЯЦ)) КАК ПериодМесяц, | (НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, КВАРТАЛ)) КАК ПериодКвартал, | (НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, ПОЛУГОДИЕ)) КАК ПериодПолугодие, | (НАЧАЛОПЕРИОДА(ВложенныйЗапрос.Период, ГОД)) КАК ПериодГод} |{УПОРЯДОЧИТЬ ПО | Склад.*, | Номенклатура.*, | Качество.*, | ХарактеристикаНоменклатуры.*, | СерияНоменклатуры.*, | КоличествоНачальныйОстаток, | КоличествоПриход, | КоличествоРасход, | КоличествоОборот, | КоличествоКонечныйОстаток, | КоличествоНачальныйОстатокВШт, | КоличествоПриходВШт, | КоличествоРасходВШт, | КоличествоОборотВШт, | КоличествоКонечныйОстатокВШт, | ПериодДень, | ПериодНеделя, | ПериодДекада, | ПериодМесяц, | ПериодКвартал, | ПериодПолугодие, | ПериодГод} |ИТОГИ | СУММА(КоличествоНачальныйОстаток), | СУММА(КоличествоПриход), | СУММА(КоличествоРасход), | СУММА(КоличествоОборот), | СУММА(КоличествоКонечныйОстаток), | СУММА(КоличествоНачальныйОстатокВШт), | СУММА(КоличествоПриходВШт), | СУММА(КоличествоРасходВШт), | СУММА(КоличествоОборотВШт), | СУММА(КоличествоКонечныйОстатокВШт) |ПО | ОБЩИЕ |{ИТОГИ ПО | Склад.*, | Номенклатура.*, | Качество.*, | ХарактеристикаНоменклатуры.*, | СерияНоменклатуры.*, | Регистратор.*, | Период, | ПериодДень, | ПериодНеделя, | ПериодДекада, | ПериодМесяц, | ПериодКвартал, | ПериодПолугодие, | ПериодГод}"; Запрос.Текст=ТекстЗапроса; Рез=Запрос.Выполнить(); Таблица=Рез.Выгрузить(); //УниверсальныйОтчет.ПостроительОтчета.Текст = ТекстЗапроса; ИсточникДанных=Новый ОписаниеИсточникаДанных(Таблица); ИсточникДанных.Колонки.Склад.Измерение = истина; ИсточникДанных.Колонки.Номенклатура.Измерение = истина; ИсточникДанных.Колонки.ХарактеристикаНоменклатуры.Измерение = истина; ИсточникДанных.Колонки.СерияНоменклатуры.Измерение = истина; ИсточникДанных.Колонки.Качество.Измерение = истина; УниверсальныйОтчет.ПостроительОтчета.ИсточникДанных=ИсточникДанных; УниверсальныйОтчет.ПостроительОтчета.ЗаполнитьНастройки(); УниверсальныйОтчет.ПостроительОтчета.ПолучитьЗапрос().УстановитьПараметр("ВнешТаб", ТаблицаСерий); УниверсальныйОтчет.ПостроительОтчета.РазмещениеИтоговВСтроках=ТипРазмещенияИтогов.Заголовок; УниверсальныйОтчет.ПостроительОтчета.РазмещениеИзмеренийВСтроках=ТипРазмещенияИзмерений.Вместе; УниверсальныйОтчет.ПостроительОтчета.ИзмеренияСтроки.Очистить(); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Склад", "Склад"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Номенклатура", "Номенклатура"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ХарактеристикаНоменклатуры", "Характеристика номенклатуры"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СерияНоменклатуры", "Серия номенклатуры"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Качество", "Качество"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Регистратор", "Документ движения(регистратор)"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КоличествоНачальныйОстаток", "Количество (в базовых единицах) (нач. ост.)"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КоличествоПриход", "Количество (в базовых единицах) (приход)"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КоличествоРасход", "Количество (в базовых единицах) (расход)"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КоличествоКонечныйОстаток", "Количество (в базовых единицах) (кон. ост.)"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КоличествоОборот", "Количество (в базовых единицах) (оборот)"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КоличествоНачальныйОстатокВШт", "Количество (в шт.) (нач. ост.)"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КоличествоПриходВШт", "Количество (в шт.) (приход)"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КоличествоРасходВШт", "Количество (в шт.) (расход)"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КоличествоКонечныйОстатокВШт", "Количество (в шт.) (кон. ост.)"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КоличествоОборотВШт", "Количество (в шт.) (оборот)"); УниверсальныйОтчет.ДобавитьПоказатель("КоличествоНачальныйОстаток", "Начальный остаток", Истина, "ЧЦ=15; ЧДЦ=3", "КолБазовыхЕд", "Количество (в базовых единицах)"); УниверсальныйОтчет.ДобавитьПоказатель("КоличествоПриход", "Приход", Истина, "ЧЦ=15; ЧДЦ=3", "КолБазовыхЕд", "Количество (в базовых единицах)"); УниверсальныйОтчет.ДобавитьПоказатель("КоличествоРасход", "Расход", Истина, "ЧЦ=15; ЧДЦ=3", "КолБазовыхЕд", "Количество (в базовых единицах)"); УниверсальныйОтчет.ДобавитьПоказатель("КоличествоКонечныйОстаток", "Конечный остаток", Истина, "ЧЦ=15; ЧДЦ=3", "КолБазовыхЕд", "Количество (в базовых единицах)"); УниверсальныйОтчет.ДобавитьПоказатель("КоличествоОборот", "Оборот", Ложь, "ЧЦ=15; ЧДЦ=3", "КолБазовыхЕд", "Количество (в базовых единицах)"); УниверсальныйОтчет.ДобавитьПоказатель("КоличествоНачальныйОстатокВШт", "Начальный остаток", Истина, "ЧЦ=15; ЧДЦ=3", "КолБазовыхЕдВШт", "Количество (в шт.)"); УниверсальныйОтчет.ДобавитьПоказатель("КоличествоПриходВШт", "Приход", Истина, "ЧЦ=15; ЧДЦ=3", "КолБазовыхЕдВШт", "Количество (в шт.)"); УниверсальныйОтчет.ДобавитьПоказатель("КоличествоРасходВШт", "Расход", Истина, "ЧЦ=15; ЧДЦ=3", "КолБазовыхЕдВШт", "Количество (в шт.)"); УниверсальныйОтчет.ДобавитьПоказатель("КоличествоКонечныйОстатокВШт", "Конечный остаток", Истина, "ЧЦ=15; ЧДЦ=3", "КолБазовыхЕдВШт", "Количество (в шт.)"); УниверсальныйОтчет.ДобавитьПоказатель("КоличествоОборотВШт", "Оборот", Ложь, "ЧЦ=15; ЧДЦ=3", "КолБазовыхЕдВШт", "Количество (в шт.)"); УниверсальныйОтчет.ДобавитьИзмерениеСтроки("Склад"); УниверсальныйОтчет.ДобавитьИзмерениеСтроки("Номенклатура"); УниверсальныйОтчет.ДобавитьОтбор("Склад"); УниверсальныйОтчет.ДобавитьОтбор("Номенклатура"); // Установка представлений полей УниверсальныйОтчет.УстановитьПредставленияПолей(УниверсальныйОтчет.мСтруктураПредставлениеПолей, УниверсальныйОтчет.ПостроительОтчета); // Установка типов значений свойств в отборах отчета УниверсальныйОтчет.УстановитьТипыЗначенийСвойствДляОтбора(); // Заполнение начальных настроек универсального отчета УниверсальныйОтчет.УстановитьНачальныеНастройки(Ложь); КонецПроцедуры // УстановитьНачальныеНастройки() может что то неправильно делаю?  | 
|||
| 
    4
    
        le_    
     23.03.12 
            ✎
    10:08 
 | 
         
        1. 
  
        ТаблицаСерий.Колонки.Добавить("Серия", Новый ОписаниеТипов("СправочникСсылка.СерииНоменклатуры"));
 
 2. Все это дело можно перенести в запрос: Пока Выборка.Следующий() цикл
 
 3. Для чего создается МенеджерВременныхТаблиц? 4. Добавьте Итоги в колонки описания источника данных. Поиск в СП: КолонкаОписанияИсточникаДанных. v8: Построитель запроса с источником данных ТаблицаЗапроса  | 
|||
| 
    5
    
        Anchel74    
     23.03.12 
            ✎
    11:37 
 | 
         
        (4) к п.2 и 3: Т.к в запросе невозможно привести строку к числу, для этого осуществляем преобразование отдельно, и потому и создаем менеджер временных таблиц
  
        к п. 4: вот именно это и помогло, надо было для каждого показателя такую вот строчку писать: ИсточникДанных.Колонки.КоличествоНачальныйОстаток.Итог = "СУММА(КоличествоНачальныйОстаток)";  | 
|||
| 
    6
    
        le_    
     23.03.12 
            ✎
    11:55 
 | 
         
        (5) Просто, всё можно сделать в одном запросе (пусть, с временной таблицей), без менеджера временных таблиц.
  
        Менеджер временных таблиц нужен, когда разные запросы к какой-то временной таблице обращаются. Он хранит ВТ до тех пор, пока не будет уничтожен или закрыт. СП: Если временная таблица создается, используется и уничтожается в рамках одного пакета запросов, менеджер временных таблиц создавать не нужно.  | 
|||
| 
    7
    
        Anchel74    
     23.03.12 
            ✎
    12:17 
 | 
         
        (6) подскажите тогда, как сделать проще? просто первый раз работаю с временными таблицами     
         | 
|||
| 
    8
    
        le_    
     23.03.12 
            ✎
    12:51 
 | 
         
        (7) Ну, вот пример простого пакетного запроса с временными таблицами без использования менеджера временных таблиц:
  
        ВЫБРАТЬ//это первый пакет
      | 
|||
| 
    9
    
        Anchel74    
     23.03.12 
            ✎
    12:58 
 | 
         
        (8) ну это то я знаю, но мне то надо чтобы извне таблица значений помещалась во временную таблицу, а кроме как менеджера я не знаю как это сделать     
         | 
|||
| 
    10
    
        le_    
     23.03.12 
            ✎
    13:05 
 | 
         
        (9) Пример:
  
        Процедура КнопкаВыполнитьНажатие(Кнопка)
      | 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |