PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile 2024 → Erreur de Synchro
Erreur de Synchro
Débuté par Frédéric FOURGEOT, 11 juin 2020 20:21 - 8 réponses
Membre enregistré
34 messages
Popularité : +2 (2 votes)
Posté le 11 juin 2020 - 20:21
Bonjour,

J'ai un petit problème de synchro qui se produit depuis quelques jours sur un projet en cours. Lors de la synchro, qui du reste est correctement réalisée (c'est à dire que les fichiers sont bien mis à jour), j'obtiens une erreur qui indique ceci :

La description de la structure du fichier utilise les fonctionnalités non supportées par cette version HFSQL.
Une version plus récente de HFSQL est nécessaire.


A noter que la structure des fichiers à synchroniser provient de la même analyse, et que j'ai bien réalisé une mise à jour de cette structure au cas où. De plus ce fichier Intervenant comprend un identifiant, un nom, un prénom, un code. Rien de bien folichon. L'identifiant est sur 8 octets, mais comme sur les autres fichiers synchronisés, qui eut ne posent pas de problème (à priori).

Comme je l'indiquais l'erreur se produit à la fin de la synchronisation. Sauf si j'utilise ReplicInitialise pour m'assurer que l'ensemble des éléments sur le serveur seront bien reportés sur le périphérique. Dans ce cas l'erreur est présente plus tôt. Mais quoi qu'il en soit les fichiers sont bien alimentés. Y compris le fichier Intervenant.

Est-ce que cela parle à quelqu'un parce que là moi je sèche.

SI PAS RéplicOuvre(sNomReplication, "", sHost, sUser, sPassword) ALORS
Erreur(ErreurInfo(errComplet))
Sablier(Faux)
RETOUR
FIN

// Force la réinitialisation de la réplication afin de s'assurer que l'ensemble des données
// présentes sur le serveur est copié sur le périphérique
//RéplicInitialise(sNomReplication)

// Lance la synchronisation
SI PAS RéplicSynchronise(sNomReplication, replicaImmédiat) ALORS
Erreur(ErreurInfo(errComplet))
Sablier(Faux)
RETOUR
FIN
Membre enregistré
3 346 messages
Popularité : +93 (137 votes)
Posté le 12 juin 2020 - 07:56
Membre enregistré
34 messages
Popularité : +2 (2 votes)
Posté le 12 juin 2020 - 08:58
Ce n'est visiblement pas la solution à mon problème. Lors de la première installation de l'application mobile, la synchronisation se termine sur le même message d'erreur, alors que les fichiers n'existe pas à l'origine.

Dans le doute j'ai quand même ajouté HModifieStructure. Mais l'erreur est toujours présente lors de l'utilisation de RéplicSynchronise.
Membre enregistré
34 messages
Popularité : +2 (2 votes)
Posté le 12 juin 2020 - 16:11
J'ai beau refaire mon fichier de synchro, regénérer mon analyse, l'appliquer à mes fichiers (sur le serveur de réplication). Toujours la même erreur sur le même fichier.
Membre enregistré
3 346 messages
Popularité : +93 (137 votes)
Posté le 12 juin 2020 - 18:47
seule solution
le support
merci de nous transmettre leurs retour
Membre enregistré
3 346 messages
Popularité : +93 (137 votes)
Posté le 13 juin 2020 - 12:05
Essaie ce code venant de suenodesign d'un autre forum
HFerme("*")

FichDonné est une chaîne
FPass est une chaîne

ListeFichier est une chaîne = HListeFichier("",FPass,hLstNormal+hLstTriée)

FichDonné= ExtraitChaîne(ListeFichier, rangPremier, RC)
TANTQUE FichDonné <> EOT
HModifieStructure(FichDonné,hmsSansContrôle+hmsNormal)
FichDonné = ExtraitChaîne(ListeFichier, rangSuivant, RC)
FIN

TitreSuivant("Restructuration")
Info("Restructuration effectuée")
Membre enregistré
34 messages
Popularité : +2 (2 votes)
Posté le 15 juin 2020 - 11:29
Je vais regarder du côté du dernier bout de code que tu m'as envoyé Popoy.
Si cela ne fonctionne pas, je vais également tenter de supprimer la table qui semble poser problème dans l'analyse et physiquement, puis la récréée pour voir si cela résout le problème. C'est une petite table.
Membre enregistré
34 messages
Popularité : +2 (2 votes)
Posté le 19 juin 2020 - 10:44
Bon rien n'y a fait... Alors j'ai finalement supprimé mon analyse complète, que j'ai recréée. Et là encore problème.
Mais j'ai commencé en entrapercevoir le problème : je ne synchronise que quelques tables de mon analyse, tandis que d'autres n'ont pas besoin de l'être. J'ai néanmoins des liaisons entre les tables synchronisées et les tables "fixes". A noter que la synchro fonctionnait sur les versions de Windev 25 en début d'année tout de même.

J'ai donc créé une deuxième analyse qui comprend uniquement les fichiers à synchronisés, sans aucune liaison indiquée, et j'ai recréé mon fichier de synchro à partir de cette analyse. Et là plus d'erreur ! Et une synchro qui fonctionne. Il faut juste que je n'oublie pas de mettre à jour cette deuxième analyse lorsque j'effectue des modifications sur la première, qui elle, est utilisée par mes applications Android et iOS.

Je suppose donc que ce sont les liaisons vers des tables qui ne sont pas elles-mêmes dans la synchro qui provoque l'erreur. La table qui me posait problème (je suppose que d'autres aussi aurait pu me poser problème mais que c'était la première que le système traitait) est en effet uniquement liée à 2 tables non synchronisées.
Membre enregistré
3 346 messages
Popularité : +93 (137 votes)
Posté le 19 juin 2020 - 11:51
Merci Frederic de ton retour d'expérience
Cela prouve que pcsoft veut toujours synchroniser
la totalité de l'analyse