Как реализовать такой учет рабочего времени?

Аватара пользователя
Алексей Варин
Сообщения: 52
Зарегистрирован: 26.09.2019 15:24

Как реализовать такой учет рабочего времени?

12.02.2020 18:03

Допустим, есть задача "Работа на выезде". К ней прикреплена аналитика "Учет рабочего времени". Сотрудник выходит на объект в 8-00 и чекинится, нажимая на кнопку "На объекте", к примеру. В конце рабочего дня нажимает кнопку "Закончил работу", опять же, условно. Сценарием заполняются поля аналитики "Объект", "Сотрудник", "Дата", "Начало работ", "Окончание работ". И отражается на графике учета рабочего времени. Пока сотрудник не нажал на кнопку "Закончил работу", в календаре и в каком-нибудь кастомном поле задачи его статус "Работа на объекте таком-то". Это можно реализовать? Ну или что-то похожее может быть другим способом.

Аватара пользователя
Dmitry Goncharenko
Сообщения: 4126
Зарегистрирован: 06.06.2012 13:54

Re: Как реализовать такой учет рабочего времени?

18.02.2020 20:05

А в чем именно возникает сложность, Алексей? В голове бы все складывается, но может есть нюансы, которые я не вижу?

Аватара пользователя
Алексей Варин
Сообщения: 52
Зарегистрирован: 26.09.2019 15:24

Re: Как реализовать такой учет рабочего времени?

20.02.2020 00:29

Если просто добавить аналитику "Фактическое время работы" в задачу, то сложностей нет). Но хочется упростить процесс для исполнителей (исполнители в данном случае-это механики, водители...и слово "аналитика" они воспринимают как ругательное) и одновременно не давать им доступ к тем задачам, к которым эти аналитики и прикрепляются. Мне это видится так: создается ОДНА задача "Учет рабочего времени". В ней одно поле "Задача", где исполнитель выбирает из списка доступную ему задачу и две кнопки: "Приступил к работе" и "Закончил работу". И все. Приступая к работе, они открывают в мобильном приложении ОДНУ задачу "Учет рабочего времени", выбирают "свою" задачу из списка (допустим, "Ремонт тормозной системы танка Т-34") и нажимают кнопку "Приступил к работе". По нажатию этой копки срабатывает сценарий, который прикрепляет к выбранной из списка задаче аналитику "Фактическое время работы" с текущей датой и текущим начальным временем и временем окончания 23:59 (для того, чтобы сразу же фиксировать в расписании, что исполнитель в данное время приступил к работе над задачей и пока не зафиксировал время окончания работы над задачей, он занят). По окончанию работы исполнитель нажимает кнопку "Закончил работу", и сценарием предыдущая аналитика удаляется, а добавляется новая уже с фактическим временем начала и окончания работы над задачей. Вот как-то так. Сложность пока в том, что столкнулся с тем, что не вижу способа записи значений в кастомное поле типа "Промежуток времени" и не понимаю, как удалить конкретную аналитику из задачи.

Аватара пользователя
Dmitry Goncharenko
Сообщения: 4126
Зарегистрирован: 06.06.2012 13:54

Re: Как реализовать такой учет рабочего времени?

22.02.2020 15:22

Понятный подход. Хоть он и далек от стандартного, мне кажется что с небольшими изменениями от описанного его можно реализовать. Пробовали? Есть какое-то место, где произошел затык? Опишите, подумаем как его обойти.

Аватара пользователя
Алексей Варин
Сообщения: 52
Зарегистрирован: 26.09.2019 15:24

Re: Как реализовать такой учет рабочего времени?

22.02.2020 19:18

Dmitry Goncharenko писал(а):
22.02.2020 15:22
Есть какое-то место, где произошел затык? Опишите, подумаем как его обойти.
Таких мест несколько:
1. Нельзя записать произвольные значения напрямую в поле "Промежуток времени". То есть можно записать "15:00-16:00", но нельзя записать "Текущая дата-текущая дата +1час", допустим. Приходится писать сначала в поля задачи "Дата начала" и "Дата планируемого завершения", а уже оттуда с помощью "Установить значение из задач" писать время в аналитики. Очень неудобно и не все получится реализовать таким способом.
2. Диапазон времени в аналитику можно записать только в пределах календарных суток. Если я хочу записать значения "23:00-01:00"-никак, в аналитику запишется пустой диапазон. И эту ошибку никак не обработать, во всяком случае служба поддержки не смогла подсказать решение проблемы. А у меня есть кейс учета рабочего времени при посменной круглосуточной работе, и я не могу предложить работающий вариант, хотя, вроде бы, такая мелочь.
3. Нет возможности удалить комментарий в задаче, хотя бы последний. Можно удалить, только если действие "Удалить комментарий" находится в том же сценарии, в котором обрабатывается добавление этого комментария. Значит, прикрепленную аналитику в моем случае из задачи удалить не получится (ну или я не смог это реализовать).
Во такие трудности.
Последний раз редактировалось Алексей Варин 22.02.2020 19:22, всего редактировалось 1 раз.

