Specifications

From DjAccount

Jump to: navigation, search

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
idLongthe id
labelStringthe account number either [numeric] or [numeric]-[numeric]
titleStringthe title
descriptionStringthe description
commentStringa comment
parent #Account the parent Account can be null
isMajorbooleanset whether the account si minor or major true To be validated

Account Type

Useful for annual "bilan"

Field Type Description Comment
idLongthe id
nameStringthe name

Project

A project is a collection of movements used for analytical accounting (vs. legal accounting).

Field Type Description Comment
idLongthe id
nameStringthe name
descriptionStringthe description
parent#Projectthe parentProjectcan 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
idLongthe id
project#Projectthe related Project
titleStringthe title
entriesSet<#Entry>the related entries
documentsSet<#Document>the related documents

Entry

An entry is a cashflow to an account. It is either debit or credit.

Field Type Description Comment
idLongthe id
valueDateDatethe value date
account#Accountthe related account
creditLongcredit value, 0 if not of credit type
debitLongdebit value, 0 if not of debit type
typeStringthe type of entry
localCurrency#Currencythe localCurrency
localCreditLongcredit value in local currency, 0 if not of credit type
localDebitLongdebit value in local currency, 0 if not of debit type
commentStringa comment

Document

A document is a proof of the accuracy of entries in a movement.

Field Type Description Comment
idLongthe id
labelStringthe label
commentStringa 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
idLongthe id
currency#Currencythe currency
rateLongthe exchange rate
valueDateDatethe value date

Currency

A currency

Field Type Description Comment
idLongthe id
labelStringlabele.g. EUR, USD
nameStringnamee.g. Euro, Dollar
symbolStringrelated symbole.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)