8.х СКД вывести количество один раз

Тема в разделе "Отчеты и обработки для "1С:Предприятие 8"", создана пользователем bluntschi, 2 апр 2014.

  1. TopicStarter Overlay
    bluntschi
    Offline

    bluntschi Опытный в 1С

    Регистрация:
    18 июл 2012
    Сообщения:
    422
    Симпатии:
    0
    Баллы:
    26
    Здравствуйте, подскажите, можно ли осуществить

    есть отчет на СКД, который выбирает заказы поставщику, номенклатуру, количество, общее количество по заказу, он объединен с внутренним заказом, и в итоге получается такой отчет, который подставляет количество по внутреннему заказу в каждую строчку, то есть во внутреннем заказе заказно всего 5, а в поле итог отчета выходит 10...
    [​IMG]
    А должно быть, если во внутреннем заказе 5 штук всего закано, то это число должно стоять только в какой-то одной строке, например вот так и в итоге должно показывать 5:
    [​IMG]
    Можно ли сделать так? :)
  2. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Конечно можно. Переделать запрос.
  3. TopicStarter Overlay
    bluntschi
    Offline

    bluntschi Опытный в 1С

    Регистрация:
    18 июл 2012
    Сообщения:
    422
    Симпатии:
    0
    Баллы:
    26
    а в какую сторону копать? я просто не совсем понимаю, как можно реализовать это:( потому и спрашиваю

    вот запрос
    Код:
    ВЫБРАТЬ
        ЗаказПоставщикуТовары.Ссылка КАК Сделка,
        ЗаказПоставщикуТовары.Ссылка.ДатаОплаты КАК ОкончательныйРасчет,
        ЗаказПоставщикуТовары.Ссылка.Проект КАК Проект,
        ЗаказПоставщикуТовары.Ссылка.Склад КАК СкладИзЗаказаПоставщику,
        ЗаказПоставщикуТовары.Ссылка.КурсВзаиморасчетов,
        ЗаказПоставщикуТовары.Номенклатура,
        ЗаказПоставщикуТовары.Ссылка.Контрагент КАК Контрагент,
        СУММА(ЗаказПоставщикуТовары.Количество) КАК Количество,
        0 КАК КоличествоПоВнутреннемуЗаказу,
        ЗаказПоставщикуТовары.КоличествоТонны,
        СУММА(ЗаказПоставщикуТовары.Сумма) КАК Сумма,
        ЗаказПоставщикуТовары.Продукция,
        ЗаказПоставщикуТовары.ОснованиеЗаявки,
        ЗаказПоставщикуТовары.Узел,
        ЗаказПоставщикуТовары.Подузел,
        ЗаказПоставщикуТовары.ВнутреннийЗаказ КАК ВнутреннийЗаказ,
        Сумма(ВЫБОР
            КОГДА ЗаказПоставщикуТовары.ПлановаяСебестоимость = 0
                ТОГДА ЗаказПоставщикуТовары.Сумма
            ИНАЧЕ ЗаказПоставщикуТовары.ПлановаяСебестоимость
        КОНЕЦ) КАК Себестоимость
    ИЗ
        Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары
    ГДЕ
        ЗаказПоставщикуТовары.Ссылка.Проведен
    
    СГРУППИРОВАТЬ ПО
        ЗаказПоставщикуТовары.Ссылка,
        ЗаказПоставщикуТовары.ВнутреннийЗаказ,
        ЗаказПоставщикуТовары.Подузел,
        ЗаказПоставщикуТовары.Узел,
        ЗаказПоставщикуТовары.ОснованиеЗаявки,
        ЗаказПоставщикуТовары.Продукция,
        ЗаказПоставщикуТовары.Номенклатура,
        ЗаказПоставщикуТовары.Ссылка.ДатаОплаты,
        ЗаказПоставщикуТовары.Ссылка.Проект,
        ЗаказПоставщикуТовары.Ссылка.Склад,
        ЗаказПоставщикуТовары.Ссылка.КурсВзаиморасчетов,
        ЗаказПоставщикуТовары.Ссылка.Контрагент,
        ЗаказПоставщикуТовары.КоличествоТонны
    
    
    ОБЪЕДИНИТЬ ВСЕ
    
    ВЫБРАТЬ
        ЗаказПоставщикуУслуги.Ссылка,
        ЗаказПоставщикуУслуги.Ссылка.ДатаОплаты,
        ЗаказПоставщикуУслуги.Ссылка.Проект,
        ЗаказПоставщикуУслуги.Ссылка.Склад,
        ЗаказПоставщикуУслуги.Ссылка.КурсВзаиморасчетов,
        ЗаказПоставщикуУслуги.Номенклатура,
        ЗаказПоставщикуУслуги.Ссылка.Контрагент,
        СУММА(ЗаказПоставщикуУслуги.Количество),
        0,
        ЗаказПоставщикуУслуги.КоличествоТонны,
        СУММА(ЗаказПоставщикуУслуги.Сумма),
        ЗаказПоставщикуУслуги.Продукция,
        ЗаказПоставщикуУслуги.ОснованиеЗаявки,
        0,
        ЗаказПоставщикуУслуги.Подузел,
        ЗаказПоставщикуУслуги.ВнутреннийЗаказ,
        Сумма(ВЫБОР
            КОГДА ЗаказПоставщикуУслуги.ПлановаяСебестоимость = 0
                ТОГДА ЗаказПоставщикуУслуги.Сумма
            ИНАЧЕ ЗаказПоставщикуУслуги.ПлановаяСебестоимость
        КОНЕЦ)
    
    ИЗ
        Документ.ЗаказПоставщику.Услуги КАК ЗаказПоставщикуУслуги
    ГДЕ
        ЗаказПоставщикуУслуги.Ссылка.Проведен
    
    СГРУППИРОВАТЬ ПО
        ЗаказПоставщикуУслуги.Ссылка,
        ЗаказПоставщикуУслуги.Номенклатура,
        ЗаказПоставщикуУслуги.ОснованиеЗаявки,
        ЗаказПоставщикуУслуги.Продукция,
        ЗаказПоставщикуУслуги.Подузел,
        ЗаказПоставщикуУслуги.ВнутреннийЗаказ,
        ЗаказПоставщикуУслуги.Ссылка.ДатаОплаты,
        ЗаказПоставщикуУслуги.Ссылка.Проект,
        ЗаказПоставщикуУслуги.Ссылка.Склад,
        ЗаказПоставщикуУслуги.Ссылка.КурсВзаиморасчетов,
        ЗаказПоставщикуУслуги.Ссылка.Контрагент,
        ЗаказПоставщикуУслуги.КоличествоТонны
    
    ОБЪЕДИНИТЬ
    
    ВЫБРАТЬ
        ВложенныйЗапрос1.Ссылка,
        ВложенныйЗапрос1.Ссылка.ДатаОплаты,
        ВложенныйЗапрос.Проект,
        ВложенныйЗапрос.Склад,
        NULL,
        ВложенныйЗапрос.Номенклатура,
        ВложенныйЗапрос1.Ссылка.Контрагент,
        NULL,
        ВложенныйЗапрос.Количество,
        NULL,
        NULL,
        ВложенныйЗапрос.Продукция,
        ВложенныйЗапрос.ОснованиеЗаявки,
        ВложенныйЗапрос.Узел,
        ВложенныйЗапрос.Подузел,
        ВложенныйЗапрос.Ссылка,
        NULL
    
    ИЗ
        (ВЫБРАТЬ
                ВнутреннийЗаказ.Ссылка КАК Ссылка,
                ВнутреннийЗаказ.Ссылка.Проект КАК Проект,
                ВнутреннийЗаказ.Склад,
                ВнутреннийЗаказ.Номенклатура КАК Номенклатура,
                ВнутреннийЗаказ.Узел КАК Узел,
                ВнутреннийЗаказ.ОснованиеЗаявки КАК ОснованиеЗаявки,
                СУММА(ВнутреннийЗаказ.Количество) КАК Количество,
                ВнутреннийЗаказ.Подузел КАК Подузел,
                ВнутреннийЗаказ.Продукция КАК Продукция
                ИЗ
            Документ.ВнутреннийЗаказ.Товары КАК ВнутреннийЗаказ
       
        СГРУППИРОВАТЬ ПО
            ВнутреннийЗаказ.Подузел,
            ВнутреннийЗаказ.Ссылка.Проект,
            ВнутреннийЗаказ.Склад,
            ВнутреннийЗаказ.Ссылка,
            ВнутреннийЗаказ.ОснованиеЗаявки,
            ВнутреннийЗаказ.Номенклатура,
            ВнутреннийЗаказ.Продукция,
            ВнутреннийЗаказ.Узел)
            КАК ВложенныйЗапрос
           
            ЛЕВОЕ СОЕДИНЕНИЕ
            (ВЫБРАТЬ
                ЗаказПоставщикуТовары.Ссылка,
                ЗаказПоставщикуТовары.ВнутреннийЗаказ КАК ВнутреннийЗаказ,
                ЗаказПоставщикуТовары.Подузел КАК Подузел,
                ЗаказПоставщикуТовары.Узел КАК Узел,
                ЗаказПоставщикуТовары.Продукция КАК Продукция,
                ЗаказПоставщикуТовары.Номенклатура КАК Номенклатура
            ИЗ
                Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары
           
            СГРУППИРОВАТЬ ПО
                ЗаказПоставщикуТовары.Номенклатура,
                ЗаказПоставщикуТовары.Подузел,
                ЗаказПоставщикуТовары.Ссылка,
                ЗаказПоставщикуТовары.Продукция,
                ЗаказПоставщикуТовары.Узел,
                ЗаказПоставщикуТовары.ВнутреннийЗаказ) КАК ВложенныйЗапрос1
           
            ПО ВложенныйЗапрос.Ссылка = ВложенныйЗапрос1.ВнутреннийЗаказ
            И ВложенныйЗапрос.Номенклатура = ВложенныйЗапрос1.Номенклатура
            И ВложенныйЗапрос.Продукция = ВложенныйЗапрос1.Продукция
            И ВложенныйЗапрос.Подузел = ВложенныйЗапрос1.Подузел
            И ВложенныйЗапрос.Узел = ВложенныйЗапрос1.Узел
    
    
    
    
    {ХАРАКТЕРИСТИКИ
        ТИП(Справочник.Номенклатура)
        ВИДЫХАРАКТЕРИСТИК (ВЫБРАТЬ
                СвойстваОбъектов.Ссылка,
                СвойстваОбъектов.Наименование,
                СвойстваОбъектов.ТипЗначения
            ИЗ
                ПланВидовХарактеристик.СвойстваОбъектов КАК СвойстваОбъектов
            ГДЕ
                СвойстваОбъектов.НазначениеСвойства = ЗНАЧЕНИЕ(ПланВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_Номенклатура))
        ПОЛЕКЛЮЧА Ссылка
        ПОЛЕИМЕНИ Наименование
        ПОЛЕТИПАЗНАЧЕНИЯ ТипЗначения
        ЗНАЧЕНИЯХАРАКТЕРИСТИК РегистрСведений.ЗначенияСвойствОбъектов
        ПОЛЕОБЪЕКТА Объект
        ПОЛЕВИДА Свойство
        ПОЛЕЗНАЧЕНИЯ Значение }
    {ХАРАКТЕРИСТИКИ
        ТИП(Документ.ЗаказПоставщику)
        ВИДЫХАРАКТЕРИСТИК ПланВидовХарактеристик.СвойстваОбъектов
        ПОЛЕКЛЮЧА Ссылка
        ПОЛЕИМЕНИ Наименование
        ПОЛЕТИПАЗНАЧЕНИЯ ТипЗначения
        ЗНАЧЕНИЯХАРАКТЕРИСТИК РегистрСведений.ЗначенияСвойствОбъектов
        ПОЛЕОБЪЕКТА Объект
        ПОЛЕВИДА Свойство
        ПОЛЕЗНАЧЕНИЯ Значение }
  4. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Решается через вложенный запрос.
  5. TopicStarter Overlay
    bluntschi
    Offline

    bluntschi Опытный в 1С

    Регистрация:
    18 июл 2012
    Сообщения:
    422
    Симпатии:
    0
    Баллы:
    26
    так у меня в запросе уже есть вложенный запрос, что там поменять?
  6. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Или в "итоговом" запросе использовать ВЫБОР КОГДА ТОГДА
  7. TopicStarter Overlay
    bluntschi
    Offline

    bluntschi Опытный в 1С

    Регистрация:
    18 июл 2012
    Сообщения:
    422
    Симпатии:
    0
    Баллы:
    26
    это то я понимаю :'( , я не понимаю как условие проверки написать, что если совпадает номенклатура, внутренний заказ, а заказ поставщику разный, тогда количество только в первом случае указать
  8. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Ну вот, вы же написали уже условие, осталось только реализовать. А как вы думаете приходит опыт :) ?

Поделиться этой страницей