Имя: Пароль:
1C
1С v8
Детализация отчета УПП
0 capllary
 
12.03.15
08:07
Господа, помогите допилить отчет БДДС до детализации фактических данных, которые берутся с РН «Движение денежных средств», по регистраторам.


ВЫБРАТЬ РАЗРЕШЕННЫЕ
    ДанныеСценариев.СтрокаБюджета КАК СтрокаБюджета,
    ДанныеСценариев.СуммаУпр_0 КАК СуммаУпр_0,
    ДанныеСценариев.СуммаУпр_1 КАК СуммаУпр_1,
    ДанныеСценариев.СуммаУпр_2 КАК СуммаУпр_2
{ВЫБРАТЬ
    ДанныеСценариев.СтрокаБюджета.* КАК СтрокаБюджета,
    ДанныеСценариев.Период КАК Период,
    ДанныеСценариев.ЦФО.* КАК ЦФО,
    ДанныеСценариев.Проект.* КАК Проект,
    ДанныеСценариев.Контрагент.* КАК Контрагент,
    ДанныеСценариев.Номенклатура.* КАК Номенклатура,
    ДанныеСценариев.Валюта.* КАК Валюта}
ИЗ
    (ВЫБРАТЬ
        &ПараметрНомерСценария_0 КАК НомерСценария,
        NULL КАК Сценарий,
        СтатьиБюджета.Ссылка КАК СтрокаБюджета,
        NULL КАК ЦФО,
        ОборотыПоСтатьям.Проект КАК Проект,
        ОборотыПоСтатьям.Контрагент КАК Контрагент,
        NULL КАК Номенклатура,
        NULL КАК Валюта,
        ОборотыПоСтатьям.Период КАК Период,
        СУММА(ОборотыПоСтатьям.СуммаУпр) КАК СуммаУпр_0,
        0 КАК СуммаУпр_1,
        0 КАК СуммаУпр_2
    ИЗ
        Справочник.СтатьиБюджета КАК СтатьиБюджета
            ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
                СтатьиБюджета.Ссылка КАК СтатьяБюджета,
                ДвиженияДенежныхСредствОбороты.Период КАК Период,
                ДвиженияДенежныхСредствОбороты.Проект КАК Проект,
                ДвиженияДенежныхСредствОбороты.Контрагент КАК Контрагент,
                ДвиженияДенежныхСредствОбороты.СуммаУпрОборот * СтатьиБюджета.Знак КАК СуммаУпр
            ИЗ
                РегистрНакопления.ДвиженияДенежныхСредств.Обороты(&ДатаНач_0, &ДатаКон_0, Месяц, ) КАК ДвиженияДенежныхСредствОбороты
                    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СтатьиБюджета КАК СтатьиБюджета
                    ПО ДвиженияДенежныхСредствОбороты.СтатьяДвиженияДенежныхСредств.Наименование = СтатьиБюджета.СтатьяОборотов.Наименование
            ГДЕ
                СтатьиБюджета.Владелец = &Бюджет) КАК ОборотыПоСтатьям
            ПО СтатьиБюджета.Ссылка = ОборотыПоСтатьям.СтатьяБюджета
    ГДЕ
        СтатьиБюджета.Владелец = &Бюджет
        И НЕ СтатьиБюджета.ПометкаУдаления
        И НЕ СтатьиБюджета.ЭтоГруппа
    
    СГРУППИРОВАТЬ ПО
        ОборотыПоСтатьям.Период,
        СтатьиБюджета.Ссылка,
        ОборотыПоСтатьям.Проект,
        ОборотыПоСтатьям.Контрагент
    
    ОБЪЕДИНИТЬ ВСЕ
    
    ВЫБРАТЬ
        &ПараметрНомерСценария_1,
        ОборотыПоСтатьям.Сценарий,
        СтатьиБюджета.Ссылка,
        ОборотыПоСтатьям.ЦФО,
        ОборотыПоСтатьям.Проект,
        ОборотыПоСтатьям.Контрагент,
        ОборотыПоСтатьям.Номенклатура,
        ОборотыПоСтатьям.Валюта,
        ОборотыПоСтатьям.Период,
        0,
        СУММА(ОборотыПоСтатьям.СуммаУпр),
        0
    ИЗ
        Справочник.СтатьиБюджета КАК СтатьиБюджета
            ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
                СтатьиБюджета.Ссылка КАК СтатьяБюджета,
                ОборотыБюджетовОбороты.Сценарий КАК Сценарий,
                ОборотыБюджетовОбороты.Период КАК Период,
                ОборотыБюджетовОбороты.Валюта КАК Валюта,
                ОборотыБюджетовОбороты.ЦФО КАК ЦФО,
                ОборотыБюджетовОбороты.Проект КАК Проект,
                ОборотыБюджетовОбороты.Контрагент КАК Контрагент,
                ОборотыБюджетовОбороты.Номенклатура КАК Номенклатура,
                ОборотыБюджетовОбороты.СуммаУпрОборот * СтатьиБюджета.Знак КАК СуммаУпр,
                ОборотыБюджетовОбороты.ВалютнаяСуммаОборот * СтатьиБюджета.Знак КАК ВалютнаяСумма,
                ОборотыБюджетовОбороты.СуммаСценарияОборот * СтатьиБюджета.Знак КАК СуммаСценария,
                ОборотыБюджетовОбороты.КоличествоОборот * СтатьиБюджета.Знак КАК Количество
            ИЗ
                РегистрНакопления.ОборотыБюджетов.Обороты(&ДатаНач_1, &ДатаКон_1, Месяц, Сценарий = &Сценарий_1) КАК ОборотыБюджетовОбороты
                    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СтатьиБюджета КАК СтатьиБюджета
                    ПО ОборотыБюджетовОбороты.СтатьяОборотов = СтатьиБюджета.СтатьяОборотов
            ГДЕ
                СтатьиБюджета.Владелец = &Бюджет) КАК ОборотыПоСтатьям
            ПО СтатьиБюджета.Ссылка = ОборотыПоСтатьям.СтатьяБюджета
    ГДЕ
        СтатьиБюджета.Владелец = &Бюджет
        И НЕ СтатьиБюджета.ПометкаУдаления
        И НЕ СтатьиБюджета.ЭтоГруппа
    
    СГРУППИРОВАТЬ ПО
        ОборотыПоСтатьям.Сценарий,
        ОборотыПоСтатьям.Период,
        СтатьиБюджета.Ссылка,
        ОборотыПоСтатьям.ЦФО,
        ОборотыПоСтатьям.Проект,
        ОборотыПоСтатьям.Контрагент,
        ОборотыПоСтатьям.Номенклатура,
        ОборотыПоСтатьям.Валюта
    
    ОБЪЕДИНИТЬ ВСЕ
    
    ВЫБРАТЬ
        &ПараметрНомерСценария_2,
        ОборотыПоСтатьям.Сценарий,
        СтатьиБюджета.Ссылка,
        ОборотыПоСтатьям.ЦФО,
        ОборотыПоСтатьям.Проект,
        ОборотыПоСтатьям.Контрагент,
        ОборотыПоСтатьям.Номенклатура,
        ОборотыПоСтатьям.Валюта,
        ОборотыПоСтатьям.Период,
        0,
        0,
        СУММА(ОборотыПоСтатьям.СуммаУпр)
    ИЗ
        Справочник.СтатьиБюджета КАК СтатьиБюджета
            ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
                СтатьиБюджета.Ссылка КАК СтатьяБюджета,
                ОборотыБюджетовОбороты.Сценарий КАК Сценарий,
                ОборотыБюджетовОбороты.Период КАК Период,
                ОборотыБюджетовОбороты.Валюта КАК Валюта,
                ОборотыБюджетовОбороты.ЦФО КАК ЦФО,
                ОборотыБюджетовОбороты.Проект КАК Проект,
                ОборотыБюджетовОбороты.Контрагент КАК Контрагент,
                ОборотыБюджетовОбороты.Номенклатура КАК Номенклатура,
                ОборотыБюджетовОбороты.СуммаУпрОборот * СтатьиБюджета.Знак КАК СуммаУпр,
                ОборотыБюджетовОбороты.ВалютнаяСуммаОборот * СтатьиБюджета.Знак КАК ВалютнаяСумма,
                ОборотыБюджетовОбороты.СуммаСценарияОборот * СтатьиБюджета.Знак КАК СуммаСценария,
                ОборотыБюджетовОбороты.КоличествоОборот * СтатьиБюджета.Знак КАК Количество
            ИЗ
                РегистрНакопления.ОборотыБюджетов.Обороты(&ДатаНач_2, &ДатаКон_2, Месяц, Сценарий = &Сценарий_2) КАК ОборотыБюджетовОбороты
                    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СтатьиБюджета КАК СтатьиБюджета
                    ПО ОборотыБюджетовОбороты.СтатьяОборотов = СтатьиБюджета.СтатьяОборотов
            ГДЕ
                СтатьиБюджета.Владелец = &Бюджет) КАК ОборотыПоСтатьям
            ПО СтатьиБюджета.Ссылка = ОборотыПоСтатьям.СтатьяБюджета
    ГДЕ
        СтатьиБюджета.Владелец = &Бюджет
        И НЕ СтатьиБюджета.ПометкаУдаления
        И НЕ СтатьиБюджета.ЭтоГруппа
    
    СГРУППИРОВАТЬ ПО
        ОборотыПоСтатьям.Сценарий,
        ОборотыПоСтатьям.Период,
        СтатьиБюджета.Ссылка,
        ОборотыПоСтатьям.ЦФО,
        ОборотыПоСтатьям.Проект,
        ОборотыПоСтатьям.Контрагент,
        ОборотыПоСтатьям.Номенклатура,
        ОборотыПоСтатьям.Валюта) КАК ДанныеСценариев
{ГДЕ
    ДанныеСценариев.ЦФО.*,
    ДанныеСценариев.Проект.*,
    ДанныеСценариев.Контрагент.*,
    ДанныеСценариев.Номенклатура.*,
    ДанныеСценариев.Валюта}

