Как сделать трекер учета рабочего времени для проектов и фриланса за 10 минут на Notion
В этой статье я расскажу как сделать трэкер рабочего времени для проектной работы или фриланса на Notion. У меня на его создание ушло 10 минут (засек в нем же).
Если вы не хотите делать сами - в конце статьи ссылка на готовый бесплатный шаблон (который можно редактировать).
Notion это уникальное приложение которое дает возможность сделать инструмент или систему для личных и бизнес целей без кода.
P.S. Если вы больше любите смотреть, чем читать - вот видео версия.
Нам понадобятся две:1. Учет времени
Она будет содержать “отрезки” рабочего времени, для их формирования нам понадобиться даты начало и конец, а также формула которая будет вычитать разницу между ними в минутах:
dateBetween(prop("Конец"),prop("Начало"),"minutes")
Нам также понадобиться чекбокс “Оплачено”, которым будем отмечать оплаченные отрезки, а также 2 “технические” формулы, которые понадобятся для отображения результатов:
Не оплачено (tech)
if(empty(prop("Оплачено")), sum(prop("Результат")), 0)
Оплачено (tech)
if(empty(prop("Оплачено")), 0, sum(prop("Результат")))
2. Сумма времени
Эта база будет суммировать и отображать все данные в одной “карточке”, для чего нам понадобиться: .
- Связь с первой базой - Учет времени;
- Формула которая будет будет показывать 4 различные калькуляции в одном-Итог
"Всего часов - " + ((sum(map(prop("Учет времени"),current.prop("Результат")))/60)*100).round()/100 +"
"+"Оплачено часов - " + ((sum(map(prop("Учет времени"),current.prop("Оплачено (tech)")))/60)*100).round()/100+"
"+"Не оплачено часов - " + ((sum(map(prop("Учет времени"),current.prop("Не оплачено (tech)")))/60)*100).round()/100+"
"+ style("К оплате - ₸"+(((sum(map(prop("Учет времени"),current.prop("Не оплачено (tech)")))/60)*5000)*100).round()/100, "b","yellow_background")
Это по сути 4 отдельные формулы объединенные в одну, представляющие данные с новой строки, а также округляющие получившееся значения до двух знаков после запятой. В этой формуле мы также показываем сумму к оплате, которая основана на количестве не оплаченных часов и ставке.
Ставку мы задаем вручную, она находиться на нижней строке и сейчас составляет 5000 (то есть 5000час).
В этой базе у нас будет только одна запись и мы назовем ее Итог.
Для удобной работы нам понадобятся кнопки, они будут решать несколько задач:
- Проставлять время и дату конца и начала по нажатию кнопки (а не вручную).
Для этого создаем одноименные кнопки и задаем им нужные параметры:
Старт
Конец
Здесь помимо проставления времедаты конца нам надо указать к каким записям ее проставлять и для этого мы добавляем 2 фильтра.
- Обновлять суммарный итог по нажатию (чтобы не добавлять каждый отрезок времени вручную).
- Отмечать как оплаченные все неоплаченные участки по одному нажатию.
Фильтром “ищем” неоплаченные отрезки - и отмечаем все найденное как оплаченное.
Сейчас мы работаем с корневыми базами (не с видами на них, как мы например делали в прошлый раз), тем не менее здесь мы почти также создаем виды:
В базе Учет времени: Оплачено и Не оплачено, где фильтруем по “галочке” Оплачено.
В базе Сумма времени: меняем вид с таблицы на галерею, где помимо титульного Name показываем формулу Итог, делаем размер карточки маленьким, в превью ставим “ничего не показывать” и нажимаем Wrap all properties, чтобы многостраничная формула показывалась правильно.
Теперь помещаем базы в callout блоки “для красоты” располагаем их в 2 колонки и добавляем кнопки.
---
Такой трекер можно “вставлять” в систему управления проектами (в шаблон проекта) а также делать на его основе различные усложненные версии.
Comments 1
Login to leave a comment
Alizhan Nurgazy · Oct. 30, 2024 12:33
Интересный пост✍️🙌🤔