Objets métiers

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)

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.