PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV 2024 → Migration HF C/S vers Sql Server => Déphasage analyse
Migration HF C/S vers Sql Server => Déphasage analyse
Iniciado por NoName, jan., 24 2020 3:00 PM - 4 respostas
Membro registado
68 mensagems
Popularité : +2 (2 votes)
Publicado em janeiro, 24 2020 - 3:00 PM
Bonjour,

Je suis actuellement en train de migrer un ERP maison créé il y 4-5 par l'un de mes prédécesseurs depuis Hyperfil C/S vers SQL Server 2017.

Créations des tables & Migration des données => OK

Par contre lors du test du projet je constate plusieurs effets indésirables.
Boucle Pour tout => Affreusement lentes
Certains Hlitrecherche et Hlitrecherchepremier basés sur des clés primaires qui ne fonctionne plus.

Pour info les tables concernées par les Hlitrecherche sont des tables que mon prédécesseur a utilisés comme modèle pour créer de nouveaux fichiers de données copier / coller)
Dans 90% du temps j'ai réussi a faire fonctionné les fonctions en forcant la mise a jour de es fichiers de données dans l'analyse : Renommage de la table 'TableX" en "Tablex_" => Compilation de l'analyse => Renommage "TableX_" en "TableX" => Compilation de l'analyse.

Mais dans les 10 derniers % je ne sais pas quoi faire, rien y fait.

Avez-vous déjà rencontre ce problème ? Et si oui comment le pallier ?
Des pistes pour optimiser les boucles "pour tout" sans tout réécrire la boucle ?
Membro registado
68 mensagems
Popularité : +2 (2 votes)
Publicado em janeiro, 27 2020 - 10:21 AM
En pofilant les requêtes je constate que les hlitrecherche essaye de lire une table différente de celle définie et créé donc une nouvelle table correspondant a ce nom. Par contre je ne vois pas ou elles sont définies.

Soit une table "Calendrier", je fais hlitrecherche(calendrider,id,nid)

Il essaye de chercher un enregistrement dans la table "calendrier1" et fais donc la création puis la lecture sur cette table.

Je ne trouve dans l'analyse aucun nom physique ou logique ou définies dans l'onglet état & requêtes avec ce nom calendrier1...

Cela parle-t-il a quelqu'un ?
Membro registado
3.845 mensagems
Popularité : +227 (347 votes)
Publicado em janeiro, 27 2020 - 10:54 AM
Bonjour,
Calendrier n'a-t-elle pas été déclarée "Externe", éventuellement, elle a pu être créée via les fonction HDécrit...

--
Il y a peut être plus simple, mais, ça tourne
Membro registado
68 mensagems
Popularité : +2 (2 votes)
Publicado em janeiro, 27 2020 - 11:12 AM
Bonjour et merci pour la piste de réflexion.

Je passe effectivement l'ensemble de mes fichiers par les fonctions HDécrit et Hchangeconnexion. Ce qui me permet de switcher entre la base de donnée hyperfile et celle sql serveur dans le but de comparer la migration.

Ce n'est pas a l'appel de ces fonctions que la table "calendrier1" se créé mais bien au moment de l'appel de hlitrecherche(calendrier).
Membro registado
68 mensagems
Popularité : +2 (2 votes)
Publicado em janeiro, 27 2020 - 5:42 PM
Résolution du problème : Pour info le problème venait de l'analyse, tout mes fichiers sont paramétré avec une connexion HF C/S. Or je passe maintenant par une base de données externe.
Si on modifie la connexion avec un type OLE DB on voit donc un nouveau champ "Nom de la table dans la base de données externe". Il a fallut pour chaque fichier redéfinir temporairement en type OLE DB pour voir le nom dans la base de données externe et le modifier avec le nom voulu.
Dans le cas des copie de table ce champs était initialisé avec le nom d'origine puis indicé.