Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 22:14

БГУ Расчет среднегодовой стоимости имущества

Автор PukewhileRunningAMile, 04 апр 2012, 09:59

0 Пользователей и 1 гость просматривают эту тему.

PukewhileRunningAMile

в общем есть такой стандартный отчет в конфигурации бгу, так вот я решил дописать для него группировку по ЦМО, для этого ввел в заросе это субконто, вроде бы все нормально работает, но вот незадача когда я начинаю делать отбор по одному какому либо цмо, то у меня пишет что амортизации по относящимся к нему ОСам нету(и получается, что среднегодовая стоимость равна балансовой), хотя я вижу в этом же отчете по всем цмо, что на этом конкретном цмо амортизация по ОСам есть, вот привожу текст запроса, он в общем то прост, все что добавил в него я это строчки где есть ЦМО, может кто подскажет в чем беда?

Цитировать
ВЫБРАТЬ
   ДАТАВРЕМЯ(2009, 1, 1) КАК ПериодСреза
ПОМЕСТИТЬ ВТ_ДатыСрезов
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ЕПСБУОстатки.Учреждение КАК Учреждение,
   ЕПСБУОстатки.Баланс КАК Баланс,
   ЕПСБУОстатки.Счет КАК Счет,
   ЕПСБУОстатки.КБК КАК КБК,
   ЕПСБУОстатки.КВД КАК КВД,
   ВЫРАЗИТЬ(ЕПСБУОстатки.Субконто2 КАК Справочник.ОсновныеСредства) КАК ОС,
   ЕПСБУОстатки.СуммаОстаток КАК Сумма,
   КОНЕЦПЕРИОДА(ДОБАВИТЬКДАТЕ(&ПериодНачало, ДЕНЬ, -1), ДЕНЬ) КАК Период,
   ВЫРАЗИТЬ(ЕПСБУОстатки.Субконто3 КАК Справочник.ЦМО) КАК ЦМО
ПОМЕСТИТЬ ВТ_ОстаткиОборотыОстатки
ИЗ
   РегистрБухгалтерии.ЕПСБУ.Остатки(&ПериодНачало, Счет В ИЕРАРХИИ (&СчетаБаланс), , ) КАК ЕПСБУОстатки
{ГДЕ
   ЕПСБУОстатки.Учреждение.*,
   ЕПСБУОстатки.Баланс.*,
   ЕПСБУОстатки.Счет.*,
   ЕПСБУОстатки.КБК.*,
   ЕПСБУОстатки.КВД.*,
   ЕПСБУОстатки.Субконто2.* КАК ОС,
   ЕПСБУОстатки.Субконто3.* КАК ЦМО}

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

ВЫБРАТЬ
   ЕПСБУОбороты.Учреждение,
   ЕПСБУОбороты.Баланс,
   ЕПСБУОбороты.Счет,
   ЕПСБУОбороты.КБК,
   ЕПСБУОбороты.КВД,
   ВЫРАЗИТЬ(ЕПСБУОбороты.Субконто2 КАК Справочник.ОсновныеСредства),
   ЕПСБУОбороты.СуммаОборот,
   ЕПСБУОбороты.Период,
   ВЫРАЗИТЬ(ЕПСБУОбороты.Субконто3 КАК Справочник.ЦМО)
ИЗ
   РегистрБухгалтерии.ЕПСБУ.Обороты(&ПериодНачало, &ПериодКонец, Запись, Счет В ИЕРАРХИИ (&СчетаБаланс), , , , ) КАК ЕПСБУОбороты
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ВТ_ДатыСрезов.ПериодСреза КАК Период,
   ВТ_ОстаткиОборотыОстатки.Учреждение КАК Учреждение,
   ВТ_ОстаткиОборотыОстатки.Баланс КАК Баланс,
   ВТ_ОстаткиОборотыОстатки.Счет КАК Счет,
   ВТ_ОстаткиОборотыОстатки.КБК КАК КБК,
   ВТ_ОстаткиОборотыОстатки.КВД КАК КВД,
   ВТ_ОстаткиОборотыОстатки.ОС КАК ОС,
   СУММА(ВТ_ОстаткиОборотыОстатки.Сумма) КАК Сумма,
   ВТ_ОстаткиОборотыОстатки.ЦМО
ПОМЕСТИТЬ ВТ_Остатки
ИЗ
   ВТ_ДатыСрезов КАК ВТ_ДатыСрезов
      ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ОстаткиОборотыОстатки КАК ВТ_ОстаткиОборотыОстатки
      ПО ВТ_ДатыСрезов.ПериодСреза > ВТ_ОстаткиОборотыОстатки.Период

СГРУППИРОВАТЬ ПО
   ВТ_ДатыСрезов.ПериодСреза,
   ВТ_ОстаткиОборотыОстатки.Учреждение,
   ВТ_ОстаткиОборотыОстатки.Баланс,
   ВТ_ОстаткиОборотыОстатки.Счет,
   ВТ_ОстаткиОборотыОстатки.КБК,
   ВТ_ОстаткиОборотыОстатки.КВД,
   ВТ_ОстаткиОборотыОстатки.ОС,
   ВТ_ОстаткиОборотыОстатки.ЦМО

