A rails app for generating some numbers to go in a financial report.
This README would normally document whatever steps are necessary to get the application up and running.
Work in progress
- Gather data from FreeAgent:
- Log into FreeAgent
- Go to
DoES Liverpool CIC
and thenSettings
- Choose
Export All Data
, which will then give you thecompany-export-YYYY-MM-DD-HH-MM.xls
file to import
bundle install
rake db:migrate
bin/rails server
rake import:freeagent ~/Downloads/company-export-2017-06-30-10-14.xls
rake process:invoices
rake import:product_categories categories.csv
rake generate:accounting_periods["2011-06-10"]
(replace date with your incorporation date)
Then visit http://localhost:3010/reports/categories
Your categories CSV should have a header row followed by product category name and description pairs, if the name is left blank then the previous value is used, e.g.:
Name,Description
Hot Desk Day,1 Hot Desk Day
,2 Hot Desk Days
,3 Hot Desk Days
Permanent Desk,Permanent Desk
,Permanent Desk for Jo
For internal DoES Liverpool use the categories.csv
we use is in the private financial-report-summaries
repository.
This is generated from a combination of the data in the database and a monthly profit and loss report from FreeAgent.
You will need a recent version of the data in the database. The easiest way to do that is to re-populate it from scratch. Delete db/development.sqlite3
and then follow the steps in "Set up" above.
Then get the profit and loss report:
- Log into FreeAgent
- Go to "Accounting" then "Reports"
- Choose the "Profit & Loss" report
- Switch to the "Monthly" option and choose a "Custom date range"
- Enter the desired date range and choose "Apply"
- Export the report as CSV
For example:
bundle exec rake generate:cost_of_doing_epic_poster[~/Downloads/DoES\ Liverpool\ CIC\ monthly\ profit\ and\ loss\ 2024-09-01\ to\ 2025-03-01.csv,2024-09-01,2025-03-01]
Some of the logging currently appears in the output, so if you redirect the output of that command to a file, open it and delete everything before the `<!DOCTYPE html>'
Finally, update the narrative in the explanation to reflect where things are.
Things you may want to cover:
-
Ruby version
-
System dependencies
-
Configuration
-
Database creation
-
Database initialization
-
How to run the test suite
-
Services (job queues, cache servers, search engines, etc.)
-
Deployment instructions
-
...