C Migration

C.1 Introduction

There are plenty of reasons to want to migrate to LedgerSMB 1.3:

  1. 1.

    Separation of duties

  2. 2.

    Security better integrated into the application

  3. 3.

    Better, more strict data model

  4. 4.

    Some important sources of user error eliminated

  5. 5.

    Better workflows for cash reconciliation

  6. 6.

    @@@ others?

Yet, while item 3 is a good reason to want to switch, it’s also a reason why migration from older versions to 1.3 can be harder than earlier migrations: when the data in your older version is not consistent, it won’t fit into the new data model and will need to be fixed first.

Especially if your database has a very long line of history, being migrated trough lots of SQL-Ledger and LedgerSMB versions, you may want to consider asking for help from a professional party. It could save you a lot of time.

However, don’t be discouraged and have a go yourself first. Just be sure to run your upgrade on a backup database: the migration process is non-destructive, but in case accounting data is involved: better safe than sorry!

Also it is worth noting that a number of automatic checks are performed on your data prior to migration, and to the extent possible, you are given an opportunity to fix those issues identified. Because these checks are pre-migration checks, they are written to your old data and will persist after backing out of a migration to 1.3.