Interfaces from foreign systems toward Dolibarr: Difference between revisions
(Created page with '{{TemplateDocDevEn}} {{ToTranslate}} Il y a 2 méthodes pour permettre à une application extérieure d'insérer des données dans Dolibarr. Les 2 techniques possibles sont les s...') |
(Add Chinese) Tag: 2017 source edit |
||
| (29 intermediate revisions by 4 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:Interfaces_Exterieur_vers_Dolibarr]] | |||
[[es:Interfaces_del_Exterior_hacia_Dolibarr]] | |||
[[zh:外部系统到Dolibarr的接口]] | |||
<!-- END interlang links --> | |||
{{TemplateDocDevEn}} | {{TemplateDocDevEn}} | ||
There are 3 methods to allow an external application to insert data into Dolibarr (For information on the other direction and allow Dolibarr to insert datas into external systems, see page [[Interfaces Dolibarr toward foreign systems]]). | |||
To act on Dolibarr from external system, there is 3 possible solutions: | |||
= Insert data directly into database = | |||
This solution requires knowledge of the physical model and the allowed values of the fields. It is risky and should be rewritten if modified format based Dolibarr. | |||
'''Advantages:''' Can be made in any language. | |||
'''Disadvantage:''' This technique is highly discouraged. At the first upgrade of Dolibarr version, this method will not work and will need to be rewritten. Moreover, using this method, you override the business rules validations, which creates a risk of corrupting data. This method also needs to know the basis Dolibarr. | |||
= Using PHP classes = | |||
It is possible to use business objects Dolibarr (xxx.class.php files). Each of these files provides a class of methods for: | |||
* reading of an entity (the fetch method) | |||
* insertion into database of an entity (the create method or insert) | |||
* updating an entity (the update method) | |||
* deletion of an entity (the delete method) if applicable to the object | |||
* various other methods specific to the entity manipulated. | |||
This technique is better than first one. | |||
'''Advantages:''' It offers the advantage of passing through layers of data validation business. The interface code should normally not be rewritten when upgrading version Dolibarr. | |||
'''Disadvantages:''' It is usable in PHP only. Your code must be stored on the same server as the Dolibarr files. | |||
See page [[Business Objects]]. | |||
= Web services = | |||
See [[Module Web Services REST|Module Web Services API REST]] and [[Module Web Services|Module Web Services API SOAP]]. | |||
The REST APIs are those used by the Automation tools nocode platforms. | |||
= See also = | |||
* [[Hooks system]] | |||
* [[Triggers]] | |||
* [[Interfaces Dolibarr toward foreign systems]] | |||
Latest revision as of 06:58, 27 September 2023
There are 3 methods to allow an external application to insert data into Dolibarr (For information on the other direction and allow Dolibarr to insert datas into external systems, see page Interfaces Dolibarr toward foreign systems).
To act on Dolibarr from external system, there is 3 possible solutions:
Insert data directly into database
This solution requires knowledge of the physical model and the allowed values of the fields. It is risky and should be rewritten if modified format based Dolibarr.
Advantages: Can be made in any language.
Disadvantage: This technique is highly discouraged. At the first upgrade of Dolibarr version, this method will not work and will need to be rewritten. Moreover, using this method, you override the business rules validations, which creates a risk of corrupting data. This method also needs to know the basis Dolibarr.
Using PHP classes
It is possible to use business objects Dolibarr (xxx.class.php files). Each of these files provides a class of methods for:
- reading of an entity (the fetch method)
- insertion into database of an entity (the create method or insert)
- updating an entity (the update method)
- deletion of an entity (the delete method) if applicable to the object
- various other methods specific to the entity manipulated.
This technique is better than first one.
Advantages: It offers the advantage of passing through layers of data validation business. The interface code should normally not be rewritten when upgrading version Dolibarr.
Disadvantages: It is usable in PHP only. Your code must be stored on the same server as the Dolibarr files.
See page Business Objects.
Web services
See Module Web Services API REST and Module Web Services API SOAP.
The REST APIs are those used by the Automation tools nocode platforms.