Filtrage des champs table
Stagiaire WDF
Inscrit:
05/03/2007 16:29
Post(s): 5
Etant débutant en WinDevelopemment, j'aimerai connaître une manière propre et rapide de faire un filtre sur une table, sachant que celle-ci est alimentée par une table oracle contenant un peu plus de 50 000 enrtegistrements / an.

Pour filtrer sur un champs, j'utilise la methode

CléComposée est une chaîne = HConstruitValClé(TF_ACTIONS, PK_TF_ACTIONS, Filtre)

// Filtre sur la table des lignes contenant le login
TABLE_Stats..RubriqueParcourue = "LB_USERNAME"
TABLE_Stats..Filtre = CléComposée
TableTrie(TABLE_Stats, "D_Lancement_OneClick")

mais c'est très long. Y'a t-il une autre méthodde ? Merci

Contribution le : 13/03/2007 17:01
Créer un fichier PDF de la contribution Imprimer


Re: Filtrage des champs table
Developpeur WDF
Inscrit:
26/07/2004 09:01
Post(s): 127
Bonjour,
pour attaquer une base Oracle, il est préférable d'utiliser les SQLExec() ou HExecuteRequeteSQL().
Voir l'aide pour plus de précisions.

Bon courage.

Contribution le : 13/03/2007 17:44
_________________
Faut pas trop se prendre au sérieux ...
Créer un fichier PDF de la contribution Imprimer


Re: Filtrage des champs table
Stagiaire WDF
Inscrit:
05/03/2007 16:29
Post(s): 5
Merci pour l'info mais ça ne répond pas à ma question.
Les données sont rapatriées dans un champ table dans une fenêtre windev, et j'aimerai directement y effectuer des filtres.

Je le fais déjà notamment avec la méthode que j'ai citée précédemment, mais les performances ne sont pas au rendez-vous.

Enfin ce n'est pas catastrophique, mais j'aimerai savoir si une autre méthode plus rapide existe.

Je pense notamment au genre de filtre que l'on retrouve sur iTunes 7, avec le champ en haut à gauche qui permet d'entrer la valeur de filtre, celui-ci est effectué instantanément et de plus sur tous les champs.

Merci encore

Contribution le : 13/03/2007 19:52
Créer un fichier PDF de la contribution Imprimer


Re: Filtrage des champs table
Developpeur WDF
Inscrit:
18/06/2006 13:54
Post(s): 106
Si ca répond un peu à ta question :p
Requête is the way.

Premièrement tu devrais déjà mettre un timer sur ton champ de saisie qui sert afin qu'il ne déclenche pas ta requête à chaque modification de ton champ mais plutot :

Si il ya une modif du champ de recherche j'attend 1 seconde et je lance la requete, ca permet de lancer la requete toutes les secondes et non à chaque fois.

Pour accélerer uen interrogation de données il vaux mieux passer par des requêtes pures SQL (surtout avec une base Oracle), sans passer par les filtres.

Tu peux faire une requete sur le resultat d'une requete.


Pour une interrogation avec un seul champ sur "toutes" les colonnes un OR avec la valeur de ton champ de saisie est necessaire.

Avec ca tu devrais te rapprocher de "l'instantané".

Voilà en gros les méthodes, voir l'aide pour les appliquer.

Contribution le : 14/03/2007 10:29
Créer un fichier PDF de la contribution Imprimer


Re: Filtrage des champs table
Stagiaire WDF
Inscrit:
05/03/2007 16:29
Post(s): 5
Ok merci beaucoup je vais voir ça et je te tiens au courant !

Mais j'aurais quand même préféré faire un filtre directement sur la table et pas refaire de requêtes à chaque fois.

Mais si on peut pas faire autrement !

Contribution le : 14/03/2007 14:10

Edité par trainkill sur 14/3/2007 14:32:18
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
CompteNom   Mot de passe   Authentification
Message:


Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2