Ako vytvoriť aplikáciu na sledovanie času: časovače, výkazy a reporty
Aplikácia na sledovanie času zaznamenáva, kto na čom pracoval, ako dlho a či sa tento čas dá fakturovať. Na jej vytvorenie potrebujete klientov a projekty, voči ktorým sa čas eviduje, časovač, ktorý prežije zatvorenú kartu prehliadača, spôsob, ako pridať a opraviť záznamy ručne, týždenný výkaz a reporty, ktoré surové záznamy premenia na súčty. AI tvorca aplikácií dokáže z jasného promptu vytvoriť funkčnú prvú verziu. Rozhodnutia, na ktorých záleží, sú pravidlá: zaokrúhľovanie, kto môže čo upraviť, kedy sa týždeň uzamkne a čo sa považuje za fakturovateľné.
Určte, na čo čas sledujete
Rovnaká aplikácia vyzerá inak podľa dôvodu, prečo ju potrebujete:
- Fakturovanie klientom. Hodiny na klienta, sadzba na osobu alebo projekt a čistý export pre faktúry. Najviac záleží na presnosti a auditnej stope.
- Mzdy pre hodinových zamestnancov. Príchod a odchod, prestávky, pravidlá pre nadčasy a schválenie manažérom. Platia miestne pracovnoprávne pravidlá, takže si overte, aké záznamy ste povinní viesť.
- Pochopenie, kam čas ide. Osobný alebo tímový prehľad, odhady oproti skutočnosti. Rýchlosť zápisu je dôležitejšia než schvaľovacie postupy.
Pre prvú verziu si vyberte jednu hlavnú úlohu. Časovač a pracovný výkaz freelancera a smenové hodiny vo skladovom centre majú spoločný časovač a veľmi málo iného.
Čo aplikácia potrebuje
Dáta
| Tabuľka | Kľúčové polia |
|---|---|
| Klienti | Názov, predvolená hodinová sadzba, aktívny áno/nie |
| Projekty | Klient, názov, rozpočet v hodinách (voliteľný), predvolene fakturovateľný áno/nie |
| Úlohy alebo kategórie | Projekt, názov (dizajn, porady, podpora) — na začiatok voliteľné |
| Záznamy času | Osoba, projekt, úloha, čas začiatku, čas konca, dĺžka, poznámka, fakturovateľný áno/nie, stav (koncept, odoslaný, schválený), fakturovaný áno/nie |
| Ľudia | Meno, e-mail, rola, nákladová sadzba alebo fakturačná sadzba |
Ukladajte čas začiatku a konca pri každom zázname a dĺžku z nich odvodzujte. Záznamy zadané ako „2h 15m“ bez časov môžu uložiť len dĺžku, ale nechajte si dátum.
Stránky
- Časovač a dnešok: veľké tlačidlo štart/stop, výber projektu a dnešné záznamy pod ním.
- Týždenný pohľad: mriežka s projektmi v riadkoch a dňami v stĺpcoch, kam ľudia zapisujú hodiny priamo. Mnohí ju uprednostňujú pred časovačmi.
- Reporty: hodiny podľa klienta, projektu a osoby za zvolené obdobie, s rozdelením na fakturovateľné a nefakturovateľné, a export do CSV.
- Správa: správa klientov, projektov, ľudí a sadzieb.
Oprávnenia
Pred budovaním si zapíšte, kto čo môže robiť:
- Ľudia vidia a upravujú vlastné záznamy.
- Manažéri vidia záznamy svojho tímu a schvaľujú týždne.
- Sadzby menia len správcovia a v ideálnom prípade ich vidia iba správcovia.
- Nikto neupravuje záznam, keď je schválený alebo fakturovaný, pokiaľ ho správca neotvorí znova.
Posledné pravidlo robí reporty dôveryhodnými. Náš sprievodca pridaním prihlasovania do aplikácie pokrýva prihlasovanie a riadenie prístupu podľa rolí pokrýva roly.
Rozhodnutia a kompromisy
Časovač, ručný zápis alebo oboje
Časovače sú presné, keď ich ľudia nezabudnú spustiť, čo nie je vždy pravda. Ručný zápis je rýchly pre ľudí, ktorí vypĺňajú týždeň v piatok. Väčšina tímov potrebuje oboje a spôsob, ako upraviť záznam časovača dodatočne. Ak budujete len jedno, postavte týždennú mriežku; je jednoduchšia a pokryje prípad, keď niekto zabudol spustiť časovač.
Kde beží bežiaci časovač
Časovač, ktorý počíta v prehliadači, stratí všetko, keď sa karta zavrie. Keď niekto stlačí štart, uložte čas štartu do databázy a uplynulý čas zobrazujte ako rozdiel medzi týmto časom a teraz. Časovač potom beží aj po obnovení stránky, na inom notebooku alebo na telefóne. Rozhodnite, či môže jeden človek spustiť dva časovače naraz. Zvyčajne nie: spustenie nového zastaví starý.
Zaokrúhľovanie
Bežné pravidlá sú zaokrúhľovať každý záznam nahor na najbližších 6, 15 alebo 30 minút. Presné časy držte v databáze a zaokrúhľovanie aplikujte len v reportoch a faktúrach. V reportoch ukazujte obe čísla, aby nikoho nič neprekvapilo.
Uzamknutie a schvaľovanie
Bez uzamknutia sa fakturované hodiny z minulého mesiaca môžu zmeniť po tom, čo faktúra odišla. Jednoduchý model: ľudia odošlú týždeň, manažér ho schváli a schválené záznamy sa stanú len na čítanie. Ak fakturujete z aplikácie, označte záznamy ako fakturované, aby sa nedali zúčtovať dvakrát.
Časové pásma a polnoc
Časy ukladajte v UTC a zobrazujte ich v časovom pásme človeka. Rozhodnite, ktorému dňu patrí záznam, ktorý beží od 23:00 do 01:00. Zvyčajná odpoveď je deň, v ktorom začal.
Prompt, ktorý funguje
Vytvor aplikáciu na sledovanie času pre dizajnérske štúdio so šiestimi ľuďmi. Dáta: klienti (názov, hodinová sadzba), projekty (klient, názov, rozpočet hodín) a záznamy času (osoba, projekt, začiatok, koniec, poznámka, fakturovateľný áno/nie, stav koncept/odoslaný/schválený). Stránky: Dnes so štart/stop časovačom a výberom projektu, ktorý ukladá čas začiatku do databázy, aby časovač prežil obnovenie stránky; Týždeň s projektmi ako riadkami, pondelok až nedeľa ako stĺpcami, kam ľudia môžu písať hodiny priamo; Reporty zobrazujúce hodiny podľa klienta, projektu a osoby za zvolené obdobie, rozdelené na fakturovateľné a nefakturovateľné, s exportom do CSV; a stránka Správa pre klientov, projekty a ľudí. Na osobu môže bežať iba jeden časovač. Schválené záznamy sa nedajú upravovať. Čas ukladaj v UTC a zobrazuj v časovom pásme používateľa. Čistý, rýchly dizajn ovládateľný klávesnicou.
Postup budovania
- Najprv projekty a ručné záznamy. Klienti, projekty, formulár na pridanie záznamu a zoznam. Overte, že súčty sedia.
- Časovač. Štart, stop, jeden bežiaci časovač na osobu, uložený čas štartu. Otestujte: spustite časovač, zatvorte kartu a znova ju otvorte.
- Týždenná mriežka. Zápis hodín do bunky vytvorí alebo aktualizuje záznam.
- Prihlasovanie a roly. Pridajte ich skôr, než aplikáciu použijú skutoční ľudia, aby nikto omylom nevidel sadzby alebo cudzie záznamy.
- Odoslanie a schválenie. Týždenné odoslanie, schválenie manažérom, po schválení len na čítanie.
- Reporty a export. Obdobie, zoskupenie, rozdelenie fakturovateľné/nefakturovateľné, CSV.
- Sadzby a prepojenie na fakturáciu, ak fakturujete klientom. Vytváranie faktúr nechajte v samostatnom kroku alebo v samostatnej aplikácii; pozri ako vytvoriť aplikáciu na fakturáciu.
- Otestujte okrajové prípady. Záznam cez polnoc, týždeň so zmenou letného času, dva časovače spustené z dvoch zariadení, úprava schváleného záznamu.
Časté chyby
- Počítanie času len v prehliadači. Funguje v ukážke a v reálnom používaní stráca hodiny.
- Zaokrúhľovanie uložených hodnôt. Presný čas sa potom nedá získať späť.
- Žiadne uzamknutie schválených týždňov. Reporty prestanú zodpovedať faktúram.
- Každý vidí sadzby každého. Skryte sadzby podľa roly od prvého dňa.
- Príliš veľa povinných polí. Ak zápis času trvá viac než pár sekúnd, ľudia prestanú a dáta sa stanú fikciou. Úlohu a poznámku spočiatku nechajte voliteľné.
- Budovanie plného správcu projektov v nástroji na čas. Projekty držte ako jednoduché štítky. Ak potrebujete úlohy, tabule a termíny, to je nástroj na riadenie projektov, samostatná stavba.
Kedy je lepší hotový nástroj na sledovanie času
Ak váš tím potrebuje časovač, týždenný pohľad a reporty, dedikované produkty na sledovanie času to už robia dobre. Prichádzajú aj s vecami, ktoré by ste vybudovali s reálnou prácou: desktopové a mobilné aplikácie, detekciu nečinnosti, integrácie s kalendárom a nástrojmi a pripomienky na vyplnenie výkazov. Pri hodinových mzdách bude nástroj postavený práve na to bezpečnejšie spracúvať prestávky, nadčasy a vedenie záznamov než prvá verzia vlastnej aplikácie.
Vlastný nástroj stavajte vtedy, keď sa vaše pravidlá nehodia, keď chcete hodiny prepojené s dátami, ktoré už máte (zákazky, pracovné príkazy, retainery, faktúry), keď cena za sedadlo pri veľkom tíme narastá, alebo keď je sledovanie času len jednou časťou väčšieho interného nástroja. Náš článok o vlastnom vývoji vs. kúpe softvéru prechádza tento kompromis, a ak vaše hodiny dnes žijú v zdieľanej tabuľke, pozri si ako premeniť tabuľku na aplikáciu.
Vytvorenie s Mythexom
V Mythexe opíšete nástroj v chate a agent ho vytvorí v živom náhľade. Keď záznamy treba ukladať, pridá dedikovanú Postgres databázu, a to môžete požiadať priamo alebo napísať /database. Šablóna interného nástroja v dokumentácii navrhuje vybrať pre prvú verziu jeden bolestivý krok, čo sem sedí: začnite záznamami a týždennou mriežkou, potom pridajte časovače a schvaľovanie.
Prihlasovanie pre váš tím si pridáte vlastným prístupom k autentifikácii (recept na pridanie prihlasovania). Účty v Mythexe sú pre ľudí, ktorí aplikáciu budujú, nie pre ľudí, ktorí ju používajú. Keď základný tok funguje, príkaz /test nechá agenta prejsť náhľad (spustiť časovač, pridať záznam, spustiť report) a nahlásiť, čo sa pokazí. Ako vizuálny východiskový bod si môžete prezrieť šablóny aplikácií.
Otázky
Aké funkcie potrebuje aplikácia na sledovanie času?
Zoznam klientov a projektov, časovač so štartom a zastavením, spôsob, ako pridať alebo opraviť záznamy ručne, týždenný pohľad na výkaz a report hodín podľa projektu a osoby. Schvaľovanie, fakturovateľné sadzby a exporty prichádzajú neskôr.
Ako zabrániť tomu, aby časovač stratil čas, keď sa prehliadač zavrie?
Čas štartu uložte do databázy v momente spustenia časovača a dĺžku bežiaceho záznamu počítajte z tohto uloženého času. Zatvorenie karty, obnovenie stránky alebo prepnutie zariadenia potom nič nestratí.
Malo by sa čas zaokrúhľovať?
Uložte presné časy začiatku a konca a zaokrúhľovanie aplikujte len v reportoch a faktúrach. Pravidlo zaokrúhľovania môžete neskôr zmeniť bez prepisovania histórie.
Oplatí sa budovať vlastný nástroj na sledovanie času?
Zvyčajne len vtedy, ak sú vaše pravidlá nezvyčajné alebo chcete, aby boli hodiny prepojené s inými dátami, ktoré už máte, napríklad zákazkami, klientmi alebo faktúrami. Pri jednoduchých časovačoch a reportoch je existujúci nástroj lacnejší a rýchlejší.