Accueil > Studio X8 > Utiliser des fonctions avancées > Importation et synchronisation
 

Importation et synchronisation

Modes de synchronisation d'une source de données

Avant de vous lancer dans la configuration d'un import d'objets, il est important de bien comprendre le processus de synchronisation et les différents modes possibles :

  • synchronisation unique

  • synchronisation récurrente

Fonctionnement général de la synchronisation d'une source de données

Etapes de synchronisation

Quel que soit le mode de synchronisation choisi, le processus de synchronisation d'une source de données est le même à savoir :

  1. Copie des tables de la source externe dans la base miroir.

  2. Création des tables du site (et/ou mise à jour des données dans la base miroir) via diverses requêtes destinées à alimenter ces tables en fonction des modifications détectées.

  3. Mise à jour des données de la base par le transfert des modifications, ajouts et suppression "virtuelles" des données.

Particularités de la suppression de données

Lorsque des données ont disparues dans la source externe, les données de la base du site ne sont en revanche pas physiquement supprimées. Ce fonctionnement a été volontairement choisi car il permet :

  • de pallier aux fausses manipulations dans le fichier source provoquant la suppression des données dans le site,

  • de ne pas perdre irrémédiablement les informations ajoutées en ligne via le backOffice du site pour enrichir les enregistrements.

Ainsi, lorsqu'une donnée est supprimée dans la source externe, la valeur de sa colonne iso_sid passe à chaîne vide provoquant alors une suppression virtuelle de la donnée dans votre base : cette dernière est toujours présente mais n'apparaît alors plus dans votre site web.

Synchronisation unique

Quand faut-il utiliser la synchronisation unique ?

La synchronisation unique est le processus qui consiste à pré-remplir une table de données du site avec un certain volume de données que l’on éditera ensuite dans le BackOffice du site web (et non plus dans la source de données externe). Il est à privilégier lorsque la source sert uniquement à l’initialisation sans qu’on y ajoute ou modifie aucun enregistrement par la suite. En effet, toute modification de données se fait alors strictement dans le BackOffice du site. C’est d’ailleurs la raison pour laquelle ce mode de synchronisation ne peut être lancé qu’à partir du site web édité dans Isotools Studio X8.

En bref, la synchronisation unique doit être privilégiée lorsque vous prévoyez l'utilisation du backOffice du site pour la modification des données.

Propriété des données

Lorsque vous optez pour une synchronisation unique, c'est que vous souhaitez faire une initialisation des données. Par conséquent, l'importation de vos données et la création des éventuels groupes à partir de cette source est le même que si vous aviez créer les comptes utilisateurs et les groupes XRM en ligne. Le fichier source n'est pas propriétaire des données mais le site dans lequel vous effectuerez toutes vos modifications. En conséquence, la suppression de cet import n'aura aucun impact sur les données importées dans le site.

En revanche, lorsque vous utilisez ce mode de synchronisation, toute synchronisation APRES modification des données dans le backOffice aura pour conséquence l'écrasement et la suppression des données saisies par ce biais. Il est donc important de ne lancer ce type de synchronisation qu'une seule fois lorsqu'on considère sa configuration comme correcte (d'ailleurs, nous vous conseillons de supprimer cette configuration après synchronisation finale des données afin d'éviter tout dysfonctionnement).

Comment ça fonctionne ?

La synchronisation unique est effectuée à partir du Studio de synchronisation (inclus dans Isotools Studio X8) et fonctionne de la façon suivante :

  1. Première étape : copie des données dans une base dite miroir qui permet de valider les contenus avant leur transfert dans la table de données adéquate de la base de données du site,

  2. Seconde étape : transfert des données dans les tables de la base de données du site. Ces tables sont créées par Isotools Studio X8 lors de  la diffusion du site. Ainsi, sans une première diffusion du site, il est donc impossible de synchroniser les données car les tables dans lesquelles elles seront stockées n’existent pas.

