Autres versions

Vous êtes ici : Développer dans K-SupConnecteurs SIImport / Export XML

Introduction

Le module d'import XML vous permet d'alimenter n'importe quel type de contenu de votre application de façon automatique, ce qui permet de récupérer des contenus provenant de sources externes, de façon ponctuelle ou récurrente.

Le format XML a été privilégié parce qu'il est très répandu, il permet la création de fichiers de données à partir de la plupart des technologies actuelles (Java, PHP...), et de décrire tous les types de contenus existants dans K-Portal / K-Sup.

Les options de configuration qui ont été associées au module permettent par ailleurs de piloter finement la façon dont seront importées les données : quelle zone importer et/ou ne pas importer, quelle valeur attribuer par défaut en cas de valeur non renseignée... 

Les connecteurs LDAP et CDM-fr, fournis avec K-Sup, utilisent tous deux ce module pour importer les contenus dans votre site.

Format XML

Le format attendu pour le fichier XML est le suivant :
<?xml version="1.0" encoding="utf-8"?>
<LISTE_ITEMS>
	<ITEM>
		<ENTETE>
			<ACTION>IMPORTER</ACTION>
			<OBJET>NOM_OBJET</OBJET>
			<CODE>CODEFICHE</CODE>
			<LANGUE>LANGUEFICHE</LANGUE>
		</ENTETE>
		<DONNEES>
			<INTITULE_CHAMP>Contenu du champ</INTITULE_CHAMP>
		</DONNEES>
	</ITEM>
</LISTE_ITEMS>
  • ENTETE
    • ACTION : vaut toujours "IMPORTER"
    • OBJET : nom de l'objet importé, parmi les valeurs suivantes : 
      • ARTICLE
      • ACTUALITE
      • DOCUMENT
      • ANNUAIRE (ANNUAIREKSUP pour K-Sup)
      • DEFAULTSTRUCTURE (DEFAULTSTRUCTUREKSUP pour K-Sup)
      • LABORATOIRE (K-Sup)
      • FORMATION (K-Sup)
      • PARCOURS (K-Sup)
      • UEUP (K-Sup)
      • COURS (K-Sup)
      • OFFRESSTAGESEMPLOIS (K-Sup)
      • ANNUAIREETUDIANTS (K-Sup)
      • ANNUAIREANCIENSETUDIANTS (K-Sup)
      • ASSOCIATIONETUDIANT (K-Sup)
    • CODE : Code de la fiche
    • LANGUE : Langue de la fiche, les valeurs possibles sont renseignées dans votre fichier de configuration (jtf.properties ou [projet].properties, paramètres langue_x). Par défaut : 0 pour français, 1 pour anglais, 2 pour allemand, 3 pour espagnol.
  • DONNEES : les nœuds placés sous ce nœud correspondent aux différents champs de chaque fiche. Le nom du nœud doit correspondre au nom du champ en base de données. Par exemple, CHAPEAU pour le champ "Résumé" de la fiche Article.
Certains champs attendent un format spécifique de données :
  • Dates : JJMMAAAA
  • Libellés multivalués : les codes des libellés doivent être séparés par un point-virgule

Paramétrage du module

À savoir
Le paramétrage des imports s'effectue dans le fichier de configuration de l'extension : application_importExport.properties ou env_importExport.properties.
NOM_OBJET désigne le nom de la table MySQL en majuscule et NOM_DU_CHAMP désigne le nom du champ dans la table MySQL.
Propriété Description Valeurs possibles Valeur par défaut Exemple
import.NOM_OBJET.NOM_DU_CHAMP Indique si le champ "NOM_DU_CHAMP" de l'objet "NOM_OBJET" doit être importé.
Attention Cette propriété est uniquement traitée lors de la mise à jour d'un enregistrement. Si la fiche n'existe pas en base de données, tous les champs du fichier XML seront importés.
0 : le champ ne doit pas être importé
1 : le champ doit être importé
1 import.FORMATION.INTITULE_LONG=0
import.NOM_OBJET.NOM_DU_CHAMP Indique une valeur par défaut à alimenter dans le champ "NOM_DU_CHAMP" de l'objet "NOM_OBJET".
Attention Cette propriété est uniquement prise en compte lors de la création d'une fiche, si le nœud "NOM_DU_CHAMP" n'est pas présent dans le fichier XML. 
/valeur Aucune import.FORMATION.CODE_RUBRIQUE=/OFFRE_DE_FORMATION
import.noeudsvides Active l'import des valeurs vides : si la valeur est vide dans le fichier XML, le contenu dans K-Portal/K-Sup sera également mis à vide. 0 : les nœuds vides ne doivent pas être pris en compte 
1 : les nœuds vides doivent être pris en compte
0 import.noeudsvides=1
import.NOM_OBJET.suppressionauto Défini le comportement de la suppression automatique (lorsqu'une fiche "NOM_OBJET" de K-Sup n'est plus présente dans les fichiers importés). 0 :  la suppression est désactivée mais le webmaster est informé par mail de la liste des fiches obsolètes.
1 : la suppression est effective et le webmaster reçoit également le mail.
2 : la suppression est effective et le compte-rendu est enregistré dans le fichier de log de l'application.
0 import.FORMATION.suppressionauto=1
import.NOM_OBJET.etatsuppression Défini l'état auquel doit être passée une fiche "NOM_OBJET" supprimée. 0004 : en attente de suppression
0007 : archivée
0004 import.FORMATION.etatsuppression=0007
import.NOM_OBJET.postarchivage Diffère l'archivage de la fiche "NOM_OBJET". +n : archivage n jours après l'import Aucune import.FORMATION.postarchivage=+2
import.etat.fiches_restaurees Défini l'état auquel doit être passée une fiche restaurée (une fiche archivée qui se trouve de nouveau présente dans un import). 0001 : en brouillon
0003 : en ligne
Aucune import.etat.fiches_restaurees=0001