Every Sales BusinessDocument can be in one of the following states: NotPosted or Posted.

When a Sales BusinessDocument is Posted, the system creates entries in one or more of the following transaction tables - tCustomerTransaction and tInventoryTransaction.

The transaction entries include data that come from the complex Sales Document data entity (dbBusinessDocument, dbParty, dbProduct, dbBusinessDocument_ProductLine etc) in a NON Relational way.

 - Transaction tables are NOT linked to any tables and you can add or delete entries from them but you must not allow a user to directly modify these entries.


Notes 

  • the Boolean field dbBusinessDocument.bPosted shows if a Sales BusinessDocument is Posted or NOT,
  • the sum tables of previous versions have been removed - all sums are now done with SQL Queries, using the transaction tables,
  • all Reports must use these transaction tables because they are complete, fast to read and easy to follow,
  • Posting to GL vs Posting - they are not the same - the field dbBusinessDocument.bPostedLedger shows if the BusinessDocument is posted to Accounting/GL.


  • the posting procedures are in the BP_POST area of the procedures,
  • in v3, during a BP_add* of a complex entity, the relevant post procedure is called inside the BP_add*,
  • this means that Sales entities are always posted - you can change this behavior by removing the posts from the add/modify BPs.


Simple Diagram of the Transaction Entities


* the above diagram is NOT complete - for more information see the database schema