ИМЕЮЩИЕ
   СУММА(ВТ_ОстаткиОборотыОстатки.Сумма) <> 0
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ЕПСБУОстатки.КБК КАК КБК,
   ЕПСБУОстатки.КВД КАК КВД,
   ВЫРАЗИТЬ(ЕПСБУОстатки.Субконто2 КАК Справочник.ОсновныеСредства) КАК ОС,
   -ЕПСБУОстатки.СуммаОстаток КАК Сумма,
   КОНЕЦПЕРИОДА(ДОБАВИТЬКДАТЕ(&ПериодНачало, ДЕНЬ, -1), ДЕНЬ) КАК Период,
   ВЫРАЗИТЬ(ЕПСБУОстатки.Субконто3 КАК Справочник.ЦМО) КАК ЦМО
ПОМЕСТИТЬ ВТ_ОстаткиОборотыАмортизация
ИЗ
   РегистрБухгалтерии.ЕПСБУ.Остатки(&ПериодНачало, Счет В ИЕРАРХИИ (&СчетаАморт), , ) КАК ЕПСБУОстатки
{ГДЕ
   ЕПСБУОстатки.КБК.*,
   ЕПСБУОстатки.КВД.*,
   ЕПСБУОстатки.Субконто2.* КАК ОС,
   ЕПСБУОстатки.Субконто3.* КАК ЦМО}

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

ВЫБРАТЬ
   ЕПСБУОбороты.КБК,
   ЕПСБУОбороты.КВД,
   ВЫРАЗИТЬ(ЕПСБУОбороты.Субконто2 КАК Справочник.ОсновныеСредства),
   -ЕПСБУОбороты.СуммаОборот,
   ЕПСБУОбороты.Период,
   ВЫРАЗИТЬ(ЕПСБУОбороты.Субконто3 КАК Справочник.ЦМО)
ИЗ
   РегистрБухгалтерии.ЕПСБУ.Обороты(&ПериодНачало, &ПериодКонец, Запись, Счет В ИЕРАРХИИ (&СчетаАморт), , , , ) КАК ЕПСБУОбороты
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ВТ_ДатыСрезов.ПериодСреза КАК Период,
   ВТ_ОстаткиОборотыАмортизация.КБК КАК КБК,
   ВТ_ОстаткиОборотыАмортизация.КВД КАК КВД,
   ВТ_ОстаткиОборотыАмортизация.ОС КАК ОС,
   СУММА(ВТ_ОстаткиОборотыАмортизация.Сумма) КАК Сумма,
   ВТ_ОстаткиОборотыАмортизация.ЦМО
ПОМЕСТИТЬ ВТ_Амортизация
ИЗ
   ВТ_ДатыСрезов КАК ВТ_ДатыСрезов
      ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ОстаткиОборотыАмортизация КАК ВТ_ОстаткиОборотыАмортизация
      ПО ВТ_ДатыСрезов.ПериодСреза > ВТ_ОстаткиОборотыАмортизация.Период

СГРУППИРОВАТЬ ПО
   ВТ_ДатыСрезов.ПериодСреза,
   ВТ_ОстаткиОборотыАмортизация.КБК,
   ВТ_ОстаткиОборотыАмортизация.КВД,
   ВТ_ОстаткиОборотыАмортизация.ОС,
   ВТ_ОстаткиОборотыАмортизация.ЦМО

ИМЕЮЩИЕ
   СУММА(ВТ_ОстаткиОборотыАмортизация.Сумма) <> 0
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ВТ_Остатки.Период КАК Период,
   МАКСИМУМ(СтавкиНалогаНаИмущество.Период) КАК ПериодСрез,
   ВТ_Остатки.Учреждение КАК Учреждение,
   ВТ_Остатки.ОС КАК ОС,
   ИнвентарныеНомераОС.Ссылка КАК ИнвентарныйНомер,
   ВТ_Остатки.ЦМО
ПОМЕСТИТЬ ВТ_ПериодыСрезовСтавокНИ
ИЗ
   ВТ_Остатки КАК ВТ_Остатки
      ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ИнвентарныеНомераОС КАК ИнвентарныеНомераОС
      ПО ВТ_Остатки.Учреждение = ИнвентарныеНомераОС.Владелец
         И ВТ_Остатки.ОС = ИнвентарныеНомераОС.ОС
      ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СтавкиНалогаНаИмущество КАК СтавкиНалогаНаИмущество
      ПО ВТ_Остатки.Период > СтавкиНалогаНаИмущество.Период
         И ВТ_Остатки.Учреждение = СтавкиНалогаНаИмущество.Учреждение
         И ВТ_Остатки.ОС = СтавкиНалогаНаИмущество.ОС
         И (ИнвентарныеНомераОС.Ссылка = СтавкиНалогаНаИмущество.ИнвНомер)