Attention !  Ce mode de synchronisation n’est pas destiné à être lancé plusieurs fois hormis durant la phase de configuration de l’import d’objets. En effet, à chaque nouvelle synchronisation, les enregistrements modifiés, ajoutés ou supprimés dans la source de données externe sont systématiquement écrasés ou supprimés dans la base de données du site. L’utilisateur qui relance une synchronisation unique, une fois l’importation configurée, validée et synchronisée,  doit avoir conscience qu’il risque de perdre toutes informations ajoutées ou modifiées en ligne (BackOffice du site) dans les fiches.

Synchronisation récurrente

Quand faut-il utiliser la synchronisation récurrente ?

La synchronisation récurrente est également un processus qui consiste à remplir la base de données du site avec des données externes.

Toutefois, dans ce cas, la source de données externe n’est pas uniquement là pour l’initialisation des contenus. C’est dans la source de données externe que le rédacteur va ajouter, modifier ou supprimer les enregistrements et non pas dans le BackOffice du site. C’est d’ailleurs pour cette raison que le lancement de ce mode de synchronisation est effectué à partir d’un fichier de script externe d’extension .bat créé par Isotools Studio X8 à la diffusion du site. Il n’est donc pas nécessaire d’ouvrir le site pour relancer régulièrement la synchronisation.

A noter que l'utilisation de ce mode de synchronisation exclue toute modification des données dans le BackOffice du site : en effet, cette dernière écrasera systématiquement les données dans la base de données, y compris celles modifiées dans le backOffice (ou par un autre moyen - ex. : la page Mon compte pour les utilisateurs du site).

Propriété des données

Le choix de cet mode de synchronisation n'est pas anodin pour la configuration de l'importation que vous allez effectuer. En effet, dans ce cas, toutes informations provenant de la source externe est sa "propriété". Du coup, la modification ou la suppression de cette source ou d'un élément de configuration inclus dans cette source provoquera alors irrémédiablement la suppression des données côté base de données du site (que la synchronisation de la source de données soit lancée ou pas, la synchronisation de la base de données du site étant systématique après une rediffusion).


Par exemple : si le groupe est créé par la source de données, il est alors sa propriété. Si vous le supprimez de votre source externe, ce groupe disparaîtra alors de la base de données du site.

Comment ça fonctionne ?

La synchronisation récurrente fonctionne alors de la manière suivante :

  1. Première étape : création du fichier de synchronisation  et d’extension .bat par Isotools Studio lors de la diffusion. Son emplacement sera spécifié lorsque vous configurerez la destination de diffusion du site.

  2. Lancement du fichier de synchronisation soit par un administrateur, soit de manière régulière, en utilisant le planificateur de tâches de Windows,

  3. Production d’un fichier de logs suite à la synchronisation indiquant les opérations effectuées et l’état des données.

Remarque : le fichier de synchronisation généré est stocké dans un répertoire compressé ‘localhost’. Si vous avez choisi la décompression automatique à la diffusion lorsque vous avez  configuré la destination du site, sachez que le fichier n’est pas décompressé à chaque diffusion. Si vous deviez changer la configuration de la source de données ou de l’import d’objets, pensez toujours à décompresser vous-même le répertoire après la rediffusion du site.

Astuces

Si vous utilisez la synchronisation récurrente, votre source externe est propriétaire des données synchronisées. Par conséquent, si le service alimenté propose l'édition des données dans le backOffice du site (ou la page Mon compte pour les utilisateurs), vous pouvez avoir besoin que certains champs ne soient pas la propriété de la source de données externe. Pour cela, vous pouvez alors choisir de ne pas alimenter certains champs éditables en ligne en utilisant un élément Champ non alimenté. Les champs ainsi configurés ne seront alors pas alimentés par les données de la source externe.

Pour : V2.0 , Isotools Builder, Isotools Designer

Publiée le 01/01/2011 | ID : KB_2010SYNC_PRINC

>> Evaluez cette documentation

Image Captcha