Data Model



  • The InfiniSuite schema consists of two types of tables: transactions and entities.

  • All tables have a primary key named 'rowid'

  • All tables have an 'ID' field named <tableName> + id (i.e. accountid, classid, etc.)


Transactions are stored in two, linked tables: transaction and transactiondetail. Offsetting transactions are stored in transactiondetail with istransactionoffset set to '1'.


  • rowid

  • transactionid

  • isactive

  • description

  • transactiondate

  • totalamount

  • referencenbr

  • transactiontyperowid

  • transactionlinkrowid


A 'tranasctionoffset' row is a 'transactiondetail' row with the 'istransactionoffset' set to 1. The only fields used on transactiondetail are:

  • accountrowid

  • classrowid

  • debitamount

  • creditamount

  • istransactionoffset

  • rowid


Linking Transactions

  1. TranasctionRowID - Used on tranasctiondetail to store the parent rowid of the transaction.

  2. TransactionLinkRowID - Used on transaction to store the rowid of an associated transaction. Also, used on tranasctionoffset to store the rowid of an associated transaction (if present it should match tranasction.transactionlinkrowid).

  3. TransactionDetailLinkRowID - Used on transactiondetail to store the rowid of an associated transactiondetail.


  1. Transaction

    1. Linking to other transactions.

  2. TransactionDetail

    1. Linking to parent transactions.

    2. Linking to other TransactionDetail rows.


Last updated