|
Lenteur chargement d'une table mémoire depuis un fichier HF |
Iniciado por p.poinsignon, jul., 05 2005 2:07 PM - 4 respostas |
| |
| | | |
|
| |
Publicado em julho, 05 2005 - 2:07 PM |
Bonjour mes fichiers (HF classiques) sont sur un serveur de données et je charge une table mémoire avec les données de plusieurs fichiers HF. Je constate qu'avec déjà 300 enreg cela met une ou deux secondes, bon le temps est correct mais le nombre d'enreg va très vite monter et j'ai peur que le temps de chargement de ma table aussi!! Voici mon code, y a t'il de grosses erreurs à corriger pour améliorer la vitesse??
PS: J'utilise des hlitrecherche sur d'autres fichiers pour renseigner les noms en fonction des identifiants auto liés au fichier matériel, je ne sais pas si c'est la bonne méthode d'ailleurs.
Merci d'avance
TableSupprimeTout(Table) HLitPremier(MATERIEL) TANTQUE PAS HEnDehors(MATERIEL) HLitRecherche(LIEU,LIEUCLEUNIK,MATERIEL.LIEUCLEUNIK) HLitRecherche(FAMILLE,FAMCLEUNIK,MATERIEL.FAMCLEUNIK) HLitRecherche(ETABLISSEMENT,ETABCLEUNIK,LIEU.ETABCLEUNIK) HLitRecherche(UTILISATEUR,UTILCLEUNIK,MATERIEL.UTILCLEUNIK) HLitRecherche(ETAT,ETATCLEUNIK,MATERIEL.ETATCLEUNIK) TableAjoute(Table,MATERIEL.IDENTIFIANT_INT+TAB+MATERIEL.MATCLEUNIK+TAB+FAMILLE.NOM+TAB+MATERIEL.DESIGNATION+TAB+ETAT.NOM+TAB+UTILISATEUR.NOM+TAB+LIEU.ETAGE+" - "+ETABLISSEMENT.NOM+" - "+LIEU.NOM+TAB+MATERIEL.NOMNETBIOS+TAB+MATERIEL.COMMENTAIRES) HLitSuivant(MATERIEL) FIN |
| |
| |
| | | |
|
| | |
| |
Publicado em julho, 05 2005 - 4:24 PM |
Bonjour,
Généralement au delà d'une cinquantaine d'enregs, l'utilisateur ne lit plus le contenu de la table. Il faut vous poser la question, quelle requête mettre en oeuvre pour afficher à l'utilisateur les enregistrements dont il a besoin.
L'appli va gagner en rapidité et surtout en utilisabilité. -- Ed en Ligne
"Lepatou" <p.poinsignon@caisse-epargne.nc> a écrit dans le message de news: 42ca5144$1@news.pcsoft.fr...
Bonjour mes fichiers (HF classiques) sont sur un serveur de données et je charge une table mémoire avec les données de plusieurs fichiers HF. Je constate qu'avec déjà 300 enreg cela met une ou deux secondes, bon le temps est correct mais le nombre d'enreg va très vite monter et j'ai peur que le temps de chargement de ma table aussi!! Voici mon code, y a t'il de grosses erreurs à corriger pour améliorer la vitesse??
PS: J'utilise des hlitrecherche sur d'autres fichiers pour renseigner les noms en fonction des identifiants auto liés au fichier matériel, je ne sais pas si c'est la bonne méthode d'ailleurs.
Merci d'avance
TableSupprimeTout(Table) HLitPremier(MATERIEL) TANTQUE PAS HEnDehors(MATERIEL) HLitRecherche(LIEU,LIEUCLEUNIK,MATERIEL.LIEUCLEUNIK) HLitRecherche(FAMILLE,FAMCLEUNIK,MATERIEL.FAMCLEUNIK) HLitRecherche(ETABLISSEMENT,ETABCLEUNIK,LIEU.ETABCLEUNIK) HLitRecherche(UTILISATEUR,UTILCLEUNIK,MATERIEL.UTILCLEUNIK) HLitRecherche(ETAT,ETATCLEUNIK,MATERIEL.ETATCLEUNIK) TableAjoute(Table,MATERIEL.IDENTIFIANT_INT+TAB+MATERIEL.MATCLEUNIK+TAB+FAMILLE.NOM+TAB+MATERIEL.DESIGNATION+TAB+ETAT.NOM+TAB+UTILISATEUR.NOM+TAB+LIEU.ETAGE+" - "+ETABLISSEMENT.NOM+" - "+LIEU.NOM+TAB+MATERIEL.NOMNETBIOS+TAB+MATERIEL.COMMENTAIRES)
HLitSuivant(MATERIEL) FIN
|
| |
| |
| | | |
|
| | |
| |
Publicado em julho, 05 2005 - 4:27 PM |
Est-ce que tu as essayé avec une requête/vue, plutôt que des hlitrecherche en cascade ?
Frédéric. |
| |
| |
| | | |
|
| | |
| |
Publicado em julho, 05 2005 - 4:28 PM |
Bonjour,
Dans les bases filles, tu recherche sur un identifiant par HLitRecherche() Cette fonction recherche depuis le début jusqu'à quelle trouve la bonne valeur.
Pourquoi n'utilise-tu pas des index dans ces tables, et utilise HLitRecherchePremier() qui va se positionner directement au bon endroit.
Cordialement.
Tu peux aussi créer une requete pour effectuer cette opération.
C.AUBRY |
| |
| |
| | | |
|
| | |
| |
Publicado em julho, 06 2005 - 5:54 AM |
Merci de ces réponses intéressantes!! Pour info j'affiche dans cette table tout le matériel d'une société et après c'est l'utilisateur qui fait sa recherche sur ce qu'il veut mais je suis obligé de tout afficher!
Patrick. |
| |
| |
| | | |
|
| | | | |
| | |
|