Имя: Пароль:
1C
1С v8
Отчет по складам и месяцам в УТ11
0 LivingStar
 
17.04.15
07:13
1с 8.3, УТ 11. Решаю задачу по выводу отчета по номенклатуре, артикулу, 4 родителям группы номенклатуры, как это задано в справочнике номенклатура и продажам по документу ОтчетОРозничныхПродажах. Проблема в том что столкнулся с непониманием как правильнее построить такой отчет. Делать через таблицы значений, постепенно формируя данные для вывода в отчет, как то нет желания. В поисках более продвинутого способа и метода. Может кто либо понимая о чем речь поделится примеров решения, или подскажет правильную методологию разработки данного отчета?!!! Пока на управляемой форме есть просто запрос,
|
    Запрос.Текст = "
        |ВЫБРАТЬ
        |    ОтчетОРозничныхПродажахТовары.Номенклатура КАК НоменклатураСсылка,
        |    ОтчетОРозничныхПродажахТовары.Номенклатура.Наименование КАК Наименование,
        |    ОтчетОРозничныхПродажахТовары.Номенклатура.Артикул КАК Артикул,
        |    ОтчетОРозничныхПродажахТовары.Номенклатура.Родитель КАК Группа_1,
        |    ОтчетОРозничныхПродажахТовары.Номенклатура.Родитель.Родитель КАК Группа_2,
        |    ОтчетОРозничныхПродажахТовары.Номенклатура.Родитель.Родитель.Родитель КАК Группа_3,
        |    ВЫБОР
        |        КОГДА ОтчетОРозничныхПродажахТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель <> ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)
        |            ТОГДА ОтчетОРозничныхПродажахТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель
        |        ИНАЧЕ ОтчетОРозничныхПродажахТовары.Номенклатура.Родитель.Родитель.Родитель
        |    КОНЕЦ КАК Группа_4,
        |    СУММА(ОтчетОРозничныхПродажахТовары.Количество) КАК Количество,
        |    СУММА(ОтчетОРозничныхПродажахТовары.Сумма) КАК Сумма
        |ИЗ
        |    Документ.ОтчетОРозничныхПродажах.Товары КАК ОтчетОРозничныхПродажахТовары
        |ГДЕ
        |    ОтчетОРозничныхПродажахТовары.Ссылка.Дата МЕЖДУ &НачДата И &КонДата
        |";
        Если ЗначениеЗаполнено(ЭтаФорма.Склад) Тогда
            Запрос.Текст = Запрос.Текст + "
                |   И ОтчетОРозничныхПродажахТовары.Ссылка.Склад = &Склад
                |";
            Запрос.УстановитьПараметр("Склад", ЭтаФорма.Склад);                
        КонецЕсли;
        СпНом = ПолучитьСписокНоменклатурыНаСервере();
        //
        Если СпНом.Количество() > 0 Тогда
            Запрос.Текст = Запрос.Текст + "
                |   И ОтчетОРозничныхПродажахТовары.Номенклатура В ИЕРАРХИИ (&СписокНоменклатуры)
                |";
            Запрос.УстановитьПараметр("СписокНоменклатуры", СпНом);                
        КонецЕсли;
        Запрос.Текст = Запрос.Текст + "
        |СГРУППИРОВАТЬ ПО
        |    ОтчетОРозничныхПродажахТовары.Номенклатура,
        |    ОтчетОРозничныхПродажахТовары.Номенклатура.Наименование,
        |    ОтчетОРозничныхПродажахТовары.Номенклатура.Артикул,
        |    ОтчетОРозничныхПродажахТовары.Номенклатура.Родитель,
        |    ОтчетОРозничныхПродажахТовары.Номенклатура.Родитель.Родитель,
        |    ОтчетОРозничныхПродажахТовары.Номенклатура.Родитель.Родитель.Родитель,
        |    ВЫБОР
        |        КОГДА ОтчетОРозничныхПродажахТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель <> ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)
        |            ТОГДА ОтчетОРозничныхПродажахТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель
        |        ИНАЧЕ ОтчетОРозничныхПродажахТовары.Номенклатура.Родитель.Родитель.Родитель
        |    КОНЕЦ
        |
        |УПОРЯДОЧИТЬ ПО
        |    Наименование
        |";
|
Подскажите пожалуйста как правильнее вывести с права сейчас количество и сумму по месяцам в зависимости от выбранного периода, так же учесть эту разбивку по складам. Есть ли где либо пример как это можно быстро сделать на сКД ?
1 Креатив
 
17.04.15
07:40
(0)Могу только посоветовать посмотреть видео курс Гилёва по СКД. Тогда возможно в запросе не придётся писать Родитель.Родитель.Родитель
2 LivingStar
 
17.04.15
07:58
(1) Ну это не суть важно, я смотрел этот курс и как помню для решения этой задачи там нет вариантов.
Решение тут нужно для вывода суммовых и количественных показателей в право, разворачивая их помесячно и по складам. Вопрос в этом. То что в (0) это так мелочи, к чему необходимо сейчас прицепить числовые данные.
3 LivingStar
 
17.04.15
08:48
в СКД сейчас пробую делать, там проще будет же????
4 LivingStar
 
17.04.15
10:01
оставляю СКД, раз нет никаких адекватных примеров, как динамически разворачивать таблицу в право по месяцам и складам, буду делать по технологии 7.7
5 LivingStar
 
17.04.15
11:50
подскажите как через вычисляемое поле вывести динамически колонки в право
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший