Difference between revisions of "Module Third Parties (developer)"

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search
m (Import interlang links (links to translated versions of this page in other languages) from Multi Language Manager table.)
 
(11 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}}
+
{{TemplateModEN Developer}}
 
{{BasculeDevUser|
 
{{BasculeDevUser|
 
nom=Third parties|
 
nom=Third parties|
Line 16: Line 23:
 
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 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...
 
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 than properties of contact.
+
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 =
 
= Element Third Party =
Line 30: Line 37:
  
 
'''Life cycle''':
 
'''Life cycle''':
{{ToTranslate}}}
+
* A third party can be created (This calls trigger COMPANY_CREATE)
* Une société peut être créée (Provoque appel du trigger COMPANY_CREATE)
+
* A third party can be modified (This calls trigger COMPANY_UPDATE)
* Une société peut être modifiée (Provoque appel du trigger COMPANY_UPDATE)
+
* A contact/address can be added to a third party.
* Un contact peut être ajouté à la société
+
* Some elements can be created for the third party like (order, commercial proposal, invoice, contract, ...)
* D'autres entités peuvent être créées sur cette société (commande, propal, facture, contrat, ...)
+
* A third party can be deleted (This calls trigger COMPANY_DELETE)
* Une société peut être supprimée (Provoque appel du trigger COMPANY_DELETE)
 
  
= Entité Société Prospect =
+
= 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|
 
{{TemplateDocDevEntityEn|
 
class=htdocs/comm/prospect/class/prospect.class.php}}
 
class=htdocs/comm/prospect/class/prospect.class.php}}
  
'''Cycle de vie''':
+
'''Life cycle''':
Un prospect peut avoir plusieurs états :
+
 
* A ne pas connecter (-1) ;
+
A prospect has a status :
* Non contacté (0) ;
+
* Do not contact (-1) ;
* A contacter (1) ;
+
* Not contacted (0) ;
* Contact en cours (2) ;
+
* To contact (1) ;
* Prospect contacté (3).
+
* Contact in process (2) ;
 +
* Prospect contacted (3).
  
= Entité Contact =
+
= Element Contact =
 
{{TemplateDocDevEntityEn|
 
{{TemplateDocDevEntityEn|
 
class=htdocs/contact/class/contact.class.php}}
 
class=htdocs/contact/class/contact.class.php}}
  
'''Cycle de vie''':
+
'''Life cycle''':
* Un contact peut être créé (Provoque appel du trigger CONTACT_CREATE)
+
* A contact can be created (This calls trigger CONTACT_CREATE)
* Un contact peut être modifié (Provoque appel du trigger CONTACT_UPDATE)
+
* A contact can be modified (This calls trigger CONTACT_UPDATE)
* Un contact peut être supprimé (Provoque appel du trigger CONTACT_DELETE)
+
* A contact can be deleted (This calls trigger CONTACT_DELETE)
  
 
= Permissions =
 
= Permissions =

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