УПОРЯДОЧИТЬ ПО
    ДанныеСценариев.НомерСценария,
    ДанныеСценариев.СтрокаБюджета.Код
{УПОРЯДОЧИТЬ ПО
    ДанныеСценариев.НомерСценария,
    ДанныеСценариев.Период,
    ДанныеСценариев.СтрокаБюджета.Код}
ИТОГИ
    СУММА(СуммаУпр_0),
    СУММА(СуммаУпр_1),
    СУММА(СуммаУпр_2)
ПО
    ОБЩИЕ,
    СтрокаБюджета ИЕРАРХИЯ
{ИТОГИ ПО
    ДанныеСценариев.Период,
    ДанныеСценариев.СтрокаБюджета.*,
    ДанныеСценариев.НомерСценария,
    ДанныеСценариев.Проект.*,
    ДанныеСценариев.ЦФО.*,
    ДанныеСценариев.Контрагент.*,
    ДанныеСценариев.Номенклатура.*,
    ДанныеСценариев.Валюта КАК Валюта}
1 capllary
 
12.03.15
08:08
А вот параметры:

Запрос.УстановитьПараметр("Бюджет", Бюджет);
    Запрос.УстановитьПараметр("ПараметрНомерСценария_0", 0);
    Запрос.УстановитьПараметр("ПараметрНомерСценария_1", 1);
    Запрос.УстановитьПараметр("ПараметрНомерСценария_2", 2);
    Запрос.УстановитьПараметр("ПустойКонтрагент", Справочники.Контрагенты.ПустаяСсылка());
    Запрос.УстановитьПараметр("ПустойПроект", Справочники.Проекты.ПустаяСсылка());
    Запрос.УстановитьПараметр("ПустойЦФО", Справочники.Подразделения.ПустаяСсылка());
    Запрос.УстановитьПараметр("Сценарий_0",Справочники.СценарииПланирования.ПустаяСсылка());
    Запрос.УстановитьПараметр("Сценарий_1",Сценарий1);
    Запрос.УстановитьПараметр("Сценарий_2",Сценарий2);
    Запрос.УстановитьПараметр("ДатаНач_0",НачПериода);
    Запрос.УстановитьПараметр("ДатаНач_1",НачПериода);
    Запрос.УстановитьПараметр("ДатаНач_2",НачПериода);
    Запрос.УстановитьПараметр("ДатаКон_0",КонецДня(КонПериода));
    Запрос.УстановитьПараметр("ДатаКон_1",КонецДня(КонПериода));
    Запрос.УстановитьПараметр("ДатаКон_2",КонецДня(КонПериода));
    Запрос.УстановитьПараметр("ДатаКон_0_999",КонецМесяца(НачПериода));
    Запрос.УстановитьПараметр("ДатаКон_1_999",КонецМесяца(НачПериода));
    Запрос.УстановитьПараметр("ДатаКон_2_999",КонецМесяца(НачПериода));
2 capllary
 
12.03.15
08:09
Вот в нормальном виде текст запроса:


