Неофициальный форум пользователей Qlik Sense & Qlikview

Для разработчиков => Вопросы по Qlik Sense & QlikView => Тема начата: BIL1984 от 29 марта 2019, 01:39:56

Название: Сложная задача. Количество выездов на объект
Отправлено: BIL1984 от 29 марта 2019, 01:39:56
Всем привет!

Бизнес кейс: устройства самообслуживания (УС) к которым регулярно выезжает сервисник, УС может быть несколько шт. на одном объекте, каждый ус и объект имеет свой уникальный идентификатор.
При открытии УС сервисник вводит личный пин, информация о времени и коде выгружается в табл., формат
- Дата и время в формате ГГГГММДД:ЧЧММСС)
- № УС
- Сервисный код

Бизнес проблематика следующая, нужно оценить сколько выездов было совершено на объект при условии что все операции с УС на объекте в условном интервале 1 час считаются как один заезд.

Т.е. если на объекте №9999 УС №12345 открыт в 01.01.19 16:00 а УС №123456 в 01.01.19 16:45 значит что  в этот день совершен 1 выезд.
Ситуация 2 на объекте №9999 УС №12345 открыт в 17:00, УС №123456 в 17:30 и УС 1234567 в 18:00 значит что  в этот день совершено 2 выезда.

Собственно вопрос, как кодом оформить логику для подсчета выездов в день?
Название: Re: Сложная задача. Количество выездов на объект
Отправлено: admin от 29 марта 2019, 03:08:09
Округляем временную метку до часа и считаем уникальные количества.
16:45 и 16:00 округлятся до 16:00.
17:30 и 18:00 соответственно в 17 и 18
Название: Re: Сложная задача. Количество выездов на объект
Отправлено: BIL1984 от 29 марта 2019, 03:19:41
Цитата: admin от 29 марта  2019, 03:08:09  Округляем временную метку до часа и считаем уникальные количества.
16:45 и 16:00 округлятся до 16:00.
17:30 и 18:00 соответственно в 17 и 18

Не подходит, ситуация: первый УС обслужили в 16:50 второй в 17:20, третий в 17:30. Это один заезд. Но по предложенной логике будет два.
Название: Re: Сложная задача. Количество выездов на объект
Отправлено: admin от 29 марта 2019, 04:02:31
Т.е. надо учитывать часовой интервал?
Это тоже несложно.
Сначала загружаем данные, затем в резидентной загрузке с сортировкой считаем интервалы от первого открытия в день, по объекту.

В Excel реализован расчет?
Название: Re: Сложная задача. Количество выездов на объект
Отправлено: BIL1984 от 29 марта 2019, 05:05:21
Цитата: admin от 29 марта  2019, 04:02:31  Т.е. надо учитывать часовой интервал?
Это тоже несложно.
Сначала загружаем данные, затем в резидентной загрузке с сортировкой считаем интервалы от первого открытия в день, по объекту.

В Excel реализован расчет?
В экселе нет.
Буду оч признателен за простейший пример или ссылку как сделать интервал от первого открытия.
Название: Re: Сложная задача. Количество выездов на объект
Отправлено: admin от 31 марта 2019, 08:59:57
Косвенно, может помочь пример с загрузкой курсов валют (http://help.qlik.com/ru-RU/sense/November2018/Subsystems/Hub/Content/Sense_Hub/Scripting/create-date-interval-from-single-date.htm)

Также следует ознакомиться с:
IF(), Peek() (http://help.qlik.com/ru-RU/sense/November2018/Subsystems/Hub/Content/Sense_Hub/Scripting/InterRecordFunctions/Peek.htm), load .. resident .. order by... (http://help.qlik.com/ru-RU/sense/November2018/Subsystems/Hub/Content/Sense_Hub/Scripting/load-data-from-previously-loaded-table.htm)