СГРУППИРОВАТЬ ПО
   ВТ_Остатки.Период,
   ВТ_Остатки.Учреждение,
   ВТ_Остатки.ОС,
   ИнвентарныеНомераОС.Ссылка,
   ВТ_Остатки.ЦМО
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ВТ_Остатки.Период КАК Период,
   ВТ_Остатки.Учреждение КАК Учреждение,
   ВТ_Остатки.Баланс КАК Баланс,
   ВТ_Остатки.Счет КАК Счет,
   ВТ_Остатки.КБК КАК КБК,
   ВТ_Остатки.КВД КАК КВД,
   ВТ_Остатки.ОС КАК ОС,
   ОсновныеСредства.ИнвентарныйНомер КАК ИнвентарныйНомер,
   ЕСТЬNULL(СтавкиНалогаНаИмущество.НалоговаяСтавка, 0) КАК НалоговаяСтавка,
   СУММА(ВТ_Остатки.Сумма) КАК СуммаБаланс,
   СУММА(ЕСТЬNULL(ВТ_Амортизация.Сумма, 0)) КАК СуммаАмортизация,
   СУММА(ВТ_Остатки.Сумма - ЕСТЬNULL(ВТ_Амортизация.Сумма, 0)) КАК СуммаОстаток,
   ВТ_Остатки.ЦМО КАК ЦМО
{ВЫБРАТЬ
   Период,
   Учреждение.*,
   Баланс.*,
   Счет.*,
   КБК.*,
   КВД.*,
   ОС.*,
   ЦМО.*,
   ИнвентарныйНомер,
   НалоговаяСтавка,
   СуммаБаланс,
   СуммаАмортизация,
   СуммаОстаток}
ИЗ
   ВТ_Остатки КАК ВТ_Остатки
      ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Амортизация КАК ВТ_Амортизация
      ПО ВТ_Остатки.Период = ВТ_Амортизация.Период
         И ВТ_Остатки.КБК = ВТ_Амортизация.КБК
         И ВТ_Остатки.КВД = ВТ_Амортизация.КВД
         И ВТ_Остатки.ОС = ВТ_Амортизация.ОС
      ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ПериодыСрезовСтавокНИ КАК ВТ_ПериодыСрезовСтавокНИ
         ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СтавкиНалогаНаИмущество КАК СтавкиНалогаНаИмущество
         ПО ВТ_ПериодыСрезовСтавокНИ.ПериодСрез = СтавкиНалогаНаИмущество.Период
            И ВТ_ПериодыСрезовСтавокНИ.Учреждение = СтавкиНалогаНаИмущество.Учреждение
            И ВТ_ПериодыСрезовСтавокНИ.ОС = СтавкиНалогаНаИмущество.ОС
            И ВТ_ПериодыСрезовСтавокНИ.ИнвентарныйНомер = СтавкиНалогаНаИмущество.ИнвНомер
      ПО ВТ_Остатки.Период = ВТ_ПериодыСрезовСтавокНИ.Период
         И ВТ_Остатки.Учреждение = ВТ_ПериодыСрезовСтавокНИ.Учреждение
         И ВТ_Остатки.ОС = ВТ_ПериодыСрезовСтавокНИ.ОС
      ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ОсновныеСредства КАК ОсновныеСредства
      ПО ВТ_Остатки.ОС = ОсновныеСредства.Ссылка
{ГДЕ
   ВТ_Остатки.Период,
   ВТ_Остатки.Учреждение.*,
   ВТ_Остатки.Баланс.*,
   ВТ_Остатки.Счет.*,
   ВТ_Остатки.КБК.*,
   ВТ_Остатки.КВД.*,
   ВТ_Остатки.ОС.*,
   ВТ_Остатки.ЦМО.*,
   ОсновныеСредства.ИнвентарныйНомер,
   (ЕСТЬNULL(СтавкиНалогаНаИмущество.НалоговаяСтавка, 0)) КАК НалоговаяСтавка,
   ВТ_Остатки.Сумма КАК СуммаБаланс,
   (ЕСТЬNULL(ВТ_Амортизация.Сумма, 0)) КАК СуммаАмортизация,
   (ВТ_Остатки.Сумма - ЕСТЬNULL(ВТ_Амортизация.Сумма, 0)) КАК СуммаОстаток}

СГРУППИРОВАТЬ ПО
   ВТ_Остатки.Период,
   ВТ_Остатки.Учреждение,
   ВТ_Остатки.Баланс,
   ВТ_Остатки.Счет,
   ВТ_Остатки.КБК,
   ВТ_Остатки.КВД,
   ВТ_Остатки.ОС,
   ОсновныеСредства.ИнвентарныйНомер,
   ЕСТЬNULL(СтавкиНалогаНаИмущество.НалоговаяСтавка, 0),
   ВТ_Остатки.ЦМО

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск