Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support data export to FreeAgent #111

Open
tanius opened this issue Sep 22, 2019 · 2 comments
Open

Support data export to FreeAgent #111

tanius opened this issue Sep 22, 2019 · 2 comments

Comments

@tanius
Copy link
Contributor

tanius commented Sep 22, 2019

Some in our company use tom for time tracking in our company, but everyone else just enters their worktimes into our accounting system FreeAgent. So if there was a way to directly export data from tom-ui to FreeAgent via API, we could simplify and unify the process of timesheet creation and signing in our company.

I imagine that the following user user interface would be suitable, at least for our purposes: a dialog "File → Sync …" that allows to set up multiple regular synchronization tasks. Each task would have the following parameters:

  • API type (such as FreeAgent, and later other types of export via API)
  • API access credentials (depending on API type; including the target location of the data in the external data storage)
  • Interval (weekly, monthly etc.)
  • Project (would allow to select one project or sub-project)
  • Aggregation (this will depend on how records can be stored in the respective external data store, and on the level of detail one wants to export; for example, one might want to export only daily totals, not including notes and actual time entries)

To preserve consistency between the tom-ui and exported remote data, data in tom should be marked accordingly. The "archived" mark seems suitable for this, as it indicates that a time entry cannot or should not be edited anymore.

When a new sync task is due to run, tom-ui would not just execute it but present the user with a dialog that says: "Snychronization task … for time period … is due. Please finalize your time entries and click the toolbar button 'Run pending sync tasks'.". This gives the user a chance to look through time records, check for consistency, check for spelling mistakes in the notes or missing notes etc., before finally committing the data to be synched and archived.

(There may be better ways to structure this dialog of course. The above is just my first idea.)

@jansorg
Copy link
Owner

jansorg commented Sep 26, 2019

@tanius Would reports in Freeagent have to aggregate tracked time of multiple persons on a single invoice? Or does Freeagent have timesheets per person?

Technically best might be a (self-hostable) server which aggregates time entries of one or more persons. An administrator could then configure daily, weekly, monthly syncing for one or more persons. But that's out-of-scope for now.

@tanius
Copy link
Contributor Author

tanius commented Sep 26, 2019

does Freeagent have timesheets per person?

Yes, it has. It can store worktime per person just as tom, and even includes an integrated browser based time tracker. But it's rather rudimentary and not integrated with my time tracking for projects I don't do for that same company, so I don't use FreeAgent time tracking.

What we need is a way to transfer and store the tom timetracking data into FreeAgent timetracking data. Everything after that like invoicing etc. based on these time records is then FreeAgent's problem and out of scope for this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants