CARL Source - Facility
Exemples de fichiers d'échange xml
Système > Échanges de données > Interface > Exemples de fichiers d'échange xml

CARL Source propose en standard un certain nombre d'interfaces xml.

Voici quelques exemples de fichiers d'import acceptés par ces interfaces.
Ces exemples illustrent quel est le contenu des fichiers en fonction du comportement souhaité :

En cas de création, veillez à ce que tous les champs obligatoires soient renseignés dans le fichier.

Voir aussi les paramètres du module.

 

Import d'événements avec l'interface EVENT_IN et un fichier xml

<?xml version="1.0" encoding="UTF-8"?>
<entities exchangeInterface="EVENT_IN" timezone="Europe/Paris" language="fr_FR">
  <event>
    <event_eventDate>2008-12-07 16:32:14</event_eventDate>
    <event_material code="MACHINE1" />
    <event_comment>La machine 1 est en arrêt</event_comment>
    <event_symptom code="ARRET" />
  </event>
  <event>
    <event_eventDate>2008-12-21 02:24:14</event_eventDate>
    <event_box code="BAT1" />
    <event_comment>Fuite d'eau constatée dans le bâtiment 1</event_comment>
    <event_symptom code="FUITE" />
  </event>
</entities>

 

En-tête

 

Références

Dans cet exemple, les éléments suivants sont référencés dans CARL Source :

 

Import d'une DT avec l'interface MR_IN et un fichier xml

Création uniquement

<?xml version="1.0" encoding="UTF-8"?>    
<entities exchangeInterface="MR_IN" language="fr_FR">
  <MR>
    <mr_code>DT1</mr_code>
    <mr_description>Demande de travaux sur la voiture 666CSI69</mr_description>
    <mr_longDesc>
      <description_description>Problème aléatoire au démarrage</description_description>
    </mr_longDesc>
    <mr_workPriority>HIGH</mr_workPriority>
    <mr_boxMain code="PARK-01" />
    <mr_material code="666CSI69" />
    <mr_site code="SITE1" />
    <mr_status>
      <status_code>REQUEST</status_code>
      <status_changedBy code="DUPONT"/>
      <status_changedDate>2009-01-02 15:49:57</status_changedDate>
    </mr_status>
    <mr_addressee code="MARTIN" />
    <mr_symptom code="ARRET" />
    <mr_createdBy code="DUPONT" />
    <mr_expEnd>2009-01-08 10:00:00</mr_expEnd>
  </MR>
</entities>

Dans cet exemple, la demande de travaux DT1 va être créée. Si DT1 existe déjà, l'enregistrement sera rejeté.

 

Création ou mise à jour

Pour pouvoir faire une mise à jour de DT1, il faut indiquer le code ou l'identifiant de la DT dans le tag <MR>.

Dans l'exemple suivant, DT1 est mis à jour si déjà existant, sinon créé.

<?xml version="1.0" encoding="UTF-8"?>
<entities exchangeInterface="MR_IN" >
  <MR code="DT1">
    <mr_code>DT1</mr_code>
    <mr_description>Demande de travaux sur la voiture 666CSI69</mr_description>
    <mr_longDesc>
      <description_description>Démarrage impossible de la voiture</description_description>
    </mr_longDesc>
    <mr_workPriority>URGENT</mr_workPriority>
    <mr_boxMain code="PARK-01" />
    <mr_material code="666CSI69" />
    <mr_site code="SITE1" />
    <mr_status>
      <status_code>REQUEST</status_code>
      <status_changedBy code="DUPONT"/>
      <status_changedDate>2009-01-02 15:49:57</status_changedDate>
    </mr_status>
    <mr_addressee code="MARTIN" />
    <mr_symptom code="ARRET" />
    <mr_createdBy code="DUPONT" />
    <mr_expEnd>2009-01-07 10:00:00</mr_expEnd>
  </MR>
</entities>

 

Mise à jour uniquement

Pour faire uniquement des mises à jour, il ne faut pas renseigner le tag <mr_code>.

Dans l'exemple suivant, DT1 sera mis à jour si déjà présent, sinon, l'enregistrement sera rejeté.

<?xml version="1.0" encoding="UTF-8"?>
<entities exchangeInterface="MR_IN" >
  <MR code="DT1">
    <mr_description>Demande de travaux sur la voiture 666CSI69</mr_description>
    <mr_longDesc>
      <description_description>Démarrage impossible de la voiture</description_description>
    </mr_longDesc>
    <mr_workPriority>URGENT</mr_workPriority>
    <mr_boxMain code="PARK-01" />
    <mr_material code="666CSI69" />
    <mr_site code="SITE1" />
    <mr_status>
      <status_code>REQUEST</status_code>
      <status_changedBy code="DUPONT"/>
      <status_changedDate>2009-01-02 15:49:57</status_changedDate>
    </mr_status>
    <mr_addressee code="MARTIN" />
    <mr_symptom code="ARRET" />
    <mr_createdBy code="DUPONT" />
    <mr_expEnd>2009-01-07 10:00:00</mr_expEnd>
  </MR>
</entities>

 

Import de fournisseur : mise à jour et suppression

Mise à jour de la liste des qualifications du fournisseur

Dans ce cas, le point d'intégration VENDOR de l'interface VENDOR_IN a l'attribut Collection positionné sur "Mise à jour".

L'import du fichier suivant va entraîner les modifications suivantes dans la liste des qualifications du fournisseur ABE :

<?xml version="1.0" encoding="UTF-8"?>
<entities exchangeInterface="VENDOR_IN" externalSystem="EXT_SYST">
  <vendor code="ABE">
    <vendor_families>
      <vendorFamily family_coderef="ELECTRIQUE">
        <vendorfamily_family code="ELECTRIQUE"/>
        <vendorfamily_description>Nouvelle famille : électrique</vendorfamily_description>
      </vendorFamily>
      <vendorFamily family_coderef="MECANIQUE">
        <vendorfamily_family code="MECANIQUE"/>
        <vendorfamily_description>Mise à jour de la famille existante</vendorfamily_description>
      </vendorFamily>
    </vendor_families>
  </vendor>
</entities>

La qualification (lien famille-fournisseur) est identifiée par :

 

Remplacement de la liste des qualifications du fournisseur

Si au contraire, le point d'intégration VENDOR de l'interface VENDOR_IN_BIS a l'attribut Collection positionné sur "Remplacement", l'import du même fichier entraînera les modifications suivantes :

 

Suppression explicite d'un fournisseur et d'une qualification de fournisseur

L'import du fichier suivant va entraîner dans tous les cas :

<?xml version="1.0" encoding="UTF-8"?>
<entities exchangeInterface="VENDOR_IN" externalSystem="EXT_SYST">
  <vendor code="ABE">
    <vendor_families>
      <vendorFamily family_coderef="ELECTRIQUE">
        <vendorfamily_family code="ELECTRIQUE"/>
        <vendorfamily_description>Nouvelle famille : électrique</vendorfamily_description>
      </vendorFamily>
      <vendorFamily family_coderef="MECANIQUE" delete="true">
      </vendorFamily>
    </vendor_families>
  </vendor>
  <vendor code="A_SUPPR" delete="true">
  </vendor>
</entities>