Interfaces del Exterior hacia Dolibarr: Difference between revisions

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search
(Created page with '{{TemplateDocDesarrollo}} {{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 ...')
 
m (Updating interlang links (links to translated versions of this page in other languages) triggered by origin English page "Interfaces_from_foreign_systems_toward_Dolibarr" update.)
 
(14 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<!-- BEGIN interlang links -->
<!-- Do NOT edit this section
    Links below are automatically managed by PolyglotBot
    You can edit links on the English source page : Interfaces_from_foreign_systems_toward_Dolibarr -->
[[en:Interfaces_from_foreign_systems_toward_Dolibarr]]
[[fr:Interfaces_Exterieur_vers_Dolibarr]]
[[zh:外部系统到Dolibarr的接口]]
<!-- END interlang links -->
{{TemplateDocDesarrollo}}
{{TemplateDocDesarrollo}}
{{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 suivantes:
== Insertion des données directement en base ==
Cette solution requiert de connaître le modèle physique et les valeurs autorisées des champs. Elle est risquée et devra être réécrite en cas de modification du format de base de Dolibarr.
'''Avantages:''' Peut être réalisé dans n'importe quel langage.
'''Inconvénient:''' Cette technique est très fortement déconseillée. A la première montée de version de Dolibarr, cette méthode risque de ne plus fonctionner et devoir être réécrite.
De plus, en utilisant cette méthode, vous passer outre les règles de validation métier, ce qui crée un risque de corrompre les données. Cette méthode nécessite aussi de connaitre la base Dolibarr.
== Utilisation des classes PHP ==
Il est possible d'utiliser les objets métiers de Dolibarr (Les fichiers xxx.class.php).
Chacun de ces fichiers offre un classe munie de méthodes pour:
* la récupération d'une entité (la méthode fetch)
* l'insertion en base d'une entité (la méthode create ou insert)
* la mise à jour d'une entité (la méthode update)
* la suppression d'une entité (la méthode delete) si applicable à l'objet
* d'autres méthodes diverses propre à l'entité manipulée.
Cette technique est préférable à la précédente.
'''Avantages:''' Elle offre l'avantage de passer à travers les couches de validations métiers des données. Le code d'interface ne doit normallement pas être réécrit en cas de montée de version de Dolibarr.
'''Inconvénients:''' Elle n'est exploitable qu'en langage PHP.


Existen 3 métodos para permitir que una aplicación exterior inserte datos en Dolibarr (Para obtener información acerca del caso contrario y permitir a Dolibarr insertar datos en el exterior, consulte la página [[Interfaces Dolibarr hacia el exterior]]).


Voici un exemple pour la création d'un tiers (société client par exemple):
Las tres técnicas posibles son las siguientes:


<pre>
= Inserción de datos directa en la base de datos =
// On declare la classe que l'on va manipuler
Esta solución requiere el conocimiento del modelo físico y los valores autorizados de los campos. Es arriesgado y debe ser reescrito en caso de modificiación del formato de la base de datos Dolibarr.
include_once('/pathofdolibarrhtdocs/societe.class.php');


// On cree une instance de l'objet à manipuler
'''Ventajas:''' Se puede realizar en cualquier lenguaje.
$mycompany = new Societe($db);


// On renseigne ces caractéristiques
'''Inconveniente:''' Esta técnica es muy desaconsejada. Al primer aumento de versión Dolibarr, este método puede dejar de funcionar, siendo necesario reescribirlo.
$mycompany->nom='Big Brother';
Además, utilizando este método, se pasan por alto las reglas de negociado de validación, creando un riesgo de corrupción de datos. Este método también necesita conocer la base de datos Dolibarr.
$mycompany->client=1;


// Si on veut que l'action de creation soit associé a un utilisateur 'loginuser' particulier,
= Uso de clases PHP =
// il faut decommenter cette ligne pour charger les caractéristiques de cet utilisateur.
Es posible utilizar objetos de negociado de Dolibarr (Los ficheros xxx.class.php).
// Si on laisse commenter, Dolibarr mettra null dans les champs du user de création ou mise a jour.
Cada uno de estos ficheros ofrece una clase equipada con métodos para:
// $user->fetch('loginuser');
* la recuperación de una entidad (el método fetch)
* La inserción de una entidad (el método create o insert)
* la actualización de una entidad (el método update)
* la eliminación de una entidad (el método delete) si es aplicable al objeto
* Otros métodos diversos propios de la entidad manipulada.
Esta técnica es preferible a la anterior.


// On invoque la creation
'''Ventajas:''' Ofrece la ventaja de pasar a través de capas de negociado de validación de datos. La interfaz del código no debería ser sobreescrita en caso de aumento de versión de Dolibarr.
$id=$mycompany->create($user);


// Pour charger l'objet
'''Inconvenientes:''' Sólo se utiliza en PHP. Su código debe de estar situado en el mismo servidor que los archivos Dolibarr.
$mycompany->fetch($id);


// Pour mettre a jour
Ver [[Objetos de negociado]].
$mycompany->update($user);
</pre>


Rem: Si on est dans le cas d'un script externe à Dolibarr, il est nécessaire de faire au début,
= Web services =
avant le include de la classe manipulée
Vea el [[Módulo Services Web]].
<pre>include('/pathofdolibarrhtdocs/master.inc.php');</pre>
pour que les objets $db, $lang et $user soient créés.
Si on veut que les actions (creation, mise a jour), soit associées dans le suivi à un utilisateur particulier, il est nécessaire de faire avant

Latest revision as of 06:58, 27 September 2023


Existen 3 métodos para permitir que una aplicación exterior inserte datos en Dolibarr (Para obtener información acerca del caso contrario y permitir a Dolibarr insertar datos en el exterior, consulte la página Interfaces Dolibarr hacia el exterior).

Las tres técnicas posibles son las siguientes:

Inserción de datos directa en la base de datos

Esta solución requiere el conocimiento del modelo físico y los valores autorizados de los campos. Es arriesgado y debe ser reescrito en caso de modificiación del formato de la base de datos Dolibarr.

Ventajas: Se puede realizar en cualquier lenguaje.

Inconveniente: Esta técnica es muy desaconsejada. Al primer aumento de versión Dolibarr, este método puede dejar de funcionar, siendo necesario reescribirlo. Además, utilizando este método, se pasan por alto las reglas de negociado de validación, creando un riesgo de corrupción de datos. Este método también necesita conocer la base de datos Dolibarr.

Uso de clases PHP

Es posible utilizar objetos de negociado de Dolibarr (Los ficheros xxx.class.php). Cada uno de estos ficheros ofrece una clase equipada con métodos para:

  • la recuperación de una entidad (el método fetch)
  • La inserción de una entidad (el método create o insert)
  • la actualización de una entidad (el método update)
  • la eliminación de una entidad (el método delete) si es aplicable al objeto
  • Otros métodos diversos propios de la entidad manipulada.

Esta técnica es preferible a la anterior.

Ventajas: Ofrece la ventaja de pasar a través de capas de negociado de validación de datos. La interfaz del código no debería ser sobreescrita en caso de aumento de versión de Dolibarr.

Inconvenientes: Sólo se utiliza en PHP. Su código debe de estar situado en el mismo servidor que los archivos Dolibarr.

Ver Objetos de negociado.

Web services

Vea el Módulo Services Web.