8.х Счётчик в запрос с группировкой.

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Romik, 7 апр 2010.

  1. TopicStarter Overlay
    Romik
    Offline

    Romik Опытный в 1С

    Регистрация:
    27 июн 2008
    Сообщения:
    238
    Симпатии:
    0
    Баллы:
    26
    Делаю запрос с группировкой по ДатеВремяЗаписи.
    То есть если время заказа в 8 то они встают в группировку 8 часов, если 9 до в 9 чаов и тд.
    Подскажите, как сделать счётчик по количеству заказов в каждоый из группировок (8,9 и тд)

    Код:
    ВЫБРАТЬ
    |	ВЫБОР
    |		КОГДА ЧАС(ЗаказПокупателяТовары.Ссылка.ДатаВремяЗаписи) = 8
    |			ТОГДА ""08 ЧАСОВ""
    |		КОГДА ЧАС(ЗаказПокупателяТовары.Ссылка.ДатаВремяЗаписи) = 9
    |			ТОГДА ""09 ЧАСОВ""
    |	КОНЕЦ КАК Время,
    |	ЗаказПокупателяТовары.Ссылка.ДатаВремяЗаписи КАК ДатаВремяЗаписиВ1С,
    |	ЗаказПокупателяТовары.Ссылка КАК Заказ,
    
  2. Доктор Руфус Бейли
    Offline

    Доктор Руфус Бейли Опытный в 1С

    Регистрация:
    7 апр 2010
    Сообщения:
    277
    Симпатии:
    0
    Баллы:
    26
    В лоб можно добавить поля:
    Код:
    |	КОГДА ЧАС(ЗаказПокупателяТовары.Ссылка.ДатаВремяЗаписи) = 8 ТОГДА 1 КАК Счётчик8
    |	КОГДА ЧАС(ЗаказПокупателяТовары.Ссылка.ДатаВремяЗаписи) = 9 ТОГДА 1 КАК Счётчик9
    
    Однако, изящность этого решения сомнительна: всё равно придётся делать перебор и суммировать. Также, можно использовать вложенный запрос с данными полями, в котором имеется группировка по полю "время", и по этому полю уже объединять с имеющейся таблицей. Многое зависит от того, какая стоит задача, на каком этапе последующей обработки результатов запроса нам нужны значения счётчика и прочая.
  3. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    Мой Вам совет у Вас есть готовый запрос перенесите его в СКД, там уже есть системные поля номер по порядку и номер в группе (как раз который вам и нужен - последний номер и есть количество). И Выводите как вам надо.
  4. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    Вот этого я вообще не понимаю. Можно просто добавить 1 поле счетчик и записать туда 1 и все

    т.ье концовка

    | ЗаказПокупателяТовары.Ссылка КАК Заказ,
    | 1 КАК счетчик

    Тогда у вас таблица имеет такой вид

    время Док счетчик
    8 док1 1
    8 док2 1
    9 док3 1

    и при итогах или группировках он просто просуммирует поле счетчик по группам и увидете сумму


    В том же варианте что предложил колега выше у вас было бы сколько часов столько и счетчиков -это бред
  5. tirk
    Offline

    tirk Опытный в 1С

    Регистрация:
    1 сен 2008
    Сообщения:
    1.142
    Симпатии:
    0
    Баллы:
    26
    Ты не поверишь.. уже не помню сколько раз об этом говорил.. об СКД!!!!
    РОМИК!!! Пишу еще тут !! СКД)))

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