Module Third Parties (developer)
Third parties | |
---|---|
Numéro/ID du module | 1 |
Doc utilisateur du module | Module Third Parties |
Doc développeur du module | This page |
Feature
The Third Party module is used to manage the following objects:
- Companies
- Contacts/Addresses
- Bank information of companies
A third party is a moral or physical entity (prospect, customer, supplier). This can be a company, foundation but also be a physical person. A third party is defined by mandatory information like name and country but also by optional information like capital, professional id, etc... Contacts/Addresses are physical persons of a company or generic addresses. For a physical person, properties of a contact has similar values as properties of contact.
Element Third Party
The PHP class to use to manipulate such object is file htdocs/societe/class/societe.class.php.
It contains CRUD methods to create (C), read (R), update (U) and delete (D) this object.
Business rules:
- A third party can have 1 or more contacts/addresses.
- A third party has a property to define if it's a prospect, a customer, none or both.
- A third party has a property to define if it's a supplier or not.
- You can attach one to n sales representative (Dolibarr users) to a third party.
- To complete...
Life cycle:
- A third party can be created (This calls trigger COMPANY_CREATE)
- A third party can be modified (This calls trigger COMPANY_UPDATE)
- A contact/address can be added to a third party.
- Some elements can be created for the third party like (order, commercial proposal, invoice, contract, ...)
- A third party can be deleted (This calls trigger COMPANY_DELETE)
Element Third party Prospect
A prospect is just a third party that is a prospect. There is a particular class to manipulate such objects. The PHP class to use to manipulate such object is file htdocs/comm/prospect/class/prospect.class.php.
It contains CRUD methods to create (C), read (R), update (U) and delete (D) this object.
Life cycle:
A prospect has a status :
- Do not contact (-1) ;
- Not contacted (0) ;
- To contact (1) ;
- Contact in process (2) ;
- Prospect contacted (3).
Element Contact
The PHP class to use to manipulate such object is file htdocs/contact/class/contact.class.php.
It contains CRUD methods to create (C), read (R), update (U) and delete (D) this object.
Life cycle:
- A contact can be created (This calls trigger CONTACT_CREATE)
- A contact can be modified (This calls trigger CONTACT_UPDATE)
- A contact can be deleted (This calls trigger CONTACT_DELETE)
Permissions
- ->societe->lire
- ->societe->creer
- ->societe->supprimer
- ->societe->export
- ->societe->client->voir
- ->societe->contact->lire
- ->societe->contact->creer
- ->societe->contact->supprimer
- ->societe->contact->export
Tables SQL
- llx_societe Contains list of third parties (companies...)
- llx_socpeople Contains list of third parties' contacts.