Запрос.Текст =
    "ВЫБРАТЬ РАЗРЕШЕННЫЕ
    |    ДанныеСценариев.СтрокаБюджета КАК СтрокаБюджета,
    |    ДанныеСценариев.СуммаУпр_0 КАК СуммаУпр_0,
    |    ДанныеСценариев.СуммаУпр_1 КАК СуммаУпр_1,
    |    ДанныеСценариев.СуммаУпр_2 КАК СуммаУпр_2
    |{ВЫБРАТЬ
    |    ДанныеСценариев.СтрокаБюджета.* КАК СтрокаБюджета,
    |    ДанныеСценариев.Период КАК Период,
    |    ДанныеСценариев.ЦФО.* КАК ЦФО,
    |    ДанныеСценариев.Проект.* КАК Проект,
    |    ДанныеСценариев.Контрагент.* КАК Контрагент,
    |    ДанныеСценариев.Номенклатура.* КАК Номенклатура,
    |    ДанныеСценариев.Валюта.* КАК Валюта}
    |ИЗ
    |    (ВЫБРАТЬ
    |        &ПараметрНомерСценария_0 КАК НомерСценария,
    |        NULL КАК Сценарий,
    |        СтатьиБюджета.Ссылка КАК СтрокаБюджета,
    |        NULL КАК ЦФО,
    |        ОборотыПоСтатьям.Проект КАК Проект,
    |        ОборотыПоСтатьям.Контрагент КАК Контрагент,
    |        NULL КАК Номенклатура,
    |        NULL КАК Валюта,
    |        ОборотыПоСтатьям.Период КАК Период,
    |        СУММА(ОборотыПоСтатьям.СуммаУпр) КАК СуммаУпр_0,
    |        0 КАК СуммаУпр_1,
    |        0 КАК СуммаУпр_2
    |    ИЗ
    |        Справочник.СтатьиБюджета КАК СтатьиБюджета
    |            ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    |                СтатьиБюджета.Ссылка КАК СтатьяБюджета,
    |                ДвиженияДенежныхСредствОбороты.Период КАК Период,
    |                ДвиженияДенежныхСредствОбороты.Проект КАК Проект,
    |                ДвиженияДенежныхСредствОбороты.Контрагент КАК Контрагент,
    |                ДвиженияДенежныхСредствОбороты.СуммаУпрОборот * СтатьиБюджета.Знак КАК СуммаУпр
    |            ИЗ
    |                РегистрНакопления.ДвиженияДенежныхСредств.Обороты(&ДатаНач_0, &ДатаКон_0, Месяц, ) КАК ДвиженияДенежныхСредствОбороты
    |                    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СтатьиБюджета КАК СтатьиБюджета
    |                    ПО ДвиженияДенежныхСредствОбороты.СтатьяДвиженияДенежныхСредств.Наименование = СтатьиБюджета.СтатьяОборотов.Наименование
    |            ГДЕ
    |                СтатьиБюджета.Владелец = &Бюджет) КАК ОборотыПоСтатьям
    |            ПО СтатьиБюджета.Ссылка = ОборотыПоСтатьям.СтатьяБюджета
    |    ГДЕ
    |        СтатьиБюджета.Владелец = &Бюджет
    |        И НЕ СтатьиБюджета.ПометкаУдаления
    |        И НЕ СтатьиБюджета.ЭтоГруппа
    |    
    |    СГРУППИРОВАТЬ ПО
    |        ОборотыПоСтатьям.Период,
    |        СтатьиБюджета.Ссылка,
    |        ОборотыПоСтатьям.Проект,
    |        ОборотыПоСтатьям.Контрагент
    |    
    |    ОБЪЕДИНИТЬ ВСЕ
    |    
    |    ВЫБРАТЬ
    |        &ПараметрНомерСценария_1,
    |        ОборотыПоСтатьям.Сценарий,
    |        СтатьиБюджета.Ссылка,
    |        ОборотыПоСтатьям.ЦФО,
    |        ОборотыПоСтатьям.Проект,
    |        ОборотыПоСтатьям.Контрагент,
    |        ОборотыПоСтатьям.Номенклатура,
    |        ОборотыПоСтатьям.Валюта,
    |        ОборотыПоСтатьям.Период,
    |        0,
    |        СУММА(ОборотыПоСтатьям.СуммаУпр),
    |        0
    |    ИЗ
    |        Справочник.СтатьиБюджета КАК СтатьиБюджета
    |            ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    |                СтатьиБюджета.Ссылка КАК СтатьяБюджета,
    |                ОборотыБюджетовОбороты.Сценарий КАК Сценарий,
    |                ОборотыБюджетовОбороты.Период КАК Период,
    |                ОборотыБюджетовОбороты.Валюта КАК Валюта,
    |                ОборотыБюджетовОбороты.ЦФО КАК ЦФО,
    |                ОборотыБюджетовОбороты.Проект КАК Проект,
    |                ОборотыБюджетовОбороты.Контрагент КАК Контрагент,
    |                ОборотыБюджетовОбороты.Номенклатура КАК Номенклатура,
    |                ОборотыБюджетовОбороты.СуммаУпрОборот * СтатьиБюджета.Знак КАК СуммаУпр,
    |                ОборотыБюджетовОбороты.ВалютнаяСуммаОборот * СтатьиБюджета.Знак КАК ВалютнаяСумма,
    |                ОборотыБюджетовОбороты.СуммаСценарияОборот * СтатьиБюджета.Знак КАК СуммаСценария,
    |                ОборотыБюджетовОбороты.КоличествоОборот * СтатьиБюджета.Знак КАК Количество
    |            ИЗ
    |                РегистрНакопления.ОборотыБюджетов.Обороты(&ДатаНач_1, &ДатаКон_1, Месяц, Сценарий = &Сценарий_1) КАК ОборотыБюджетовОбороты
    |                    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СтатьиБюджета КАК СтатьиБюджета
    |                    ПО ОборотыБюджетовОбороты.СтатьяОборотов = СтатьиБюджета.СтатьяОборотов
    |            ГДЕ
    |                СтатьиБюджета.Владелец = &Бюджет) КАК ОборотыПоСтатьям
    |            ПО СтатьиБюджета.Ссылка = ОборотыПоСтатьям.СтатьяБюджета
    |    ГДЕ
    |        СтатьиБюджета.Владелец = &Бюджет
    |        И НЕ СтатьиБюджета.ПометкаУдаления
    |        И НЕ СтатьиБюджета.ЭтоГруппа
    |    
    |    СГРУППИРОВАТЬ ПО
    |        ОборотыПоСтатьям.Сценарий,
    |        ОборотыПоСтатьям.Период,
    |        СтатьиБюджета.Ссылка,
    |        ОборотыПоСтатьям.ЦФО,
    |        ОборотыПоСтатьям.Проект,
    |        ОборотыПоСтатьям.Контрагент,
    |        ОборотыПоСтатьям.Номенклатура,
    |        ОборотыПоСтатьям.Валюта
    |    
    |    ОБЪЕДИНИТЬ ВСЕ
    |    
    |    ВЫБРАТЬ
    |        &ПараметрНомерСценария_2,
    |        ОборотыПоСтатьям.Сценарий,
    |        СтатьиБюджета.Ссылка,
    |        ОборотыПоСтатьям.ЦФО,
    |        ОборотыПоСтатьям.Проект,
    |        ОборотыПоСтатьям.Контрагент,
    |        ОборотыПоСтатьям.Номенклатура,
    |        ОборотыПоСтатьям.Валюта,
    |        ОборотыПоСтатьям.Период,
    |        0,
    |        0,
    |        СУММА(ОборотыПоСтатьям.СуммаУпр)
    |    ИЗ
    |        Справочник.СтатьиБюджета КАК СтатьиБюджета
    |            ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    |                СтатьиБюджета.Ссылка КАК СтатьяБюджета,
    |                ОборотыБюджетовОбороты.Сценарий КАК Сценарий,
    |                ОборотыБюджетовОбороты.Период КАК Период,
    |                ОборотыБюджетовОбороты.Валюта КАК Валюта,
    |                ОборотыБюджетовОбороты.ЦФО КАК ЦФО,
    |                ОборотыБюджетовОбороты.Проект КАК Проект,
    |                ОборотыБюджетовОбороты.Контрагент КАК Контрагент,
    |                ОборотыБюджетовОбороты.Номенклатура КАК Номенклатура,
    |                ОборотыБюджетовОбороты.СуммаУпрОборот * СтатьиБюджета.Знак КАК СуммаУпр,
    |                ОборотыБюджетовОбороты.ВалютнаяСуммаОборот * СтатьиБюджета.Знак КАК ВалютнаяСумма,
    |                ОборотыБюджетовОбороты.СуммаСценарияОборот * СтатьиБюджета.Знак КАК СуммаСценария,
    |                ОборотыБюджетовОбороты.КоличествоОборот * СтатьиБюджета.Знак КАК Количество
    |            ИЗ
    |                РегистрНакопления.ОборотыБюджетов.Обороты(&ДатаНач_2, &ДатаКон_2, Месяц, Сценарий = &Сценарий_2) КАК ОборотыБюджетовОбороты
    |                    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СтатьиБюджета КАК СтатьиБюджета
    |                    ПО ОборотыБюджетовОбороты.СтатьяОборотов = СтатьиБюджета.СтатьяОборотов
    |            ГДЕ
    |                СтатьиБюджета.Владелец = &Бюджет) КАК ОборотыПоСтатьям
    |            ПО СтатьиБюджета.Ссылка = ОборотыПоСтатьям.СтатьяБюджета
    |    ГДЕ
    |        СтатьиБюджета.Владелец = &Бюджет
    |        И НЕ СтатьиБюджета.ПометкаУдаления
    |        И НЕ СтатьиБюджета.ЭтоГруппа
    |    
    |    СГРУППИРОВАТЬ ПО
    |        ОборотыПоСтатьям.Сценарий,
    |        ОборотыПоСтатьям.Период,
    |        СтатьиБюджета.Ссылка,
    |        ОборотыПоСтатьям.ЦФО,
    |        ОборотыПоСтатьям.Проект,
    |        ОборотыПоСтатьям.Контрагент,
    |        ОборотыПоСтатьям.Номенклатура,
    |        ОборотыПоСтатьям.Валюта) КАК ДанныеСценариев
    |{ГДЕ
    |    ДанныеСценариев.ЦФО.*,
    |    ДанныеСценариев.Проект.*,
    |    ДанныеСценариев.Контрагент.*,
    |    ДанныеСценариев.Номенклатура.*,
    |    ДанныеСценариев.Валюта}
    |
    |УПОРЯДОЧИТЬ ПО
    |    ДанныеСценариев.НомерСценария,
    |    ДанныеСценариев.СтрокаБюджета.Код
    |{УПОРЯДОЧИТЬ ПО
    |    ДанныеСценариев.НомерСценария,
    |    ДанныеСценариев.Период,
    |    ДанныеСценариев.СтрокаБюджета.Код}
    |ИТОГИ
    |    СУММА(СуммаУпр_0),
    |    СУММА(СуммаУпр_1),
    |    СУММА(СуммаУпр_2)
    |ПО
    |    ОБЩИЕ,
    |    СтрокаБюджета ИЕРАРХИЯ
    |{ИТОГИ ПО
    |    ДанныеСценариев.Период,
    |    ДанныеСценариев.СтрокаБюджета.*,
    |    ДанныеСценариев.НомерСценария,
    |    ДанныеСценариев.Проект.*,
    |    ДанныеСценариев.ЦФО.*,
    |    ДанныеСценариев.Контрагент.*,
    |    ДанныеСценариев.Номенклатура.*,
    |    ДанныеСценариев.Валюта КАК Валюта}";
