Specifications
From DjAccount
Here are maintained the DjAccount specifications for future versions.
Contents |
Version 0.2
Version 0.2 is local and single user. It uses an internal database (HSQLDB).
Abstract
The aim of this document is to describe for each version
- Precise data model to insure we have all necessary data
- Usecases : how data should be modified (enter an entry, be able to delete or not)
- Views and outputs
- Deployment : backups, installation requirement (java and so on.), ...
Features
- Basic new/edit/delete on all business objects
- Fast entry form for #Movement
- Income statement and Balance sheet views
- English and French localization
Data model
Account
An account is a legal location where entries have to be registered.
| Field | Type | Description | Default Value | Comment |
|---|---|---|---|---|
| id | Long | the id | ||
| label | String | the account number | either [numeric] or [numeric]-[numeric] | |
| title | String | the title | ||
| description | String | the description | ||
| comment | String | a comment | ||
| parent | #Account | the parent Account | can be null | |
| boolean | set whether the account si minor or major | true | To be validated |
Account Type
Useful for annual "bilan"
| Field | Type | Description | Comment |
|---|---|---|---|
| id | Long | the id | |
| name | String | the name |
Project
A project is a collection of movements used for analytical accounting (vs. legal accounting).
| Field | Type | Description | Comment |
|---|---|---|---|
| id | Long | the id | |
| name | String | the name | |
| description | String | the description | |
| parent | #Project | the parentProject | can be null |
Movement
A movement is a collection of entries. The amount of credit entries has to be equal with the amount of the debit entries.
| Field | Type | Description | Comment |
|---|---|---|---|
| id | Long | the id | |
| project | #Project | the related Project | |
| title | String | the title | |
| entries | Set<#Entry> | the related entries | |
| documents | Set<#Document> | the related documents |
Entry
An entry is a cashflow to an account. It is either debit or credit.
| Field | Type | Description | Comment |
|---|---|---|---|
| id | Long | the id | |
| valueDate | Date | the value date | |
| account | #Account | the related account | |
| credit | Long | credit value, 0 if not of credit type | |
| debit | Long | debit value, 0 if not of debit type | |
| type | String | the type of entry | |
| localCurrency | #Currency | the localCurrency | |
| localCredit | Long | credit value in local currency, 0 if not of credit type | |
| localDebit | Long | debit value in local currency, 0 if not of debit type | |
| comment | String | a comment |
Document
A document is a proof of the accuracy of entries in a movement.
| Field | Type | Description | Comment |
|---|---|---|---|
| id | Long | the id | |
| label | String | the label | |
| comment | String | a comment |
Exchange Rates
Exchange rate relative to the main accounting currency. This is used to compute a value in the main currency when the exact cost is not known, or to revaluate stocks of currencies.
| Field | Type | Description | Comment |
|---|---|---|---|
| id | Long | the id | |
| currency | #Currency | the currency | |
| rate | Long | the exchange rate | |
| valueDate | Date | the value date |
Currency
A currency
| Field | Type | Description | Comment |
|---|---|---|---|
| id | Long | the id | |
| label | String | label | e.g. EUR, USD |
| name | String | name | e.g. Euro, Dollar |
| symbol | String | related symbol | e.g. €, $ |
Usecases
On accounts
- create an account
- modify an account
- Handle inheritance (set Parent, Modify Parent)
- delete a minor account
On projects
- create a project
- modify a project
- delete a project
- Handle inheritance (set Parent, Modify Parent)
On movements
- create and modify
- set projekt
- create new document or add existing ones
- add entries, Modify existing entries
- for entries in local currency, choose and exchange rate and set amounts of the various entries in local currencies
On entries
- modify the movement linked to an entry
On document
- modify the label or the comment
- bind or an bind from a specific movement (TBC)
On exchange rates
- create new
Views and outputs
Deployment
Next minor 0.x
Version 1.0
Features
Version 1.0 is multi-user and has a central database available through a middleware. Its features are:
- User management
- (to be continued)
