Difference between revisions of "Module Third Parties (developer)"
m |
PolyglotBot (talk | contribs) m (Import interlang links (links to translated versions of this page in other languages) from Multi Language Manager table.) |
||
(23 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
+ | <!-- BEGIN origin interlang links --> | ||
+ | <!-- You can edit this section but do NOT remove these comments | ||
+ | Links below will be automatically replicated on translated pages by PolyglotBot --> | ||
+ | [[fr:Module_Tiers_(développeur)]] | ||
+ | [[es:Módulo_Terceros_(desarrollador)]] | ||
+ | <!-- END interlang links --> | ||
+ | |||
[[Category:Third parties]] | [[Category:Third parties]] | ||
{{TemplateDocDev}} | {{TemplateDocDev}} | ||
+ | {{TemplateModEN Developer}} | ||
{{BasculeDevUser| | {{BasculeDevUser| | ||
− | nom=Third parties| | + | nom=Third parties| |
− | devdoc= | + | num=1| |
− | userdoc=[[Third Parties]]|}} | + | devdoc=This page| |
− | + | userdoc=[[Module Third Parties]]|}} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | = 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 = |
− | {{ | + | {{TemplateDocDevEntityEn| |
− | class=htdocs/societe.class.php}} | + | class=htdocs/societe/class/societe.class.php}} |
'''Business rules''': | '''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. | |
− | + | {{TemplateDocDevEntityEn| | |
− | + | class=htdocs/comm/prospect/class/prospect.class.php}} | |
− | |||
− | + | '''Life cycle''': | |
− | |||
− | |||
− | + | A prospect has a status : | |
− | + | * Do not contact (-1) ; | |
− | * | + | * Not contacted (0) ; |
− | * | + | * To contact (1) ; |
− | * | + | * Contact in process (2) ; |
− | * Contact | + | * Prospect contacted (3). |
− | * Prospect | ||
− | = | + | = Element Contact = |
− | {{ | + | {{TemplateDocDevEntityEn| |
− | class=htdocs/contact.class.php}} | + | class=htdocs/contact/class/contact.class.php}} |
− | ''' | + | '''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 = | = Permissions = | ||
Line 73: | Line 79: | ||
= Tables SQL = | = Tables SQL = | ||
* [[Table llx_societe|llx_societe]] Contains list of third parties (companies...) | * [[Table llx_societe|llx_societe]] Contains list of third parties (companies...) | ||
+ | * [[Table llx_socpeople|llx_socpeople]] Contains list of third parties' contacts. |
Latest revision as of 13:21, 23 July 2019
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.