Имя: Пароль:
1C
 
помогите с запросом
0 Nemirov
 
27.02.20
12:48
Время берется из таблицы бд, данные в виде обычной даты (когда был закрыт чек) пример 01.01.2020. 12.00.00  
Схема примерно такая: нужно 2 создать колонки (Период, Количество) будем отталкиваться от таблицы значений
В колонке "Период" создать строки с 8 до 9, с 9 до 10, с 10 до 11 и т.д. до 23:59:59
В колонке "Количество" указать сколько было закрытых чеков типа с 8 до 9 взяв данные из запроса  

        Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    |    sms_Cheque.CloseTime КАК Время
    |ИЗ
    |    ВнешнийИсточникДанных.SIS.Таблица.sms_Cheque КАК sms_Cheque
    |ГДЕ
    |    sms_Cheque.CloseTime МЕЖДУ &ДатаНач И &ДатаКон
    |
    |УПОРЯДОЧИТЬ ПО
    |    sms_Cheque.CloseTime";
    Запрос.УстановитьПараметр("ДатаНач", НачалоДня(ДатаНач));
    Запрос.УстановитьПараметр("ДатаКон", КонецДня(ДатаКон));
    РезультатЗапроса = Запрос.Выполнить();
    ТабЗнач = Запрос.Выполнить().Выгрузить();                        
    //ЭлементыФормы.ТабЗнач.СоздатьКолонки();

Думал взять переменные например сч1, сч2,сч3... сч24
потом например сч1=сч1+1 а потом суммировать для каждой строки, или свернуть как-то. но это все замудрено помогите реализовать это правильнее
как обойти ситуэшн эту.
1 Nemirov
 
27.02.20
12:52
может как-то так, но не врублюсь с количеством этим.

ТаблицаЗначений = Новый ТаблицаЗначений;
ТаблицаЗначений.Колонки.Добавить("Период",,"Период");
ТаблицаЗначений.Колонки.Добавить("Количество",,"Количество");
Стр=ТаблицаЗначений.Добавить();
Стр.Период="с 8 до 9";
Стр.количество= "...Загвоздка....";
2 Йохохо
 
27.02.20
12:52
НАЧАЛОПЕРИОДА(<Дата>, <Период>)
ЧАС(<Дата>)
3 Йохохо
 
27.02.20
12:53
НАЧАЛОПЕРИОДА(<Дата>, Час)
4 Fragster
 
гуру
27.02.20
12:54
Выбрать
НачалоПериода(sms_Cheque.CloseTime) Как ЧасЗакрытия
Количество(*) Как КоличествоЧеков
из
ВнешнийИсточникДанных.SIS.Таблица.sms_Cheque КАК sms_Cheque
Сгруппировать по
НачалоПериода(sms_Cheque.CloseTime)
5 Fragster
 
гуру
27.02.20
12:54
НачалоПериода(sms_Cheque.CloseTime) => НачалоПериода(sms_Cheque.CloseTime, Час)
6 Fragster
 
гуру
27.02.20
12:55
ну и запятая пропущена
7 Nemirov
 
27.02.20
12:59
(6) Благодарю
8 Nemirov
 
27.02.20
12:59
(3) Спасибо