[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Entity usage?

On Mon, Sep 8, 2014 at 6:28 PM, R. Ransbottom <..hidden..> wrote:


FYI, my sql is underdeveloped and rusty.

A SQL comment suggests entities exist as a place to map contacts.

Two questions:

Is this to implement the security given by roles (through the
many link tables)?  If not, I don't see much point in the extra layer
of indirection.  And I'm trying to get a handle on the schema.

The framework is not fully developed in 1.3 but better in 1.4.

Originally "entity" was intended to be a sort of "common name" table.  It has become a little more than that because it also addresses the issue of natural persons vs companies and so provides a common join point for such entities (persons, unincorporated companies, corporations, etc).

In 1.3, we don't really support person records as customers or vendors (but we do for 1.4).  The model furthermore supports mapping individuals to employees of companies, and much more, that our current db procedures and user interface do not do yet.  However, this is still a stable point for for building solutions which need these sorts of mappings.

As a user, what are the trade-offs amongst: auto-generated entity
keys; having the type record (i.e. customer) and entity have matching
keys; or something else (eg. suffix on entity for entities with
multiple types?

Can a customer also be a vendor?  Can an employee be a customer? 

The way this is currently modelled is that you have entities, which are companies or persons, and these have agreements to be employees, vendors, and/or customers.  A given individual could be all three in theory.

But you can also do some other things with it.  You can set up automated jobs as users which are entities and db users.  This allows you to have audit trails which mention which automated job entered data and which human approved it.

Best Wishes,
Chris Travers

Efficito:  Hosted Accounting and ERP.  Robust and Flexible.  No vendor lock-in.
Want excitement?
Manually upgrade your production database.
When you want reliability, choose Perforce.
Perforce version control. Predictably reliable.
Ledger-smb-users mailing list