8.х Отбор по часам

Тема в разделе "Система компоновки данных (СКД)", создана пользователем ILDARIAN, 27 мар 2016.

  1. TopicStarter Overlay
    ILDARIAN
    Offline

    ILDARIAN Опытный в 1С

    Регистрация:
    6 янв 2013
    Сообщения:
    131
    Симпатии:
    1
    Баллы:
    29
    Добрый день.

    Нужно сделать отчет, где пользователь будет указывать даты и отдельно часы по которым нужно выводить данные.

    То есть указал 01,01,2010 - 10,01,2010. 15:00:00 - 20:00:00. Отчет должен вывести данные за период, но по часам с 15 до 20, каждый час в отдельной колонке.
    --- Объединение сообщений, 27 мар 2016 ---
    поправка. Нужно вывести данные по дням, но данные должны попадать в указанный диапазон времени.
    Последнее редактирование: 27 мар 2016
  2. nbIpKuH_BaH9I
    Offline

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.984
    Симпатии:
    398
    Баллы:
    104
    И? В чем проблема? Начинайте.
  3. TopicStarter Overlay
    ILDARIAN
    Offline

    ILDARIAN Опытный в 1С

    Регистрация:
    6 янв 2013
    Сообщения:
    131
    Симпатии:
    1
    Баллы:
    29
    я не знаю как указать отбер по часам
    --- Объединение сообщений, 27 мар 2016 ---
    Прошу прощения, вопрос не задал :) Как дать возможность указать в отборе время в часах
    --- Объединение сообщений, 27 мар 2016 ---
    ?
  4. nbIpKuH_BaH9I
    Offline

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.984
    Симпатии:
    398
    Баллы:
    104
    Здесь нужно уже смотреть откуда Вы данные тяните. Откуда? Запрос покажите?
  5. TopicStarter Overlay
    ILDARIAN
    Offline

    ILDARIAN Опытный в 1С

    Регистрация:
    6 янв 2013
    Сообщения:
    131
    Симпатии:
    1
    Баллы:
    29
    конфа с нуля написанная с 1 документом и 1 регистром. Учебная. Сейчас такой запрос.

    ВЫБРАТЬ
    ПрождажиОбороты.Номенклатура,
    ПрождажиОбороты.СуммаОборот,
    ПрождажиОбороты.Период
    ИЗ
    РегистрНакопления.Прождажи.Обороты(, , Регистратор, ) КАК ПрождажиОбороты
    ГДЕ
    ЧАС(ПрождажиОбороты.Период) МЕЖДУ &НачалоЧас И &КонецЧас
    И МИНУТА(ПрождажиОбороты.Период) МЕЖДУ 0 И 59
    И СЕКУНДА(ПрождажиОбороты.Период) МЕЖДУ 0 И 59

    Оно сейчас выведет с отбором по времени. Но нужно разбить ещё по дням. Как это сделать ?
  6. TopicStarter Overlay
    ILDARIAN
    Offline

    ILDARIAN Опытный в 1С

    Регистрация:
    6 янв 2013
    Сообщения:
    131
    Симпатии:
    1
    Баллы:
    29
    можно поставить периодичность День. Но тогда нельзя будет установить отбор по времени. Если поставить периодичность регистратор, то можно условие на время поставить, но нельзя вывести по дням. Или можно, но я не знаю как.
    --- Объединение сообщений, 27 мар 2016 ---
    Вышло так.

    ВЫБРАТЬ
    Прождажи.Номенклатура,
    Прождажи.Период,
    Прождажи.Регистратор,
    Прождажи.Сумма
    ИЗ
    РегистрНакопления.Прождажи КАК Прождажи
    ГДЕ
    ЧАС(Прождажи.Регистратор.Дата) МЕЖДУ &НачалоЧас И &КонецЧас
    И МИНУТА(Прождажи.Регистратор.Дата) МЕЖДУ 0 И 59
    И СЕКУНДА(Прождажи.Регистратор.Дата) МЕЖДУ 0 И 59

    СГРУППИРОВАТЬ ПО
    Прождажи.Номенклатура,
    Прождажи.Период,
    Прождажи.Регистратор,
    Прождажи.Сумма

    Но тут я использовал основную таблицу регистра. Если можно как-то сделать то же самое используя виртуальную таблицу, напишите пожалуйста.
    Последнее редактирование: 27 мар 2016
  7. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.639
    Симпатии:
    948
    Баллы:
    204
    Вам нужно в запросе выводит отдельным полем дни и отдельным полем часы и потом уже отбор делать по дням и по часам.
    Используйте переодичность АВТО
    два поля
    ВЫБРАТЬ
    ПрождажиОбороты.Номенклатура,
    ПрождажиОбороты.СуммаОборот,
    НачалоПериода(ПрождажиОбороты.Период,День) КАК Дата
    Час(ПрождажиОбороты.Период) КАК ЧасВДне

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