3 capllary
 
12.03.15
08:17
Неуправляемые формы.
4 2083
 
12.03.15
08:25
>>> БДДС
БДСМ?
5 capllary
 
12.03.15
08:32
(4) Да-да, оно самое)
6 Peltzer
 
12.03.15
08:36
А уже на форме результата событие поля табличного документа  ОбработкаРасшифровки(...) не предлагать?
7 Peltzer
 
12.03.15
08:41
У вас, кстати, жёсткая привязка статьи оборотов бюджета к статье движения денежных средств или нет?
Если жёсткая - я бы брал из источника фактических данных.
Если не жёсткая - поиск по наименованию статьи.
И всё это при условии, что валютных платежей нет.
Если есть валюта - то там вообще синтетика чистая получится.
8 capllary
 
12.03.15
08:41
(6) Почему ж нет, тогда как сопоставить значение факта с регистратором через ОбработкаРасшифровки(...)?
9 capllary
 
12.03.15
08:42
(7) Не жесткая, по наименованию. Валютных платежей нет.
10 capllary
 
12.03.15
08:46
(7) из источника не вариант, так как источники не четко заполнены, и позиций источников около 150, отчет «Отчет по бюджету» просто вылетает из-за нехватки памяти. (8 гигов, файловая база).

удаляю штук 100 источников, тогда формируется отчет.
11 capllary
 
12.03.15
08:50
А вот сама процедура:

