Altova DiffDog Server 2025 

DiffDog Server peut comparer les données dans des fichiers séparés par des virgules, des points-virgule, et séparés par des onglets (fichiers CSV, TSV) par rapport à elles-mêmes et par rapport aux données dans les BD. Les fichiers répondant aux critères suivants peuvent être comparés :

 

Chaque ligne doit contenir le même nombre de champs dans tout le fichier. L'extension de fichier n'a pas d'importance.

Les séparateurs de champ doivent être un des suivants : virgule, point-virgule et onglet.

 

Puisqu’un fichier CSV file est en fait des données tabulaires, vous pouvez les comparer avec les données d’une table de base de données, affichage recordset personnalisé.

 

Vous pouvez comparer des fichiers CSV des mêmes deux manières que vous avez comparé les données BD :

 

Configurez une tâche de comparaison dans le client ou le fichier config du serveur en utilisant [datasource] et [datadiff].

Sur Windows, créez une tâche de comparaison dans DiffDog Enterprise et enregistrez-la comme fichier .dbdif, puis exécutez la tâche sur le serveur.

 

Vous pouvez utiliser les deux méthodes pour comparer également les données CSV par rapport aux données BD. Les deux méthodes sont décrites ci-dessous de manière plus détaillée.

 

Comparaison idans le fichier config

Une comparaison CSV peut être configurée soit dans le fichier config client, soit dans le fichier config serveur comme suit.

 

1.Ajouter une source de données qui représente le côté "gauche" de la comparaison du fichier de configuration. Pour les fichiers CSV, une source de données classique ressemble à l'exemple ci-dessous.

 

[datasource:left_data]

type=csv

path=C:\left.csv

separator=comma

key-columns-by-ordinal=1

has-header-row=false

 

2.Ajouter la seconde source de données (le côté "droit" de la comparaison).

 

[datasource:right_data]

type=csv

path=C:\right.csv

separator=comma

key-columns-by-ordinal=1

has-header-row=false

 

3.Ajouter une tâche de comparaison de données dans laquelle vous indiquez laquelle est la source de données droite et gauche, les colonnes à comparer, et d'autres paramètres. L'option map vous permet de spécifier quelles colonnes font partie de la comparaison (par exemple, la première et la seconde colonne).

 

[datadiff:reports]

left=left_data

right=right_data

map=1=>1,2=>2

output-mode=xml

 

Dans cet exemple, la production de la comparaison CSV est rapportée en tant que XML, comme indiqué par l'option output-mode=xml. Si le côté droit de la comparaison est une base de données, vous pouvez aussi utiliser output-mode=sql, et ainsi, vous pouvez obtenir des scripts SQL pour fusionner les données de la gauche vers la droite. Par défaut, le rapport est affiché dans la ligne de commande, mais vous pouvez le rediriger en option vers un fichier, en ajoutant l'option : client-output-path client-output-path=/home/report.xml

 

4.Appeler le programme d'exécution et exécuter la commande data-diff. Dans l'extrait de code ci-dessous, le fichier de configuration est fourni en utilisant l'option --c et le nom de la tâche est fourni en tant qu'argument :

 

diffdogcmdlclient data-diff --c=client_config.ini reports

 

Vous pouvez aussi configurer ou contourner le format de sortie pour le rapport de comparaison dans la ligne de commande, en ajoutant l'option --output-mode, par exemple :

 

diffdogcmdlclient data-diff --c=client_config.ini reports --output-mode=xml

 

Exécuter des comparaisons créées dans DiffDog Enterprise (uniquement Windows)

Cette option utilise un fichier de comparaison (dans le format .dbdif) créé avec DiffDog Enterprise. Pour exécuter le fichier .dbdif, DiffDog Server doit être exécuté sur Windows. Ceci est dû en raison des fichiers .dbdif créés avec les chemins store DiffDog utilisant la syntaxe Windows.

 

Pour exécuter la comparaison, procédez comme suit :

 

1.Créez le fichier .dbdif dans DiffDog Enterprise. Voir le Manuel utilisateur DiffDog pour plus d' instructions.

2.Du côté du serveur, utilisez soit l’exécutable serveur ou client pour appeler la commande run :

 

diffdogserver run <dbdiff-file>

diffdogcmdlclient run <dbdiff-file>

 

Veuillez prendre note des points suivants :

 

Pour que la comparaison puisse être exécutée avec succès, tous les chemins de fichier CSV qui ont été ajoutés dans l'appareil de desktop doivent être valides sur l'appareil de serveur.

Si des connexions de bases de données sont impliquées, l'appareil de serveur doit être configuré et doit être capable de gérer la connexion. Par exemple, si le fichier .dbdif comprend une connexion qui nécessite un pilote ODBC de la part du fournisseur de base de données, ce pilote doit être installé sur le serveur également. Voir Bases de données prises en charge.

 

© 2019-2025 Altova GmbH