Objets métiers

From Dolibarr ERP CRM Wiki
Revision as of 15:20, 3 September 2010 by Eldy (talk | contribs) (Created page with "= Utilisation des objets métiers = 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éth...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Utilisation des objets métiers

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. Votre code doit etre situé sur le meme serveur que les fichiers Dolibarr. [modifier] Exemple pour la création d'un tiers

Voici un exemple pour la création d'un tiers (société client par exemple):

Si on est dans le cas d'un script nouveau ou externe à Dolibarr, il est nécessaire de faire au début de son code, avant toute chose

include('/pathofdolibarrhtdocs/master.inc.php');

pour que l'environnement Dolibarr (objets $conf, $db, $lang et $user) soit créé. Si on veut que les actions (creation, mise à jour), soit associées dans le suivi à un utilisateur particulier, il est nécessaire de faire après l'include du master.inc.php

$user->fetch(0,'loginuser');

Ensuite, on peut manipuler réaliser nos actions métiers.

// On declare la classe que l'on va manipuler include_once('/pathofdolibarrhtdocs/societe.class.php');

// On cree une instance de l'objet à manipuler $mycompany = new Societe($db);

// On renseigne ces caractéristiques $mycompany->nom='Big Brother'; $mycompany->client=1;

// Si on veut que l'action de création soit associé a un utilisateur 'loginuser' particulier, // il faut decommenter cette ligne pour charger les caractéristiques de cet utilisateur. // Si on laisse commenter, Dolibarr mettra null dans les champs du user de création ou mise a jour. // $user->fetch('loginuser');

// On invoque la creation $id=$mycompany->create($user);

// Pour charger l'objet $mycompany->fetch($id);

// Pour mettre a jour $mycompany->update($user);

Autres exemples

Vous trouverez d'autres exemples de manipulation d'objet Dolibarr (Création, Lecture, Modification, Suppression) dans le répertoire dev/samples du snapshot CVS de Dolibarr.