Import Partenaire PHP

Exemple d’import partenaire à partir de l’API Dailybiz avec le langage PHP

Introduction

L’exemple joint à cette documentation a pour but de simuler un import partenaire.

La fonction d’import partenaires permet de récupérer les commandes d’un site e-commerce pour les intégrer en tant que commandes ou factures dans la gestion commerciale. Cet exemple part du principe qu’un fichier XML contenant les commandes à importer a déjà été généré par le site e-commerce. Le programme va donc charger ce fichier et le traiter pour importer son contenu dans la grille d’import.

Pour commencer

Prérequis

L’exemple est conçu pour être utilisé via un navigateur web.

Pour l’exécuter, il est nécessaire :

  • D’installer et activer un serveur web (IIS, Apache)

  • D’installer et configurer PHP

  • D’avoir une connexion internet active pour communiquer avec le service web

L’utilisation d’un environnement de développement (IDE) n’est pas requise.

Ensuite suivez ces étapes:

  1. Télécharger l’archive

  2. Dézipper le fichier dans le répertoire du serveur web configuré pour l’emplacement des fichiers PHP.

Utiliser l’exemple

Vous devez au préalable éditer le fichier PHP «ImportPartenaire.php» pour remplacer les valeurs de paramètres de la méthode d’authentification avec vos codes d’accès.

Exemple : Pour la méthode authentification1, vous devez remplacer par vos propres codes d’accès les valeurs des paramètres «MonCodeAbonné», «MonIdentifiant», «MonMotDePasse».

Veuillez noter que les codes d’accès doivent correspondre obligatoirement à un compte administrateur.

Le deuxième fichier «Import.xml» contient les données à importer. Le fichier est au format XML et contient une balise «FICHE» par ligne de commande.

Plusieurs lignes peuvent correspondre à la même commande si le numéro de pièce est commun. Vous pouvez éditer ce fichier si vous souhaitez ajouter des fiches ou modifier les données existantes.

Avant de tester l’exemple, il est nécessaire de paramétrer les options de l’import partenaires dans le logiciel. Notamment pour la numérotation des pièces, le type de pièce à créer, etc.

Pour plus d’informations sur l’import partenaires, veuillez-vous référer à l’aide en ligne ou contacter notre assistance technique.

Afin de pouvoir exécuter l’exemple, ouvrez une fenêtre de navigateur puis indiquez dans la barre d’adresse, l’url d’emplacement du fichier «ImportPartenaire.php».

Attention : ce programme n’affiche pas de résultat dans le navigateur; vous obtiendrez une page blanche.

Pour vérifier le résultat, connectez-vous au logiciel avec les mêmes codes d’accès que ceux indiqués dans l’exemple. Puis rendez-vous dans la grille d’import partenaires ventes.

Aperçu du code

Dans cet exemple, les classes PHP suivantes sont utilisées (pour en savoir plus, consulter: http://php.net/) :

  • SoapClient : fournit le client pour le protocole SOAP

  • SoapHeader: construit l’en-tête SOAP

  • DOMDocument: crée un objet DOMDocument

L’API fonctionne via un service web basé sur le protocole SOAP. La première instruction permet d’instancier le client SOAP en passant en paramètre l’adresse du fichier de description des services (wsdl).

Exemple :
$oWS= new SoapClient("http://exe.idylis.com/idylisapi.asmx?wsdl");

Toutes les instructions suivantes qui utiliseront le service web, seront des méthodes de l’objet instancié avec le client SOAP.

La première méthode sert à vous authentifier.

Exemple :
$oSession=$oWS->authentification1(array('_codeAbonne'=>'MonCodeAbonné', '_identifiant'=>'MonIdentifiant', '_motdePasse'=>'MonMotDePasse'));

L’étape suivante consiste à la mise en place de l’en-tête (header) contenant le jeton de session obtenu à partir de l’authentification. Cette étape est optionnelle si vous utilisez les méthodes avec session.

Exemple :
$oAuth['SessionID']= $oSession->AuthentificationAvec3Parametres1Result;
$oHeader= new SoapHeader('https://www.idylis.com/Idylisapi.asmx/','SessionIDHeader',$oAuth, false);
$oWS->__setSoapHeaders(array($oHeader));

L’appel à méthode DefinirModule permet de vous connecter à la bonne base de données pour exécuter les méthodes suivantes.

Exemple :
$oWS->DefinirModule(array('_codemodule'=>'FA'));

On charge le fichier XML contenant les données à importer en mémoire avec la méthode load de la classe DOMDocument.

Exemple :
$oFichierXML= new DOMDocument();
$oFichierXML->load('ImportXML.xml');

L’import dans la grille d’import partenaire est réalisé avec la méthode InsererTable qui reçoit une chaîne de caractères correspondant à un message XML en paramètre. Afin que le document en mémoire soit converti en chaîne de caractère, on applique la méthode saveXML de la classe DOMDocument.

Exemple :
$oWS->InsererTable(array('_cFiche'=>$oFichierXML->saveXML()));

Télécharger l'exemple

Dernière mise à jour