8.х Требуется правильно сгруппировать запрос

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем andyid, 21 фев 2011.

  1. TopicStarter Overlay
    andyid
    Offline

    andyid Новичок в 1С

    Регистрация:
    14 окт 2010
    Сообщения:
    27
    Симпатии:
    1
    Баллы:
    4
    Здравствуйте. Есть проблема. Никак ума не приложу как надо в запросе указать группировку, что бы данные правильно вывелись. Сам запрос прилагать не буду, потому что он простой.

    Имеется такая таблица:

    |Статья| ЦФО| Сумма| База|
    -------------------------------------------------
    |Статья1| ЦФО1| 1000| 10|
    |Статья1| ЦФО2| 1000| 20|
    |Статья1| ЦФО3| 1000| 30|
    |Статья2| ЦФО1| 2000| 10|
    |Статья2| ЦФО4| 2000| 40|

    по ней надо построить запрос так, что бы выборкой можно было получить следующее:

    Статья1 1000 60
    ЦФО1 10
    ЦФО2 20
    ЦФО3 30
    Статья2 2000 50
    ЦФО1 10
    ЦФО4 40

    как же это делается, подскажите пожалуйста? :(
  2. shurikvz
    Offline

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

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    Запрос все-таки покажите. И что такое 1000, 2000 - тоже расскажите: где задается, одинаковая ли бывает по каждому ЦФО в разрезе определенной статьи затрат.
  3. TopicStarter Overlay
    andyid
    Offline

    andyid Новичок в 1С

    Регистрация:
    14 окт 2010
    Сообщения:
    27
    Симпатии:
    1
    Баллы:
    4
    приведенная таблица получается из табличной части документа закрытие месяца управленческий.
    В этой таблице 4 колонки:
    1. Статья затрат - справочник СтатьиЗатрат
    2. ЦФО - Справочник Подразделения
    3. Сумма статьи, которую надо распределить
    4. База, число, определяющее базу распределения

    Все данные указаны в таблице:

    |Статья| ЦФО| Сумма| База|
    -------------------------------------------------
    |Статья1| ЦФО1| 1000| 10|
    |Статья1| ЦФО2| 1000| 20|
    |Статья1| ЦФО3| 1000| 30|
    |Статья2| ЦФО1| 2000| 10|
    |Статья2| ЦФО4| 2000| 40|

    мне нужно данные сгруппировать в виде:

    Статья1; сумма 1000 рублей; итог база: 10+20+30=60
    ЦФО1;база 10
    ЦФО2;база 20
    ЦФО3;база 30

    Статья2; сумма 2000 рублей; итог база: 10+40=50
    ЦФО1;база 10
    ЦФО4;база 50

    хочу это сделать запросом по табличной части, а далее выборкой двойным циклом получить необходимое.

    Какой запрос, да простой, только проблема с группировками и выборкой результата, незнаю как их сделать:(

    Код:
    Выбрать
    ТабличнаяЧасть.СтатьяЗатрат,
    ТабличнаяЧасть.Сумма,
    ТабличнаяЧасть.ЦФО,
    ТабличнаяЧасть.База
    ИЗ 
    ТабличнаяЧасть КАК ТабличнаяЧасть
    
  4. shurikvz
    Offline

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

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    Код:
    Выбрать
    ТабличнаяЧасть.СтатьяЗатрат,
    ТабличнаяЧасть.Сумма,
    ТабличнаяЧасть.ЦФО,
    ТабличнаяЧасть.База
    ИЗ 
    ТабличнаяЧасть КАК ТабличнаяЧасть
    СГРУППИРОВАТЬ ПО
    ТабличнаяЧасть.СтатьяЗатрат,
    ТабличнаяЧасть.ЦФО
    ИТОГИ
    СУММА(Количество),
    СРЕДНЕЕ(База)
    ПО
    ТабличнаяЧасть.СтатьяЗатрат
    
    
  5. TopicStarter Overlay
    andyid
    Offline

    andyid Новичок в 1С

    Регистрация:
    14 окт 2010
    Сообщения:
    27
    Симпатии:
    1
    Баллы:
    4
    Спасибо за идею, помогли:)))

    Вот этим запросом получается выбрать:

    Код:
    ВЫБРАТЬ
    ТабличнаяЧасть.СтатьяЗатрат КАК СтатьяЗатрат,
    ТабличнаяЧасть.Сумма КАК Сумма,
    ТабличнаяЧасть.ЦФО КАК ЦФО,
    ТабличнаяЧасть.База КАК База
    ИЗ
    ТабличнаяЧасть КАК ТабличнаяЧасть
    ИТОГИ
    СРЕДНЕЕ(Сумма),
    СУММА(База)
    ПО
    СтатьяЗатрат
    
    

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