Saturday, July 7, 2012

Progress towards LedgerSMB 1.4

I have been relatively submerged in work and haven't gotten back to blog as much as I would have liked.   On the whole this is a good thing.

A lot of things are changing in the LedgerSMB community for the better.  For starters there has been a lot of work towards making the site more manageable. We expect this to be a lot better than it has been in the past.

Additionally my business is planning to address important as-yet-unmet needs that must be addressed if open source accounting/ERP software is to reach the mainstream.  I will  probably post more on this later.

Similarly development has accelerated a great deal until the last couple weeks when I have had to focus on other things.  In the next series of posts I expect to talk a bit about how we are utilizing CTE's and the like in LedgerSMB 1.4 and how new features of PostgreSQL are making our lives a lot easier.  I will say that the more I work with CTE's the more I am convinced this is a feature which is highly underrated.    I can't wait until we can start requiring PostgreSQL 9.1 and we can use them in write operations.

I will probably also talk a bit about Moose, why we are moving to it, our experiences, and the like.  Some other discussions like changes to our architecture may be discussed as well.

However for now, I figure a progress report is due.

  • A basic web services framework has been completed and work is ongoing to expose customers and vendors over the framework.
  • Many CRM improvements have been added including lead tracking, an ability to attach documents to customer/vendor records or companies or persons.  Many of these improvements affect employees too.
  • A lot of code and schema clean-up in the CRM and employee management areas
  • Projects and departments have been replaced by a more flexible system of reporting dimensions supporting funds accounting and more
  • A new report framework has been written and many reports have already been moved to it.
To get to 1.4 beta, we basically need to complete payroll (which is not a trivial task) and get customers/vendors working via web services.  We also need to move the financial statements to the new framework.

I would say we are most of the way there. 


  1. Replies
    1. Moose is a declarative object system borrowing ideas from the LISP community. It brings into our Perl code some of the advantages we were picking up from SQL.

    2. This Friday I intend to cover common table expressions. Next friday I will probably cover Moose. Stay tuned.