...
La synchronisation n'a pas pu démarrer car au moins des fichiers concerné n'a pu être réservé. Pour ce type d'erreur :
La mise à niveau n'est pas effectuée ;
Le programme de synchronisation affiche un message.
Avant de relancer la synchronisation, il faudra déconnecter tous les utilisateurs.
Une erreur fatale au niveau du serveur SQL. Pour ce deuxième type d'erreur :
La mise à niveau est stoppée ;
L'erreur est journalisée dans le fichier ferror.log, consultable à partir de la console d'administration ;
Avant de relancer la synchronisation, il faudra restaurer la base.
Une erreur SQL au moment du transfert des données existantes vers les nouvelles tables (lors de la modification d'un champ, par exemple). Pour ce troisième type d'erreur :
La mise à niveau n'est pas stoppée ;
Les tables concernées sont vides ou partiellement garnies;
Le schéma est cohérent avec le dictionnaire ;
Un récapitulatif des tables concernées est affiché :
Ancre
Exécution de la synchronisation par programme
Pour exécuter une synchronisation, le programme xpsqlsynchro.dhop peut être appelé en-dehors de l'utilitaire xpsql.dhop. Il faut simplement lui envoyer par "ping" les paramètres suivants :
...
« TypeAction » : indique le type d'action à effectuer. Trois valeurs sont possibles :
« SYNCHRO » : Pour une synchronisation.
« SCRIPT » : Pour l'exécution d'un script SQL
« MAJINDEXCONDITIONNEL» : Pour lancer la migration des index conditionnels au nouveau format. Pour une exécution de script : Cf. livre Exécution de scripts.
...
« CheminDico » : chemin où se trouvent les dictionnaires actuels, typiquement /divalto/« nom de base sql »/.
...
« CheminNouveauDico » : chemin où se trouvent les nouveaux dictionnaires. Exemple : /divalto/erp63/.
...
« RequiertValidation » : permet de visualiser ou non la liste des différences repérées entre les deux versions des dictionnaires : 1 pour les visualiser, 0 pour une exécution directe. Il est conseillé de mettre cette valeur à 1.
...
« ModeAudit » : permet de faire un audit des requêtes SQL (0 ou 1). 1 demande de générer toutes les requêtes SQL mais sans les exécuter. Elles sont journalisées dans le fichier DhOdbcConfigSql.log, qui se trouve dans /divalto/DivaltoLog/. Sinon, les requêtes ne sont pas journalisées mais sont exécutées.
...
« ActualiserFHSQL » : permet de mettre à jour le fichier FHSQL.dhfi de la base (0 ou 1).
...
« CheminNouveauFHSQL » : permet de définir quel sera le fichier FHSQL qui servira de modèle pour la mise à jour de celui de la base. Par défaut, c'est le fichier fhsqldivalto.dhfi du répertoire divalto/sys qui est utilisé.
...
« NomServeur » : Nom du serveur où se situe la base de données.
...
« NomBase » : Nom de la base de données à synchroniser.
...
« CodeRetour » : compte-rendu. Les valeurs rendues sont :
0 : pas d'erreur ;
1 : erreur quelconque. Voir le fichier ferror.log pour les détails ;
2 : l'utilisateur a quitté, via F9 ou via le bouton « Abandonner » ;
3 : erreur SQL ;
4 : erreur déjà signalée par MessageBox.
...
« FichiersSupprimes » : chaîne au format hmp regroupant les fichiers supprimés.
Utilisée pour la mise à jour du fichier FHSQL.dhfi. Chaîne de la forme : <fichier>nom<fichier>nom.
...