Аватара пользователя
Алексей Варин
Сообщения: 52
Зарегистрирован: 26.09.2019 15:24

Re: Как реализовать такой учет рабочего времени?

22.02.2020 19:22

Забыл еще одно: невозможно записать в поля начала и завершения задачи например такую конструкцию "Текущая дата +определенное время суток (например 23:59)"

Аватара пользователя
Dmitry Goncharenko
Сообщения: 4126
Зарегистрирован: 06.06.2012 13:54

Re: Как реализовать такой учет рабочего времени?

24.02.2020 10:55

Думаю, эти два вопроса связаны с не совсем оптимальным выбором типа поля:
1. Нельзя записать произвольные значения напрямую в поле "Промежуток времени". То есть можно записать "15:00-16:00", но нельзя записать "Текущая дата-текущая дата +1час", допустим. Приходится писать сначала в поля задачи "Дата начала" и "Дата планируемого завершения", а уже оттуда с помощью "Установить значение из задач" писать время в аналитики. Очень неудобно и не все получится реализовать таким способом.
2. Диапазон времени в аналитику можно записать только в пределах календарных суток. Если я хочу записать значения "23:00-01:00"-никак, в аналитику запишется пустой диапазон. И эту ошибку никак не обработать, во всяком случае служба поддержки не смогла подсказать решение проблемы. А у меня есть кейс учета рабочего времени при посменной круглосуточной работе, и я не могу предложить работающий вариант, хотя, вроде бы, такая мелочь.
Поле "Период времени" принципиально работает только в течение дня. Мы не планируем делать его работу с переходом через сутки. Тут правильнее использовать поле типа "Дата и время" для точки начала и такое же для точки окончания временного промежутка. Тогда:
- Сценарием можно заполнить такое поле в аналитике, в том числе и с привязкой к текущей дате + Х часов
- В отчетах вы получите ожидаемую арифметику работы с такими датами - можно отнять от точки конца точку начала и получить разницу в часах.

3. Нет возможности удалить комментарий в задаче, хотя бы последний. Можно удалить, только если действие "Удалить комментарий" находится в том же сценарии, в котором обрабатывается добавление этого комментария. Значит, прикрепленную аналитику в моем случае из задачи удалить не получится (ну или я не смог это реализовать).
Тут я бы тоже предложил пересмотреть подход. Почему в принципе возникает идея удалять аналитику? Возможно, ее лучше не создавать, а решить задачу "Показать, что сотрудник сегодня занят определенной задачей" другим образом? Наример, на календаре задач (общем или конкретного сотрудника) отмечать дедлайн этой задачи на сегодня. Тогда задача займет на нем весь день - а это примерно то, чего вы добиваетесь, добавляя "временную" аналитику с периодом времени до 23:59 сегодняшнего дня, если я правильно понял.

Забыл еще одно: невозможно записать в поля начала и завершения задачи например такую конструкцию "Текущая дата +определенное время суток (например 23:59)"
Да, такой возможности на текущий момент нет. Но может, она тоже не нужна для решения этой задачи? Тут нужно более подробное описание, для чего вы планируете ее использовать.

Аватара пользователя
Алексей Варин
Сообщения: 52
Зарегистрирован: 26.09.2019 15:24

Re: Как реализовать такой учет рабочего времени?

25.02.2020 13:07

Dmitry Goncharenko писал(а):
24.02.2020 10:55
Поле "Период времени" принципиально работает только в течение дня. Мы не планируем делать его работу с переходом через сутки. Тут правильнее использовать поле типа "Дата и время" для точки начала и такое же для точки окончания временного промежутка. Тогда:
- Сценарием можно заполнить такое поле в аналитике, в том числе и с привязкой к текущей дате + Х часов
- В отчетах вы получите ожидаемую арифметику работы с такими датами - можно отнять от точки конца точку начала и получить разницу в часах.
Конечно поле типа "Дата и время" использовать правильней. Но Расписание и Календарь почасовой работают только с полями типа "период времени", к сожаленью. А без них совсем печаль-тоска.
Я уже пришел к варианту использования полей типа "Дата и время" в аналитике. Но опять столкнулся с проблемой. Когда исполнитель приступает к работе, нажимает кнопку "Приступил к работе" (или возникает событие, сгенерированное считывателем магнитных карт, меток, или телефон исполнителя достигает какой-то геоточки, неважно). И в этот момент нам надо куда-то временно записать данные о сотруднике, его текущей задаче и дате и времени начала ее выполнения. потому что мы не можем заполнить данные аналитики, так как у нас нет времени окончания работы. Записать в какие-то кастомные поля задачи тоже не верно, сотрудников, работющих одновременно над задачей, может быть неограниченное количество. Записать в поля "Время начала задачи" тоже нельзя, так как для каждого сотрудника эти даты и время разные. Решило бы проблему добавление кастомных полей сотрудникам. Но увы, такой возможности нет.

Ответить