Имя: Пароль:
1C
1С v8
Доработка типового отчета (использование свойст и категорий)
0 ProgaN
 
08.08.11
13:59
Типовая УПП редакция 1.3 (1.3.7.1)
В отчете Ведомость амортизации ОС за период не работает галочка "Использовать свойства и категории". Доработака процедуры УстановитьНачальныеНастройкиУпр победой не увенчалась. Где ошибка? Подскажите. Код ниже:
   ТекстЗапроса =
   "ВЫБРАТЬ РАЗРЕШЕННЫЕ
   |   СтоимостьОСОстаткиИОбороты.ОсновноеСредство КАК ОсновноеСредство,
   |   СтоимостьОСОстаткиИОбороты.СтоимостьНачальныйОстаток КАК СтоимостьНачальныйОстаток,
   |   СтоимостьОСОстаткиИОбороты.СтоимостьКонечныйОстаток КАК СтоимостьКонечныйОстаток,
   |   СтоимостьОСОстаткиИОбороты.СтоимостьОборот КАК СтоимостьОборот,
   |   СтоимостьОСОстаткиИОбороты.АмортизацияНачальныйОстаток КАК АмортизацияНачальныйОстаток,
   |   СтоимостьОСОстаткиИОбороты.АмортизацияКонечныйОстаток КАК АмортизацияКонечныйОстаток,
   |   СтоимостьОСОстаткиИОбороты.АмортизацияОборот КАК АмортизацияОборот,
   |   СтоимостьОСОстаткиИОбороты.СтоимостьКонечныйОстаток - СтоимостьОСОстаткиИОбороты.АмортизацияКонечныйОстаток КАК ОстаточнаяСтоимость
   |ПОМЕСТИТЬ СтоимостьОСОстаткиИОбороты
   |ИЗ
   |   РегистрНакопления.СтоимостьОС.ОстаткиИОбороты(&ДатаНач, &ДатаКон, , , {(ОсновноеСредство).* КАК ОсновноеСредство}) КАК СтоимостьОСОстаткиИОбороты
   |;
   |
   |////////////////////////////////////////////////////////////////////////////////
   |ВЫБРАТЬ РАЗРЕШЕННЫЕ
   |   РегСведенияОбОС.ОсновноеСредство КАК ОсновноеСредство,
   |   РегСведенияОбОС.СпособНачисленияАмортизации КАК СпособНачисленияАмортизации,
   |   РегСведенияОбОС.ПервоначальнаяСтоимость КАК ПервоначальнаяСтоимость
   |ПОМЕСТИТЬ РегСведенияОбОС
   |ИЗ
   |   РегистрСведений.ПервоначальныеСведенияОС.СрезПоследних(&ДатаКон, ) КАК РегСведенияОбОС
   |;
   |
   |////////////////////////////////////////////////////////////////////////////////
   |ВЫБРАТЬ РАЗРЕШЕННЫЕ
   |   МестонахождениеОС.ОсновноеСредство КАК ОсновноеСредство,
   |   МестонахождениеОС.МОЛ КАК МОЛ,
   |   МестонахождениеОС.Местонахождение КАК Местонахождение
   |ПОМЕСТИТЬ МестонахождениеОС
   |ИЗ
   |   РегистрСведений.МестонахождениеОС.СрезПоследних(&ДатаКон, ) КАК МестонахождениеОС
   |;
   |
   |////////////////////////////////////////////////////////////////////////////////
   |ВЫБРАТЬ РАЗРЕШЕННЫЕ
   |   СтоимостьОСОстаткиИОбороты.ОсновноеСредство КАК ОсновноеСредство,
   |   ПРЕДСТАВЛЕНИЕ(СтоимостьОСОстаткиИОбороты.ОсновноеСредство),
   |   РегСведенияОбОС.СпособНачисленияАмортизации КАК СпособНачисления,
   |   РегСостояниеОС.ДатаСостояния КАК ДатаВводаВЭксплуатацию,
   |   СтоимостьОСОстаткиИОбороты.СтоимостьНачальныйОстаток КАК СтоимостьНачальныйОстаток,
   |   СтоимостьОСОстаткиИОбороты.СтоимостьКонечныйОстаток КАК СтоимостьКонечныйОстаток,
   |   СтоимостьОСОстаткиИОбороты.СтоимостьОборот КАК СтоимостьОборот,
   |   СтоимостьОСОстаткиИОбороты.АмортизацияНачальныйОстаток КАК АмортизацияНачальныйОстаток,
   |   СтоимостьОСОстаткиИОбороты.АмортизацияКонечныйОстаток КАК АмортизацияКонечныйОстаток,
   |   СтоимостьОСОстаткиИОбороты.АмортизацияОборот КАК АмортизацияОборот,
   |   СтоимостьОСОстаткиИОбороты.ОстаточнаяСтоимость КАК ОстаточнаяСтоимость,
   |   РегСведенияОбОС.ПервоначальнаяСтоимость КАК ПервоначальнаяСтоимость,
   |   СтоимостьОСОстаткиИОбороты.ОсновноеСредство.Код КАК ИнвентарныйНомер,
   |   МестонахождениеОС.МОЛ КАК МОЛ,
   |   МестонахождениеОС.Местонахождение КАК Подразделение
   |    //ПОЛЯ_СВОЙСТВА
   |    //ПОЛЯ_КАТЕГОРИИ
   |{ВЫБРАТЬ
   |   ОсновноеСредство.*,
   |   ИнвентарныйНомер,
   |   МОЛ.*,
   |   Подразделение.*,
   |   СпособНачисления,
   |   ДатаВводаВЭксплуатацию,
   |   ПервоначальнаяСтоимость,
   |   СтоимостьНачальныйОстаток,
   |   СтоимостьКонечныйОстаток,
   |   СтоимостьОборот,
   |   АмортизацияНачальныйОстаток,
   |   АмортизацияКонечныйОстаток,
   |   АмортизацияОборот,
   |   ОстаточнаяСтоимость
   |    //ПСЕВДОНИМЫ_СВОЙСТВА
   |    //ПСЕВДОНИМЫ_КАТЕГОРИИ
   |}
   |ИЗ
   |   СтоимостьОСОстаткиИОбороты КАК СтоимостьОСОстаткиИОбороты
   |       {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияОС КАК РегСостояниеОС
   |       ПО СтоимостьОСОстаткиИОбороты.ОсновноеСредство = РегСостояниеОС.ОсновноеСредство
   |           И (РегСостояниеОС.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияОС.ВведеноВЭксплуатацию))}
   |       {ЛЕВОЕ СОЕДИНЕНИЕ РегСведенияОбОС КАК РегСведенияОбОС
   |       ПО СтоимостьОСОстаткиИОбороты.ОсновноеСредство = РегСведенияОбОС.ОсновноеСредство}
   |       {ЛЕВОЕ СОЕДИНЕНИЕ МестонахождениеОС КАК МестонахождениеОС
   |       ПО СтоимостьОСОстаткиИОбороты.ОсновноеСредство = МестонахождениеОС.ОсновноеСредство}
   |//СОЕДИНЕНИЯ
   |{ГДЕ
   |   РегСведенияОбОС.СпособНачисленияАмортизации КАК СпособНачисления,
   |   РегСостояниеОС.ДатаСостояния КАК ДатаВводаВЭксплуатацию,
   |   СтоимостьОСОстаткиИОбороты.СтоимостьНачальныйОстаток КАК СтоимостьНачальныйОстаток,
   |   СтоимостьОСОстаткиИОбороты.СтоимостьКонечныйОстаток КАК СтоимостьКонечныйОстаток,
   |   СтоимостьОСОстаткиИОбороты.СтоимостьОборот КАК СтоимостьОборот,
   |   СтоимостьОСОстаткиИОбороты.АмортизацияНачальныйОстаток КАК АмортизацияНачальныйОстаток,
   |   СтоимостьОСОстаткиИОбороты.АмортизацияКонечныйОстаток КАК АмортизацияКонечныйОстаток,
   |   СтоимостьОСОстаткиИОбороты.АмортизацияОборот КАК АмортизацияОборот,
   |   (СтоимостьОСОстаткиИОбороты.СтоимостьКонечныйОстаток - СтоимостьОСОстаткиИОбороты.АмортизацияКонечныйОстаток) КАК ОстаточнаяСтоимость,
   |   РегСведенияОбОС.ПервоначальнаяСтоимость КАК ПервоначальнаяСтоимость,
   |   СтоимостьОСОстаткиИОбороты.ОсновноеСредство.Код КАК ИнвентарныйНомер,
   |   МестонахождениеОС.МОЛ.* КАК МОЛ,
   |   МестонахождениеОС.Местонахождение.* КАК Подразделение
   |    //УСЛОВИЯ_СВОЙСТВА
   |    //УСЛОВИЯ_КАТЕГОРИИ
   |}
   |{УПОРЯДОЧИТЬ ПО
   |   ОсновноеСредство.*,
   |   ИнвентарныйНомер,
   |   МОЛ.*,
   |   Подразделение.*,
   |   СпособНачисления,
   |   ДатаВводаВЭксплуатацию,
   |   ПервоначальнаяСтоимость,
   |   СтоимостьНачальныйОстаток,
   |   СтоимостьКонечныйОстаток,
   |   СтоимостьОборот,
   |   АмортизацияНачальныйОстаток,
   |   АмортизацияКонечныйОстаток,
   |   АмортизацияОборот,
   |   ОстаточнаяСтоимость
   |    //ПСЕВДОНИМЫ_СВОЙСТВА
   |    //ПСЕВДОНИМЫ_КАТЕГОРИИ
   |}
   |ИТОГИ
   |   МАКСИМУМ(СпособНачисления),
   |   МАКСИМУМ(ДатаВводаВЭксплуатацию),
   |   СУММА(СтоимостьНачальныйОстаток),
   |   СУММА(СтоимостьКонечныйОстаток),
   |   СУММА(СтоимостьОборот),
   |   СУММА(АмортизацияНачальныйОстаток),
   |   СУММА(АмортизацияКонечныйОстаток),
   |   СУММА(АмортизацияОборот),
   |   СУММА(ОстаточнаяСтоимость),
   |   СУММА(ПервоначальнаяСтоимость),
   |   МАКСИМУМ(ИнвентарныйНомер),
   |   МАКСИМУМ(МОЛ)
   |    //ИТОГИ_СВОЙСТВА
   |    //ИТОГИ_КАТЕГОРИИ
   |ПО
   |   ОБЩИЕ,
   |   Подразделение
   |{ИТОГИ ПО
   |   ОсновноеСредство.*,
   |   Подразделение.*,
   |   МОЛ.*}
   |    //ПСЕВДОНИМЫ_СВОЙСТВА
   |    //ПСЕВДОНИМЫ_КАТЕГОРИИ
   |";
   
   
   // В универсальном отчете включен флаг использования свойств и категорий.
   Если УниверсальныйОтчет.ИспользоватьСвойстваИКатегории Тогда
       
       // Добавление свойств и категорий поля запроса в таблицу полей.
       // Необходимо вызывать для каждого поля запроса, предоставляющего возможность использования свойств и категорий.
       
       // УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля(<ПсевдонимТаблицы>.<Поле> , <ПсевдонимПоля>, <Представление>, <Назначение>);
       УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля("СтоимостьОСОстаткиИОбороты.ОсновноеСредство" , "ОсновноеСредство","Основное средство", ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_ОсновныеСредства);
       
       // Добавление свойств и категорий в исходный текст запроса.
       УниверсальныйОтчет.ДобавитьВТекстЗапросаСвойстваИКатегории(ТекстЗапроса);
       
   КонецЕсли;
1 ProgaN
 
08.08.11
14:23
Вопрос закрыт, ошибка ясна:
   |ПО
   |   ОБЩИЕ,
   |   Подразделение
   |{ИТОГИ ПО
   |   ОсновноеСредство.*,
   |   Подразделение.*,
   |   МОЛ.*
   |    //ПСЕВДОНИМЫ_СВОЙСТВА
   |    //ПСЕВДОНИМЫ_КАТЕГОРИИ
   |}
   |";