Процедура БДДС(ТабДок, Бюджет) Экспорт
    //{{КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ(БДДС)
    // Данный фрагмент построен конструктором.
    // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

    Макет = ВнешнийОтчетОбъект.ПолучитьМакет("БДДС");
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ РАЗРЕШЕННЫЕ
    |    ДанныеСценариев.СтрокаБюджета КАК СтрокаБюджета,
    |    ДанныеСценариев.СуммаУпр_0 КАК СуммаУпр_0,
    |    ДанныеСценариев.СуммаУпр_1 КАК СуммаУпр_1,
    |    ДанныеСценариев.СуммаУпр_2 КАК СуммаУпр_2
    |{ВЫБРАТЬ
    |    ДанныеСценариев.СтрокаБюджета.* КАК СтрокаБюджета,
    |    ДанныеСценариев.Период КАК Период,
    |    ДанныеСценариев.ЦФО.* КАК ЦФО,
    |    ДанныеСценариев.Проект.* КАК Проект,
    |    ДанныеСценариев.Контрагент.* КАК Контрагент,
    |    ДанныеСценариев.Номенклатура.* КАК Номенклатура,
    |    ДанныеСценариев.Валюта.* КАК Валюта}
    |ИЗ
    |    (ВЫБРАТЬ
    |        &ПараметрНомерСценария_0 КАК НомерСценария,
    |        ОборотыПоСтатьям.Сценарий КАК Сценарий,
    |        СтатьиБюджета.Ссылка КАК СтрокаБюджета,
    |        ОборотыПоСтатьям.ЦФО КАК ЦФО,
    |        ОборотыПоСтатьям.Проект КАК Проект,
    |        ОборотыПоСтатьям.Контрагент КАК Контрагент,
    |        ОборотыПоСтатьям.Номенклатура КАК Номенклатура,
    |        ОборотыПоСтатьям.Валюта КАК Валюта,
    |        ОборотыПоСтатьям.Период КАК Период,
    |        СУММА(ОборотыПоСтатьям.СуммаУпр) КАК СуммаУпр_0,
    |        0 КАК СуммаУпр_1,
    |        0 КАК СуммаУпр_2
    |    ИЗ
    |        Справочник.СтатьиБюджета КАК СтатьиБюджета
    |            ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    |                СтатьиБюджета.Ссылка КАК СтатьяБюджета,
    |                ОборотыБюджетовОбороты.Сценарий КАК Сценарий,
    |                ОборотыБюджетовОбороты.Период КАК Период,
    |                ОборотыБюджетовОбороты.Валюта КАК Валюта,
    |                ОборотыБюджетовОбороты.ЦФО КАК ЦФО,
    |                ОборотыБюджетовОбороты.Проект КАК Проект,
    |                ОборотыБюджетовОбороты.Контрагент КАК Контрагент,
    |                ОборотыБюджетовОбороты.Номенклатура КАК Номенклатура,
    |                ОборотыБюджетовОбороты.СуммаУпрОборот * СтатьиБюджета.Знак КАК СуммаУпр,
    |                ОборотыБюджетовОбороты.ВалютнаяСуммаОборот * СтатьиБюджета.Знак КАК ВалютнаяСумма,
    |                ОборотыБюджетовОбороты.СуммаСценарияОборот * СтатьиБюджета.Знак КАК СуммаСценария,
    |                ОборотыБюджетовОбороты.КоличествоОборот * СтатьиБюджета.Знак КАК Количество
    |            ИЗ
    |                РегистрНакопления.ОборотыБюджетов.Обороты(&ДатаНач_0, &ДатаКон_0, Месяц, Сценарий = &Сценарий_0) КАК ОборотыБюджетовОбороты
    |                    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СтатьиБюджета КАК СтатьиБюджета
    |                    ПО ОборотыБюджетовОбороты.СтатьяОборотов = СтатьиБюджета.СтатьяОборотов
    |            ГДЕ
    |                СтатьиБюджета.Владелец = &Бюджет) КАК ОборотыПоСтатьям
    |            ПО СтатьиБюджета.Ссылка = ОборотыПоСтатьям.СтатьяБюджета
    |    ГДЕ
    |        СтатьиБюджета.Владелец = &Бюджет
    |        И НЕ СтатьиБюджета.ПометкаУдаления
    |        И НЕ СтатьиБюджета.ЭтоГруппа
    |    
    |    СГРУППИРОВАТЬ ПО
    |        ОборотыПоСтатьям.Сценарий,
    |        ОборотыПоСтатьям.Период,
    |        СтатьиБюджета.Ссылка,
    |        ОборотыПоСтатьям.ЦФО,
    |        ОборотыПоСтатьям.Проект,
    |        ОборотыПоСтатьям.Контрагент,
    |        ОборотыПоСтатьям.Номенклатура,
    |        ОборотыПоСтатьям.Валюта
    |    
    |    ОБЪЕДИНИТЬ ВСЕ
    |    
    |    ВЫБРАТЬ
    |        &ПараметрНомерСценария_1,
    |        ОборотыПоСтатьям.Сценарий,
    |        СтатьиБюджета.Ссылка,
    |        ОборотыПоСтатьям.ЦФО,
    |        ОборотыПоСтатьям.Проект,
    |        ОборотыПоСтатьям.Контрагент,
    |        ОборотыПоСтатьям.Номенклатура,
    |        ОборотыПоСтатьям.Валюта,
    |        ОборотыПоСтатьям.Период,
    |        0,
    |        СУММА(ОборотыПоСтатьям.СуммаУпр),
    |        0
    |    ИЗ
    |        Справочник.СтатьиБюджета КАК СтатьиБюджета
    |            ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    |                СтатьиБюджета.Ссылка КАК СтатьяБюджета,
    |                ОборотыБюджетовОбороты.Сценарий КАК Сценарий,
    |                ОборотыБюджетовОбороты.Период КАК Период,
    |                ОборотыБюджетовОбороты.Валюта КАК Валюта,
    |                ОборотыБюджетовОбороты.ЦФО КАК ЦФО,
    |                ОборотыБюджетовОбороты.Проект КАК Проект,
    |                ОборотыБюджетовОбороты.Контрагент КАК Контрагент,
    |                ОборотыБюджетовОбороты.Номенклатура КАК Номенклатура,
    |                ОборотыБюджетовОбороты.СуммаУпрОборот * СтатьиБюджета.Знак КАК СуммаУпр,
    |                ОборотыБюджетовОбороты.ВалютнаяСуммаОборот * СтатьиБюджета.Знак КАК ВалютнаяСумма,
    |                ОборотыБюджетовОбороты.СуммаСценарияОборот * СтатьиБюджета.Знак КАК СуммаСценария,
    |                ОборотыБюджетовОбороты.КоличествоОборот * СтатьиБюджета.Знак КАК Количество
    |            ИЗ
    |                РегистрНакопления.ОборотыБюджетов.Обороты(&ДатаНач_1, &ДатаКон_1, Месяц, Сценарий = &Сценарий_1) КАК ОборотыБюджетовОбороты
    |                    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СтатьиБюджета КАК СтатьиБюджета
    |                    ПО ОборотыБюджетовОбороты.СтатьяОборотов = СтатьиБюджета.СтатьяОборотов
    |            ГДЕ
    |                СтатьиБюджета.Владелец = &Бюджет) КАК ОборотыПоСтатьям
    |            ПО СтатьиБюджета.Ссылка = ОборотыПоСтатьям.СтатьяБюджета
    |    ГДЕ
    |        СтатьиБюджета.Владелец = &Бюджет
    |        И НЕ СтатьиБюджета.ПометкаУдаления
    |        И НЕ СтатьиБюджета.ЭтоГруппа
    |    
    |    СГРУППИРОВАТЬ ПО
    |        ОборотыПоСтатьям.Сценарий,
    |        ОборотыПоСтатьям.Период,
    |        СтатьиБюджета.Ссылка,
    |        ОборотыПоСтатьям.ЦФО,
    |        ОборотыПоСтатьям.Проект,
    |        ОборотыПоСтатьям.Контрагент,
    |        ОборотыПоСтатьям.Номенклатура,
    |        ОборотыПоСтатьям.Валюта
    |    
    |    ОБЪЕДИНИТЬ ВСЕ
    |    
    |    ВЫБРАТЬ
    |        &ПараметрНомерСценария_2,
    |        ОборотыПоСтатьям.Сценарий,
    |        СтатьиБюджета.Ссылка,
    |        ОборотыПоСтатьям.ЦФО,
    |        ОборотыПоСтатьям.Проект,
    |        ОборотыПоСтатьям.Контрагент,
    |        ОборотыПоСтатьям.Номенклатура,
    |        ОборотыПоСтатьям.Валюта,
    |        ОборотыПоСтатьям.Период,
    |        0,
    |        0,
    |        СУММА(ОборотыПоСтатьям.СуммаУпр)
    |    ИЗ
    |        Справочник.СтатьиБюджета КАК СтатьиБюджета
    |            ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    |                СтатьиБюджета.Ссылка КАК СтатьяБюджета,
    |                ОборотыБюджетовОбороты.Сценарий КАК Сценарий,
    |                ОборотыБюджетовОбороты.Период КАК Период,
    |                ОборотыБюджетовОбороты.Валюта КАК Валюта,
    |                ОборотыБюджетовОбороты.ЦФО КАК ЦФО,
    |                ОборотыБюджетовОбороты.Проект КАК Проект,
    |                ОборотыБюджетовОбороты.Контрагент КАК Контрагент,
    |                ОборотыБюджетовОбороты.Номенклатура КАК Номенклатура,
    |                ОборотыБюджетовОбороты.СуммаУпрОборот * СтатьиБюджета.Знак КАК СуммаУпр,
    |                ОборотыБюджетовОбороты.ВалютнаяСуммаОборот * СтатьиБюджета.Знак КАК ВалютнаяСумма,
    |                ОборотыБюджетовОбороты.СуммаСценарияОборот * СтатьиБюджета.Знак КАК СуммаСценария,
    |                ОборотыБюджетовОбороты.КоличествоОборот * СтатьиБюджета.Знак КАК Количество
    |            ИЗ
    |                РегистрНакопления.ОборотыБюджетов.Обороты(&ДатаНач_2, &ДатаКон_2, Месяц, Сценарий = &Сценарий_2) КАК ОборотыБюджетовОбороты
    |                    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СтатьиБюджета КАК СтатьиБюджета
    |                    ПО ОборотыБюджетовОбороты.СтатьяОборотов = СтатьиБюджета.СтатьяОборотов
    |            ГДЕ
    |                СтатьиБюджета.Владелец = &Бюджет) КАК ОборотыПоСтатьям
    |            ПО СтатьиБюджета.Ссылка = ОборотыПоСтатьям.СтатьяБюджета
    |    ГДЕ
    |        СтатьиБюджета.Владелец = &Бюджет
    |        И НЕ СтатьиБюджета.ПометкаУдаления
    |        И НЕ СтатьиБюджета.ЭтоГруппа
    |    
    |    СГРУППИРОВАТЬ ПО
    |        ОборотыПоСтатьям.Сценарий,
    |        ОборотыПоСтатьям.Период,
    |        СтатьиБюджета.Ссылка,
    |        ОборотыПоСтатьям.ЦФО,
    |        ОборотыПоСтатьям.Проект,
    |        ОборотыПоСтатьям.Контрагент,
    |        ОборотыПоСтатьям.Номенклатура,
    |        ОборотыПоСтатьям.Валюта) КАК ДанныеСценариев
    |{ГДЕ
    |    ДанныеСценариев.ЦФО.*,
    |    ДанныеСценариев.Проект.*,
    |    ДанныеСценариев.Контрагент.*,
    |    ДанныеСценариев.Номенклатура.*,
    |    ДанныеСценариев.Валюта}
    |
    |УПОРЯДОЧИТЬ ПО
    |    ДанныеСценариев.НомерСценария,
    |    ДанныеСценариев.СтрокаБюджета.Код
    |{УПОРЯДОЧИТЬ ПО
    |    ДанныеСценариев.НомерСценария,
    |    ДанныеСценариев.Период,
    |    ДанныеСценариев.СтрокаБюджета.Код}
    |ИТОГИ
    |    СУММА(СуммаУпр_0),
    |    СУММА(СуммаУпр_1),
    |    СУММА(СуммаУпр_2)
    |ПО
    |    ОБЩИЕ,
    |    СтрокаБюджета ИЕРАРХИЯ
    |{ИТОГИ ПО
    |    ДанныеСценариев.Период,
    |    ДанныеСценариев.СтрокаБюджета.*,
    |    ДанныеСценариев.НомерСценария,
    |    ДанныеСценариев.Проект.*,
    |    ДанныеСценариев.ЦФО.*,
    |    ДанныеСценариев.Контрагент.*,
    |    ДанныеСценариев.Номенклатура.*,
    |    ДанныеСценариев.Валюта КАК Валюта}";

    Запрос.УстановитьПараметр("Бюджет", Бюджет);
    Запрос.УстановитьПараметр("ПараметрНомерСценария_0", 0);
    Запрос.УстановитьПараметр("ПараметрНомерСценария_1", 1);
    Запрос.УстановитьПараметр("ПараметрНомерСценария_2", 2);
    Запрос.УстановитьПараметр("ПустойКонтрагент", Справочники.Контрагенты.ПустаяСсылка());
    Запрос.УстановитьПараметр("ПустойПроект", Справочники.Проекты.ПустаяСсылка());
    Запрос.УстановитьПараметр("ПустойЦФО", Справочники.Подразделения.ПустаяСсылка());
    Запрос.УстановитьПараметр("Сценарий_0",Справочники.СценарииПланирования.ПустаяСсылка());
    Запрос.УстановитьПараметр("Сценарий_1",Сценарий1);
    Запрос.УстановитьПараметр("Сценарий_2",Сценарий2);
    Запрос.УстановитьПараметр("ДатаНач_0",НачПериода);
    Запрос.УстановитьПараметр("ДатаНач_1",НачПериода);
    Запрос.УстановитьПараметр("ДатаНач_2",НачПериода);
    Запрос.УстановитьПараметр("ДатаКон_0",КонецДня(КонПериода));
    Запрос.УстановитьПараметр("ДатаКон_1",КонецДня(КонПериода));
    Запрос.УстановитьПараметр("ДатаКон_2",КонецДня(КонПериода));
    Запрос.УстановитьПараметр("ДатаКон_0_999",КонецМесяца(НачПериода));
    Запрос.УстановитьПараметр("ДатаКон_1_999",КонецМесяца(НачПериода));
    Запрос.УстановитьПараметр("ДатаКон_2_999",КонецМесяца(НачПериода));

    Результат = Запрос.Выполнить();

    ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
    ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
    ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");
    ОбластьПодвалТаблицы = Макет.ПолучитьОбласть("ПодвалТаблицы");
    ОбластьОбщийИтог = Макет.ПолучитьОбласть("ОбщиеИтоги");
    ОбластьСтрокаБюджетаИерархия = Макет.ПолучитьОбласть("СтрокаБюджетаИерархия");
    ОбластьСтрокаБюджета = Макет.ПолучитьОбласть("СтрокаБюджета");

    ТабДок.Очистить();
    ТабДок.Вывести(ОбластьЗаголовок);
    ТабДок.Вывести(ОбластьШапкаТаблицы);
    ТабДок.НачатьАвтогруппировкуСтрок();

    ВыборкаОбщийИтог = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

    ВыборкаОбщийИтог.Следующий();        // Общий итог
    ОбластьОбщийИтог.Параметры.Заполнить(ВыборкаОбщийИтог);
    //Выведем в конце
    //ТабДок.Вывести(ОбластьОбщийИтог, ВыборкаОбщийИтог.Уровень());

    ВыборкаСтрокаБюджета = ВыборкаОбщийИтог.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

    Пока ВыборкаСтрокаБюджета.Следующий() Цикл        
        Если ВыборкаСтрокаБюджета.ТипЗаписи() = ТипЗаписиЗапроса.ИтогПоИерархии Тогда
            Область = ОбластьСтрокаБюджетаИерархия;
        Иначе
            Область = ОбластьСтрокаБюджета;
        КонецЕсли;

        Область.Параметры.Заполнить(ВыборкаСтрокаБюджета);
        //Отклонение первоначального плана от факта
        Отклонение_0 = ВыборкаСтрокаБюджета.СуммаУпр_2 - ВыборкаСтрокаБюджета.СуммаУпр_0;
        Область.Параметры.Отклонение_0 = Отклонение_0;
        Область.Параметры.ОтклонениеПр_0 = ?(ВыборкаСтрокаБюджета.СуммаУпр_0=0,0,Отклонение_0/ВыборкаСтрокаБюджета.СуммаУпр_0*100);
        //Отклонение уточненного плана от факта
        Отклонение_1 = ВыборкаСтрокаБюджета.СуммаУпр_1 - ВыборкаСтрокаБюджета.СуммаУпр_0;
        Область.Параметры.Отклонение_1 = Отклонение_1;
        Область.Параметры.ОтклонениеПр_1 = ?(ВыборкаСтрокаБюджета.СуммаУпр_0=0,0,Отклонение_1/ВыборкаСтрокаБюджета.СуммаУпр_0*100);
        //Отклонение уточненного плана от факта
        Отклонение_2 = ВыборкаСтрокаБюджета.СуммаУпр_2 - ВыборкаСтрокаБюджета.СуммаУпр_1;
        Область.Параметры.Отклонение_2 = Отклонение_2;
        Область.Параметры.ОтклонениеПр_2 = ?(ВыборкаСтрокаБюджета.СуммаУпр_1=0,0,ВыборкаСтрокаБюджета.СуммаУпр_2/ВыборкаСтрокаБюджета.СуммаУпр_1*100);
        
        Если ВыборкаСтрокаБюджета.СтрокаБюджета.ЭтоГруппа и ТипЗНЧ(ВыборкаСтрокаБюджета.СтрокаБюджета) = Тип("СправочникСсылка.СчетаБюджета") Тогда
            Область.Параметры.СтрокаБюджета = "Остаток денежных средств на начало периода";
        КонецЕсли;
        
        ТабДок.Вывести(Область, ВыборкаСтрокаБюджета.Уровень(),,Ложь);
    КонецЦикла;
    
    
        
    
    ТабДок.ЗакончитьАвтогруппировкуСтрок();
    ТабДок.Вывести(ОбластьОбщийИтог);

    ТабДок.Вывести(ОбластьПодвалТаблицы);
    ТабДок.Вывести(ОбластьПодвал);
    
    ТабДок.ФиксацияСверху = 14;

    ВидимостьЗаголовка();
    //}}КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ
