|
| Fonction TableSupprimeSelect() |
| Iniciado por jlamie, 06,nov. 2018 17:27 - 1 respuesta |
| |
| | | |
|
| |
| Publicado el 06,noviembre 2018 - 17:27 |
Bonjour,
J'ai un problème de performance sur la fonction TableSupprimeSelect().
J'ai une table mémoire de 10 colonnes, et 18000 lignes. La table est en multiselection, elle a été alimentée avec une requete SQL et n'est reliée à rien. Une fonction propose à l'utilisateur de retenir dans la table les éléments sélectionnés, et de supprimer les autres.
Autrement dit, le traitement qui est fait derrière : c'est l'inversion de la sélection (mémorisation des indices des lignes sélectionnées, déselection de toutes les lignes et ensuite parcours du tableau et sélection de toutes les lignes dont l'indice n'a pas été mémorisée) : -> Ce traitement prend 1 seconde.
Le traitement qui suit, supprime les lignes sélectionnées (donc admettons 17900 lignes, si l'utilisateur en a sélectionné 100). J'utilise la fonction TableSupprimeSelect() faite pour ça. Et là, ça prends, non pas des secondes, non pas des minutes, peut être des heures, mais je capitule avant.
Cette fonction m'évite de parcourir le tableau et de supprimer ligne par ligne. Ca me semble pas très compliqué d'effacer d'un bloc x millier de lignes.
Avez vous déjà eu ce type de problème ? Ou avez vous une idée pour contourner ? J'ai pensé au masquage des lignes par réduction de la hauteur, mais les lignes restent présentes, et visible pour la suite du traitement.
Kantin. |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 173 mensajes |
|
| Publicado el 06,marzo 2019 - 15:36 |
Bonjour,
Le problème persiste dans sur 24 ! Je trouve ça étrange aussi.
Juste une truc un peut accélérer le processes en rendant la table invisible avant (la rendre visible après).
Quelqu'un a une vraie optimisation ?
-- Cordialement Olivier DUCTEIL |
| |
| |
| | | |
|
| | | | |
| | |
|