OVH Cloud OVH Cloud

[WD9] Vue vs Requete

5 réponses
Avatar
louis
Bonjour
n'ayant passé que peu de temps en dehors de la 5.5,


je suis resté aux "Vues HF"

très pratiques et très rapides pour travailler sur un seul fichier

mais avec lesquelles le problème se corse qu'en les critères portent sur des
fichiers liés...


dois-je passer aux requêtes ?

merci

Louis

5 réponses

Avatar
sebNews
Bonjour,

Et les jointures entre deux vues ?

Sébastien



"louis" a écrit dans le message de
news:423ef232$0$11687$
Bonjour
n'ayant passé que peu de temps en dehors de la 5.5,


je suis resté aux "Vues HF"

très pratiques et très rapides pour travailler sur un seul fichier

mais avec lesquelles le problème se corse qu'en les critères portent sur


des
fichiers liés...


dois-je passer aux requêtes ?

merci

Louis







Avatar
louis
Oui oui...

Je suis entrain d'ajouter cela à ma classe mais ... justement ... je me pose
la question du bien fondé de continuer en vue ou de passer en requête .....

merci

"sebNews" a écrit dans le message de news:
423ef90a$0$6789$
Bonjour,

Et les jointures entre deux vues ?

Sébastien



"louis" a écrit dans le message de
news:423ef232$0$11687$
Bonjour
n'ayant passé que peu de temps en dehors de la 5.5,


je suis resté aux "Vues HF"

très pratiques et très rapides pour travailler sur un seul fichier

mais avec lesquelles le problème se corse qu'en les critères portent sur


des
fichiers liés...


dois-je passer aux requêtes ?

merci

Louis











Avatar
mat
louis wrote:
Bonjour
n'ayant passé que peu de temps en dehors de la 5.5,


je suis resté aux "Vues HF"

très pratiques et très rapides pour travailler sur un seul fichier

mais avec lesquelles le problème se corse qu'en les critères portent sur des
fichiers liés...


dois-je passer aux requêtes ?



Bonjour,

J'ai fait les vues sous WD5.5 et je trouve la gestion de requêtes plus
simple. MAIS les requêtes multi-fichiers sur HF sont lentes, surtout
quand il y a bcp de lignes dans le résultat. Structure de données le
permettant, nous avons trouvé des requêtes sur un seul fichier et des
sous-requêtes utilisant IN plus efficaces. Par exemple des conditions
sur une catégorie de produits qui n'est pas dans le fichier de base mais
qu'on trouve via la sous-catégorie et via le produit, partant de l'ID du
produit dans le fichier de base...

SI PAS cboFltProductRange..ValeurAffichée ="" ALORS
maRequete +=...
"AND ContractDetail.IDProduct IN (SELECT Product.IDProduct FROM Product
"+...
"WHERE Product.IDProductGroup IN (SELECT ProductGroup.IDProductGroup
FROM ProductGroup "+...
"WHERE ProductGroup.IDProductRange=" + cboFltProductRange + ")) "
FIN

Pour obtenir les designations de produits, noms clients, etc, je trouve
que le plus efficace sont des lectures des fichiers relatives avec
HLitRecherchePremier avec un un boucle "POUR TOUS SUR "monID" avec un
logarithme pour éviter des recherches répétitives. Le passage de ce
boucle est super rapide. Si possible, "monID" devrait faire partie du
trie du résultat (ORDER BY).

Salutations
Mat
Avatar
louis
Je viens de faire mon premier test de jointure de vue "automatiser" dans un
classe...

pour ce faire j'utilise

"un tableau de 5 sources de donnée"


Une pour le fichier de base
3 pour les éventuels fichiers de liaison
la cinquième est réservé pour la destination de la jointure (qui peut donc
être utilisée jusqu'à 3 fois)




y a t il moyen de copier un vue dans une autre ?

j'ai utilisé :

hDetruitVue( :ma_vue[1] )

hFusionneVue( :ma_vue[1], :ma_vue[5],: ma_vue[5],hVueIntersection,"")

hDetruitVue( :ma_vue[5] )

Ce n'est vraiment pas élégant ...

merci

"louis" a écrit dans le message de news:
423eff2a$0$19326$
Oui oui...

Je suis entrain d'ajouter cela à ma classe mais ... justement ... je me
pose la question du bien fondé de continuer en vue ou de passer en requête
.....

merci

"sebNews" a écrit dans le message de news:
423ef90a$0$6789$
Bonjour,

Et les jointures entre deux vues ?

Sébastien



"louis" a écrit dans le message de
news:423ef232$0$11687$
Bonjour
n'ayant passé que peu de temps en dehors de la 5.5,


je suis resté aux "Vues HF"

très pratiques et très rapides pour travailler sur un seul fichier

mais avec lesquelles le problème se corse qu'en les critères portent sur


des
fichiers liés...


dois-je passer aux requêtes ?

merci

Louis















Avatar
louis
merci pour cet avis
Louis

"mat" a écrit dans le message de news:

louis wrote:
Bonjour
n'ayant passé que peu de temps en dehors de la 5.5,


je suis resté aux "Vues HF"

très pratiques et très rapides pour travailler sur un seul fichier

mais avec lesquelles le problème se corse qu'en les critères portent sur
des fichiers liés...


dois-je passer aux requêtes ?



Bonjour,

J'ai fait les vues sous WD5.5 et je trouve la gestion de requêtes plus
simple. MAIS les requêtes multi-fichiers sur HF sont lentes, surtout quand
il y a bcp de lignes dans le résultat. Structure de données le permettant,
nous avons trouvé des requêtes sur un seul fichier et des sous-requêtes
utilisant IN plus efficaces. Par exemple des conditions sur une catégorie
de produits qui n'est pas dans le fichier de base mais qu'on trouve via la
sous-catégorie et via le produit, partant de l'ID du produit dans le
fichier de base...

SI PAS cboFltProductRange..ValeurAffichée ="" ALORS
maRequete +=...
"AND ContractDetail.IDProduct IN (SELECT Product.IDProduct FROM Product
"+...
"WHERE Product.IDProductGroup IN (SELECT ProductGroup.IDProductGroup FROM
ProductGroup "+...
"WHERE ProductGroup.IDProductRange=" + cboFltProductRange + ")) "
FIN

Pour obtenir les designations de produits, noms clients, etc, je trouve
que le plus efficace sont des lectures des fichiers relatives avec
HLitRecherchePremier avec un un boucle "POUR TOUS SUR "monID" avec un
logarithme pour éviter des recherches répétitives. Le passage de ce boucle
est super rapide. Si possible, "monID" devrait faire partie du trie du
résultat (ORDER BY).

Salutations
Mat