Keep track of your work hours. Add, delete, update records. Export and print at the end of the month!
SUSE Apprentices Timesheets made easy
- If you just want to start right away:
pip install azubi-timesheet
- Development mode:
git clone https://github.com/eliroca/azubi-timesheet.git; cd azubi-timesheet
pip install -e .
Contributions are welcome
exportshould accept date without day, like this
- Possibility to add more days with one command for vacation, etc.
- Raise exceptions in
timesheet.pyand catch them in main, instead of exiting the program
- Reformat code with black: https://pypi.org/project/black
- Implement working hours carryover(Stundenübertrag)
- Update: early implementation does the job, but it can't extract the value from previous month unless: you exported the previous month already AND opened the previous xlsx file AND Ctrl+S to save it, so that the calculated values of all formulas are saved. Not quite ideal.
- Better separate the main script (azubi-timesheet.py) from a module (timesheet.py)
- Adding "special" days like: vacation, school; only date and comment needed for that
- Method to fill in records from json file to xlsx exported file
- Method to create file names like
timesheet_2019_10.xlsxand implement where needed
- Method to load specific json files of the given date's month and year
How it looks like
Main help message
azubi-timesheet --help usage: azubi-timesheet [-V] [-n] <SUBCOMMAND> ... Keep track of your work hours. Add, delete, update records. Export and print at the end of the month! global arguments: -V, --version show program's version number and exit -n, --non-interactive do not ask anything, use default answers automatically available subcommands: <SUBCOMMAND> add add a new record update update an existing record delete delete an existing record export export records as .xlsx file config configure the app with key=value pairs Type <SUBCOMMAND> --help for more info.
Subcommand help message
azubi-timesheet add --help usage: azubi-timesheet add [-d DD.MM.YYYY] [-w HH:MM-HH:MM] [-b HH:MM-HH:MM] [-c COMMENT] [-s] Add a new record. optional arguments: -d DD.MM.YYYY, --date DD.MM.YYYY date of the record -w HH:MM-HH:MM, --work-hours HH:MM-HH:MM begin and end time of the work day -b HH:MM-HH:MM, --break-time HH:MM-HH:MM begin and end time of the break -c COMMENT, --comment COMMENT comment of the record, if needed -s, --special-record special records only need a date and a comment
addcreates a new json string and appends it to the list
azubi-timesheet.py add --date 07.10.2019 --work-hours 09:00-17:30 --break-time 12:00-12:30
add -sadds special records like school, vacation, sick leave, where
--break_timeare not necessary
azubi-timesheet.py --non-interactive add --date 09.10.2019 --comment "Berufsschule" --special-record
updatefinds record, updates it with the given data
azubi-timesheet.py update --date 07.10.2019 --work-hours 10:00-18:30 --break-time 13:00-13:30
deleteremoves record with given date
azubi-timesheet.py delete --date 07.10.2019
xlsxdocument from the given date's month and year; day is not relevant but unfortunately still necessary
azubi-timesheet.py export --date 01.12.2019
configlets you enter your name, choose where to save your records and exported documents
azubi-timesheet.py config --set "name=Elisei Roca"
azubi-timesheet.py config --list [DEFAULT] name = records_dir = /home/eroca/.local/lib/python3.6/site-packages/azubi_timesheet-0.9.0-py3.6.egg/azubi_timesheet/data/records exports_dir = /home/eroca/.local/lib/python3.6/site-packages/azubi_timesheet-0.9.0-py3.6.egg/azubi_timesheet/data/exports [user_defined] name = Elisei Roca exports_dir = /home/eroca/Documents/SUSE_Timesheets records_dir =
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
azubi-timesheet-0.9.1.tar.gz (1.1 MB view hashes)
Hashes for azubi_timesheet-0.9.1-py3-none-any.whl