КонецПроцедуры
12 Peltzer
 
12.03.15
08:51
Примерно так:
<code>
ЛЕВОЕ СОЕДИНЕНИЕ
(
ВЫБРАТЬ
ДДС.СтатьяДвиженияДенежныхСредств,
ДДС.ДокументДвижения КАК Регистратор,
ДДС.Сумма
ИЗ
РегистрНакопления.ДвиженияДенежныхСредств КАК ДДС
ГДЕ ДДС.ПриходРасход = ЗНАЧЕНИЕ(Перечисление.ВидДвиженияНакопления.Приход)
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
ДДС.СтатьяДвиженияДенежныхСредств,
ДДС.ДокументДвижения КАК Регистратор,
-ДДС.Сумма
ИЗ
РегистрНакопления.ДвиженияДенежныхСредств КАК ДДС
ГДЕ ДДС.ПриходРасход = ЗНАЧЕНИЕ(Перечисление.ВидДвиженияНакопления.Расход)
) КАК РегистраторыПлатежей
ПО ВЫРАЗИТЬ(РегистраторыПлатежей.СтатьяДвиженияДенежныхСредств.Наименование КАК СТРОКА(250))=ВЫРАЗИТЬ(ДанныеСценариев.СтрокаБюджета.Наименование КАК СТРОКА(250))
И РегистраторыПлатежей.Регистратор.Дата >= &ДатаНач_1
И РегистраторыПлатежей.Регистратор.Дата <= &ДатаКон_1
</code>
13 capllary
 
