Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Probleme de performance sur champ table

4 réponses
Avatar
cjaouhar
J'ai un champ table dans une fenetre qui est popul=E9 =E0 partir d'une
requ=EAte bas=E9e sur un seul fichier hyperfile. Le fichier contient
environ 260000 enregistrements, et la fen=EAtre prend environ 14 minutes
=E0 afficher tous les enregistrements. Ca me parait enorme. Est ce qu'il
y aurait des astuces afin d'am=E9liorer le temps d'affichage?

Merci d'avance
CJ

4 réponses

Avatar
MiF
a écrit :
J'ai un champ table dans une fenetre qui est populé à partir d'une
requête basée sur un seul fichier hyperfile. Le fichier contient
environ 260000 enregistrements, et la fenêtre prend environ 14 minutes
à afficher tous les enregistrements. Ca me parait enorme. Est ce qu'il
y aurait des astuces afin d'améliorer le temps d'affichage?

Merci d'avance
CJ




Bonjour,

Tout d'abord, interrogez-vous sur la pertinence d'afficher autant de
données dans un même écran. Cela est-il vraiment nécessaire ?

Quelques questions pour essayer de vous aider :

- Travaillez-vous en HF Classique ou Client/Serveur ?

- S'agit-il d'une table "fichier" branchée sur une requête WDR ?
Ou bien exécutez-vous une requête avec hExecuteRequeteSQL() pour ensuite
remplir la table avec TableAjoute ? Ou bien, utilisez-vous
ConstruitTableFichier ?

- N'auriez-vous pas placé du code dans l'évènement "Affichage d'un
ligne" de votre table ? Si c'est le cas, celui-ci est peut-être exécuté
260000 fois au remplissage ?


MiF
Avatar
youpi
fais ce test :


Table..visible = faux
//....
Remplissage de ta table
//....
Table..visible = vrai



Ensuite :
-recherche tu sur un champs clé dans la table ?
- ne peux tu pas modifier la methode d'affichage des données : s'il y a
vraiment trop de volume propose des recherches par dates.....



"MiF" a écrit dans le message de news:
46d857eb$0$25921$
a écrit :
J'ai un champ table dans une fenetre qui est populé à partir d'une
requête basée sur un seul fichier hyperfile. Le fichier contient
environ 260000 enregistrements, et la fenêtre prend environ 14 minutes
à afficher tous les enregistrements. Ca me parait enorme. Est ce qu'il
y aurait des astuces afin d'améliorer le temps d'affichage?

Merci d'avance
CJ




Bonjour,

Tout d'abord, interrogez-vous sur la pertinence d'afficher autant de
données dans un même écran. Cela est-il vraiment nécessaire ?

Quelques questions pour essayer de vous aider :

- Travaillez-vous en HF Classique ou Client/Serveur ?

- S'agit-il d'une table "fichier" branchée sur une requête WDR ?
Ou bien exécutez-vous une requête avec hExecuteRequeteSQL() pour ensuite
remplir la table avec TableAjoute ? Ou bien, utilisez-vous
ConstruitTableFichier ?

- N'auriez-vous pas placé du code dans l'évènement "Affichage d'un ligne"
de votre table ? Si c'est le cas, celui-ci est peut-être exécuté 260000
fois au remplissage ?


MiF


Avatar
Albert
Bonjour,

On améliore le temps de remplissage d'une table par l'utilisation de
la propriété

NomTable..AffichageActif

Mais comme on l'a déjà souligné je ne vois vraiment pas l'utilité
d'afficher
260.000 enregistrements

Cordialement

Albert
Avatar
cjaouhar
On Aug 31, 2:03 pm, MiF wrote:
a écrit :

> J'ai un champ table dans une fenetre qui est populé à partir d'une
> requête basée sur un seul fichier hyperfile. Le fichier contient
> environ 260000 enregistrements, et la fenêtre prend environ 14 minutes
> à afficher tous les enregistrements. Ca me parait enorme. Est ce qu'il
> y aurait des astuces afin d'améliorer le temps d'affichage?

> Merci d'avance
> CJ

Bonjour,

Tout d'abord, interrogez-vous sur la pertinence d'afficher autant de
données dans un même écran. Cela est-il vraiment nécessaire ?

Quelques questions pour essayer de vous aider :

- Travaillez-vous en HF Classique ou Client/Serveur ?

- S'agit-il d'une table "fichier" branchée sur une requête WDR ?
Ou bien exécutez-vous une requête avec hExecuteRequeteSQL() pour ensu ite
remplir la table avec TableAjoute ? Ou bien, utilisez-vous
ConstruitTableFichier ?

- N'auriez-vous pas placé du code dans l'évènement "Affichage d'un
ligne" de votre table ? Si c'est le cas, celui-ci est peut-être exécu té
260000 fois au remplissage ?

MiF



* Oui il s'agit une table "fichier" branchée sur une requête WDR (pas
de tableAjoute)
* Pour le moment on utilise HF classic
* On va sûrement s'orienter vers l'option de filtrer la liste en
fonction d'une date de début et date de fin, afin de reduire le nombre
de lignes affichées.