12.03.15
08:54
14 capllary
 
12.03.15
09:11
(12) Так?

Запрос.Текст =
    "ВЫБРАТЬ РАЗРЕШЕННЫЕ
    |    ДанныеСценариев.СтрокаБюджета КАК СтрокаБюджета,
    |    ДанныеСценариев.СуммаУпр_0 КАК СуммаУпр_0,
    |    ДанныеСценариев.СуммаУпр_1 КАК СуммаУпр_1,
    |    ДанныеСценариев.СуммаУпр_2 КАК СуммаУпр_2
    |{ВЫБРАТЬ
    |    ДанныеСценариев.СтрокаБюджета.* КАК СтрокаБюджета,
    |    ДанныеСценариев.Период КАК Период,
    |    ДанныеСценариев.ЦФО.* КАК ЦФО,
    |    ДанныеСценариев.Проект.* КАК Проект,
    |    ДанныеСценариев.Контрагент.* КАК Контрагент,
    |    ДанныеСценариев.Номенклатура.* КАК Номенклатура,
    |    ДанныеСценариев.Валюта.* КАК Валюта}
    |ИЗ
    |    (ВЫБРАТЬ
    |        &ПараметрНомерСценария_0 КАК НомерСценария,
    |        NULL КАК Сценарий,
    |        СтатьиБюджета.Ссылка КАК СтрокаБюджета,
    |        NULL КАК ЦФО,
    |        NULL КАК Проект,
    |        NULL КАК Контрагент,
    |        NULL КАК Номенклатура,
    |        NULL КАК Валюта,
    |        NULL КАК Период,
    |        NULL КАК СуммаУпр_0,
    |        0 КАК СуммаУпр_1,
    |        0 КАК СуммаУпр_2
    |    ИЗ
    |        Справочник.СтатьиБюджета КАК СтатьиБюджета,
    |        (ВЫБРАТЬ
    |            ДДС.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
    |            ДДС.ДокументДвижения КАК Регистратор,
    |            ДДС.Сумма КАК Сумма
    |        ИЗ
    |            РегистрНакопления.ДвиженияДенежныхСредств КАК ДДС
    |        ГДЕ
    |            ДДС.ПриходРасход = ЗНАЧЕНИЕ(Перечисление.ВидыДвиженийПриходРасход.Приход)
    |        
    |        ОБЪЕДИНИТЬ ВСЕ
    |        
    |        ВЫБРАТЬ
    |            ДДС.СтатьяДвиженияДенежныхСредств,
    |            ДДС.ДокументДвижения,
    |            -ДДС.Сумма
    |        ИЗ
    |            РегистрНакопления.ДвиженияДенежныхСредств КАК ДДС
    |        ГДЕ
    |            ДДС.ПриходРасход = ЗНАЧЕНИЕ(Перечисление.ВидыДвиженийПриходРасход.Расход)) КАК ОборотыПоСтатьям
    |    ГДЕ
    |        СтатьиБюджета.Владелец = &Бюджет
    |        И НЕ СтатьиБюджета.ПометкаУдаления
    |        И НЕ СтатьиБюджета.ЭтоГруппа
    |    
    |    СГРУППИРОВАТЬ ПО
    |        СтатьиБюджета.Ссылка
    |    
    |    ОБЪЕДИНИТЬ ВСЕ
    |    
    |    ВЫБРАТЬ
    |        &ПараметрНомерСценария_1,
    |        ОборотыПоСтатьям.Сценарий,
    |        СтатьиБюджета.Ссылка,
    |        ОборотыПоСтатьям.ЦФО,
    |        ОборотыПоСтатьям.Проект,
    |        ОборотыПоСтатьям.Контрагент,
    |        ОборотыПоСтатьям.Номенклатура,
    |        ОборотыПоСтатьям.Валюта,
    |        ОборотыПоСтатьям.Период,
    |        0,
    |        СУММА(ОборотыПоСтатьям.СуммаУпр),
    |        0
    |    ИЗ
    |        Справочник.СтатьиБюджета КАК СтатьиБюджета
    |            ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    |                СтатьиБюджета.Ссылка КАК СтатьяБюджета,
    |                ОборотыБюджетовОбороты.Сценарий КАК Сценарий,
    |                ОборотыБюджетовОбороты.Период КАК Период,
    |                ОборотыБюджетовОбороты.Валюта КАК Валюта,
    |                ОборотыБюджетовОбороты.ЦФО КАК ЦФО,
    |                ОборотыБюджетовОбороты.Проект КАК Проект,
    |                ОборотыБюджетовОбороты.Контрагент КАК Контрагент,
    |                ОборотыБюджетовОбороты.Номенклатура КАК Номенклатура,
    |                ОборотыБюджетовОбороты.СуммаУпрОборот * СтатьиБюджета.Знак КАК СуммаУпр,
    |                ОборотыБюджетовОбороты.ВалютнаяСуммаОборот * СтатьиБюджета.Знак КАК ВалютнаяСумма,
    |                ОборотыБюджетовОбороты.СуммаСценарияОборот * СтатьиБюджета.Знак КАК СуммаСценария,
    |                ОборотыБюджетовОбороты.КоличествоОборот * СтатьиБюджета.Знак КАК Количество
    |            ИЗ
    |                РегистрНакопления.ОборотыБюджетов.Обороты(&ДатаНач_1, &ДатаКон_1, Месяц, Сценарий = &Сценарий_1) КАК ОборотыБюджетовОбороты
    |                    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СтатьиБюджета КАК СтатьиБюджета
    |                    ПО ОборотыБюджетовОбороты.СтатьяОборотов = СтатьиБюджета.СтатьяОборотов
    |            ГДЕ
    |                СтатьиБюджета.Владелец = &Бюджет) КАК ОборотыПоСтатьям
    |            ПО СтатьиБюджета.Ссылка = ОборотыПоСтатьям.СтатьяБюджета
    |    ГДЕ
    |        СтатьиБюджета.Владелец = &Бюджет
    |        И НЕ СтатьиБюджета.ПометкаУдаления
    |        И НЕ СтатьиБюджета.ЭтоГруппа
    |    
    |    СГРУППИРОВАТЬ ПО
    |        ОборотыПоСтатьям.Сценарий,
    |        ОборотыПоСтатьям.Период,
    |        СтатьиБюджета.Ссылка,
    |        ОборотыПоСтатьям.ЦФО,
    |        ОборотыПоСтатьям.Проект,
    |        ОборотыПоСтатьям.Контрагент,
    |        ОборотыПоСтатьям.Номенклатура,
    |        ОборотыПоСтатьям.Валюта
    |    
    |    ОБЪЕДИНИТЬ ВСЕ
    |    
    |    ВЫБРАТЬ
    |        &ПараметрНомерСценария_2,
    |        ОборотыПоСтатьям.Сценарий,
    |        СтатьиБюджета.Ссылка,
    |        ОборотыПоСтатьям.ЦФО,
    |        ОборотыПоСтатьям.Проект,
    |        ОборотыПоСтатьям.Контрагент,
    |        ОборотыПоСтатьям.Номенклатура,
    |        ОборотыПоСтатьям.Валюта,
    |        ОборотыПоСтатьям.Период,
    |        0,
    |        0,
    |        СУММА(ОборотыПоСтатьям.СуммаУпр)
    |    ИЗ
    |        Справочник.СтатьиБюджета КАК СтатьиБюджета
    |            ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    |                СтатьиБюджета.Ссылка КАК СтатьяБюджета,
    |                ОборотыБюджетовОбороты.Сценарий КАК Сценарий,
    |                ОборотыБюджетовОбороты.Период КАК Период,
    |                ОборотыБюджетовОбороты.Валюта КАК Валюта,
    |                ОборотыБюджетовОбороты.ЦФО КАК ЦФО,
    |                ОборотыБюджетовОбороты.Проект КАК Проект,
    |                ОборотыБюджетовОбороты.Контрагент КАК Контрагент,
    |                ОборотыБюджетовОбороты.Номенклатура КАК Номенклатура,
    |                ОборотыБюджетовОбороты.СуммаУпрОборот * СтатьиБюджета.Знак КАК СуммаУпр,
    |                ОборотыБюджетовОбороты.ВалютнаяСуммаОборот * СтатьиБюджета.Знак КАК ВалютнаяСумма,
    |                ОборотыБюджетовОбороты.СуммаСценарияОборот * СтатьиБюджета.Знак КАК СуммаСценария,
    |                ОборотыБюджетовОбороты.КоличествоОборот * СтатьиБюджета.Знак КАК Количество
    |            ИЗ
    |                РегистрНакопления.ОборотыБюджетов.Обороты(&ДатаНач_2, &ДатаКон_2, Месяц, Сценарий = &Сценарий_2) КАК ОборотыБюджетовОбороты
    |                    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СтатьиБюджета КАК СтатьиБюджета
    |                    ПО ОборотыБюджетовОбороты.СтатьяОборотов = СтатьиБюджета.СтатьяОборотов
    |            ГДЕ
    |                СтатьиБюджета.Владелец = &Бюджет) КАК ОборотыПоСтатьям
    |            ПО СтатьиБюджета.Ссылка = ОборотыПоСтатьям.СтатьяБюджета
    |    ГДЕ
    |        СтатьиБюджета.Владелец = &Бюджет
    |        И НЕ СтатьиБюджета.ПометкаУдаления
    |        И НЕ СтатьиБюджета.ЭтоГруппа
    |    
    |    СГРУППИРОВАТЬ ПО
    |        ОборотыПоСтатьям.Сценарий,
    |        ОборотыПоСтатьям.Период,
    |        СтатьиБюджета.Ссылка,
    |        ОборотыПоСтатьям.ЦФО,
    |        ОборотыПоСтатьям.Проект,
    |        ОборотыПоСтатьям.Контрагент,
    |        ОборотыПоСтатьям.Номенклатура,
    |        ОборотыПоСтатьям.Валюта) КАК ДанныеСценариев
    |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    |            ДДС.СтатьяДвиженияДенежныхСредств КАК СтатьяДвиженияДенежныхСредств,
    |            ДДС.ДокументДвижения КАК Регистратор,
    |            ДДС.Сумма КАК Сумма
    |        ИЗ
    |            РегистрНакопления.ДвиженияДенежныхСредств КАК ДДС
    |        ГДЕ
    |            ДДС.ПриходРасход = ЗНАЧЕНИЕ(Перечисление.ВидыДвиженийПриходРасход.Приход)
    |        
    |        ОБЪЕДИНИТЬ ВСЕ
    |        
    |        ВЫБРАТЬ
    |            ДДС.СтатьяДвиженияДенежныхСредств,
    |            ДДС.ДокументДвижения,
    |            -ДДС.Сумма
    |        ИЗ
    |            РегистрНакопления.ДвиженияДенежныхСредств КАК ДДС
    |        ГДЕ
    |            ДДС.ПриходРасход = ЗНАЧЕНИЕ(Перечисление.ВидыДвиженийПриходРасход.Расход)) КАК РегистраторыПлатежей
    |        ПО ((ВЫРАЗИТЬ(РегистраторыПлатежей.СтатьяДвиженияДенежныхСредств.Наименование КАК СТРОКА(250))) = (ВЫРАЗИТЬ(ДанныеСценариев.СтрокаБюджета.Наименование КАК СТРОКА(250))))
    |            И (РегистраторыПлатежей.Регистратор.Дата >= &ДатаНач_1)
    |            И (РегистраторыПлатежей.Регистратор.Дата <= &ДатаКон_1)
    |{ГДЕ
    |    ДанныеСценариев.ЦФО.*,
    |    ДанныеСценариев.Проект.*,
    |    ДанныеСценариев.Контрагент.*,
    |    ДанныеСценариев.Номенклатура.*,
    |    ДанныеСценариев.Валюта}
    |
    |УПОРЯДОЧИТЬ ПО
    |    ДанныеСценариев.НомерСценария,
    |    ДанныеСценариев.СтрокаБюджета.Код
    |{УПОРЯДОЧИТЬ ПО
    |    ДанныеСценариев.НомерСценария,
    |    ДанныеСценариев.Период,
    |    ДанныеСценариев.СтрокаБюджета.Код}
    |ИТОГИ
    |    СУММА(СуммаУпр_0),
    |    СУММА(СуммаУпр_1),
    |    СУММА(СуммаУпр_2)
    |ПО
    |    ОБЩИЕ,
    |    СтрокаБюджета ИЕРАРХИЯ
    |{ИТОГИ ПО
    |    ДанныеСценариев.Период,
    |    ДанныеСценариев.СтрокаБюджета.*,
    |    ДанныеСценариев.НомерСценария,
    |    ДанныеСценариев.Проект.*,
    |    ДанныеСценариев.ЦФО.*,
    |    ДанныеСценариев.Контрагент.*,
    |    ДанныеСценариев.Номенклатура.*,
    |    ДанныеСценариев.Валюта КАК Валюта}";